|
Biomech-Sim-Toolbox 1
Toolbox for movement simulation and analysis
|
C source code for the MEX function gait2dc.mex32. More...
#include <stdio.h>#include <stdlib.h>#include <math.h>#include <string.h>#include "mex.h"#include "gait2dc.h"Classes | |
| struct | muscleprop |
Macros | |
| #define | ALMOSTZERO 1e-15 |
| #define | isnan(x) ((x) != (x)) |
| #define | M_PI 3.1415926535897932384626433832795 |
| #define | MAXCONTACTS 20 |
| #define | MAXSECTIONS 10 |
| #define | MAXSTATES 2*NDOF+2*NMUS+4*MAXCONTACTS |
| #define | NMUS 16 |
| #define | NNZ_DA_DQ 38 |
| #define | NNZ_DA_DQD 58 |
| #define | NNZ_DA_DQDD 86 |
| #define | VERBOSE 0 |
Functions | |
| void | ExtractParameters (double par[]) |
| void | mexFunction (int nlhs, mxArray *plhs[], int nrhs, const mxArray *prhs[]) |
| double | MuscleDynamics (muscleprop *m, double a, double Lce, double Lcedot, double Lm, double *df_da, double *df_dLce, double *df_dLcedot, double *df_dLm, double *force, double *dforce_dLm, double *dforce_dLce, double *forceCE, double *dforceCE_da, double *dforceCE_dLce, double *dforceCE_dLcedot, double *powerCE) |
| double | MusclePath (muscleprop *m, double ang[NMOM], double dLm_dang[NMOM]) |
| double | Softpos (double x, double x0, double *dydx) |
Variables | |
| static double | bodymass |
| static contactprop | contacts [MAXCONTACTS] |
| static int | initialized = 0 |
| static muscleprop | muscles [NMUS] |
| static int | ncontacts = 0 |
| static int | nonzeromomentarms |
| static mwSize | nstates = 0 |
| static param_struct | param |
| static double | zeros [MAXSTATES] |
C source code for the MEX function gait2dc.mex32.
Implicit differential equation for 2D musculoskeletal model : f(x,dx/dt,u) = 0 with implicit contact formulation. This is the source code for the MEX function gait2cd.mex32 The musculoskeletal model is documented in the file gait2dc_reference.odt The function documentation is in gait2dc.m. The model includes an accelerometer model.
| #define ALMOSTZERO 1e-15 |
| #define isnan | ( | x | ) | ((x) != (x)) |
| #define M_PI 3.1415926535897932384626433832795 |
| #define MAXCONTACTS 20 |
| #define MAXSECTIONS 10 |
| #define MAXSTATES 2*NDOF+2*NMUS+4*MAXCONTACTS |
| #define NMUS 16 |
| #define NNZ_DA_DQ 38 |
| #define NNZ_DA_DQD 58 |
| #define NNZ_DA_DQDD 86 |
| #define VERBOSE 0 |
| void ExtractParameters | ( | double | par[] | ) |
| void mexFunction | ( | int | nlhs, |
| mxArray * | plhs[], | ||
| int | nrhs, | ||
| const mxArray * | prhs[] | ||
| ) |
| double MuscleDynamics | ( | muscleprop * | m, |
| double | a, | ||
| double | Lce, | ||
| double | Lcedot, | ||
| double | Lm, | ||
| double * | df_da, | ||
| double * | df_dLce, | ||
| double * | df_dLcedot, | ||
| double * | df_dLm, | ||
| double * | force, | ||
| double * | dforce_dLm, | ||
| double * | dforce_dLce, | ||
| double * | forceCE, | ||
| double * | dforceCE_da, | ||
| double * | dforceCE_dLce, | ||
| double * | dforceCE_dLcedot, | ||
| double * | powerCE | ||
| ) |
| double MusclePath | ( | muscleprop * | m, |
| double | ang[NMOM], | ||
| double | dLm_dang[NMOM] | ||
| ) |
| double Softpos | ( | double | x, |
| double | x0, | ||
| double * | dydx | ||
| ) |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |