Program listing for file numerics/src/MLCP/MLCP_Solvers.h#
Return to documentation for this file
1#ifndef MLCP_SOLVERS_H
2#define MLCP_SOLVERS_H
3
4
5
6#include "MixedLinearComplementarityProblem.h"
7#include "SolverOptions.h"
8
9#if defined(__cplusplus) && !defined(BUILD_AS_CPP)
10extern "C" {
11#endif
12
13#include "mlcp_FB.h"
14#include "mlcp_cst.h"
15#include "mlcp_direct_FB.h"
16#include "mlcp_direct_enum.h"
17#include "mlcp_direct_path.h"
18#include "mlcp_direct_path_enum.h"
19#include "mlcp_direct_simplex.h"
20#include "mlcp_enum.h"
21#include "mlcp_path_enum.h"
22#include "mlcp_simplex.h"
23
24
25void mlcp_driver_init(MixedLinearComplementarityProblem *problem,
26 SolverOptions *options);
27
28void mlcp_driver_reset(MixedLinearComplementarityProblem *problem,
29 SolverOptions *options);
30
31
32void mlcp_pgs(MixedLinearComplementarityProblem *problem, double *z, double *w,
33 int *info, SolverOptions *options);
34
35
36void mlcp_rpgs(MixedLinearComplementarityProblem *problem, double *z, double *w,
37 int *info, SolverOptions *options);
38
39
40void mlcp_psor(MixedLinearComplementarityProblem *problem, double *z, double *w,
41 int *info, SolverOptions *options);
42
43
44void mlcp_rpsor(MixedLinearComplementarityProblem *problem, double *z,
45 double *w, int *info, SolverOptions *options);
46
47
48void mlcp_path(MixedLinearComplementarityProblem *problem, double *z, double *w,
49 int *info, SolverOptions *options);
50
51
52void mlcp_enum(MixedLinearComplementarityProblem *problem, double *z, double *w,
53 int *info, SolverOptions *options);
54
55
56void mlcp_direct(MixedLinearComplementarityProblem *problem, double *z,
57 double *w, int *info, SolverOptions *options);
58
59
60void mlcp_direct_enum(MixedLinearComplementarityProblem *problem, double *z,
61 double *w, int *info, SolverOptions *options);
62
63
64void mlcp_direct_simplex(MixedLinearComplementarityProblem *problem, double *z,
65 double *w, int *info, SolverOptions *options);
66
67
68void mlcp_direct_path(MixedLinearComplementarityProblem *problem, double *z,
69 double *w, int *info, SolverOptions *options);
70
71
72void mlcp_simplex(MixedLinearComplementarityProblem *problem, double *z,
73 double *w, int *info, SolverOptions *options);
74
75
76void mlcp_FB(MixedLinearComplementarityProblem *problem, double *z, double *w,
77 int *info, SolverOptions *options);
78
79
80void mlcp_direct_FB(MixedLinearComplementarityProblem *problem, double *z,
81 double *w, int *info, SolverOptions *options);
82
83
84void mlcp_pgs_SBM(MixedLinearComplementarityProblem *problem, double *z,
85 double *w, int *info, SolverOptions *options);
86
87void mlcp_lcp_lemke(MixedLinearComplementarityProblem *problem, double *z,
88 double *w, int *info, SolverOptions *options);
89
90void mlcp_lcp_lemke_default(SolverOptions *options);
91
92
93int mlcp_compute_error(MixedLinearComplementarityProblem *problem, double *z,
94 double *w, double tolerance, double *error);
95
96
97void mlcp_pgs_set_default(SolverOptions *options);
98void mlcp_pgs_sbm_set_default(SolverOptions *options);
99void mlcp_rpgs_set_default(SolverOptions *options);
100void mlcp_psor_set_default(SolverOptions *options);
101void mlcp_rpsor_set_default(SolverOptions *options);
102void mlcp_direct_set_default(SolverOptions *options);
103void mlcp_direct_enum_set_default(SolverOptions *options);
104void mlcp_enum_set_default(SolverOptions *options);
105
106
107#if defined(__cplusplus) && !defined(BUILD_AS_CPP)
108}
109#endif
110
111#endif