#include <math.h>#include "mbs_part.h"#include "mbs_define.h"#include "mbs_project_interface.h"#include "mbs_linalg.h"#include "mbs_check.h"#include "mbs_message.h"#include "mbs_errors_names.h"#include "mbs_trigo.h"#include "mbs_1D_array.h"#include "mbs_matrix.h"Macros | |
| #define | MSG_ERR ">> Coord.Part.>> " |
| #define | MSG_PRE " >> " |
Functions | |
| void | PART_vec_perm (int *a, int *ipm, int irk) |
| void | PART_lutot (double **a, int nl, int nc, int rowperm, int *irk, int *ierr, int *row_perm, int *col_perm) |
| double | frand (void) |
| int | PART_calc_hJ (MbsData *mbs_data, double *h, double **J) |
| Compute the current constraint error vector and its Jacobian. More... | |
| int | PART_coord_part (MbsData *mbs_data, MbsPart *mbs_part, int *ind_u_des, int n_u_des, int *ind_c, int n_c, int first_partitioning) |
| int | mbs_run_part (MbsPart *mbs_part, MbsData *mbs_data) |
| Main function of the coordinate partitioning module. More... | |
| MbsPartOptions * | mbs_new_part_options (void) |
| Allocate a new MbsPartOptions structure and intialize options with default values. More... | |
| void | mbs_delete_part_options (MbsPartOptions *opt) |
| Free the memory of the given MbsPartOptions structure. More... | |
| MbsPart * | mbs_new_part (MbsData *mbs_data) |
| Allocate a new MbsPart structure for the given MbsData structure. More... | |
| void | mbs_delete_part (MbsPart *mbs_part) |
| Free the memory of the given MbsPart structure. More... | |
Implementation of the coordinate partitioning module.
(c) Universite catholique de Louvain
| #define MSG_ERR ">> Coord.Part.>> " |
| #define MSG_PRE " >> " |
| double frand | ( | void | ) |
| void mbs_delete_part | ( | MbsPart * | mbs_part | ) |
Free the memory of the given MbsPart structure.
The memory of the associated options (mbs_part->options) is also freed.
| mbs_part | the structure to be freed. |
| void mbs_delete_part_options | ( | MbsPartOptions * | part_option_strct | ) |
Free the memory of the given MbsPartOptions structure.
This function will be called by mbs_delete_part() and should never be called by the user.
| part_option_strct | the structure to be freed. |
Allocate a new MbsPart structure for the given MbsData structure.
A new MbsPartOptions is also allocated and a pointer to this structure is kept from the new MbsPart.
| mbs_data | the structure of the mbs for which the coordinate part. will be performed. |
| MbsPartOptions* mbs_new_part_options | ( | void | ) |
Allocate a new MbsPartOptions structure and intialize options with default values.
Main function of the coordinate partitioning module.
It compute the coordinate partitioning for the given MbsData structure.
| mbs_part | the coord. part. structure |
| mbs_data | the structure of the mbs for which the coord. part. must be performed |
| int PART_calc_hJ | ( | MbsData * | mbs_data, |
| double * | h, | ||
| double ** | J | ||
| ) |
Compute the current constraint error vector and its Jacobian.
| [in] | mbs_data | the data structure. |
| [out] | h | the array to store the error, index starting at 0. |
| [out] | J | the matrix to store the Jacobian, index starting at 0. |
MBS_INFO_SUCCESS in case of success. | int PART_coord_part | ( | MbsData * | mbs_data, |
| MbsPart * | mbs_part, | ||
| int * | ind_u_des, | ||
| int | n_u_des, | ||
| int * | ind_c, | ||
| int | n_c, | ||
| int | first_partitioning | ||
| ) |
| void PART_lutot | ( | double ** | a, |
| int | nl, | ||
| int | nc, | ||
| int | rowperm, | ||
| int * | irk, | ||
| int * | ierr, | ||
| int * | row_perm, | ||
| int * | col_perm | ||
| ) |
| void PART_vec_perm | ( | int * | a, |
| int * | ipm, | ||
| int | irk | ||
| ) |
1.8.17