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
MBS_INFO_FAILURE
#define MBS_INFO_FAILURE
Definition: mbs_define.h:32
mbs_msg
void mbs_msg(const char *msg,...)
Send a message.
Definition: mbs_message.c:87
MbsData::qa
int * qa
Array with the indices of actuated articulations (only for inverse dynamic).
Definition: mbs_data.h:278
useful_functions.h
MbsData::nqv
int nqv
Number of dependent articulations.
Definition: mbs_data.h:268
mbs_data.h
MbsData::nqu
int nqu
Number of independent articulations.
Definition: mbs_data.h:263
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:444
mbs_project_interface.h
Declaration of functions that are project dependent.
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:590
mbs_define.h
free_dmat_0
void free_dmat_0(double **mat)
release memory for a matrix of doubles, starting at index 0
Definition: mbs_matrix.c:374
mbs_matrix.h
mbs_warning_msg
void mbs_warning_msg(const char *msg,...)
Send a warning message.
Definition: mbs_message.c:100
invdynared
int invdynared(MbsAux *mbs_aux, MbsData *s)
Compute the required forces ont the actuated joints in a configuration.
Definition: mbs_invdynared.c:28
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:914
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_1D_array.h
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:80
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 The functi...
Definition: mbs_matrix.c:294
MbsSS
The State-space representation starts at index 0.
Definition: mbs_statespace_struct.h:10
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:272
MbsData::qv
int * qv
Array with the indices of the dependent articulations .
Definition: mbs_data.h:280
MbsData::Qc
double * Qc
Array with the value of joint force introduced in driven joint to respect the user function.
Definition: mbs_data.h:333
_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:178
MbsData::nqdriven
int nqdriven
Number of driven articulations.
Definition: mbs_data.h:266
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:961
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:524
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:555
MbsData
Definition: mbs_data.h:247
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:1514
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:14
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:382
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:1100
MBS_INFO_SUCCESS
#define MBS_INFO_SUCCESS
Definition: mbs_define.h:30
MbsData::qdriven
int * qdriven
Array with the indices of driven articulations.
Definition: mbs_data.h:276
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:1426
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:1007
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:316
MbsData::nqa
int nqa
Number of actuated articulations.
Definition: mbs_data.h:267
mbs_rank_0
int mbs_rank_0(double **A, int m, int n)
Compute the rank of a matrix.
Definition: rank_lapack.c:21
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:41
same_ivec_1
int same_ivec_1(int *v1, int *v2)
Compare if two vector are the same.
Definition: mbs_1D_array.c:1039
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