Program listing for file numerics/src/FrictionContact/fc3d_onecontact_nonsmooth_Newton_solvers.h#
Return to documentation for this file
1#ifndef FRICTIONCONTACT3D_onecontact_nonsmooth_Newton_solvers_H
2#define FRICTIONCONTACT3D_onecontact_nonsmooth_Newton_solvers_H
3
4
5
6#include "NumericsFwd.h"
7#include "SiconosConfig.h"
8
9#if defined(__cplusplus) && !defined(BUILD_AS_CPP)
10extern "C"
11{
12#endif
13
14
15typedef void (*computeNonsmoothFunction)(double *, double * , double , double * , double *, double *, double *);
16
17
18 void fc3d_onecontact_nonsmooth_Newton_solvers_initialize(FrictionContactProblem* problem, FrictionContactProblem* localproblem, SolverOptions * options);
19
20
21 int fc3d_onecontact_nonsmooth_Newton_solvers_solve(FrictionContactProblem* localproblem, double*, SolverOptions * options);
22
23
24 void fc3d_onecontact_nonsmooth_Newton_solvers_free(FrictionContactProblem * problem, FrictionContactProblem * localproblem, SolverOptions* localsolver_options);
25
26
27 void fc3d_onecontact_nonsmooth_Newton_solvers_computeError(int dimension, double* velocity, double*reaction, double * output_error);
28
29
30 void fc3d_onecontact_nonsmooth_Newton_AC_update(int number, FrictionContactProblem* problem, FrictionContactProblem* localproblem ,
31 double * reaction, SolverOptions* options);
32
33 int fc3d_onecontact_nonsmooth_Newton_solvers_solve_direct(FrictionContactProblem* localproblem,
34 double * R, SolverOptions * options);
35
36 int fc3d_onecontact_nonsmooth_Newton_solvers_solve_damped(FrictionContactProblem* localproblem,
37 double * R, SolverOptions * options);
38
39 int fc3d_onecontact_nonsmooth_Newton_solvers_solve_hybrid(FrictionContactProblem* localproblem,
40 double * local_reaction, SolverOptions* options);
41
42
43#if defined(__cplusplus) && !defined(BUILD_AS_CPP)
44}
45#endif
46
47#endif