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

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

 1typedef long double float_type;
 2
 3
 4
 5float_type dnrm2l(const unsigned int n, const double* x);
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18double getNewtonStepLength(const double* const x, const double* const dx,
19                           const unsigned int vecSize, const unsigned int varsCount,
20                           const double gamma);
21
22
23double getStepLength(const double* const x, const double* const dx, const unsigned int vecSize,
24                     const unsigned int varsCount, const double gamma);
25
26
27void primalResidual(const double* velocity, NumericsMatrix* H, const double* globalVelocity,
28                    const double* w, double* out, double* rnorm, const double tol);
29
30
31void dualResidual(NumericsMatrix* M, const double* globalVelocity, NumericsMatrix* H,
32                  const double* reaction, const double* f, double* out, double* rnorm,
33                  const double tol);
34
35
36
37
38
39
40
41
42
43
44double complemResidualNorm(const double* const velocity, const double* const reaction,
45                           const unsigned int vecSize, const unsigned int varsCount);
46
47
48double complemResidualNorm_p(const double* const velocity, const double* const reaction,
49                             const unsigned int vecSize, const unsigned int varsCount);
50
51
52
53double complemResidualNorm_p_F(NumericsMatrix* Qp, NumericsMatrix* Qpinv,
54                               const double* const velocity, const double* const reaction,
55                               const unsigned int vecSize, const unsigned int varsCount);
56
57
58double dualGap(NumericsMatrix* M, const double* f, const double* w,
59               const double* globalVelocity, const double* reaction, const unsigned int nd,
60               const unsigned int m);
61
62
63double relGap(NumericsMatrix* M, const double* f, const double* w,
64              const double* globalVelocity, const double* reaction, const unsigned int nd,
65              const unsigned int m, const double gapVal);
66
67
68void setErrorArray(double* error, const double pinfeas, const double dinfeas,
69                   const double dualgap, const double complem, const double complem_p,
70                   const double projerr);
71
72
73double norm2VecDiff(const double* vec1, const double* vec2, const unsigned int vecSize);