Program listing for file numerics/src/NonSmoothNewton.h#
Return to documentation for this file
1#ifndef NONSMOOTHNEWTON_H
2#define NONSMOOTHNEWTON_H
3
4
5
6#include "SiconosConfig.h"
7#include "NumericsFwd.h"
8
9
10
11typedef void (*NewtonFunctionPtr)(int, double*, double*, int);
12
13enum NONSMOOTH_NEWTON_SOLVER
14{
15 SICONOS_NONSMOOTH_NEWTON_LSA = 11000
16};
17
18extern const char* const SICONOS_NONSMOOTH_NEWTON_LSA_STR ;
19
20
21#if defined(__cplusplus) && !defined(BUILD_AS_CPP)
22extern "C"
23{
24#endif
25
26 void linesearch_Armijo(int n, double *z, double* dir, double psi_k,
27 double descentCondition, NewtonFunctionPtr* phi);
28
29
30
31 int nonSmoothNewton(int n, double* z, NewtonFunctionPtr* phi,
32 NewtonFunctionPtr* jacobianPhi,
33 SolverOptions * options);
34
35
36 int nonSmoothDirectNewton(int n, double* z, NewtonFunctionPtr* phi,
37 NewtonFunctionPtr* jacobianPhi,
38 SolverOptions * options);
39
40 void nonSmoothNewton_set_default(SolverOptions* options);
41
42
43#if defined(__cplusplus) && !defined(BUILD_AS_CPP)
44}
45#endif
46
47#endif