Robotran C Documentation
mbs_binder_public.h
Go to the documentation of this file.
1 
10 #ifndef MBS_INFO_BINDER_PUBLIC_h
11 #define MBS_INFO_BINDER_PUBLIC_h
12 
13 /* A.L.
14  Either create new utilities file
15  Or, implement his functions in this .c file
16 */
17 
18 typedef enum {
28 } ParamType;
29 
30 typedef struct MbsInfoBody MbsInfoBody; // Forward declaration
31 
32 typedef struct MbsInfoDData
33 {
34  int d_type;
35  double d_0;
36  double d_min;
37  double d_max;
38  double d_opti;
39 
40  // the following variables are "computed" in "MDS_opti_structurer"
41  int is_related;
43 
44  double *d_ptr;
45 
46  double *MBSdata_d_ptr;
47 
48 } MbsInfoDData;
49 
53 typedef struct MbsInfoRefPoint
54 {
55  char *bodyname;
56  char *pointname;
57 
59 
63 typedef struct MbsInfoSensor
64 {
65  char *name;
67  char* joint_parent;
69 
70  int Pos;
71  int Rot;
72  int Vit;
73  int Om;
74  int Acc;
75  int Jdqd;
76  int Omp;
77  int Jac;
78 
80 
84 typedef struct MbsInfoExtforce
85 {
86  char *name;
88  char* joint_parent;
89 
90  int Pos;
91  int Rot;
92  int Vit;
93  int Om;
94  int Acc;
95  int Jdqd;
96  int Omp;
97  int Jac;
98 
100 
104 typedef struct MbsInfoPoint
105 {
106  char *name;
107  char *body_name;
108  double *pt;
109 
112 
113  MbsInfoDData **d_pt; // x y z
114  int is_symmmetric; // asymmetric = 0, symmetric master = 1, symmetric salve = 2
115  char *symmetric_point_name; // the name of the symmetric point (filed if master, NULL if slave or non symetric)
116 
117 } MbsInfoPoint;
118 
122 typedef struct MbsInfoBase
123 {
124  double *gravity;
128 } MbsInfoBase;
129 
133 typedef struct MbsInfoJoint
134 {
135  char *name;
136  int type;
137  int nature;
138 
139  double q0;
140  double qd0;
141  double qdd0;
142 
143  int actuated;
144 
148 
149  int symb_q;
150  int symb_qd;
151  int symb_qdd;
152 
153  MbsInfoRefPoint* parent; // ST parent ref point of the joint
154  char* joint_parent; // ST parent joint of the joint
156 } MbsInfoJoint;
157 
161 typedef struct MbsInfoBody
162 {
163  char *name;
164 
166  char *joint_parent;
167 
168  int n_joint;
170 
171  double mass;
172  double *com;
173  double *inertia;
174 
175  int n_point;
177 
178 } MbsInfoBody;
179 
180 typedef struct MbsInfoBodytree
181 {
182  int n_body;
184 
185  int n_joint;
187 
188  int n_qu;
189  int *qu;
190 
191  int n_qv;
192  int *qv;
193 
194  int n_qc;
195  int *qc;
196 
198  int *qlocked;
199 
201  int *qdriven;
202 
203  int n_qa;
204  int *qa;
205 
206  int n_qrot;
207  int* qrot;
208 
210 
211 typedef struct MbsInfoBall
212 {
213  char *name;
214 
217 
218  int *ignore; // x y z
219 
220 } MbsInfoBall;
221 
222 typedef struct MbsInfoRod
223 {
224  char *name;
225 
228 
229  double length;
230 
231  MbsInfoDData *d_length; // d_data for the length
232  int is_symmmetric; // asymmetric = 0, symmetric master = 1, symmetric salve = 2
233  char *symmetric_rod_name; // the name of the symmetric rod (filed if master, NULL if slave or non symmetric)
234 
235 
236 } MbsInfoRod;
237 
238 typedef struct MbsInfoSolid
239 {
240  char *name;
241 
244 
245  int *ignore; // x y z
246 
247 } MbsInfoSolid;
248 
249 typedef struct MbsInfoCuts
250 {
251  int n_ball;
252  int n_rod;
253  int n_solid;
254 
258 
259 } MbsInfoCuts;
260 
261 typedef struct MbsInfoLink
262 {
263  char *name;
264 
267 
268 } MbsInfoLink;
269 
270 typedef struct MbsInfoLinks
271 {
272  int n_link;
274 
275  int n_link3D;
277 
278 } MbsInfoLinks;
279 
280 
283 typedef struct MbsInfoParameter
284 {
285  char *name;
286  char *description;
287 
288  int type;
289  int n_value;
301 
302  double *value_list;
303  char* string_name;
307 
308  void* val_ptr;
309 
323  /* probably members only used in the past for optimization purpose */
325  // d_value seems to be unused in MBsysC (structure only initialized).
326  // According to the MbsInfoDData contents, it seems to be used for optimization purpose.
327 
329  // is_symmmetric seems to be unused in MBsysC (initialized at 0).
331  // symmetric_parameter_name seems to be unused in MBsysC (initialized at NULL).
333 
334  /* if user model param is a structure name */
336  char* structure_header;
338 
341  /* if user model param is a lut1D or lut2D name */
343  char* structure_lutfile;
345 
349 
350 typedef struct MbsInfoUserModel
351 {
352  char *name;
353  char *description;
356 
358 
359 typedef struct MbsInfoUserModels
360 {
363 
365 
369 typedef struct MbsInfoUserIO
370 {
372  char *name;
376  int type;
378  int size;
382  double *value;
383 } MbsInfoUserIO;
384 
388 typedef struct MbsInfoUserIOs
389 {
393  int n_in;
395  int n_out;
398 
400 
401 typedef struct MbsInfoUserCstr
402 {
406 
408 
409 typedef struct MbsInfoOpti
410 {
413 
416 
419 
422 
425 
426 } MbsInfoOpti;
427 
428 typedef struct MbsInfos
429 {
437 
439  char *mbsfile;
441  char *mbsname;
443  char *padversion;
444 
446  int n_point;
449 
451  int n_sensor;
454 
459 
462  int n_state;
467 
471 
475  int n_joint;
480 
481  // Options
488  int verbose;
489 } MbsInfos;
490 
491 
500 MbsInfos* mbs_info_reader(const char *mbs_filename, int verbose);
501 
502 void mbs_delete_infos(MbsInfos *mbs_infos);
503 
504 #endif
MbsInfoBodytree::qdriven
int * qdriven
Definition: mbs_binder_public.h:201
MbsInfoOpti::n_d_related
int n_d_related
Definition: mbs_binder_public.h:423
MbsInfoOpti::n_d_simplified
int n_d_simplified
Definition: mbs_binder_public.h:411
MbsInfoCuts::n_rod
int n_rod
Definition: mbs_binder_public.h:252
MbsInfoBall::endpoint1
MbsInfoRefPoint * endpoint1
Definition: mbs_binder_public.h:215
MbsInfos::cuts
MbsInfoCuts * cuts
Definition: mbs_binder_public.h:432
UM_NO_TYPE
@ UM_NO_TYPE
Definition: mbs_binder_public.h:19
MbsInfoPoint::pt
double * pt
Array with the coordinates (x, y, z) of the point relative to the origin of the body expressed in the...
Definition: mbs_binder_public.h:108
MbsInfoExtforce::name
char * name
Definition: mbs_binder_public.h:86
MbsInfoParameter::structure_name
char * structure_name
Name of the structure, filled if the parameter is a structure.
Definition: mbs_binder_public.h:335
MbsInfoExtforce::Vit
int Vit
1 if the computation of the sensor linear velocity has been asked, 0 otherwise.
Definition: mbs_binder_public.h:92
MbsInfoBall::endpoint2
MbsInfoRefPoint * endpoint2
Definition: mbs_binder_public.h:216
MbsInfos::n_state
int n_state
Number of different named user state variable in the model.
Definition: mbs_binder_public.h:462
MbsInfoBodytree
Definition: mbs_binder_public.h:180
MbsInfoRefPoint::bodyname
char * bodyname
Name of the body that bear the reference point (origin of the joint chain until first body encounter)...
Definition: mbs_binder_public.h:55
MbsInfos::verbose
int verbose
Verbosity level (not yet implemented everywhere):
Definition: mbs_binder_public.h:488
MbsInfoDData::d_opti
double d_opti
result value of optimization
Definition: mbs_binder_public.h:38
MbsInfoRod::name
char * name
Definition: mbs_binder_public.h:224
MbsInfoBodytree::n_qv
int n_qv
Definition: mbs_binder_public.h:191
MbsInfoParameter::value_list
double * value_list
Vector (index starting at 1) containing the values retrieved from the multibody file.
Definition: mbs_binder_public.h:302
MbsInfoParameter::name
char * name
Name of the parameter in the user model.
Definition: mbs_binder_public.h:285
MbsInfos::state_list
MbsInfoParameter ** state_list
List of the user state variables, there are MbsInfos::n_state elements.
Definition: mbs_binder_public.h:466
MbsInfoUserIOs::n_out
int n_out
Number of OUTPUT user IO in the system.
Definition: mbs_binder_public.h:395
MbsInfoRefPoint
Structure defining the parent point of a body.
Definition: mbs_binder_public.h:53
MbsInfoJoint::qdd0
double qdd0
Initial acceleration of the joint.
Definition: mbs_binder_public.h:141
MbsInfoOpti::d_forced_list
MbsInfoDData ** d_forced_list
Definition: mbs_binder_public.h:415
MbsInfoExtforce::joint_parent
char * joint_parent
parent joint of the current body (should be always NULL, if it is a parent point) ExtForce on a joint...
Definition: mbs_binder_public.h:88
MbsInfos::base
MbsInfoBase * base
Definition: mbs_binder_public.h:430
MbsInfoOpti::n_d_optimized
int n_d_optimized
Definition: mbs_binder_public.h:417
MbsInfoBase::n_base_point
int n_base_point
Number of point of interest (extremities of joint bearing a sensor plus anchor point) defined on the ...
Definition: mbs_binder_public.h:125
UM_INT
@ UM_INT
Definition: mbs_binder_public.h:26
MbsInfoPoint::body_name
char * body_name
Name of the body holding the point.
Definition: mbs_binder_public.h:107
MbsInfos::mbsfile
char * mbsfile
Provided filepath of the loaded multibody system.
Definition: mbs_binder_public.h:439
MbsInfoUserIOs::user_IO_list
MbsInfoUserIO ** user_IO_list
The detail of each user IO in the system.
Definition: mbs_binder_public.h:397
MbsInfoJoint
This structure contains all informations about a joint.
Definition: mbs_binder_public.h:133
MbsInfoDData::MBSdata_d_ptr
double * MBSdata_d_ptr
link in the creation of mbs_data
Definition: mbs_binder_public.h:46
MbsInfoDData::is_related
int is_related
unrelated = 0, master = 1, equal salve = 2, opposite slave = 3
Definition: mbs_binder_public.h:41
MbsInfoCuts
Definition: mbs_binder_public.h:249
UM_LUT2D
@ UM_LUT2D
Definition: mbs_binder_public.h:23
MbsInfoExtforce::Omp
int Omp
1 if the computation of the sensor angular acceleration has been asked, 0 otherwise.
Definition: mbs_binder_public.h:96
MbsInfoExtforce::Om
int Om
1 if the computation of the sensor angular velocity has been asked, 0 otherwise.
Definition: mbs_binder_public.h:93
MbsInfoBodytree::n_qrot
int n_qrot
Definition: mbs_binder_public.h:206
MbsInfoDData::d_max
double d_max
bounds values for optimization
Definition: mbs_binder_public.h:37
MbsInfoUserCstr::n_usercstr
int n_usercstr
Definition: mbs_binder_public.h:403
MbsInfoExtforce::parent_point
MbsInfoRefPoint * parent_point
parent point of the sensor (NULL if it is a parent joint)
Definition: mbs_binder_public.h:87
MbsInfoParameter::d_value
MbsInfoDData ** d_value
d_data for the value.
Definition: mbs_binder_public.h:324
MbsInfoBase::gravity
double * gravity
Array with the component (x, y, z) of the gravity vector expressed in the inertial frame.
Definition: mbs_binder_public.h:124
MbsInfoCuts::n_ball
int n_ball
Definition: mbs_binder_public.h:251
MbsInfoBody::mass
double mass
Mass of the body.
Definition: mbs_binder_public.h:171
MbsInfoBodytree::qu
int * qu
Definition: mbs_binder_public.h:189
MbsInfoRod::symmetric_rod_name
char * symmetric_rod_name
Definition: mbs_binder_public.h:233
MbsInfoBodytree::n_joint
int n_joint
Definition: mbs_binder_public.h:185
MbsInfoUserIO::size
int size
Number of values in the user IO.
Definition: mbs_binder_public.h:378
MbsInfoSensor::Acc
int Acc
1 if the computation of the sensor linear acceleration has been asked, 0 otherwise....
Definition: mbs_binder_public.h:74
MbsInfos
Definition: mbs_binder_public.h:428
MbsInfoUserIO::type
int type
Nature of the user IO:
Definition: mbs_binder_public.h:376
MbsInfoPoint::name
char * name
Name of the point.
Definition: mbs_binder_public.h:106
MbsInfoPoint::sensor
MbsInfoSensor * sensor
Pointer to a sensor structure if a sensor is defined on the point.
Definition: mbs_binder_public.h:110
MbsInfoBase::base_point_list
MbsInfoPoint ** base_point_list
Array of pointers to the MDS_point_strct describing each point of the MBS.
Definition: mbs_binder_public.h:126
MbsInfoJoint::name
char * name
Name of the joint.
Definition: mbs_binder_public.h:135
MbsInfoBodytree::qv
int * qv
Definition: mbs_binder_public.h:192
UM_VECTOR
@ UM_VECTOR
Definition: mbs_binder_public.h:21
MbsInfoSolid
Definition: mbs_binder_public.h:238
MbsInfoCuts::rod_list
MbsInfoRod ** rod_list
Definition: mbs_binder_public.h:256
MbsInfoUserModel
Definition: mbs_binder_public.h:350
MbsInfoPoint::symmetric_point_name
char * symmetric_point_name
Definition: mbs_binder_public.h:115
MbsInfoBodytree::qa
int * qa
Definition: mbs_binder_public.h:204
MbsInfos::extforce_point_list
int * extforce_point_list
List of the point index (in MbsInfos::point_list) that has a external force.
Definition: mbs_binder_public.h:458
MbsInfoUserModel::parameter_list
MbsInfoParameter ** parameter_list
Definition: mbs_binder_public.h:355
MbsInfoBodytree::qc
int * qc
Definition: mbs_binder_public.h:195
MbsInfoBody::point_list
MbsInfoPoint ** point_list
Array of pointers to the MDS_point_strct describing each point of current body.
Definition: mbs_binder_public.h:176
MbsInfoBody::inertia
double * inertia
Array with the inertia tensor (Ixx, Ixy, Ixz, Iyy, Iyz, Izz) of the body relative to the center of ma...
Definition: mbs_binder_public.h:173
MbsInfoJoint::symmetric_joint_name
char * symmetric_joint_name
the name of the symmetric joint (filed if master, NULL if slave or non symmetric)
Definition: mbs_binder_public.h:147
MbsInfoJoint::actuated
int actuated
For inverse dynamic only: 1 if actuated, 0 otherwise.
Definition: mbs_binder_public.h:143
MbsInfoExtforce::Pos
int Pos
1 if the computation of the sensor position has been asked, 0 otherwise.
Definition: mbs_binder_public.h:90
MbsInfoJoint::d_qf
MbsInfoDData * d_qf
d_data for the forced q
Definition: mbs_binder_public.h:145
MbsInfoBodytree::n_qa
int n_qa
Definition: mbs_binder_public.h:203
MbsInfoBodytree::qlocked
int * qlocked
Definition: mbs_binder_public.h:198
MbsInfoExtforce::Jdqd
int Jdqd
1 if the computation of the sensor jdqd term has been asked, 0 otherwise. Mutually exclusive with Acc...
Definition: mbs_binder_public.h:95
MbsInfoBall::name
char * name
Definition: mbs_binder_public.h:213
MbsInfos::sensor_list
MbsInfoSensor ** sensor_list
Pointer to a list of sensor.
Definition: mbs_binder_public.h:477
MbsInfoParameter::type
int type
Type of the parameter between 1 and 7.
Definition: mbs_binder_public.h:288
ParamType
ParamType
Definition: mbs_binder_public.h:18
MbsInfoJoint::qd0
double qd0
Initial velocity of the joint.
Definition: mbs_binder_public.h:140
MbsInfoSensor::joint_parent
char * joint_parent
parent joint of the current body (NULL if it is a parent point)
Definition: mbs_binder_public.h:67
MbsInfoUserModel::description
char * description
Description of the user model.
Definition: mbs_binder_public.h:353
MbsInfos::user_IOs
MbsInfoUserIOs * user_IOs
Definition: mbs_binder_public.h:435
MbsInfoParameter
Description of a user model parameter loaded from the mbs file.
Definition: mbs_binder_public.h:283
MbsInfoSensor::Om
int Om
1 if the computation of the sensor angular velocity has been asked, 0 otherwise.
Definition: mbs_binder_public.h:73
MbsInfoParameter::structure_header
char * structure_header
Header name with path (relative or absolute) of header describing a structure parameter.
Definition: mbs_binder_public.h:337
MbsInfoParameter::val_ptr
void * val_ptr
Pointer to the memory storing the value.
Definition: mbs_binder_public.h:308
mbs_delete_infos
void mbs_delete_infos(MbsInfos *mbs_infos)
Definition: mbs_loader_public.c:1371
MbsInfoUserModel::n_parameter
int n_parameter
Definition: mbs_binder_public.h:354
MbsInfoSensor::reference_joint
char * reference_joint
joint of the reference frame - relative sensor (NULL if the sensor is relative to the base)....
Definition: mbs_binder_public.h:68
MbsInfoParameter::symmetric_parameter_name
char * symmetric_parameter_name
The name of the symmetric parameter.
Definition: mbs_binder_public.h:330
MbsInfoExtforce::Acc
int Acc
1 if the computation of the sensor linear acceleration has been asked, 0 otherwise....
Definition: mbs_binder_public.h:94
MbsInfoSolid::endpoint2
MbsInfoRefPoint * endpoint2
Definition: mbs_binder_public.h:243
UM_STRING
@ UM_STRING
Definition: mbs_binder_public.h:27
MbsInfoJoint::type
int type
Joint type: T1=1, T2=2, T3=3, R1=4, R2=5, R3=6.
Definition: mbs_binder_public.h:136
UM_SCALAR
@ UM_SCALAR
Definition: mbs_binder_public.h:20
MbsInfoSolid::ignore
int * ignore
Definition: mbs_binder_public.h:245
MbsInfoUserIOs
Definition: mbs_binder_public.h:388
MbsInfoUserIO::name
char * name
Name of the user IO.
Definition: mbs_binder_public.h:372
MbsInfoOpti::d_resulting_list
MbsInfoDData ** d_resulting_list
Definition: mbs_binder_public.h:421
MbsInfoUserIOs::n_user_IO
int n_user_IO
Number of user IO in the system.
Definition: mbs_binder_public.h:391
MbsInfos::n_state_value
int n_state_value
Number of user state values.
Definition: mbs_binder_public.h:464
MbsInfoUserCstr::user_cstr_mat
int ** user_cstr_mat
Definition: mbs_binder_public.h:405
MbsInfoJoint::is_symmmetric
int is_symmmetric
asymmetric = 0, symmetric master = 1, symmetric salve = 2
Definition: mbs_binder_public.h:146
MbsInfoUserCstr
Definition: mbs_binder_public.h:401
UM_STATE
@ UM_STATE
Definition: mbs_binder_public.h:24
MbsInfoSolid::name
char * name
Definition: mbs_binder_public.h:240
MbsInfoBodytree::n_qc
int n_qc
Definition: mbs_binder_public.h:194
MbsInfoPoint::is_symmmetric
int is_symmmetric
Definition: mbs_binder_public.h:114
MbsInfoJoint::parent
MbsInfoRefPoint * parent
Definition: mbs_binder_public.h:153
MbsInfoOpti
Definition: mbs_binder_public.h:409
MbsInfoOpti::d_optimized_list
MbsInfoDData ** d_optimized_list
Definition: mbs_binder_public.h:418
MbsInfos::n_sensor
int n_sensor
Number of sensor in the model.
Definition: mbs_binder_public.h:451
MbsInfoOpti::d_simplified_list
MbsInfoDData ** d_simplified_list
Definition: mbs_binder_public.h:412
MbsInfoBodytree::body_list
MbsInfoBody ** body_list
Definition: mbs_binder_public.h:183
MbsInfoBody::n_point
int n_point
Number of point defined on the body.
Definition: mbs_binder_public.h:175
MbsInfos::user_cstr
MbsInfoUserCstr * user_cstr
Definition: mbs_binder_public.h:436
MbsInfoSensor::Pos
int Pos
1 if the computation of the sensor position has been asked, 0 otherwise.
Definition: mbs_binder_public.h:70
MbsInfoBody
This structure contains all informations about a body.
Definition: mbs_binder_public.h:161
MbsInfoRod::is_symmmetric
int is_symmmetric
Definition: mbs_binder_public.h:232
MbsInfoOpti::n_d_forced
int n_d_forced
Definition: mbs_binder_public.h:414
MbsInfoBodytree::n_qu
int n_qu
Definition: mbs_binder_public.h:188
UM_LUT1D
@ UM_LUT1D
Definition: mbs_binder_public.h:22
MbsInfoBodytree::n_qdriven
int n_qdriven
Definition: mbs_binder_public.h:200
MbsInfoPoint::extforce
MbsInfoExtforce * extforce
Pointer to an external force sensor structure if it is defined on the point.
Definition: mbs_binder_public.h:111
MbsInfoParameter::string_name
char * string_name
Pointer containing the string name (if type is 8). NULL otherwise.
Definition: mbs_binder_public.h:306
MbsInfos::links
MbsInfoLinks * links
Definition: mbs_binder_public.h:433
MbsInfoPoint::d_pt
MbsInfoDData ** d_pt
Definition: mbs_binder_public.h:113
MbsInfoOpti::d_related_list
MbsInfoDData ** d_related_list
Definition: mbs_binder_public.h:424
MbsInfoSensor::name
char * name
Name of the sensor.
Definition: mbs_binder_public.h:65
MbsInfoUserCstr::constr_process
int constr_process
Definition: mbs_binder_public.h:404
MbsInfoCuts::n_solid
int n_solid
Definition: mbs_binder_public.h:253
MbsInfoUserIO
Definition: mbs_binder_public.h:369
MbsInfoBody::joint_parent
char * joint_parent
parent joint of the current body (NULL if it is a parent point)
Definition: mbs_binder_public.h:166
MbsInfoOpti::n_d_resulting
int n_d_resulting
Definition: mbs_binder_public.h:420
MbsInfoRod
Definition: mbs_binder_public.h:222
MbsInfoParameter::n_value
int n_value
Number of values in the parameter.
Definition: mbs_binder_public.h:300
MbsInfoUserModels::n_user_model
int n_user_model
Definition: mbs_binder_public.h:361
MbsInfoBody::com
double * com
Array with the coordinate (x, y, z) of the center of mass of the body relative to the origin of the b...
Definition: mbs_binder_public.h:172
MbsInfoSensor
This structure contains all information about a sensor defined on the MBS structure.
Definition: mbs_binder_public.h:63
MbsInfoJoint::symb_q
int symb_q
Flag to generate symbol for position.
Definition: mbs_binder_public.h:149
MbsInfoDData
Definition: mbs_binder_public.h:32
MbsInfoParameter::structure_lutfile
char * structure_lutfile
File and path (relative or absolute) to the file containing the Look-up-Table dats.
Definition: mbs_binder_public.h:344
MbsInfoBodytree::n_qlocked
int n_qlocked
Definition: mbs_binder_public.h:197
MbsInfos::opti
MbsInfoOpti * opti
DEPRECATED Specific structure dedicated to a previous project using optimization.
Definition: mbs_binder_public.h:470
MbsInfoJoint::nature
int nature
Nature of the joint: independent=1, dependent=2, driven=3, locked=4.
Definition: mbs_binder_public.h:137
MbsInfos::point_list
MbsInfoPoint ** point_list
List of all anchors point in the model
Definition: mbs_binder_public.h:448
MbsInfoBall::ignore
int * ignore
Definition: mbs_binder_public.h:218
MbsInfoBase
Structure handling the informations defined on the base of the MBS.
Definition: mbs_binder_public.h:122
MbsInfoSensor::Rot
int Rot
1 if the computation of the sensor rotation matrix has been asked, 0 otherwise.
Definition: mbs_binder_public.h:71
MbsInfoPoint
This structure handle everything that a point on a MBS structure can handle (sensor,...
Definition: mbs_binder_public.h:104
MbsInfos::n_joint
int n_joint
Number of joints in the model
Definition: mbs_binder_public.h:475
MbsInfoDData::d_0
double d_0
initial value for optimization
Definition: mbs_binder_public.h:35
MbsInfoRefPoint::pointname
char * pointname
Name of the reference point on the previous body.
Definition: mbs_binder_public.h:56
MbsInfoRod::endpoint1
MbsInfoRefPoint * endpoint1
Definition: mbs_binder_public.h:226
MbsInfoJoint::children_body
MbsInfoBody * children_body
Body direct children of the joint.
Definition: mbs_binder_public.h:155
MbsInfoCuts::solid_list
MbsInfoSolid ** solid_list
Definition: mbs_binder_public.h:257
MbsInfoBodytree::qrot
int * qrot
Definition: mbs_binder_public.h:207
MbsInfoSolid::endpoint1
MbsInfoRefPoint * endpoint1
Definition: mbs_binder_public.h:242
MbsInfoDData::d_type
int d_type
other = 0; simplified = 1, forced = 2, optimized = 3, resulting = 4, related = 5,
Definition: mbs_binder_public.h:34
MbsInfos::bodytree
MbsInfoBodytree * bodytree
Definition: mbs_binder_public.h:431
MbsInfoRod::length
double length
Definition: mbs_binder_public.h:229
MbsInfoUserModels::user_model_list
MbsInfoUserModel ** user_model_list
Definition: mbs_binder_public.h:362
MbsInfoCuts::ball_list
MbsInfoBall ** ball_list
Definition: mbs_binder_public.h:255
MbsInfoBall
Definition: mbs_binder_public.h:211
MbsInfoBody::joint_list
MbsInfoJoint ** joint_list
Array of pointers to the MDS_joint_strct describing each joint leaving the body.
Definition: mbs_binder_public.h:169
MbsInfoSensor::parent_point
MbsInfoRefPoint * parent_point
parent point of the sensor (NULL if it is a parent joint)
Definition: mbs_binder_public.h:66
MbsInfoExtforce::Rot
int Rot
1 if the computation of the sensor rotation matrix has been asked, 0 otherwise.
Definition: mbs_binder_public.h:91
MbsInfoDData::d_ptr
double * d_ptr
Definition: mbs_binder_public.h:44
MbsInfoUserIO::value
double * value
Value set at loading.
Definition: mbs_binder_public.h:382
MbsInfoParameter::description
char * description
Description of the parameter in the user model.
Definition: mbs_binder_public.h:286
MbsInfoBodytree::n_body
int n_body
Definition: mbs_binder_public.h:182
UM_STRUCTURE
@ UM_STRUCTURE
Definition: mbs_binder_public.h:25
MbsInfoRod::endpoint2
MbsInfoRefPoint * endpoint2
Definition: mbs_binder_public.h:227
MbsInfos::user_models
MbsInfoUserModels * user_models
Definition: mbs_binder_public.h:434
MbsInfoJoint::q0
double q0
Initial position of the joint.
Definition: mbs_binder_public.h:139
MbsInfoDData::d_min
double d_min
bounds values for optimization
Definition: mbs_binder_public.h:36
MbsInfoJoint::symb_qdd
int symb_qdd
Flag to generate symbol for acceleration.
Definition: mbs_binder_public.h:151
MbsInfos::extforce_list
MbsInfoExtforce ** extforce_list
Pointer to a list of external force sensor
Definition: mbs_binder_public.h:479
MbsInfoBase::base_body_name
char * base_body_name
baseBodyName as defined in the base body in mbs/json file
Definition: mbs_binder_public.h:127
MbsInfoUserModel::name
char * name
Definition: mbs_binder_public.h:352
MbsInfoExtforce::Jac
int Jac
1 if the computation of the sensor Jacobian ( ) has been asked, 0 otherwise.
Definition: mbs_binder_public.h:97
MbsInfoJoint::joint_parent
char * joint_parent
Definition: mbs_binder_public.h:154
MbsInfoBody::name
char * name
Name of the body.
Definition: mbs_binder_public.h:163
MbsInfoParameter::flag_PRJPATH
int flag_PRJPATH
Flag to indicate that the path to the data file start from the project path (stored as "PRJPATH" in m...
Definition: mbs_binder_public.h:342
MbsInfoBodytree::joint_list
MbsInfoJoint ** joint_list
Definition: mbs_binder_public.h:186
mbs_info_reader
MbsInfos * mbs_info_reader(const char *mbs_filename, int verbose)
Read the mbs file to retrieve size informations (number of joints...).
Definition: mbs_loader_public.c:17
MbsInfoSensor::Jdqd
int Jdqd
1 if the computation of the sensor jdqd term has been asked, 0 otherwise. Mutually exclusive with Acc...
Definition: mbs_binder_public.h:75
MbsInfoRod::d_length
MbsInfoDData * d_length
Definition: mbs_binder_public.h:231
MbsInfos::mbsname
char * mbsname
Name of the project in the multibody system file.
Definition: mbs_binder_public.h:441
MbsInfos::padversion
char * padversion
Version number of the MBsysPAD that last modified the file.
Definition: mbs_binder_public.h:443
MbsInfos::n_extforce
int n_extforce
Number of external force in the model.
Definition: mbs_binder_public.h:456
MbsInfos::n_point
int n_point
Number of anchor points.
Definition: mbs_binder_public.h:446
MbsInfoParameter::is_symmmetric
int is_symmmetric
asymmetric = 0, symmetric master = 1, symmetric salve = 2.
Definition: mbs_binder_public.h:328
MbsInfoBody::point_parent
MbsInfoRefPoint * point_parent
Description of the parent point of the current body. (NULL if it is a parent joint)
Definition: mbs_binder_public.h:165
MbsInfoUserIOs::n_in
int n_in
Number of INPUT user IO in the system.
Definition: mbs_binder_public.h:393
MbsInfos::sensor_point_list
int * sensor_point_list
List of the point index (in MbsInfos::point_list) that has a sensor.
Definition: mbs_binder_public.h:453
MbsInfoDData::master_d_ptr
struct MbsInfoDData * master_d_ptr
Definition: mbs_binder_public.h:42
MbsInfoUserModels
Definition: mbs_binder_public.h:359
MbsInfoSensor::Omp
int Omp
1 if the computation of the sensor angular acceleration has been asked, 0 otherwise.
Definition: mbs_binder_public.h:76
MbsInfoJoint::symb_qd
int symb_qd
Flag to generate symbol for velocity.
Definition: mbs_binder_public.h:150
MbsInfoSensor::Vit
int Vit
1 if the computation of the sensor linear velocity has been asked, 0 otherwise.
Definition: mbs_binder_public.h:72
MbsInfos::all_joint_list
MbsInfoJoint ** all_joint_list
Ordered list of all joints in the model
Definition: mbs_binder_public.h:473
MbsInfoExtforce
This structure contains all information about an external force sensor defined on the MBS structure.
Definition: mbs_binder_public.h:84
MbsInfoSensor::Jac
int Jac
1 if the computation of the sensor Jacobian ( ) has been asked, 0 otherwise.
Definition: mbs_binder_public.h:77
MbsInfoBody::n_joint
int n_joint
Number of joints leaving the body.
Definition: mbs_binder_public.h:168