File numerics/src/FrictionContact/fc3d_unitary_enumerative.h

Go to the source code of this file

Typedef and functions declarations related to the quartic solver for 3 dimension frictional contact problems.

Each solver must have 4 functions in its interface:

  • initialize: link local static variables to the global ones (M,q,…)
  • update: link/fill the local variables corresponding to sub-blocks of the full problem, for a specific contact
  • solve: solve the local problem
  • free

Functions

int fc3d_unitary_enumerative(FrictionContactProblem *problem, double *reaction, double *velocity, int *info, SolverOptions *options)
void fc3d_unitary_enumerative_free(FrictionContactProblem *problem)
void fc3d_unitary_enumerative_initialize(FrictionContactProblem *problem)
int fc3d_unitary_enumerative_setDefaultSolverOptions(SolverOptions *options)
int fc3d_unitary_enumerative_solve(FrictionContactProblem *problem, double *reaction, SolverOptions *options)
int fc3d_unitary_enumerative_solve_poly_nu_sliding(FrictionContactProblem *problem, double *reaction, SolverOptions *options)
int fc3d_unitary_enumerative_solve_sliding(FrictionContactProblem *problem, double *reaction, SolverOptions *options)
int fc3d_unitary_enumerative_test_non_sliding(FrictionContactProblem *problem, double *reaction, double *velocity, SolverOptions *options)