Robotran C Documentation
mbs_kalman.h
Go to the documentation of this file.
1 //---------------------------
2 // UCL-CEREM-MBS
3 //
4 // @version MBsysLab_s 1.7.a
5 //
6 // Creation : 2006
7 // Last update : 01/10/2008
8 //---------------------------
9 
10 #ifndef mbs_kalman_h
11 #define mbs_kalman_h
12 /*--------------------*/
13 
14 #include "mbs_data.h"
15 #include "mbs_statespace.h"
16 
25 int mbs_compute_kalmanDcpt(MbsSS *ss, MbsSS *sskal, double **T, int *nxc_ptr);
26 
27 
28 
29 /*--------------------*/
30 #endif
MbsData::qa
int * qa
Array with the indices of actuated articulations (only for inverse dynamic).
Definition: mbs_data.h:180
useful_functions.h
MbsData::nqv
int nqv
Number of dependent articulations.
Definition: mbs_data.h:170
mbs_data.h
MbsData::nqu
int nqu
Number of independent articulations.
Definition: mbs_data.h:165
lubksb
void lubksb(double **a, int n, int *indx, double b[])
Definition: lubksb.c:10
copy_dmat_0
void copy_dmat_0(double **tab_src, double **tab_dest, int nb_r, int nb_c)
Copy the content of a [nb_r times nb_c] matrix of doubles to a second matrix, starting with index 0.
Definition: mbs_matrix.c:363
mbs_project_interface.h
free_ivec_0
void free_ivec_0(int *vec)
release memory for a vector of integers, starting with index 0
Definition: mbs_1D_array.c:415
free_dmat_0
void free_dmat_0(double **mat)
release memory for a matrix of doubles, starting at index 0
Definition: mbs_matrix.c:293
invdynared
int invdynared(MbsAux *mbs_aux, MbsData *s)
Compute the required forces ont the actuated joints in a configuration.
Definition: mbs_invdynared.c:26
zeros_dmat_0
void zeros_dmat_0(double **mat, int nb_r, int nb_c)
set all the element of a [nb_r times nb_c] matrix of doubles to zero, starting with index 0
Definition: mbs_matrix.c:754
ludcmp
int ludcmp(double **a, int n, int *indx, double *d)
LU decomposition of a matrix with index starting at 1.
Definition: ludcmp.c:19
mbs_linalg.h
MBSfun.h
MbsSS::B
double ** B
input matrix [nx nu]
Definition: mbs_statespace_struct.h:20
mbs_svdDcmp_0
int mbs_svdDcmp_0(double **A, int x, int y, double **U, double **S, double **VT)
Realize the singular value decomposition.
Definition: svdcmp_lapack.c:78
get_dmat_0
double ** get_dmat_0(int nb_r, int nb_c)
create (with memory allocation) a [nb_r times nb_c] matrix of doubles, starting at index 0
Definition: mbs_matrix.c:238
MbsSS
The State-space representation starts at index 0.
Definition: mbs_statespace_struct.h:10
mbs_msg
void mbs_msg(char *msg,...)
Send a message.
Definition: mbs_message.c:76
MbsSS::A
double ** A
state space matrix [nx nx]
Definition: mbs_statespace_struct.h:19
MbsData::qu
int * qu
Array with the indices of the independent articulations (free)
Definition: mbs_data.h:174
MbsData::qv
int * qv
Array with the indices of the dependent articulations .
Definition: mbs_data.h:182
MbsData::Qc
double * Qc
Array with the value of joint force introduced in driven joint to respect the user function.
Definition: mbs_data.h:233
_MBS_ERR_MOD_SPEC_12
#define _MBS_ERR_MOD_SPEC_12
Generic error number Module specific errors range from -11 to -19 please read the error message a...
Definition: mbs_errors_names.h:168
MbsData::nqdriven
int nqdriven
Number of driven articulations.
Definition: mbs_data.h:168
MbsSS::ny
int ny
number of output (limited to 2*nqu)
Definition: mbs_statespace_struct.h:17
mult_dmat_0
void mult_dmat_0(double **A, double **B, double **C, int n1, int n2, int n3)
function to multiply two matrices: A * B = C [n1 n2] [n2 n3] = [n1 n3]
Definition: mbs_matrix.c:767
nrfct.h
transpose_dmat_0
void transpose_dmat_0(double **tab_src, double **tab_dest, int nb_r, int nb_c)
Transpose a [nb_r times nb_c] matrix of doubles and store the results in a [y times nb_r] matrix,...
Definition: mbs_matrix.c:440
mbs_message.h
get_ivec_0
int * get_ivec_0(int l_v)
create (with memory allocation) a vector (length l_v) of integers, starting at index 0
Definition: mbs_1D_array.c:399
MbsData
Definition: mbs_data.h:149
mbs_compute_kalmanDcpt
int mbs_compute_kalmanDcpt(MbsSS *ss, MbsSS *sskal, double **T, int *nxc_ptr)
compute the Kalman decomposition for a given state space representation.
Definition: mbs_kalman.c:31
MbsSS::C
double ** C
output matrix [ny nx]
Definition: mbs_statespace_struct.h:21
zeros_dvec_1
void zeros_dvec_1(double *vec)
set all the element of a vector of doubles to zero, starting with index 1
Definition: mbs_1D_array.c:1353
mbs_compute_kalmanDcpt
int mbs_compute_kalmanDcpt(MbsSS *ss, MbsSS *sskal, double **T, int *nxc_ptr)
compute the Kalman decomposition for a given state space representation
Definition: mbs_kalman.c:31
mbs_over_under_determined
int mbs_over_under_determined(double **A, double *b, int x, int y)
Solve a linear system of equations, A*x=b, using dgelss lapack function.
Definition: svdcmp_lapack.c:18
mbs_kalman.h
free_dmat_1
void free_dmat_1(double **mat)
release memory for a matrix of doubles, starting at index 1
Definition: mbs_matrix.c:301
copy_dvec_0
void copy_dvec_0(double *vec_src, double *vec_dest, int l_v)
Copy the content of a vector (of sizel_v) of doubles to a second vector, starting with index 0.
Definition: mbs_1D_array.c:906
MbsData::qdriven
int * qdriven
Array with the indices of driven articulations.
Definition: mbs_data.h:178
pick_and_place_dvec_1
void pick_and_place_dvec_1(double *src, int *index, int n, double *dest)
Pick the values from an array and set them in the destination array at the specified index.
Definition: mbs_1D_array.c:1230
find_ivec_1
int find_ivec_1(int *vec, int l_v, int f)
return the index of the value f in the (x sized) vector vec of integers, starting with index 1....
Definition: mbs_1D_array.c:832
get_dmat_1
double ** get_dmat_1(int nb_r, int nb_c)
create (with memory allocation) a [nb_r times nb_c] matrix of doubles, starting at index 1
Definition: mbs_matrix.c:255
MbsData::nqa
int nqa
Number of actuated articulations.
Definition: mbs_data.h:169
mbs_rank_0
int mbs_rank_0(double **A, int m, int n)
Compute the rank of matrix_in.
Definition: rank_lapack.c:38
mbs_Rred_core
int mbs_Rred_core(MbsAux *mbs_aux, MbsData *s)
Compute the residual force on independant joints and required force in driven joints.
Definition: mbs_Rred.c:35
mbs_warning_msg
void mbs_warning_msg(char *msg,...)
Send a warning message.
Definition: mbs_message.c:89
same_ivec_1
int same_ivec_1(int *v1, int *v2)
Compare if two vector are the same.
Definition: mbs_1D_array.c:864
mbs_statespace.h
mbs_errors_names.h
MbsSS::nu
int nu
number of input (limited to njoint for the moment as only joint forces are considered as input)
Definition: mbs_statespace_struct.h:16
MbsSS::nx
int nx
number of state, (normally nx=2*nqu)
Definition: mbs_statespace_struct.h:15