Robotran C Documentation
mbs_aux.h
Go to the documentation of this file.
1 //-------------------------------
2 // UCL-CEREM-MBS
3 //
4 // @version MBsysLab_s 1.7.a
5 //
6 // Creation : 2008 by JF Collard
7 // Last update : 01/10/2008
8 //-------------------------------
9 //
10 // Gestion via Bugzilla :
11 // 01/10/2008 : JFC : Bug n 39
12 //
13 
14 #ifndef mbs_aux_h
15 #define mbs_aux_h
16 /*--------------------*/
17 
18 #include "mbs_sensor_struct.h"
19 #include "mbs_data.h"
20 
21 typedef struct MbsAux_tag
22 {
23  double norm_h;
24  double NRerr;
27 
29  double *h;
30  double **Jac;
31  double *huserc;
32  double **Juserc;
33  double **mJv;
34  int *ind_mJv;
35  double *Qc;
36 
37  double *mJv_h;
38 
39  int nquc;
40  int *iquc;
41  double **Juct; // JFC: 15/01/2008 : changement nom
42 
43  double **Bvuc;
44 
45  double *Jvtlambda;
46  double **Jvt;
49  int *ind_Jvt;
50 
54 
55  double *jdqd;
56  double *jdqduserc;
57 
58  double *bp;
59 
60  MbsSensor *psens; // temporary sensor pointer
61 
62  double *q_save;
64 
65  double **M;
66  double *c;
67  double *F;
68 
69  double **BtMvu, **BtMB;
70  double **BtMvv;
71  double *BtFv,*MBMb;
72 
73  double **Mruc;
74  double *Fruc;
75 
76  double **Mr;
77  double *Fr;
78 
79  double *p_Mr;
81 
82  double *Qa;
83 
84  double **A;
85  int *ind_A;
86  double *b;
87 
88  double *w;
89  double **v;
91 
93  double *phi;
94  double *R;
95  double *Rruc;
96  double *Rred;
97 
98 } MbsAux;
99 
100 
101 MbsAux* initMbsAux(MbsData *mbs_data);
102 
103 void freeMbsAux(MbsAux* mbs_aux, MbsData *mbs_data);
104 
105 
106 #endif
MbsAux_tag::NRerr
double NRerr
Definition: mbs_aux.h:24
MbsAux_tag::bp
double * bp
Vector (index starting at 1) of size [Ncons] (or NULL if Ncons==0).
Definition: mbs_aux.h:58
MbsAux_tag::BtFv
double * BtFv
Definition: mbs_aux.h:71
MbsAux_tag::mJv
double ** mJv
Array (index starting at 1) of size [Ncons x nqv] (or NULL if Ncons==0).
Definition: mbs_aux.h:33
MbsAux_tag::BtMvv
double ** BtMvv
Array (index starting at 1) of size [(nqu + nqc) x nqv].
Definition: mbs_aux.h:70
MbsAux_tag::norm_h
double norm_h
Definition: mbs_aux.h:23
MbsAux_tag::Qc
double * Qc
Vector (index starting at 1) of size [nqc].
Definition: mbs_aux.h:35
MbsAux_tag::Mr
double ** Mr
Array (index starting at 1) of size [nqu x nqu].
Definition: mbs_aux.h:76
MbsAux_tag::MAX_NR_ITER
int MAX_NR_ITER
max number of iteration for NR procedure
Definition: mbs_aux.h:25
MbsAux_tag::ind_Jvt
int * ind_Jvt
Definition: mbs_aux.h:49
MbsAux_tag::ind_mJv
int * ind_mJv
Vector (index starting at 1) of size [Ncons] (or NULL if Ncons==0).
Definition: mbs_aux.h:34
MbsAux_tag::jdqduserc
double * jdqduserc
Definition: mbs_aux.h:56
mbs_data.h
MbsAux_tag::qrot_qv_indvec
int * qrot_qv_indvec
vec [ivec_1, njoint] containing 1 or 0, depending on the nature of the joint : if rotational AND qv =...
Definition: mbs_aux.h:53
MbsAux_tag::iquc
int * iquc
Definition: mbs_aux.h:40
MbsAux_tag::nquc
int nquc
store nqu+nqc
Definition: mbs_aux.h:39
MbsAux_tag::BtMvu
double ** BtMvu
Definition: mbs_aux.h:69
MbsAux_tag::MBMb
double * MBMb
Vectors (index starting at 1) of size [nqu].
Definition: mbs_aux.h:71
MbsAux_tag
Definition: mbs_aux.h:21
MbsAux_tag::ind_A
int * ind_A
Vector (index starting at 1) of size [njoint].
Definition: mbs_aux.h:85
MbsAux_tag::Qa
double * Qa
Vector (index starting at 1) of size [njoint].
Definition: mbs_aux.h:82
freeMbsAux
void freeMbsAux(MbsAux *mbs_aux, MbsData *mbs_data)
Definition: mbs_aux.c:174
mbs_sensor_struct.h
MbsAux_tag::Rruc
double * Rruc
vector of size [nqu+nqc x 1] that contains the reduced residue for the equations of motions after the...
Definition: mbs_aux.h:95
MbsAux_tag::p_Mr
double * p_Mr
Vector (index starting at 1) of size [nqu].
Definition: mbs_aux.h:79
MbsAux_tag::psens
MbsSensor * psens
Definition: mbs_aux.h:60
MbsAux_tag::Juserc
double ** Juserc
Array (index starting at 1) of size [Nuserc x njoint] (or NULL if Nuserc==0).
Definition: mbs_aux.h:32
MbsAux_tag::M
double ** M
Array (index starting at 1) of size [njoint x njoint].
Definition: mbs_aux.h:65
MbsAux_tag::h
double * h
Vector (index starting at 1) of size [Ncons] (or NULL if Ncons==0).
Definition: mbs_aux.h:29
MbsAux_tag::A
double ** A
Array (index starting at 1) of size [nqu x njoint].
Definition: mbs_aux.h:84
MbsAux_tag::BtMB
double ** BtMB
Arrays (index starting at 1) of size [(nqu + nqc) x (nqu + nqc)].
Definition: mbs_aux.h:69
MbsAux_tag::huserc
double * huserc
Vector (index starting at 1) of size [Nuserc] (or NULL if Nuserc==0).
Definition: mbs_aux.h:31
MbsAux_tag::Fruc
double * Fruc
Vector (index starting at 1) of size [nqu + nqc].
Definition: mbs_aux.h:74
MbsAux_tag::Jvtlambda
double * Jvtlambda
Intermediate array to store and compute lambda.
Definition: mbs_aux.h:45
MbsAux_tag::qrot_qc_indvec
int * qrot_qc_indvec
vec [ivec_1, njoint] containing 1 or 0, depending on the nature of the joint : if rotational AND qc =...
Definition: mbs_aux.h:52
MbsAux_tag::Jac
double ** Jac
Array (index starting at 1) of size [Ncons x njoint] (or NULL if Ncons==0).
Definition: mbs_aux.h:30
MbsAux_tag::Mruc
double ** Mruc
Array (index starting at 1) of size [(nqu + nqc) x (nqu + nqc)].
Definition: mbs_aux.h:73
MbsAux_tag::w
double * w
Vector (index starting at 1) of size [njoint].
Definition: mbs_aux.h:88
MbsAux_tag::Rred
double * Rred
vector of size [nqu x 1] that contains the reduced residue of the equations of motion after the secon...
Definition: mbs_aux.h:96
MbsAux_tag::jdqd
double * jdqd
Vector (index starting at 1) of size [Ncons].
Definition: mbs_aux.h:55
MbsAux_tag::Juct
double ** Juct
Definition: mbs_aux.h:41
MbsAux_tag::n_iter_close_loop
int n_iter_close_loop
number of iterations after closing loop procedure in mbs_close_geo
Definition: mbs_aux.h:26
MbsAux_tag::close_anim
int close_anim
Definition: mbs_aux.h:63
MbsAux_tag::Jvt
double ** Jvt
Definition: mbs_aux.h:48
initMbsAux
MbsAux * initMbsAux(MbsData *mbs_data)
Definition: mbs_aux.c:18
MbsAux_tag::R
double * R
vector of size [njoint x 1] that contains R=phi-c; (unconstrained equations of motion for the mbs on ...
Definition: mbs_aux.h:94
MbsAux_tag::Fr
double * Fr
Vector (index starting at 1) of size [nqu].
Definition: mbs_aux.h:77
MbsAux_tag::Bvuc
double ** Bvuc
Array (index starting at 1) of size [nqv x nquc] (or NULL if Nuserc==0).
Definition: mbs_aux.h:43
MbsData
Definition: mbs_data.h:149
set_plot
void set_plot(double value, char *label)
function called by the user to plot a curve (void in this case)
Definition: void_set_plot.c:18
MbsAux_tag::mJv_h
double * mJv_h
Value of the independant constraints ( )
Definition: mbs_aux.h:37
MbsSensor
Definition: mbs_sensor_struct.h:18
MbsAux_tag::c
double * c
Vector (index starting at 1) of size [njoint].
Definition: mbs_aux.h:66
MbsAux_tag::phi
double * phi
vector of size [njoint x 1] that contains the results of symbolic file invdyna.
Definition: mbs_aux.h:93
MbsAux_tag::compute_Qc_vec
int * compute_Qc_vec
Vector (index starting at 1) of size [njoint].
Definition: mbs_aux.h:80
MbsAux_tag::q_save
double * q_save
Vector (index starting at 1) of size [njoint].
Definition: mbs_aux.h:62
MbsAux_tag::qrot_qu_indvec
int * qrot_qu_indvec
vec [ivec_1, njoint] containing 1 or 0, depending on the nature of the joint : if rotational AND qu =...
Definition: mbs_aux.h:51
MbsAux_tag::v
double ** v
Array (index starting at 1) of size [njoint x njoint].
Definition: mbs_aux.h:90
MbsAux_tag::F
double * F
vector of size [njoint] that containts c(q,qd)-Q(q,qd)
Definition: mbs_aux.h:67
user_realtime.h
MbsAux_tag::b
double * b
Vector (index starting at 1) of size [njoint].
Definition: mbs_aux.h:86