Program listing for file numerics/src/FrictionContact/fc3d_nonsmooth_Newton_AlartCurnier.h#
Return to documentation for this file
1#ifndef FRICTIONCONTACT3D_nonsmooth_Newton_AlartCurnier_H
2#define FRICTIONCONTACT3D_nonsmooth_Newton_AlartCurnier_H
3
4
5#include "NumericsFwd.h"
6#include "SiconosConfig.h"
7
8#if defined(__cplusplus) && !defined(BUILD_AS_CPP)
9extern "C"
10{
11#endif
12
13
14 typedef void (*AlartCurnierFun3x3Ptr)(double* reaction,
15 double* velocity,
16 double mu,
17 double* rho,
18 double* F,
19 double* A,
20 double* B);
21 typedef struct
22 {
23 AlartCurnierFun3x3Ptr computeACFun3x3;
24 } AlartCurnierParams;
25
26
27 void nonsmoothEqnAlartCurnierFun(void* arg,
28 unsigned int problemSize,
29 double* reaction,
30 double* velocity,
31 double* mu,
32 double* rho,
33 double* result,
34 double* A,
35 double* B);
36
37
38 void fc3d_nonsmooth_Newton_AlartCurnier(
39 FrictionContactProblem* problem,
40 double *reaction,
41 double *velocity,
42 int *info,
43 SolverOptions *options);
44
45
46
47
48 void fc3d_AlartCurnierFunction(
49 unsigned int problemSize,
50 AlartCurnierFun3x3Ptr computeACFun3x3,
51 double *reaction3D,
52 double *velocity3D,
53 double *mu,
54 double *rho3D,
55 double *output_blocklist3,
56 double *output_blocklist3x3_1,
57 double *output_blocklist3x3_2);
58
59#if defined(__cplusplus) && !defined(BUILD_AS_CPP)
60}
61#endif
62
63#endif