Program listing for file numerics/src/FrictionContact/fc3d_nonsmooth_Newton_solvers.h

Program listing for file numerics/src/FrictionContact/fc3d_nonsmooth_Newton_solvers.h#

 1#ifndef FRICTIONCONTACT3D_NONSMOOTH_NEWTON_SOLVERS_H
 2#define FRICTIONCONTACT3D_NONSMOOTH_NEWTON_SOLVERS_H
 3
 4
 5
 6#include "NumericsFwd.h"
 7
 8
 9
10
11
12typedef void (*fc3d_nonsmooth_Newton_solversFunPtr)
13(void* data,
14 unsigned int problem_size,
15 double* reaction,
16 double* velocity,
17 double* mu,
18 double* rho,
19 double* F,
20 double* A,
21 double* B);
22
23
24typedef void (*FrictionContactNSFun3x3Ptr)(double* reaction,
25                                           double* velocity,
26                                           double mu,
27                                           double* rho,
28                                           double* F,
29                                           double* A,
30                                           double* B);
31
32
33typedef struct
34{
35  FrictionContactProblem* problem;
36  void* data;
37  fc3d_nonsmooth_Newton_solversFunPtr function;
38} fc3d_nonsmooth_Newton_solvers;
39
40
41void fc3d_nonsmooth_Newton_solvers_solve(fc3d_nonsmooth_Newton_solvers* equation,
42                                      double* reaction,
43                                      double* velocity,
44                                      int* info,
45                                      SolverOptions* options);
46
47
48
49
50void computeAWpB(
51  double *A,
52  NumericsMatrix *W,
53  double *B,
54  NumericsMatrix *AWpB);
55#endif