![]() |
![]() |
![]() |
PHOEBE Reference Manual | ![]() |
---|---|---|---|---|
PHOEBE_nms_simplex; PHOEBE_nms_parameters; PHOEBE_nms_simplex* phoebe_nms_simplex_new (); int phoebe_nms_simplex_alloc (PHOEBE_nms_simplex *simplex, int n); int phoebe_nms_simplex_free (PHOEBE_nms_simplex *simplex); int phoebe_nms_set (PHOEBE_nms_simplex *simplex, double (fPHOEBE_vector *, PHOEBE_nms_parameters *) (), PHOEBE_vector *x, PHOEBE_nms_parameters *params, double *size, PHOEBE_vector *step_size); int phoebe_nms_iterate (PHOEBE_nms_simplex *simplex, double (fPHOEBE_vector *, PHOEBE_nms_parameters *) (), PHOEBE_vector *x, PHOEBE_nms_parameters *params, double *size, double *fval); double phoebe_nms_size (PHOEBE_nms_simplex *simplex); double phoebe_nms_move_corner (double coeff, PHOEBE_nms_simplex *simplex, int corner, PHOEBE_vector *xc, PHOEBE_nms_parameters *params, double (fPHOEBE_vector *, PHOEBE_nms_parameters *) ()); int phoebe_nms_contract_by_best (PHOEBE_nms_simplex *simplex, int best, PHOEBE_vector *xc, PHOEBE_nms_parameters *params, double (fPHOEBE_vector *, PHOEBE_nms_parameters *) ()); int phoebe_nms_calc_center (const PHOEBE_nms_simplex *simplex, PHOEBE_vector *mp);
typedef struct { PHOEBE_matrix *corners; /* simplex corner points */ PHOEBE_vector *values; /* function values at corner points */ PHOEBE_vector *ws1; /* workspace 1 */ PHOEBE_vector *ws2; /* workspace 2 */ } PHOEBE_nms_simplex;
typedef struct { PHOEBE_array *qualifiers; /* A list of unconstrained qualifiers */ int lcno; /* The number of observed light curves */ int rvno; /* The number of observed RV curves */ PHOEBE_curve **obs; /* An array of all transformed LC/RV data */ PHOEBE_vector *chi2s; /* A vector of individual passband chi2 values */ PHOEBE_vector *weights; /* A vector of individual passband weights */ bool autolevels; /* Should levels be computed automatically? */ bool autogamma; /* Should gamma velocity be computed automatically? */ bool rv1; bool rv2; double *average; } PHOEBE_nms_parameters;
int phoebe_nms_simplex_alloc (PHOEBE_nms_simplex *simplex, int n);
|
|
|
|
Returns : |
int phoebe_nms_simplex_free (PHOEBE_nms_simplex *simplex);
|
|
Returns : |
int phoebe_nms_set (PHOEBE_nms_simplex *simplex, double (fPHOEBE_vector *, PHOEBE_nms_parameters *) (), PHOEBE_vector *x, PHOEBE_nms_parameters *params, double *size, PHOEBE_vector *step_size);
|
|
|
|
|
|
|
|
|
|
|
|
Returns : |
int phoebe_nms_iterate (PHOEBE_nms_simplex *simplex, double (fPHOEBE_vector *, PHOEBE_nms_parameters *) (), PHOEBE_vector *x, PHOEBE_nms_parameters *params, double *size, double *fval);
|
|
|
|
|
|
|
|
|
|
|
|
Returns : |
double phoebe_nms_move_corner (double coeff, PHOEBE_nms_simplex *simplex, int corner, PHOEBE_vector *xc, PHOEBE_nms_parameters *params, double (fPHOEBE_vector *, PHOEBE_nms_parameters *) ());
|
|
|
|
|
|
|
|
|
|
|
|
Returns : |
int phoebe_nms_contract_by_best (PHOEBE_nms_simplex *simplex, int best, PHOEBE_vector *xc, PHOEBE_nms_parameters *params, double (fPHOEBE_vector *, PHOEBE_nms_parameters *) ());
|
|
|
|
|
|
|
|
|
|
Returns : |
int phoebe_nms_calc_center (const PHOEBE_nms_simplex *simplex, PHOEBE_vector *mp);
|
|
|
|
Returns : |