LinkageData

LinkageData[ls] is a new data type that represents the database of the linkage
  • LinkageData is a new data type, which wraps a list of records.
  • Every record of LinkageData database is identified by a string.
  • The following records are defined (not all have to be used at the same time):
Record IdentifierDescription
$LDMechanismIDDefines the name of the linkage and other linkage instance specific informations (units, WorkBench name, etc.).
$LDDrivingVariablesList of rules representing the driving variables of the linkage together with their substitutional values.
$LDSimpleParametersList of rules representing the simple parameters of the linkage together with their substitutional values.
$LDStructureList of records defininig the kinematic pairs of the linkage.
$LDLowOrderJointList of records about the low order kinematic pairs ( type, joint marker, etc).
$LDLinkGeometryStores the geometric representation of the links.
$LDDerivedParametersAList of explicitly derived parameters. (p is explicitly derived if it can be expressed as p = f[q1, q2, ...].
$LDDerivedParametersBList of implicitly derived parameters. (p is implicitly derived if it can be expressed as the solution of f[p, q1, q2, ...]= 0).
$LDLinkGroundTransformationList of transformation of the Local Link Reference Frames to the Global Reference Frame.
$LDTimeDependentVariablesList of rules of time dependent variables together with the first derivative.
$LDDrivingVelocitiesList of rules representing the first derivative of the driving variables.
$LDInteractiveDefStores linkage definition of a previous LinkageCAD session.
$LDMassPropertiesStores the mass properties of the links. Mass properties data consist of a list of {inertiaFrame,mass,momentOfInertia} sublist.
$LDForcesStores a list of forces that acting on the mechanism. Forces are stored as {{str1,vec},{str2,pointofAttack}} sublist.
$LDTorquesStores a list of torques vectors acting on the linkage. Torques are stored as {{str1,vec},{str2,pointofAttack}}.
  • Every pre-defined string record identifier has an assigned variable. These variables are defined by the Symbol["$LD"<>"id" ]. Example: "$LinkGeometry"→$LDLinkGeometry.
  • The format of the LinkageData object is -LinkageData, n-, where n is the number of records in the database.
  • LinkageData can be extended by new records, provided that the new records matches the {_String , _List} pattern.
Load LinkageDesigner package
In[1]:=
Click for copyable input
This creates a LinkageData object.
In[2]:=
Click for copyable input
Out[2]=
This shows the nested list structure of the LinkageData.
In[3]:=
Click for copyable input
Out[3]//TableForm=
Append a new record to LinkageData
In[4]:=
Click for copyable input
Out[4]=
Display the sub-list of the new LinkageData object
In[5]:=
Click for copyable input
Out[5]//TableForm=