18 #ifndef ma77_default_control
19 #define ma77_control ma77_control_d
20 #define ma77_info ma77_info_d
21 #define ma77_default_control ma77_default_control_d
22 #define ma77_open_nelt ma77_open_nelt_d
23 #define ma77_open ma77_open_d
24 #define ma77_input_vars ma77_input_vars_d
25 #define ma77_input_reals ma77_input_reals_d
26 #define ma77_analyse ma77_analyse_d
27 #define ma77_factor ma77_factor_d
28 #define ma77_factor_solve ma77_factor_solve_d
29 #define ma77_solve ma77_solve_d
30 #define ma77_resid ma77_resid_d
31 #define ma77_scale ma77_scale_d
32 #define ma77_enquire_posdef ma77_enquire_posdef_d
33 #define ma77_enquire_indef ma77_enquire_indef_d
34 #define ma77_alter ma77_alter_d
35 #define ma77_restart ma77_restart_d
36 #define ma77_finalise ma77_finalise_d
43 #ifndef ma86_default_control
44 #define ma86_control ma86_control_d
45 #define ma86_info ma86_info_d
46 #define ma86_default_control ma86_default_control_d
47 #define ma86_analyse ma86_analyse_d
48 #define ma86_factor ma86_factor_d
49 #define ma86_factor_solve ma86_factor_solve_d
50 #define ma86_solve ma86_solve_d
51 #define ma86_finalise ma86_finalise_d
59 #ifndef ma97_default_control
60 #define ma97_control ma97_control_d
61 #define ma97_info ma97_info_d
62 #define ma97_default_control ma97_default_control_d
63 #define ma97_analyse ma97_analyse_d
64 #define ma97_factor ma97_factor_d
65 #define ma97_factor_solve ma97_factor_solve_d
66 #define ma97_solve ma97_solve_d
67 #define ma97_finalise ma97_finalise_d
68 #define ma97_free_akeep ma97_free_akeep_d
76 struct mc68_control_i;
79 #ifndef __IPTYPES_HPP__
246 const double reals[],
332 const char* restart_file,
423 const int matrix_type,
435 const int matrix_type,
481 struct mc68_control_i* control
490 const struct mc68_control_i* control,
491 struct mc68_info_i* info
void(* ma77_scale_t)(double scale[], void **keep, const struct ma77_control_d *control, struct ma77_info_d *info, double *anorm)
void(* ma97_free_akeep_t)(void **akeep)
IPOPTLIB_EXPORT int LSL_isHSLLoaded(void)
Indicates whether a HSL library has been loaded.
#define ma77_enquire_posdef
void(* ma97_factor_solve_t)(const int matrix_type, const int ptr[], const int row[], const ma97pkgtype_d_ val[], const int nrhs, ma97pkgtype_d_ x[], const int ldx, void **akeep, void **fkeep, const struct ma97_control *control, struct ma97_info *info, const ma97pkgtype_d_ scale[])
IPOPTLIB_EXPORT int LSL_isMA86available(void)
Indicates whether a HSL library is loaded and all symbols necessary to use HSL_MA86 have been found.
void(* mc68_order_t)(int ord, int n, const int ptr[], const int row[], int perm[], const struct mc68_control_i *control, struct mc68_info_i *info)
void(* ma77_finalise_t)(void **keep, const struct ma77_control_d *control, struct ma77_info_d *info)
void(* ma57bd_t)(ipfint *n, ipfint *ne, double *a, double *fact, ipfint *lfact, ipfint *ifact, ipfint *lifact, ipfint *lkeep, ipfint *keep, ipfint *iwork, ipfint *icntl, double *cntl, ipfint *info, double *rinfo)
void(* ma77_input_reals_t)(const int idx, const int length, const double reals[], void **keep, const struct ma77_control_d *control, struct ma77_info_d *info)
IPOPTLIB_EXPORT char * LSL_HSLLibraryName(void)
Returns name of the shared library that should contain HSL.
void(* ma86_analyse_t)(const int n, const int ptr[], const int row[], int order[], void **keep, const struct ma86_control *control, struct ma86_info *info)
IPOPTLIB_EXPORT int LSL_loadHSL(const char *libname, char *msgbuf, int msglen)
Tries to load a dynamically linked library with HSL routines.
IPOPTLIB_EXPORT int LSL_isMC19available(void)
Indicates whether a HSL library is loaded and all symbols necessary to use MA57 have been found.
void(* ma97_finalise_t)(void **akeep, void **fkeep)
IPOPTLIB_EXPORT int LSL_isMA57available(void)
Indicates whether a HSL library is loaded and all symbols necessary to use MA57 have been found.
void(* ma27bd_t)(ipfint *N, ipfint *NZ, const ipfint *IRN, const ipfint *ICN, double *A, ipfint *LA, ipfint *IW, ipfint *LIW, ipfint *IKEEP, ipfint *NSTEPS, ipfint *MAXFRT, ipfint *IW1, ipfint *ICNTL, double *CNTL, ipfint *INFO)
void(* ma77_input_vars_t)(const int idx, const int nvar, const int list[], void **keep, const struct ma77_control_d *control, struct ma77_info_d *info)
void(* ma77_analyse_t)(const int order[], void **keep, const struct ma77_control_d *control, struct ma77_info_d *info)
IPOPTLIB_EXPORT int LSL_isMC68available(void)
Indicates whether a HSL library is loaded and all symbols necessary to use HSL_MC68 have been found.
void(* ma86_solve_t)(const int job, const int nrhs, const int ldx, ma86pkgtype_d_ *x, const int order[], void **keep, const struct ma86_control *control, struct ma86_info *info, const ma86pkgtype_d_ scale[])
void(* ma27id_t)(ipfint *ICNTL, double *CNTL)
void(* ma57ed_t)(ipfint *n, ipfint *ic, ipfint *keep, double *fact, ipfint *lfact, double *newfac, ipfint *lnew, ipfint *ifact, ipfint *lifact, ipfint *newifc, ipfint *linew, ipfint *info)
IPOPTLIB_EXPORT void LSL_setMA86(ma86_default_control_t ma86_default_control, ma86_analyse_t ma86_analyse, ma86_factor_t ma86_factor, ma86_factor_solve_t ma86_factor_solve, ma86_solve_t ma86_solve, ma86_finalise_t ma86_finalise)
sets pointers to MA86 functions
void(* ma57cd_t)(ipfint *job, ipfint *n, double *fact, ipfint *lfact, ipfint *ifact, ipfint *lifact, ipfint *nrhs, double *rhs, ipfint *lrhs, double *work, ipfint *lwork, ipfint *iwork, ipfint *icntl, ipfint *info)
IPOPTLIB_EXPORT void LSL_setMA97(ma97_default_control_t ma97_default_control, ma97_analyse_t ma97_analyse, ma97_factor_t ma97_factor, ma97_factor_solve_t ma97_factor_solve, ma97_solve_t ma97_solve, ma97_finalise_t ma97_finalise, ma97_free_akeep_t ma97_free_akeep)
sets pointers to MA97 functions
void(* ma86_finalise_t)(void **keep, const struct ma86_control *control)
#define ma77_enquire_indef
IPOPTLIB_EXPORT int LSL_isMA77available(void)
Indicates whether a HSL library is loaded and all symbols necessary to use MA77 have been found.
void(* ma77_open_t)(const int n, const char *fname1, const char *fname2, const char *fname3, const char *fname4, void **keep, const struct ma77_control_d *control, struct ma77_info_d *info)
void(* ma27cd_t)(ipfint *N, double *A, ipfint *LA, ipfint *IW, ipfint *LIW, double *W, ipfint *MAXFRT, double *RHS, ipfint *IW1, ipfint *NSTEPS, ipfint *ICNTL, double *CNTL)
#define ma86_factor_solve
IPOPTLIB_EXPORT int LSL_unloadHSL(void)
Unloads a loaded HSL library.
void(* ma77_enquire_indef_t)(int piv_order[], double d[], void **keep, const struct ma77_control_d *control, struct ma77_info_d *info)
void(* ma77_solve_t)(const int job, const int nrhs, const int lx, double x[], void **keep, const struct ma77_control_d *control, struct ma77_info_d *info, const double *scale)
#define ma97_default_control
void(* ma86_factor_t)(const int n, const int ptr[], const int row[], const ma86pkgtype_d_ val[], const int order[], void **keep, const struct ma86_control *control, struct ma86_info *info, const ma86pkgtype_d_ scale[])
IPOPTLIB_EXPORT void LSL_setMA77(ma77_default_control_t ma77_default_control, ma77_open_nelt_t ma77_open_nelt, ma77_open_t ma77_open, ma77_input_vars_t ma77_input_vars, ma77_input_reals_t ma77_input_reals, ma77_analyse_t ma77_analyse, ma77_factor_t ma77_factor, ma77_factor_solve_t ma77_factor_solve, ma77_solve_t ma77_solve, ma77_resid_t ma77_resid, ma77_scale_t ma77_scale, ma77_enquire_posdef_t ma77_enquire_posdef, ma77_enquire_indef_t ma77_enquire_indef, ma77_alter_t ma77_alter, ma77_restart_t ma77_restart, ma77_finalise_t ma77_finalise)
sets pointers to MA77 functions
IPOPTLIB_EXPORT int LSL_isMA97available(void)
Indicates whether a HSL library is loaded and all symbols necessary to use HSL_MA97 have been found.
IPOPTLIB_EXPORT void LSL_setMA27(ma27ad_t ma27ad, ma27bd_t ma27bd, ma27cd_t ma27cd, ma27id_t ma27id)
sets pointers to MA27 functions
void(* ma77_resid_t)(const int nrhs, const int lx, const double x[], const int lresid, double resid[], void **keep, const struct ma77_control_d *control, struct ma77_info_d *info, double *anorm_bnd)
void(* ma77_enquire_posdef_t)(double d[], void **keep, const struct ma77_control_d *control, struct ma77_info_d *info)
void(* ma97_analyse_t)(const int check, const int n, const int ptr[], const int row[], ma97pkgtype_d_ val[], void **akeep, const struct ma97_control *control, struct ma97_info *info, int order[])
void(* ma77_restart_t)(const char *restart_file, const char *fname1, const char *fname2, const char *fname3, const char *fname4, void **keep, const struct ma77_control_d *control, struct ma77_info_d *info)
void(* ma77_default_control_t)(struct ma77_control_d *control)
#define ma97_factor_solve
IPOPTLIB_EXPORT int LSL_isMA27available(void)
Indicates whether a HSL library is loaded and all symbols necessary to use MA27 have been found.
IPOPT_FORTRAN_INTEGER_TYPE ipfint
void(* ma27ad_t)(ipfint *N, ipfint *NZ, const ipfint *IRN, const ipfint *ICN, ipfint *IW, ipfint *LIW, ipfint *IKEEP, ipfint *IW1, ipfint *NSTEPS, ipfint *IFLAG, ipfint *ICNTL, double *CNTL, ipfint *INFO, double *OPS)
void(* ma77_factor_solve_t)(const int posdef, void **keep, const struct ma77_control_d *control, struct ma77_info_d *info, const double *scale, const int nrhs, const int lx, double rhs[])
void(* ma57id_t)(double *cntl, ipfint *icntl)
IPOPTLIB_EXPORT void LSL_setMA57(ma57ad_t ma57ad, ma57bd_t ma57bd, ma57cd_t ma57cd, ma57ed_t ma57ed, ma57id_t ma57id)
sets pointers to MA57 functions
void(* ma77_factor_t)(const int posdef, void **keep, const struct ma77_control_d *control, struct ma77_info_d *info, const double *scale)
#define ma86_default_control
void(* ma86_default_control_t)(struct ma86_control *control)
#define ma77_default_control
void(* mc19ad_t)(ipfint *N, ipfint *NZ, double *A, ipfint *IRN, ipfint *ICN, float *R, float *C, float *W)
IPOPTLIB_EXPORT void LSL_setMC19(mc19ad_t mc19ad)
sets pointer to MC19 function
void(* ma97_factor_t)(const int matrix_type, const int ptr[], const int row[], const ma97pkgtype_d_ val[], void **akeep, void **fkeep, const struct ma97_control *control, struct ma97_info *info, const ma97pkgtype_d_ scale[])
void(* ma77_open_nelt_t)(const int n, const char *fname1, const char *fname2, const char *fname3, const char *fname4, void **keep, const struct ma77_control_d *control, struct ma77_info_d *info, const int nelt)
IPOPTLIB_EXPORT void LSL_setMC68(mc68_default_control_t mc68_default_control, mc68_order_t mc68_order)
sets pointers to MC68 functions
void(* ma97_default_control_t)(struct ma97_control *control)
void(* ma86_factor_solve_t)(const int n, const int ptr[], const int row[], const ma86pkgtype_d_ val[], const int order[], void **keep, const struct ma86_control *control, struct ma86_info *info, const int nrhs, const int ldx, ma86pkgtype_d_ x[], const ma86pkgtype_d_ scale[])
void(* ma77_alter_t)(const double d[], void **keep, const struct ma77_control_d *control, struct ma77_info_d *info)
void(* ma97_solve_t)(const int job, const int nrhs, ma97pkgtype_d_ *x, const int ldx, void **akeep, void **fkeep, const struct ma97_control *control, struct ma97_info *info)
void(* mc68_default_control_t)(struct mc68_control_i *control)
void(* ma57ad_t)(ipfint *n, ipfint *ne, const ipfint *irn, const ipfint *jcn, ipfint *lkeep, ipfint *keep, ipfint *iwork, ipfint *icntl, ipfint *info, double *rinfo)
#define ma77_factor_solve
IPOPT_FORTRAN_INTEGER_TYPE ipfint
#define IPOPT_FORTRAN_INTEGER_TYPE
void mc68_default_control(struct mc68_control *control)
Set default values for control struct.
void mc68_order(int ord, int n, const int ptr[], const int row[], int perm[], const struct mc68_control *control, struct mc68_info *info)
Perform ordering.
Data type for user controls.
data type for returning information to user.