Ipopt Documentation  
HSLLoader.h
Go to the documentation of this file.
1 /* Copyright (C) 2008, 2011 GAMS Development and others
2  * All Rights Reserved.
3  * This code is published under the Eclipse Public License.
4  *
5  * Author: Stefan Vigerske
6  */
7 
8 #ifndef HSLLOADER_H_
9 #define HSLLOADER_H_
10 
11 #include "IpoptConfig.h"
12 
13 #ifdef __cplusplus
14 extern "C"
15 {
16 #endif
17 
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
37 #endif
38 
39 struct ma77_control;
40 struct ma77_info;
41 typedef double ma77pkgtype_d_;
42 
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
52 #endif
53 
54 struct ma86_control;
55 struct ma86_info;
56 typedef double ma86pkgtype_d_;
57 typedef double ma86realtype_d_;
58 
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
69 #endif
70 
71 struct ma97_control;
72 struct ma97_info;
73 typedef double ma97pkgtype_d_;
74 typedef double ma97realtype_d_;
75 
76 struct mc68_control_i;
77 struct mc68_info_i;
78 
79 #ifndef __IPTYPES_HPP__
80 /* Type of Fortran integer translated into C */
82 #endif
83 
84 typedef void (*ma27ad_t)(
85  ipfint* N,
86  ipfint* NZ,
87  const ipfint* IRN,
88  const ipfint* ICN,
89  ipfint* IW,
90  ipfint* LIW,
91  ipfint* IKEEP,
92  ipfint* IW1,
93  ipfint* NSTEPS,
94  ipfint* IFLAG,
95  ipfint* ICNTL,
96  double* CNTL,
97  ipfint* INFO,
98  double* OPS
99 );
100 
101 typedef void (*ma27bd_t)(
102  ipfint* N,
103  ipfint* NZ,
104  const ipfint* IRN,
105  const ipfint* ICN,
106  double* A,
107  ipfint* LA,
108  ipfint* IW,
109  ipfint* LIW,
110  ipfint* IKEEP,
111  ipfint* NSTEPS,
112  ipfint* MAXFRT,
113  ipfint* IW1,
114  ipfint* ICNTL,
115  double* CNTL,
116  ipfint* INFO
117 );
118 
119 typedef void (*ma27cd_t)(
120  ipfint* N,
121  double* A,
122  ipfint* LA,
123  ipfint* IW,
124  ipfint* LIW,
125  double* W,
126  ipfint* MAXFRT,
127  double* RHS,
128  ipfint* IW1,
129  ipfint* NSTEPS,
130  ipfint* ICNTL,
131  double* CNTL
132 );
133 
134 typedef void (*ma27id_t)(
135  ipfint* ICNTL,
136  double* CNTL
137 );
138 
139 typedef void (*ma57ad_t)(
140  ipfint* n,
141  ipfint* ne,
142  const ipfint* irn,
143  const ipfint* jcn,
144  ipfint* lkeep,
145  ipfint* keep,
146  /* Automatically iflag = 0; ikeep pivot order iflag = 1 */
147  ipfint* iwork,
148  ipfint* icntl,
149  ipfint* info,
150  double* rinfo
151 );
152 
153 typedef void (*ma57bd_t)(
154  ipfint* n,
155  ipfint* ne,
156  double* a,
157  double* fact,
158  ipfint* lfact,
159  ipfint* ifact,
160  ipfint* lifact,
161  ipfint* lkeep,
162  ipfint* keep,
163  ipfint* iwork,
164  ipfint* icntl,
165  double* cntl,
166  ipfint* info,
167  double* rinfo
168 );
169 
170 typedef void (*ma57cd_t)(
171  ipfint* job,
172  ipfint* n,
173  double* fact,
174  ipfint* lfact,
175  ipfint* ifact,
176  ipfint* lifact,
177  ipfint* nrhs,
178  double* rhs,
179  ipfint* lrhs,
180  double* work,
181  ipfint* lwork,
182  ipfint* iwork,
183  ipfint* icntl,
184  ipfint* info
185 );
186 
187 typedef void (*ma57ed_t)(
188  ipfint* n,
189  ipfint* ic,
190  ipfint* keep,
191  double* fact,
192  ipfint* lfact,
193  double* newfac,
194  ipfint* lnew,
195  ipfint* ifact,
196  ipfint* lifact,
197  ipfint* newifc,
198  ipfint* linew,
199  ipfint* info
200 );
201 
202 typedef void (*ma57id_t)(
203  double* cntl,
204  ipfint* icntl
205 );
206 
207 typedef void (*ma77_default_control_t)(
208  struct ma77_control_d* control
209 );
210 
211 typedef void (*ma77_open_nelt_t)(
212  const int n,
213  const char* fname1,
214  const char* fname2,
215  const char* fname3,
216  const char* fname4,
217  void** keep,
218  const struct ma77_control_d* control,
219  struct ma77_info_d* info,
220  const int nelt
221 );
222 
223 typedef void (*ma77_open_t)(
224  const int n,
225  const char* fname1,
226  const char* fname2,
227  const char* fname3,
228  const char* fname4,
229  void** keep,
230  const struct ma77_control_d* control,
231  struct ma77_info_d* info
232 );
233 
234 typedef void (*ma77_input_vars_t)(
235  const int idx,
236  const int nvar,
237  const int list[],
238  void** keep,
239  const struct ma77_control_d* control,
240  struct ma77_info_d* info
241 );
242 
243 typedef void (*ma77_input_reals_t)(
244  const int idx,
245  const int length,
246  const double reals[],
247  void** keep,
248  const struct ma77_control_d* control,
249  struct ma77_info_d* info
250 );
251 
252 typedef void (*ma77_analyse_t)(
253  const int order[],
254  void** keep,
255  const struct ma77_control_d* control,
256  struct ma77_info_d* info
257 );
258 
259 typedef void (*ma77_factor_t)(
260  const int posdef,
261  void** keep,
262  const struct ma77_control_d* control,
263  struct ma77_info_d* info,
264  const double* scale
265 );
266 
267 typedef void (*ma77_factor_solve_t)(
268  const int posdef,
269  void** keep,
270  const struct ma77_control_d* control,
271  struct ma77_info_d* info,
272  const double* scale,
273  const int nrhs,
274  const int lx,
275  double rhs[]
276 );
277 
278 typedef void (*ma77_solve_t)(
279  const int job,
280  const int nrhs,
281  const int lx,
282  double x[],
283  void** keep,
284  const struct ma77_control_d* control,
285  struct ma77_info_d* info,
286  const double* scale
287 );
288 
289 typedef void (*ma77_resid_t)(
290  const int nrhs,
291  const int lx,
292  const double x[],
293  const int lresid,
294  double resid[],
295  void** keep,
296  const struct ma77_control_d* control,
297  struct ma77_info_d* info,
298  double* anorm_bnd
299 );
300 
301 typedef void (*ma77_scale_t)(
302  double scale[],
303  void** keep,
304  const struct ma77_control_d* control,
305  struct ma77_info_d* info,
306  double* anorm
307 );
308 
309 typedef void (*ma77_enquire_posdef_t)(
310  double d[],
311  void** keep,
312  const struct ma77_control_d* control,
313  struct ma77_info_d* info
314 );
315 
316 typedef void (*ma77_enquire_indef_t)(
317  int piv_order[],
318  double d[],
319  void** keep,
320  const struct ma77_control_d* control,
321  struct ma77_info_d* info
322 );
323 
324 typedef void (*ma77_alter_t)(
325  const double d[],
326  void** keep,
327  const struct ma77_control_d* control,
328  struct ma77_info_d* info
329 );
330 
331 typedef void (*ma77_restart_t)(
332  const char* restart_file,
333  const char* fname1,
334  const char* fname2,
335  const char* fname3,
336  const char* fname4,
337  void** keep,
338  const struct ma77_control_d* control,
339  struct ma77_info_d* info
340 );
341 
342 typedef void (*ma77_finalise_t)(
343  void** keep,
344  const struct ma77_control_d* control,
345  struct ma77_info_d* info
346 );
347 
348 typedef void (*ma86_default_control_t)(
349  struct ma86_control* control
350 );
351 
352 typedef void (*ma86_analyse_t)(
353  const int n,
354  const int ptr[],
355  const int row[],
356  int order[],
357  void** keep,
358  const struct ma86_control* control,
359  struct ma86_info* info
360 );
361 
362 typedef void (*ma86_factor_t)(
363  const int n,
364  const int ptr[],
365  const int row[],
366  const ma86pkgtype_d_ val[],
367  const int order[],
368  void** keep,
369  const struct ma86_control* control,
370  struct ma86_info* info,
371  const ma86pkgtype_d_ scale[]
372 );
373 
374 typedef void (*ma86_factor_solve_t)(
375  const int n,
376  const int ptr[],
377  const int row[],
378  const ma86pkgtype_d_ val[],
379  const int order[],
380  void** keep,
381  const struct ma86_control* control,
382  struct ma86_info* info,
383  const int nrhs,
384  const int ldx,
385  ma86pkgtype_d_ x[],
386  const ma86pkgtype_d_ scale[]
387 );
388 
389 typedef void (*ma86_solve_t)(
390  const int job,
391  const int nrhs,
392  const int ldx,
393  ma86pkgtype_d_* x,
394  const int order[],
395  void** keep,
396  const struct ma86_control* control,
397  struct ma86_info* info,
398  const ma86pkgtype_d_ scale[]
399 );
400 
401 typedef void (*ma86_finalise_t)(
402  void** keep,
403  const struct ma86_control* control
404 );
405 
406 typedef void (*ma97_default_control_t)(
407  struct ma97_control* control
408 );
409 
410 typedef void (*ma97_analyse_t)(
411  const int check,
412  const int n,
413  const int ptr[],
414  const int row[],
415  ma97pkgtype_d_ val[],
416  void** akeep,
417  const struct ma97_control* control,
418  struct ma97_info* info,
419  int order[]
420 );
421 
422 typedef void (*ma97_factor_t)(
423  const int matrix_type,
424  const int ptr[],
425  const int row[],
426  const ma97pkgtype_d_ val[],
427  void** akeep,
428  void** fkeep,
429  const struct ma97_control* control,
430  struct ma97_info* info,
431  const ma97pkgtype_d_ scale[]
432 );
433 
434 typedef void (*ma97_factor_solve_t)(
435  const int matrix_type,
436  const int ptr[],
437  const int row[],
438  const ma97pkgtype_d_ val[],
439  const int nrhs,
440  ma97pkgtype_d_ x[],
441  const int ldx,
442  void** akeep,
443  void** fkeep,
444  const struct ma97_control* control,
445  struct ma97_info* info,
446  const ma97pkgtype_d_ scale[]
447 );
448 
449 typedef void (*ma97_solve_t)(
450  const int job,
451  const int nrhs,
452  ma97pkgtype_d_* x,
453  const int ldx,
454  void** akeep,
455  void** fkeep,
456  const struct ma97_control* control,
457  struct ma97_info* info
458 );
459 
460 typedef void (*ma97_finalise_t)(
461  void** akeep,
462  void** fkeep
463 );
464 
465 typedef void (*ma97_free_akeep_t)(
466  void** akeep
467 );
468 
469 typedef void (*mc19ad_t)(
470  ipfint* N,
471  ipfint* NZ,
472  double* A,
473  ipfint* IRN,
474  ipfint* ICN,
475  float* R,
476  float* C,
477  float* W
478 );
479 
480 typedef void (*mc68_default_control_t)(
481  struct mc68_control_i* control
482 );
483 
484 typedef void (*mc68_order_t)(
485  int ord,
486  int n,
487  const int ptr[],
488  const int row[],
489  int perm[],
490  const struct mc68_control_i* control,
491  struct mc68_info_i* info
492 );
493 
510  const char* libname,
511  char* msgbuf,
512  int msglen
513 );
514 
520 
526 
532 
538 
544 
550 
556 
562 
568 
571 
574  ma27ad_t ma27ad,
575  ma27bd_t ma27bd,
576  ma27cd_t ma27cd,
577  ma27id_t ma27id
578 );
579 
582  ma57ad_t ma57ad,
583  ma57bd_t ma57bd,
584  ma57cd_t ma57cd,
585  ma57ed_t ma57ed,
586  ma57id_t ma57id
587 );
588 
607 );
608 
617 );
618 
628 );
629 
632  mc19ad_t mc19ad
633 );
634 
639 );
640 
641 #ifdef __cplusplus
642 }
643 #endif
644 
645 #endif /* HSLLOADER_H_ */
ma97_solve_t
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)
Definition: HSLLoader.h:449
LSL_isHSLLoaded
IPOPTLIB_EXPORT int LSL_isHSLLoaded()
Indicates whether a HSL library has been loaded.
ma77_alter
#define ma77_alter
Definition: HSLLoader.h:34
ma77_restart_t
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)
Definition: HSLLoader.h:331
FORTRAN_INTEGER_TYPE
#define FORTRAN_INTEGER_TYPE
Definition: config_ipopt_default.h:21
LSL_isMA97available
IPOPTLIB_EXPORT int LSL_isMA97available()
Indicates whether a HSL library is loaded and all symbols necessary to use HSL_MA97 have been found.
ma86_solve
#define ma86_solve
Definition: HSLLoader.h:50
ma86_finalise
#define ma86_finalise
Definition: HSLLoader.h:51
ma57ed_t
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)
Definition: HSLLoader.h:187
ma97_control
#define ma97_control
Definition: HSLLoader.h:60
ma77_input_vars
#define ma77_input_vars
Definition: HSLLoader.h:24
ma86_factor_t
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[])
Definition: HSLLoader.h:362
ma77_solve_t
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)
Definition: HSLLoader.h:278
LSL_setMC68
IPOPTLIB_EXPORT void LSL_setMC68(mc68_default_control_t mc68_default_control, mc68_order_t mc68_order)
sets pointers to MC68 functions
ma77_analyse_t
void(* ma77_analyse_t)(const int order[], void **keep, const struct ma77_control_d *control, struct ma77_info_d *info)
Definition: HSLLoader.h:252
ma27bd_t
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)
Definition: HSLLoader.h:101
ma86_analyse_t
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)
Definition: HSLLoader.h:352
ma27cd_t
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)
Definition: HSLLoader.h:119
ma97_factor
#define ma97_factor
Definition: HSLLoader.h:64
ma86_factor_solve_t
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[])
Definition: HSLLoader.h:374
ma77_factor_solve_t
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[])
Definition: HSLLoader.h:267
ma77_resid_t
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)
Definition: HSLLoader.h:289
ma77_input_reals_t
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)
Definition: HSLLoader.h:243
ma97pkgtype_d_
double ma97pkgtype_d_
Definition: hsl_ma97d.h:31
ma77_solve
#define ma77_solve
Definition: HSLLoader.h:29
ma77_finalise_t
void(* ma77_finalise_t)(void **keep, const struct ma77_control_d *control, struct ma77_info_d *info)
Definition: HSLLoader.h:342
ma77_factor_t
void(* ma77_factor_t)(const int posdef, void **keep, const struct ma77_control_d *control, struct ma77_info_d *info, const double *scale)
Definition: HSLLoader.h:259
ma77_enquire_posdef_t
void(* ma77_enquire_posdef_t)(double d[], void **keep, const struct ma77_control_d *control, struct ma77_info_d *info)
Definition: HSLLoader.h:309
ma86_default_control
#define ma86_default_control
Definition: HSLLoader.h:46
ma57bd_t
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)
Definition: HSLLoader.h:153
ma57ad_t
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)
Definition: HSLLoader.h:139
ma77_info
#define ma77_info
Definition: HSLLoader.h:20
LSL_HSLLibraryName
IPOPTLIB_EXPORT char * LSL_HSLLibraryName()
Returns name of the shared library that should contain HSL.
ma97_info
Definition: hsl_ma97d.h:69
ma97_free_akeep_t
void(* ma97_free_akeep_t)(void **akeep)
Definition: HSLLoader.h:465
ma77_default_control
#define ma77_default_control
Definition: HSLLoader.h:21
ma77_finalise
#define ma77_finalise
Definition: HSLLoader.h:36
ma97realtype_d_
double ma97realtype_d_
Definition: HSLLoader.h:74
ma97_default_control_t
void(* ma97_default_control_t)(struct ma97_control *control)
Definition: HSLLoader.h:406
IPOPTLIB_EXPORT
#define IPOPTLIB_EXPORT
Definition: config_default.h:16
ma86pkgtype_d_
double ma86pkgtype_d_
Definition: HSLLoader.h:55
LSL_setMA27
IPOPTLIB_EXPORT void LSL_setMA27(ma27ad_t ma27ad, ma27bd_t ma27bd, ma27cd_t ma27cd, ma27id_t ma27id)
sets pointers to MA27 functions
ma97_analyse_t
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[])
Definition: HSLLoader.h:410
LSL_isMC68available
IPOPTLIB_EXPORT int LSL_isMC68available()
Indicates whether a HSL library is loaded and all symbols necessary to use HSL_MC68 have been found.
ma86_info
#define ma86_info
Definition: HSLLoader.h:45
ma27id_t
void(* ma27id_t)(ipfint *ICNTL, double *CNTL)
Definition: HSLLoader.h:134
ma27ad_t
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)
Definition: HSLLoader.h:84
ma77_factor_solve
#define ma77_factor_solve
Definition: HSLLoader.h:28
LSL_isMC19available
IPOPTLIB_EXPORT int LSL_isMC19available()
Indicates whether a HSL library is loaded and all symbols necessary to use MA57 have been found.
ma77_factor
#define ma77_factor
Definition: HSLLoader.h:27
LSL_setMA77
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
mc68_order
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.
ma77_open_nelt
#define ma77_open_nelt
Definition: HSLLoader.h:22
ipfint
FORTRAN_INTEGER_TYPE ipfint
Definition: IpTypes.hpp:24
LSL_isMA86available
IPOPTLIB_EXPORT int LSL_isMA86available()
Indicates whether a HSL library is loaded and all symbols necessary to use HSL_MA86 have been found.
ma86_factor_solve
#define ma86_factor_solve
Definition: HSLLoader.h:49
ma57id_t
void(* ma57id_t)(double *cntl, ipfint *icntl)
Definition: HSLLoader.h:202
LSL_isMA77available
IPOPTLIB_EXPORT int LSL_isMA77available()
Indicates whether a HSL library is loaded and all symbols necessary to use MA77 have been found.
ma97_free_akeep
#define ma97_free_akeep
Definition: HSLLoader.h:68
ma77_default_control_t
void(* ma77_default_control_t)(struct ma77_control_d *control)
Definition: HSLLoader.h:207
ma97_analyse
#define ma97_analyse
Definition: HSLLoader.h:63
ma77_restart
#define ma77_restart
Definition: HSLLoader.h:35
mc68_order_t
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)
Definition: HSLLoader.h:484
ma97_factor_solve_t
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[])
Definition: HSLLoader.h:434
LSL_setMC19
IPOPTLIB_EXPORT void LSL_setMC19(mc19ad_t mc19ad)
sets pointer to MC19 function
ma86_finalise_t
void(* ma86_finalise_t)(void **keep, const struct ma86_control *control)
Definition: HSLLoader.h:401
LSL_loadHSL
IPOPTLIB_EXPORT int LSL_loadHSL(const char *libname, char *msgbuf, int msglen)
Tries to load a dynamically linked library with HSL routines.
ma77_resid
#define ma77_resid
Definition: HSLLoader.h:30
IpoptConfig.h
LSL_setMA86
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
mc68_default_control_t
void(* mc68_default_control_t)(struct mc68_control_i *control)
Definition: HSLLoader.h:480
ma86_solve_t
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[])
Definition: HSLLoader.h:389
ma97_finalise_t
void(* ma97_finalise_t)(void **akeep, void **fkeep)
Definition: HSLLoader.h:460
ma77_open_nelt_t
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)
Definition: HSLLoader.h:211
ma86_factor
#define ma86_factor
Definition: HSLLoader.h:48
ma97_finalise
#define ma97_finalise
Definition: HSLLoader.h:67
ma57cd_t
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)
Definition: HSLLoader.h:170
ma77_input_reals
#define ma77_input_reals
Definition: HSLLoader.h:25
ma77_info_d
data type for returning information to user.
Definition: hsl_ma77d.h:136
ma86_analyse
#define ma86_analyse
Definition: HSLLoader.h:47
ma77_scale
#define ma77_scale
Definition: HSLLoader.h:31
ma77_enquire_posdef
#define ma77_enquire_posdef
Definition: HSLLoader.h:32
mc19ad_t
void(* mc19ad_t)(ipfint *N, ipfint *NZ, double *A, ipfint *IRN, ipfint *ICN, float *R, float *C, float *W)
Definition: HSLLoader.h:469
ma86_default_control_t
void(* ma86_default_control_t)(struct ma86_control *control)
Definition: HSLLoader.h:348
ma86realtype_d_
double ma86realtype_d_
Definition: HSLLoader.h:57
LSL_unloadHSL
IPOPTLIB_EXPORT int LSL_unloadHSL()
Unloads a loaded HSL library.
ma77_enquire_indef_t
void(* ma77_enquire_indef_t)(int piv_order[], double d[], void **keep, const struct ma77_control_d *control, struct ma77_info_d *info)
Definition: HSLLoader.h:316
ma77_open_t
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)
Definition: HSLLoader.h:223
ma97pkgtype_d_
double ma97pkgtype_d_
Definition: HSLLoader.h:72
LSL_setMA57
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
ma77_analyse
#define ma77_analyse
Definition: HSLLoader.h:26
ma77_enquire_indef
#define ma77_enquire_indef
Definition: HSLLoader.h:33
ma97_factor_t
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[])
Definition: HSLLoader.h:422
ma77_alter_t
void(* ma77_alter_t)(const double d[], void **keep, const struct ma77_control_d *control, struct ma77_info_d *info)
Definition: HSLLoader.h:324
ma77_open
#define ma77_open
Definition: HSLLoader.h:23
ma97_factor_solve
#define ma97_factor_solve
Definition: HSLLoader.h:65
ma77_control_d
Data type for user controls.
Definition: hsl_ma77d.h:41
ma97_solve
#define ma97_solve
Definition: HSLLoader.h:66
ma86_control
#define ma86_control
Definition: HSLLoader.h:44
LSL_isMA57available
IPOPTLIB_EXPORT int LSL_isMA57available()
Indicates whether a HSL library is loaded and all symbols necessary to use MA57 have been found.
ipfint
FORTRAN_INTEGER_TYPE ipfint
Definition: HSLLoader.h:77
mc68_default_control
void mc68_default_control(struct mc68_control *control)
Set default values for control struct.
ma77_scale_t
void(* ma77_scale_t)(double scale[], void **keep, const struct ma77_control_d *control, struct ma77_info_d *info, double *anorm)
Definition: HSLLoader.h:301
LSL_setMA97
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
ma97_default_control
#define ma97_default_control
Definition: HSLLoader.h:62
LSL_isMA27available
IPOPTLIB_EXPORT int LSL_isMA27available()
Indicates whether a HSL library is loaded and all symbols necessary to use MA27 have been found.
ma77_input_vars_t
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)
Definition: HSLLoader.h:234
ma77pkgtype_d_
double ma77pkgtype_d_
Definition: HSLLoader.h:40
ma77_control
#define ma77_control
Definition: HSLLoader.h:19
ma86pkgtype_d_
double ma86pkgtype_d_
Definition: hsl_ma86d.h:22