Numerics component C/C++ API documentation

Classes, structs and types

Global

Free functions

Inequalities” Y. * axpby5_for_loop() * axpy5_for_loop() * basis_to_name() * basis_to_number() * cblas_dcopy_msan() : wrapper around cblas_dcopy which initialize the destination in order to make msan happy * checkTrivialCase_vi() : Check for trivial solution in the variational inequality problem. * check_hdf5_file() : return 1 if filename is hdf5 * check_io() : @rbrief Check validity of an io expression * check_nmd_criterion() : check the non-monotone descent criterion * classify_BNRT() * classify_BNRT_velocity_modified() * classify_BNRT_velocity_original() * classify_indices_R() * column_sum_norm5x5_for_loop() * compareTriplets() * complemResidualNorm() : Returns the Inf-norm of primal residual vecor ( velocity - H @ globalVelocity - w ) * complemResidualNorm_p() * complemResidualNorm_p_F() * complemResidualNorm_type() * computeAlartCurnierJeanMoreau() * computeAlartCurnierSTD() * computeFGlocker() : To compute F. * computeJacobianFGlocker() : To compute jacobianF. * compute_Z_GlockerFixedP() : compute Fixed Point Solution for the NCP formulation * compute_connectedcomponents() * compute_number_connectedcomponents() * compute_rho_spectral_norm() * compute_rho_split_spectral_norm() * compute_rho_split_spectral_norm_cond() * cond() : Compute the conditioning of dense matrix with column major storage. * convertToPathSparse() : Numerics dense matrix to Path Sparse matrix. * convexQP_ADMM() * convexQP_ADMM_free() * convexQP_ADMM_init() * convexQP_ProjectedGradient() : Projected Gradient solver for Convex QP problem. * convexQP_VI_solver() * convexQP_clear() : Clear ConvexQP structure: set all pointeurs to NULL, double and int to 0. * convexQP_compute_error() : Error computation for a ConvexQP problem; this function requires dWork to point to at least 2*n+m double of allocated memory or it mallocs this memory. * convexQP_compute_error_reduced() : Error computation for a reduced ConvexQP problem (A=I, b=0). * convexQP_display() : display a ConvexQPProblem * convexQP_free() : free a ConvexQPProblem * convexQP_get_env() : get the environment from the struct * convexQP_new() : new ConvexQP problem * convexQP_newFromFile() : read a ConvexQPProblem in a file (numerics .dat format) * convexQP_printInFile() : print a ConvexQPProblem in a file (numerics .dat format) * cpy3() : copy a vector[3] * cpy3x3() : copy a 3x3 matrix or a vector[9] * cpy5() : copy a 5D vector * cpy5_for_loop() : copy a 5D vector * cpy5x5() : copy a 5x5 matrix or a vector[25] * cpy5x5_for_loop() : copy a 5x5 matrix or a vector[25] * cpytr3x3() : copy & transpose a matrix * createHashSet() * createSplittedFrictionContactProblem() : create a SplittedFrictionContactProblem * create_NMS_data() : create (allocate) a NMS_data struct and do some allocation work * create_graph() * create_node() * create_node_connectedcomponent() * cross3() : cross product : c <- a x b * csint_to_int() * csint_to_size_t() * det3x3() : determinant * diag_scal3() : diagonal scaling of a vector * diffns() : Input na, a, nb, b Output nc, c a and b: interger vectors in increasing order c : vector of integers of a that are not in b. * display3() * display3x3() * display5() * display5_for_loop() : display a 5D vector * display5x5() * display5x5_for_loop() : display a 5x5 matrix (column-major storage, displayed in row-major format) * display_status_rolling_cone() * dnrm2l() * dnrm2sqrl() * do_pivot() : Do the pivot <block, drive>, standart version. * do_pivot_driftless() : Do the pivot <block, drive>, driftless version. * do_pivot_driftless2() : Do the pivot <block, drive>, driftless version. * do_pivot_lumod() : Do the pivot <block, drive> with block-LU updates. * dot3() : scalar product : c <- a.b * dot5_for_loop() * dr_latin() : dr_latin is a specific latin (LArge Time INcrement)solver for dual relay problems. * dr_nlgs() : dr_nlgs is a specific nlgs (Non Linear Gauss Seidel) solver for dual relay problems. * dualGap() * dualResidual() : Returns the dual constraint vector for global fricprob ( M @ globalVelocity + f - H @ reaction ) * dualResidual_type() * eig_3x3() : Computation of the eigenvalues of a symmetric 3x3 real matrix. * eigsym5x5_for_loop() : Compute eigenvalues and eigenvectors of a symmetric 5x5 matrix using Jacobi method. * eigvals_sym5x5_for_loop() : Compute eigenvalues of a symmetric 5x5 matrix using Jacobi method. * enum_compute_nb_cases() : Compute the total number of cases that should be enumerated. * enum_init() * enum_next() * equal3() : check equality : a[3] == b[3] * equal3x3() : check equality : a[9] == b[9] * error_compute_incremental() : Compute incremental (light) error. * error_compute_incremental_blas() : Compute incremental error using BLAS (for large vectors) * error_incr_finalize() : Finalize incremental error computation. * error_incr_squared_sum() : Compute squared norm of difference (for use in incremental error accumulation) * error_is_converged() : Check if error is converged within tolerance. * error_make_relative() : Compute relative error. * error_stats_init() : Initialize error statistics. * error_stats_is_stagnating() : Check if solver is stagnating. * error_stats_reduction_rate() : Compute error reduction rate. * error_stats_update() : Update error statistics. * extract3x3() : extract3x3 : copy a sub 3x3 matrix of a into *b * :cpp:func:`eye3x3` : set to identity a matrix3x3 * :cpp:func:`eye5x5` : set to identity a matrix5x5 * :cpp:func:`eye5x5_for_loop` : set to identity a matrix5x5 * :cpp:func:`fc2d_compute_error` : Error computation for friction-contact 3D problem. * :cpp:func:`fc2d_cpg` : cpg (conjugated projected gradient) solver for global contact problems with friction (2D) * :cpp:func:`fc2d_driver` : General interface to solvers for friction-contact 2D problem. * :cpp:func:`fc2d_driver` * :cpp:func:`fc2d_enum` : fc2d_enum solver for frictionContact2D problems. * :cpp:func:`fc2d_lexicolemke` : fc2d_lexicolemke is a Lemke solver for frictionContact2D problems. * :cpp:func:`fc2d_list_available_solvers` * :cpp:func:`fc2d_nsgs` : Non Linear Gauss Seidel solver (sbm) for global contact problem with friction in 2D case. * :cpp:func:`fc2d_nsgs_dense` : Non Linear Gauss Seidel solver (dense) for global contact problem with friction in 2D case. * :cpp:func:`fc2d_print_solver_info` * :cpp:func:`fc2d_projc` * :cpp:func:`fc2d_projf` : fc2d_projf is a specific projection operator related to CPG (conjugated projected gradient) algorithm for global contact problem with friction. * :cpp:func:`fc2d_solver_options_create` * :cpp:func:`fc2d_tolcp` : This function transform a FrictionContactProblem (2D) into a LinearComplementarityProblem. * :cpp:func:`fc2d_unitary_compute_and_add_error` * :cpp:func:`fc3d_ACLMFixedPoint` : Fixed point solver for friction-contact 3D problem based on the ACLM. * :cpp:func:`fc3d_AVI_gams_path` : solver using PATH (via GAMS) for friction-contact 3D problem based on an AVI reformulation * :cpp:func:`fc3d_AVI_gams_pathvi` : solver using PATHVI (via GAMS) for friction-contact 3D problem based on an AVI reformulation * :cpp:func:`fc3d_AlartCurnierABGenerated` * :cpp:func:`fc3d_AlartCurnierFABGenerated` * :cpp:func:`fc3d_AlartCurnierFGenerated` * :cpp:func:`fc3d_AlartCurnierFunction` : The Alart & Curnier function for several contacts. * :cpp:func:`fc3d_AlartCurnierFunctionGenerated` * :cpp:func:`fc3d_AlartCurnierJeanMoreauABGenerated` * :cpp:func:`fc3d_AlartCurnierJeanMoreauFABGenerated` * :cpp:func:`fc3d_AlartCurnierJeanMoreauFGenerated` * :cpp:func:`fc3d_AlartCurnierJeanMoreauFunctionGenerated` * :cpp:func:`fc3d_ConvexQP_ProjectedGradient_Cylinder` : Projected Gradient on Cylinder solver for Friction-contact 3D problem. * :cpp:func:`fc3d_DeSaxceFixedPoint` : Fixed Point solver for friction-contact 3D problem based on the De Saxce Formulation. * :cpp:func:`fc3d_ExtraGradient` : Extra Gradient solver for friction-contact 3D problem based on the De Saxce Formulation. * :cpp:func:`fc3d_FischerBurmeisterABGenerated` * :cpp:func:`fc3d_FischerBurmeisterFABGenerated` * :cpp:func:`fc3d_FischerBurmeisterFGenerated` * :cpp:func:`fc3d_FischerBurmeisterFMeritGenerated` * :cpp:func:`fc3d_FischerBurmeisterFunction` : The Fischer & Burmeister function for several contacts. * :cpp:func:`fc3d_FischerBurmeisterFunctionGenerated` * :cpp:func:`fc3d_FischerBurmeisterGradFMeritGenerated` * :cpp:func:`fc3d_FischerBurmeisterGradMeritFunctionGenerated` * :cpp:func:`fc3d_FixedP_free` : free memory for friction contact 3D Fixed Point solver * :cpp:func:`fc3d_FixedP_initialize` : Initialize friction-contact 3D Fixed Point solver. * :cpp:func:`fc3d_FixedP_solve` : solve friction-contact 3D problem with Fixed Point * :cpp:func:`fc3d_HyperplaneProjection` : Hyperplane Projection solver for friction-contact 3D problem based on the De Saxce Formulation. * :cpp:func:`fc3d_IPM_SNM` * :cpp:func:`fc3d_IPM_SNM_init` * :cpp:func:`fc3d_LmgcDriver` * :cpp:func:`fc3d_NaturalMapABGenerated` * :cpp:func:`fc3d_NaturalMapFABGenerated` * :cpp:func:`fc3d_NaturalMapFGenerated` * :cpp:func:`fc3d_NaturalMapFunction` : The natural map function for several contacts. * :cpp:func:`fc3d_NaturalMapFunctionGenerated` * :cpp:func:`fc3d_Panagiotopoulos_FixedPoint` : Fixed point solver for friction-contact 3D problem based on the Panagiotopoulos method based on an alternative technique between the normal problem and the tangential one. * :cpp:func:`fc3d_Path_computeError` : compute error for friction-contact 3D problem with Fixed Point * :cpp:func:`fc3d_Path_computeError` : compute error for friction-contact 3D problem with Path * :cpp:func:`fc3d_Path_free` : free memory for friction contact 3D Path solver * :cpp:func:`fc3d_Path_initialize` : Initialize friction-contact 3D Path solver. * :cpp:func:`fc3d_Path_solve` : solve friction-contact 3D problem with Path * :cpp:func:`fc3d_SOCLCP` * :cpp:func:`fc3d_TrescaFixedPoint` : Fixed point solver for friction-contact 3D problem based on the Tresca problem with fixed friction threshold. * :cpp:func:`fc3d_Tresca_compute_error` : Error computation for friction-contact 3D problem with Tresca Friction. * :cpp:func:`fc3d_Tresca_unitary_compute_and_add_error` : Error computation for one friction-contact 3D problem. * :cpp:func:`fc3d_VI_ExtraGradient` : Extra Gradient solver (VI_EG) for friction-contact 3D problem based on a VI reformulation. * :cpp:func:`fc3d_VI_FixedPointProjection` : Fixed Point solver for friction-contact 3D problem based on the VI reformulation. * :cpp:func:`fc3d_VI_FixedPointProjection_Cylinder` * :cpp:func:`fc3d_admm` * :cpp:func:`fc3d_admm_free` * :cpp:func:`fc3d_admm_init` * :cpp:func:`fc3d_checkTrivialCase` : Check for trivial solution in the friction-contact 3D problem. * :cpp:func:`fc3d_compute_error` : Error computation for a friction-contact 3D problem. * :cpp:func:`fc3d_compute_error_norm_infinity_conic` : Error computation using the norm infinity conic for friction-contact 3D problem. * :cpp:func:`fc3d_compute_error_velocity` : Error computation for a friction-contact 3D problem. * :cpp:func:`fc3d_driver` : General interface to solvers for friction-contact 3D problem. * :cpp:func:`fc3d_driver` * :cpp:func:`fc3d_fixedPointProjection` : Fixed Point Projection solver for friction-contact 3D problem based on the De Saxce Formulation. * :cpp:func:`fc3d_ipm_snm_set_default` * :cpp:func:`fc3d_lcp_gams_path` : solver using PATH (via GAMS) for friction-contact 3D problem based on an AVI reformulation * :cpp:func:`fc3d_lcp_gams_pathvi` : solver using PATHVI (via GAMS) for friction-contact 3D problem based on an AVI reformulation * :cpp:func:`fc3d_list_available_solvers` * :cpp:func:`fc3d_local_problem_allocate` * :cpp:func:`fc3d_local_problem_compute_q` * :cpp:func:`fc3d_local_problem_compute_q_parallel` * :cpp:func:`fc3d_local_problem_fill_M` * :cpp:func:`fc3d_local_problem_free` * :cpp:func:`fc3d_nonsmooth_Newton_AlartCurnier` : Nonsmooth Newton solver based on the AlartCurnier function for the local (reduced) frictional contact problem in the dense form. * :cpp:func:`fc3d_nonsmooth_Newton_AlartCurnier_new` * :cpp:func:`fc3d_nonsmooth_Newton_FischerBurmeister` : Nonsmooth Newton solver based on the FischerBurmeister function for the local (reduced) frictional contact problem in the dense form. * :cpp:func:`fc3d_nonsmooth_Newton_FischerBurmeister_compute_error` * :cpp:func:`fc3d_nonsmooth_Newton_NaturalMap` : Nonsmooth Newton solver based on the NaturalMap function for the local (reduced) frictional contact problem in the dense form. * :cpp:func:`fc3d_nonsmooth_Newton_NaturalMap_compute_error` * :cpp:func:`fc3d_nonsmooth_Newton_computeAWpB` * :cpp:func:`fc3d_nonsmooth_Newton_linesearch_FBLSA` * :cpp:func:`fc3d_nonsmooth_Newton_linesearch_GoldsteinPrice` * :cpp:func:`fc3d_nonsmooth_Newton_solvers_solve` : Solve the equation. * :cpp:func:`fc3d_nsgs` : Non-Smooth Gauss Seidel solver for friction-contact 3D problem. * :cpp:func:`fc3d_nsgs_generic` * :cpp:func:`fc3d_nsgs_update` * :cpp:func:`fc3d_nsgs_velocity` : Non-Smooth Gauss Seidel in velocity solver for friction-contact 3D problem. * :cpp:func:`fc3d_nsn_ac_new_set_default` * :cpp:func:`fc3d_nsn_ac_set_default` : Set default solver options for FC3D_NSN_AC. * :cpp:func:`fc3d_nsn_fb_set_default` : Set default solver options for FC3D_NSN_FB. * :cpp:func:`fc3d_nsn_nm_set_default` : Set default solver options for FC3D_NSN_NM. * :cpp:func:`fc3d_onecontact_nonsmooth_Newton_AC_update` : Update friction-contact 3D problem: formalize local problem for one contact. * :cpp:func:`fc3d_onecontact_nonsmooth_Newton_AC_update_parallel` : Update friction-contact 3D problem, usable in parallel context: formalize local problem for one contact. * :cpp:func:`fc3d_onecontact_nonsmooth_Newton_solvers_computeError` : compute error for friction-contact 3D problem with Newton * :cpp:func:`fc3d_onecontact_nonsmooth_Newton_solvers_free` : free memory for friction contact 3D Newton solver * :cpp:func:`fc3d_onecontact_nonsmooth_Newton_solvers_initialize` : initialize friction-contact 3D Newton solver * :cpp:func:`fc3d_onecontact_nonsmooth_Newton_solvers_solve` : solve friction-contact 3D problem with Newton * :cpp:func:`fc3d_onecontact_nonsmooth_Newton_solvers_solve_damped` * :cpp:func:`fc3d_onecontact_nonsmooth_Newton_solvers_solve_direct` * :cpp:func:`fc3d_onecontact_nonsmooth_Newton_solvers_solve_hybrid` * :cpp:func:`fc3d_print_solver_info` * :cpp:func:`fc3d_projectionOnConeWithLocalIteration_free` * :cpp:func:`fc3d_projectionOnConeWithLocalIteration_initialize` * :cpp:func:`fc3d_projectionOnConeWithLocalIteration_solve` : solve friction-contact 3D problem with projection on the Cone with local iteration up to convergence of the local problem * :cpp:func:`fc3d_projectionOnCone_solve` : solve friction-contact 3D problem with projection on the Cone * :cpp:func:`fc3d_projectionOnCone_velocity_solve` : solve friction-contact 3D problem with projection on the Cone * :cpp:func:`fc3d_projectionOnCylinderWithLocalIteration_free` * :cpp:func:`fc3d_projectionOnCylinderWithLocalIteration_initialize` * :cpp:func:`fc3d_projectionOnCylinderWithLocalIteration_solve` : solve friction-contact 3D problem with projection on the (Tresca Cylinder) * :cpp:func:`fc3d_projectionOnCylinder_free` * :cpp:func:`fc3d_projectionOnCylinder_initialize` * :cpp:func:`fc3d_projectionOnCylinder_solve` : solve friction-contact 3D problem with projection on the (Tresca Cylinder) * :cpp:func:`fc3d_projectionOnCylinder_update` : Update friction-contact 3D projection solver: formalize local problem for one contact. * :cpp:func:`fc3d_projectionOnCylinder_update_parallel` : Same as above but usable in parallel. * :cpp:func:`fc3d_projectionWithDiagonalization_solve` : solve friction-contact 3D problem with projection assuming that M is diagonal * :cpp:func:`fc3d_projectionWithDiagonalization_update` : Update friction-contact 3D projection solver: formalize local problem for one contact. * :cpp:func:`fc3d_projection_free` : free memory for friction contact 3D projection solver * :cpp:func:`fc3d_projection_initialize` : Initialize friction-contact 3D projection. * :cpp:func:`fc3d_projection_initialize_with_regularization` : Initialize friction-contact 3D projection with regularization. * :cpp:func:`fc3d_projection_update` : Update friction-contact 3D projection solver: formalize local problem for one contact. * :cpp:func:`fc3d_projection_update_parallel` : Same as above but usable in parallel. * :cpp:func:`fc3d_projection_update_with_regularization` : Update friction-contact 3D projection solver: formalize local problem for one contact. * :cpp:func:`fc3d_projection_update_with_regularization_parallel` : Same as above but usable in parallel. * :cpp:func:`fc3d_projection_with_regularization_free` : free memory for friction contact 3D projection solver * :cpp:func:`fc3d_proximal` : Proximal point solver for friction-contact 3D problem. * :cpp:func:`fc3d_reformulation_global_problem` * :cpp:func:`fc3d_set_internalsolver_tolerance` * :cpp:func:`fc3d_solver_options_create` * :cpp:func:`fc3d_unitary_compute_and_add_error` : Error computation (using the normal map residual) for one friction-contact 3D problem. * :cpp:func:`fc3d_unitary_compute_dual_and_add_error` : Error computation on dual cone (using the normal map residual) for one friction-contact 3D problem. * :cpp:func:`fc3d_unitary_enumerative` * :cpp:func:`fc3d_unitary_enumerative_free` * :cpp:func:`fc3d_unitary_enumerative_initialize` * :cpp:func:`fc3d_unitary_enumerative_solve` * :cpp:func:`fc3d_unitary_enumerative_solve_poly_nu_sliding` * :cpp:func:`fc3d_unitary_enumerative_solve_sliding` * :cpp:func:`fc3d_unitary_enumerative_test_non_sliding` * :cpp:func:`fill_nm_data` : fill the data struct for non-monotone search * :cpp:func:`fmax` * :cpp:func:`freeAVI` : function to delete a AffineVariationalInequalities * :cpp:func:`freeHashSet` * :cpp:func:`freeLinearComplementarityProblem` : Delete a LinearComplementarityProblem. * :cpp:func:`freeNCP` : free an NCP problem * :cpp:func:`freeRelay_problem` : Release memory for the problem structure. * :cpp:func:`freeSecondOrderConeLinearComplementarityProblem` : free a SecondOrderConeLinearComplementarityProblem * :cpp:func:`freeVariationalInequalityProblem` : free a VariationalInequalityProblem * :cpp:func:`free_NMS_data` : free a NMS_data struct * :cpp:func:`free_box` : free a box struct * :cpp:func:`free_connectedcomponents` * :cpp:func:`free_graph` * :cpp:func:`free_ls_data` : free the allocated memory for the linesearch method * :cpp:func:`free_nm_data` : free the allocated memory for the non-monotone search * :cpp:func:`free_node_list` * :cpp:func:`free_polyhedron` : free a Polyhedron struct * :cpp:func:`free_polyhedron_unified` : free a Polyhedron struct * :cpp:func:`free_siconos_set` : free a set * :cpp:func:`frictionContactProblem_compute_statistics` * :cpp:func:`frictionContactProblem_free` : free a FrictionContactProblem * :cpp:func:`frictionContactProblem_new` * :cpp:func:`frictionContactProblem_new_with_data` : new FrictionContactProblem from minimal set of data * :cpp:func:`frictionContact_copy` : Creates a new FrictionContact problem and initialize its content by copying an existing problem. * :cpp:func:`frictionContact_display` : display a FrictionContactProblem * :cpp:func:`frictionContact_newFromFile` : read a FrictionContactProblem from a file descriptor * :cpp:func:`frictionContact_new_from_filename` : read a FrictionContactProblem from a file (.dat or hdf5 if fclib is on) from its filename * :cpp:func:`frictionContact_printInFile` : print a FrictionContactProblem in a file (numerics .dat format) * :cpp:func:`frictionContact_printInFilename` : print a FrictionContactProblem in a file (numerics dat format) * :cpp:func:`frictionContact_rescaling` : Rescales M matrix and q vector of a given FrictionContactProblem. * :cpp:func:`genericMechanicalProblem_display` * :cpp:func:`genericMechanicalProblem_free` * :cpp:func:`genericMechanicalProblem_new` * :cpp:func:`genericMechanicalProblem_printInFile` * :cpp:func:`genericMechanical_newFromFile` : read a GenericMechanicalProblem from a file descriptor * :cpp:func:`genericMechanical_new_from_filename` : read a GenericMechanicalProblem from a file (.dat or hdf5 if fclib is on) from its filename * :cpp:func:`getNewtonStepLength` * :cpp:func:`getStepLength` * :cpp:func:`get_function_address` : get the address of a function in an already opened lib * :cpp:func:`get_non_monotone_ref` : compute the reference value * :cpp:func:`get_nonmonotone_type` : Get the update type for the non-monotone line search. * :cpp:func:`gfc2d_driver` : General interface to solvers for global friction-contact 2D problem. * :cpp:func:`gfc3d_ACLMFixedPoint` : Solver based on the fixed-point iteration proposed by Cadoux for friction-contact 3D problem. * :cpp:func:`gfc3d_AVI_gams_path` : solver using PATH (via GAMS) for friction-contact 3D problem based on an AVI reformulation * :cpp:func:`gfc3d_AVI_gams_pathvi` : solver using PATHVI (via GAMS) for friction-contact 3D problem based on an AVI reformulation * :cpp:func:`gfc3d_DeSaxceFixedPoint_wr` : Fixed Point iteration on De Saxe formulation solver with reformulation for friction-contact 3D problem. * :cpp:func:`gfc3d_IPM_SNM` * :cpp:func:`gfc3d_IPM_fixed` * :cpp:func:`gfc3d_IPM_init` * :cpp:func:`gfc3d_LmgcDriver` : LMGC interface to solvers for global friction-contact 3D problem. * :cpp:func:`gfc3d_TrescaFixedPoint_wr` : Fixed Point iteration on Tresca Friction Cylinder with reformulation for friction-contact 3D problem. * :cpp:func:`gfc3d_VI_ExtraGradient` * :cpp:func:`gfc3d_VI_FixedPointProjection` * :cpp:func:`gfc3d_admm_wr` * :cpp:func:`gfc3d_balancing_M` * :cpp:func:`gfc3d_balancing_MHHT` * :cpp:func:`gfc3d_balancing_back_to_original_variables` * :cpp:func:`gfc3d_balancing_data_free` * :cpp:func:`gfc3d_balancing_data_new` * :cpp:func:`gfc3d_balancing_free` * :cpp:func:`gfc3d_balancing_go_to_balanced_variables` * :cpp:func:`gfc3d_balancing_problem` * :cpp:func:`gfc3d_checkTrivialCaseGlobal` : Check for trivial solution in the friction-contact 3D problem. * :cpp:func:`gfc3d_compute_error` : Error computation for global friction-contact 3D problem. * :cpp:func:`gfc3d_compute_error_convex` * :cpp:func:`gfc3d_compute_error_norm_infinity_conic` : Error computation using the norm infinity conic for global friction-contact 3D problem. * :cpp:func:`gfc3d_compute_error_r` * :cpp:func:`gfc3d_driver` : General interface to solvers for global friction-contact 3D problem. * :cpp:func:`gfc3d_ipm_snm_set_default` * :cpp:func:`gfc3d_ipm_snm_wr` * :cpp:func:`gfc3d_nonsmooth_Newton_AlartCurnier` * :cpp:func:`gfc3d_nonsmooth_Newton_AlartCurnier_setDefaultSolverOptions` * :cpp:func:`gfc3d_nonsmooth_Newton_AlartCurnier_wr` * :cpp:func:`gfc3d_nsgs` : Non-Smooth Gauss Seidel solver for friction-contact 3D problem. * :cpp:func:`gfc3d_nsgs_velocity_wr` : Non-Smooth Gauss Seidel solver for friction-contact 3D problem with iteration on velocities. * :cpp:func:`gfc3d_nsgs_wr` : Non-Smooth Gauss Seidel solver with reformulation for friction-contact 3D problem. * :cpp:func:`gfc3d_proximal_wr` : Proximal point solver with reformulation for friction-contact 3D problem. * :cpp:func:`gfc3d_rescaling` * :cpp:func:`gfc3d_set_internalsolver_tolerance` * :cpp:func:`gfc3d_sparseGlobalAlartCurnierInit` * :cpp:func:`globalFrictionContactProblem_new` : creates an empty GlobalFrictionContactProblem * :cpp:func:`globalFrictionContact_computeGlobalVelocity` : Compute the global velocity given the reaction. * :cpp:func:`globalFrictionContact_copy` * :cpp:func:`globalFrictionContact_display` : displays the problem onto screen * :cpp:func:`globalFrictionContact_free` : Release memory for the problem structure. * :cpp:func:`globalFrictionContact_newFromFile` : read a GlobalFrictionContactProblem from a file descriptor * :cpp:func:`globalFrictionContact_new_from_filename` : read a GlobalFrictionContactProblem from a file (.dat or hdf5 if fclib is on) from its filename * :cpp:func:`globalFrictionContact_printInFile` : Saves problem struct into a file. * :cpp:func:`globalFrictionContact_printInFileName` : Saves problem struct into a file. * :cpp:func:`globalFrictionContact_reformulation_FrictionContact` : Refomulation into local problem. * :cpp:func:`globalRollingFrictionContactProblem_free` : free a GlobalRollingFrictionContactProblem * :cpp:func:`globalRollingFrictionContactProblem_new` * :cpp:func:`globalRollingFrictionContactProblem_new_with_data` : new GlobalRollingFrictionContactProblem from minimal set of data * :cpp:func:`globalRollingFrictionContact_computeGlobalVelocity` : Compute the global velocity given the reaction. * :cpp:func:`globalRollingFrictionContact_display` : display a GlobalRollingFrictionContactProblem * :cpp:func:`globalRollingFrictionContact_newFromFile` : read a GlobalRollingFrictionContactProblem from a file descriptor * :cpp:func:`globalRollingFrictionContact_new_from_filename` : read a GlobalRollingFrictionContactProblem from a file (.dat or hdf5 if fclib is on) from its filename * :cpp:func:`globalRollingFrictionContact_printInFile` : print a GlobalRollingFrictionContactProblem in a file (numerics .dat format) * :cpp:func:`globalRollingFrictionContact_printInFilename` : print a GlobalRollingFrictionContactProblem in a file (numerics .dat format) from its filename * :cpp:func:`globalRollingFrictionContact_reformulation_RollingFrictionContact` * :cpp:func:`global_rolling_friction_3d_IPM` : solver based on Interior Point Method (IPM) for Rolling friction-contact 3D problem based on an AVI reformulation Vincent Acary, Paul Armand, Hoang Minh NGUYEN. * :cpp:func:`global_rolling_friction_3d_IPM_free` * :cpp:func:`global_rolling_friction_3d_IPM_init` * :cpp:func:`global_rolling_friction_3d_IPM_set_default` * :cpp:func:`global_rolling_friction_3d_checkTrivialCaseGlobal` * :cpp:func:`global_rolling_friction_3d_compute_error` : Error computation (using the normal map residual) for rolling friction-contact 3D problem. * :cpp:func:`global_rolling_friction_3d_driver` : General interface to solvers for global rolling friction-contact 3D problem. * :cpp:func:`global_rolling_friction_3d_nsgs_wr` : Non-Smooth Gauss Seidel solver with reformulation for rolling friction-contact 3D problem. * :cpp:func:`global_rolling_friction_3d_unitary_compute_and_add_error` : Error computation (using the normal map residual) for one rolling friction-contact 3D problem. * :cpp:func:`gmp_add` * :cpp:func:`gmp_as_mlcp` * :cpp:func:`gmp_compute_error` * :cpp:func:`gmp_driver` : General interface to solvers for friction-contact 3D problem. * :cpp:func:`gmp_gauss_seidel` * :cpp:func:`gmp_get_nb_dwork` * :cpp:func:`gmp_reduced_convert_solution` * :cpp:func:`gmp_reduced_equality_solve` * :cpp:func:`gmp_reduced_solve` * :cpp:func:`gmp_working_memory_alloc` * :cpp:func:`hadamard5x5_for_loop` * :cpp:func:`hypot2` : norm : || a || may underflow & overflow * :cpp:func:`hypot3` : norm : || a || may underflow & overflow * :cpp:func:`hypot5` * :cpp:func:`hypot5_for_loop` * :cpp:func:`hypot9` * :cpp:func:`infnorm5_for_loop` * :cpp:func:`infnorm5x5_for_loop` * :cpp:func:`init_M_bard` * :cpp:func:`init_M_least_index` * :cpp:func:`init_M_lemke` : Initialize the matrix for Lemke’s algorithm as [ q | Id | -d | -M ] with d_i = 1 if i < size_x if the argument d is NULL. * :cpp:func:`init_M_lemke_warm_start` * :cpp:func:`init_lsa_functions` : Set the functions to compute F and F_merit and all the other pointers to NULL. * :cpp:func:`insert3x3` : insert3x3 : insert a 3x3 matrix *b into *a * :cpp:func:`inv_3x3_gepp` * :cpp:func:`inv_5x5_gepp_for_loop` * :cpp:func:`isInHashSet` * :cpp:func:`jacobianF_GlockerFischerBurmeister` * :cpp:func:`jacobianPhi_FB` : Jacobian of the Fischer Burmeister function, $ nabla_z phi(z,F(z)) $. * :cpp:func:`jacobianPhi_Mixed_FB` : Jacobian of the mixed Fischer Burmeister function, $ nabla_z phi(z,F(z)) $. * :cpp:func:`lcp_ConvexQP_ProjectedGradient` * :cpp:func:`lcp_FB` : Compute F_FB : $ {F_FB}_i = sqrt(z_i^2 + F_i^2) - (z_i + F_i) $. * :cpp:func:`lcp_avi_caoferris` : lcp_avi_caoferris is a direct solver for LCP based on an Affine Variational Inequalities (AVI) reformulation The AVI solver is here the one from Cao and Ferris Ref: “A Pivotal Method for Affine Variational Inequalities” Menglin Cao et Michael Ferris (1996) * :cpp:func:`lcp_compute_error` : Computes error criterion and update $ w = Mz + q $. * :cpp:func:`lcp_compute_error_only` : Computes error criterion. * :cpp:func:`lcp_cpg` : lcp_cpg is a CPG (Conjugated Projected Gradient) solver for LCP based on quadratic minimization. * :cpp:func:`lcp_driver_DenseMatrix` : Interface to solvers for Linear Complementarity Problems, dedicated to dense matrix storage. * :cpp:func:`lcp_enum` : enumerative solver * :cpp:func:`lcp_enum_getNbDWork` * :cpp:func:`lcp_enum_getNbIWork` * :cpp:func:`lcp_enum_init` : Proceed with initialisation required before any call of the enum solver. * :cpp:func:`lcp_enum_reset` : Reset state for enum solver parameters. * :cpp:func:`lcp_gams` : lcp_gams uses the solver provided by GAMS * :cpp:func:`lcp_jacobi` * :cpp:func:`lcp_latin` : lcp_latin (LArge Time INcrements) is a basic latin solver for LCP. * :cpp:func:`lcp_latin_w` : lcp_latin_w (LArge Time INcrements) is a basic latin solver with relaxation for LCP. * :cpp:func:`lcp_lexicolemke` : lcp_lexicolemke is a direct solver for LCP based on pivoting method principle for degenerate problem Choice of pivot variable is performed via lexicographic ordering Ref: “The Linear Complementarity Problem” Cottle, Pang, Stone (1992) * :cpp:func:`lcp_newton_FB` : lcp_newton_FB use a nonsmooth newton method based on the Fischer-Bursmeister convex function * :cpp:func:`lcp_newton_min` : lcp_newton_min uses a nonsmooth Newton method based on the min formulation (or max formulation) of the LCP * :cpp:func:`lcp_newton_minFB` : lcp_newton_minFB use a nonsmooth newton method based on both a min and Fischer-Bursmeister reformulation References: FacchineiPang (2003) * :cpp:func:`lcp_nsgs_SBM` : generic interface used to call any LCP solver applied on a Sparse-Block structured matrix M, with a Gauss-Seidel process to solve the global problem (formulation/solving of local problems for each row of blocks) * :cpp:func:`lcp_nsgs_SBM_buildLocalProblem` : Construct local problem from a “global” one. * :cpp:func:`lcp_nsqp` : lcp_nsqp use a quadratic programm formulation for solving an non symmetric LCP * :cpp:func:`lcp_path` : path solver * :cpp:func:`lcp_pathsearch` : lcp_pathsearch is a direct solver for LCP based on the pathsearch algorithm * :cpp:func:`lcp_pgs` : lcp_pgs (Projected Gauss-Seidel) is a basic Projected Gauss-Seidel solver for LCP. * :cpp:func:`lcp_pivot` : lcp_pivot is a direct solver for LCP based on a pivoting method It can currently use Bard, Murty’s least-index or Lemke rule for choosing the pivot. * :cpp:func:`lcp_pivot_covering_vector` * :cpp:func:`lcp_pivot_diagnose_info` : print a diagnostic of the info value * :cpp:func:`lcp_pivot_lumod` * :cpp:func:`lcp_pivot_lumod_covering_vector` * :cpp:func:`lcp_psor` : lcp_psor Projected Succesive over relaxation solver for LCP. * :cpp:func:`lcp_qp` : lcp_qp uses a quadratic programm formulation for solving a LCP * :cpp:func:`lcp_rpgs` : lcp_rpgs (Regularized Projected Gauss-Seidel ) is a solver for LCP, able to handle matrices with null diagonal terms. * :cpp:func:`ld_gammal` * :cpp:func:`len_connectedcomponent` * :cpp:func:`len_connectedcomponents` * :cpp:func:`line_search_generic` : Generic call for a linesearch (or arcsearch). * :cpp:func:`linearComplementarity_display` : display a LinearComplementarityProblem * :cpp:func:`linearComplementarity_driver` : General interface to solvers for Linear Complementarity Problems. * :cpp:func:`linearComplementarity_newFromFile` : Read and create a LinearComplementarityProblem from a file. * :cpp:func:`linearComplementarity_newFromFilename` : Read and create a LinearComplementarityProblem from a file. * :cpp:func:`linearComplementarity_printInFile` : function to write in a file a LinearComplementarityProblem * :cpp:func:`linesearch_Armijo` : Armijo Linesearch. * :cpp:func:`linesearch_Armijo2` : Armijo linesearch; this version compute and update the reference value and calls search_Armijo_standalone() * :cpp:func:`linesearch_Goldstein2` : Goldstein linesearch; this version compute and update the reference value and calls search_Goldstein_standalone() * :cpp:func:`localPLASTICITY_2DProblemFunctionToolkit_display` * :cpp:func:`localPLASTICITY_2DProblemFunctionToolkit_new` * :cpp:func:`localProblemFunctionToolkit_display` * :cpp:func:`localProblemFunctionToolkit_new` * :cpp:func:`mTm5x5_for_loop` * :cpp:func:`max_part` : Search for the max. * :cpp:func:`maxf` : compare two double a and b, and return the max. * :cpp:func:`mcp_FB` : Compute F_FB : ${F_FB}_i = sqrt(z_i^2 + F_i^2) - (z_i + F_i)$. * :cpp:func:`mcp_compute_error` * :cpp:func:`mcp_driver` : General interface to solver for MCP problems new version. * :cpp:func:`mcp_newton_FB_FBLSA` : Solver based on Fischer-Burmeister reformulation and line search (VFBLSA in FacchineiPang 2003 p. * :cpp:func:`mcp_newton_min_FBLSA` : Solver based on Fischer-Burmeister reformulation and line search. * :cpp:func:`mcp_old_FischerBurmeister` : Fischer Burmeister solver. * :cpp:func:`mcp_old_FischerBurmeister_init` : Initialisation of the MCP Fischer solver (set problem, allocate working memory and so on. * :cpp:func:`mcp_old_FischerBurmeister_reset` : Reset of the MCP Fischer solver (free local variable) * :cpp:func:`mcp_old_compute_error` * :cpp:func:`mcp_old_driver` : General interface to solver for MCP problems. * :cpp:func:`mcp_old_driver_init` : Initialisation of the MCP solver (set problem, allocate working memory and so on. * :cpp:func:`mcp_old_driver_reset` : Reset of the MCP solver. * :cpp:func:`min_part` : Search for the min. * :cpp:func:`minf` : compare two double a and b, and return the min. * :cpp:func:`mixedComplementarityProblem_free` : free a MCP problem * :cpp:func:`mixedComplementarityProblem_new` * :cpp:func:`mixedComplementarityProblem_old_free` : Delete a MixedComplementarityProblem_old. * :cpp:func:`mixedLinearComplementarity_display` : display a MLCP * :cpp:func:`mixedLinearComplementarity_free` : function to delete a MixedLinearComplementarityProblem * :cpp:func:`mixedLinearComplementarity_fromMtoABCD` : Function to create a MLCP with ABCD format from M formatted MLCP. * :cpp:func:`mixedLinearComplementarity_new` : create empty MLCP * :cpp:func:`mixedLinearComplementarity_newFromFile` : Function to read and create a MixedLinearComplementarityProblem from a file. * :cpp:func:`mixedLinearComplementarity_newFromFileOld` : Function to read and create a MixedLinearComplementarityProblem from a file. * :cpp:func:`mixedLinearComplementarity_newFromFilename` : Function to read and create a MixedLinearComplementarityProblem from a file. * :cpp:func:`mixedLinearComplementarity_printInFile` : function to write in a file a MixedLinearComplementarityProblem * :cpp:func:`mlcp_FB` : Fischer Burmeister solver. * :cpp:func:`mlcp_FB_getNbDWork` * :cpp:func:`mlcp_FB_getNbIWork` * :cpp:func:`mlcp_FB_init` * :cpp:func:`mlcp_FB_reset` * :cpp:func:`mlcp_compute_error` : This function checks the validity of the vector z as a solution of the MLCP. * :cpp:func:`mlcp_direct` : direct solver * :cpp:func:`mlcp_direct_FB` : Direct Fischer Burmeister solver. * :cpp:func:`mlcp_direct_FB_getNbDWork` * :cpp:func:`mlcp_direct_FB_getNbIWork` * :cpp:func:`mlcp_direct_FB_init` * :cpp:func:`mlcp_direct_FB_reset` * :cpp:func:`mlcp_direct_addConfig` * :cpp:func:`mlcp_direct_addConfigFromWSolution` * :cpp:func:`mlcp_direct_enum` : direct-enum solver * :cpp:func:`mlcp_direct_enum_getNbDWork` * :cpp:func:`mlcp_direct_enum_getNbIWork` * :cpp:func:`mlcp_direct_enum_init` * :cpp:func:`mlcp_direct_enum_reset` * :cpp:func:`mlcp_direct_getNbDWork` * :cpp:func:`mlcp_direct_getNbIWork` * :cpp:func:`mlcp_direct_init` * :cpp:func:`mlcp_direct_path` : direct-path solver * :cpp:func:`mlcp_direct_path_enum` * :cpp:func:`mlcp_direct_path_enum_getNbDWork` * :cpp:func:`mlcp_direct_path_enum_getNbIWork` * :cpp:func:`mlcp_direct_path_enum_init` * :cpp:func:`mlcp_direct_path_enum_reset` * :cpp:func:`mlcp_direct_path_getNbDWork` * :cpp:func:`mlcp_direct_path_getNbIWork` * :cpp:func:`mlcp_direct_path_init` * :cpp:func:`mlcp_direct_path_reset` * :cpp:func:`mlcp_direct_reset` * :cpp:func:`mlcp_direct_simplex` : direct-simplex solver * :cpp:func:`mlcp_direct_simplex_getNbDWork` * :cpp:func:`mlcp_direct_simplex_getNbIWork` * :cpp:func:`mlcp_direct_simplex_init` * :cpp:func:`mlcp_direct_simplex_reset` * :cpp:func:`mlcp_driver` : General interface to solver for MLCP problems. * :cpp:func:`mlcp_driver_init` : General interface to initialize a solver. * :cpp:func:`mlcp_driver_reset` : General interface to reset a solver. * :cpp:func:`mlcp_enum` : enum solver * :cpp:func:`mlcp_enum_alloc_working_memory` * :cpp:func:`mlcp_enum_build_M` * :cpp:func:`mlcp_enum_build_M_Block` * :cpp:func:`mlcp_enum_build_indexInBlock` * :cpp:func:`mlcp_enum_display_solution` * :cpp:func:`mlcp_enum_display_solution_Block` * :cpp:func:`mlcp_enum_fill_solution` * :cpp:func:`mlcp_enum_fill_solution_Block` * :cpp:func:`mlcp_enum_free_working_memory` * :cpp:func:`mlcp_enum_getNbDWork` * :cpp:func:`mlcp_enum_getNbIWork` * :cpp:func:`mlcp_lcp_lemke` * :cpp:func:`mlcp_lcp_lemke_default` * :cpp:func:`mlcp_path` : path solver * :cpp:func:`mlcp_path_enum` * :cpp:func:`mlcp_path_enum_getNbDWork` * :cpp:func:`mlcp_path_enum_getNbIWork` * :cpp:func:`mlcp_path_enum_init` * :cpp:func:`mlcp_path_enum_reset` * :cpp:func:`mlcp_pgs` : mlcp_pgs (Projected Gauss-Seidel) is a basic Projected Gauss-Seidel solver for MLCP. * :cpp:func:`mlcp_pgs_SBM` : generic interface used to call any MLCP solver applied on a Sparse-Block structured matrix M, with a Gauss-Seidel process to solve the global problem (formulation/solving of local problems for each row of blocks) * :cpp:func:`mlcp_psor` : mlcp_psor (projected successive overrelaxation method) is a solver for MLCP. * :cpp:func:`mlcp_rpgs` : mlcp_rpgs (Projected Gauss-Seidel) is a basic Projected Gauss-Seidel solver for MLCP. * :cpp:func:`mlcp_rpsor` : mlcp_rpsor (regularized projected successive overrelaxation method) is a solver for MLCP. * :cpp:func:`mlcp_simplex` : simplex solver * :cpp:func:`mlcp_simplex_init` * :cpp:func:`mlcp_simplex_reset` * :cpp:func:`mlcp_to_lcp` * :cpp:func:`mm3x3` : matrix matrix multiplication : c = a * b * :cpp:func:`mm5x5` : matrix matrix multiplication : c = a * b * :cpp:func:`mm5x5_acc_for_loop` * :cpp:func:`mm5x5_for_loop` : matrix matrix multiplication : c = a * b * :cpp:func:`mm5x5_sub_for_loop` * :cpp:func:`mmm3x3` : sub a matrix matrix multiplication : c -= a*b * :cpp:func:`mmp3x3` : add a matrix matrix multiplication : c += a*b * :cpp:func:`mmt5x5_for_loop` * :cpp:func:`mtv3x3` : transpose(matrix) vector multiplication * :cpp:func:`mtvm3x3` : transpose(matrix) vector multiplication * :cpp:func:`mv3x3` : matrix vector multiplication * :cpp:func:`mvm3x3` : minux the result a matrix vector multiplication * :cpp:func:`mvp2x2` : add a matrix vector multiplication * :cpp:func:`mvp3x3` : add a matrix vector multiplication * :cpp:func:`mvp5x5` * :cpp:func:`mvp5x5T_for_loop` * :cpp:func:`mvp5x5_add_for_loop` * :cpp:func:`mvp5x5_for_loop` * :cpp:func:`mvp_alpha3x3` : add a matrix vector multiplication scaled by alpha * :cpp:func:`nbNonNulElems` * :cpp:func:`ncp_FB` : Compute F_FB : $ {F_FB}_i = sqrt(z_i^2 + F_i^2) - (z_i + F_i) $. * :cpp:func:`ncp_compute_error` : This function compute the complementarity error of the NCP $ 0 leq z perp F(z) geq 0 $. * :cpp:func:`ncp_driver` : General interface to solver for NCP problems. * :cpp:func:`ncp_newton_FBLSA` : NCP Solver using the FB merit function and a Newton-based method with line-search. * :cpp:func:`ncp_newton_minFBLSA` : NCP Solver using the min merit function (+ the FB as backup) and a Newton-based method with line-search. * :cpp:func:`ncp_path` : NCP Solver using the PATH solver. * :cpp:func:`ncp_pathsearch` : NCP Solver using a path search algorithm, following the work of D. * :cpp:func:`ncp_pathsearch_compute_x_from_z` : compute x from z for an NCP * :cpp:func:`newAVI` : Create an empty AVI struct. * :cpp:func:`newLCP` : Create new LCP and clear its fields. * :cpp:func:`newNCP` : create an empty NCP problem * :cpp:func:`newVI` : new VariationalInequality problem * :cpp:func:`newton_LSA` : Newton algorithm for finding the zero of a function with a line search. * :cpp:func:`newton_LSA_free_solverOptions` : clear the solver-specific data * :cpp:func:`nonSmoothDirectNewton` : Newton solver without line Search. * :cpp:func:`nonSmoothNewton` : Newton solver with line Search. * :cpp:func:`nonSmoothNewtonNeigh` * :cpp:func:`nonSmoothNewtonNeighInitMemory` * :cpp:func:`nonSmoothNewtonNeigh_getNbDWork` * :cpp:func:`nonSmoothNewtonNeigh_getNbIWork` * :cpp:func:`nonsmoothEqnAlartCurnierFun` * :cpp:func:`norm2VecDiff` * :cpp:func:`norm2_5_for_loop` * :cpp:func:`norm5_for_loop` * :cpp:func:`normalize5_for_loop` * :cpp:func:`ns_problem_id_to_name` : returns nonsmooth problem formulation name, from its id number. * :cpp:func:`nsgs_adapt_tolerance` : Adapt working tolerance based on incremental and full error. * :cpp:func:`nsgs_check_convergence_with_full_error` : Check convergence when incremental error has converged. * :cpp:func:`nsgs_check_freezing_reset` : Check if too many blocks are frozen and reset if necessary. * :cpp:func:`nsgs_check_full_error_convergence` : Compute full error and check convergence with user tolerance. * :cpp:func:`nsgs_count_frozen_percent` : Count frozen blocks and return percentage. * :cpp:func:`nsgs_default_should_freeze` : Default criteria for freezing a block (matches fc3d_nsgs) * :cpp:func:`nsgs_determine_convergence` : Determine convergence based on error and tolerance. * :cpp:func:`nsgs_driver` : Generic NSGS driver. * :cpp:func:`nsgs_early_tolerance_adapt` : Early tolerance adaptation at iteration 10. * :cpp:func:`nsgs_fc2d_local_ops` * :cpp:func:`nsgs_fc3d_local_ops` * :cpp:func:`nsgs_generic_extract_diagonal_blocks` : Extract diagonal blocks from matrix for efficient access. * :cpp:func:`nsgs_generic_free_diagonal_blocks` : Free extracted diagonal blocks and restore original matrix1 pointer. * :cpp:func:`nsgs_generic_update_local_problem` : Generic local problem update function. * :cpp:func:`nsgs_generic_update_local_problem_callback` : Wrapper for generic local problem update with callback signature. * :cpp:func:`nsgs_get_time` * :cpp:func:`nsgs_local_problem_create` : Create local problem handle. * :cpp:func:`nsgs_local_problem_free` : Free local problem. * :cpp:func:`nsgs_local_problem_get_dimension` : Get problem dimension. * :cpp:func:`nsgs_local_problem_get_type` : Get problem type. * :cpp:func:`nsgs_local_problem_set_solver` : Set local solver by name. * :cpp:func:`nsgs_local_problem_solve` : Solve local problem using registered solver. * :cpp:func:`nsgs_local_problem_update` : Update local problem with current global state. * :cpp:func:`nsgs_plasticity_2d_local_ops` * :cpp:func:`nsgs_print_iteration_stats` : Print iteration statistics (verbose output) * :cpp:func:`nsgs_rfc3d_local_ops` * :cpp:func:`nsgs_shuffle_blocks` : Shuffle blocks array. * :cpp:func:`nsgs_solve` : Generic NSGS solver - SINGLE LOOP VERSION (Optimized) * :cpp:func:`nsgs_solve_4stage` : Generic NSGS solver - 4 STAGE VERSION (Original Design) * :cpp:func:`nsgs_solve_instrumented` : Instrumented NSGS solver - SINGLE LOOP VERSION. * :cpp:func:`nsgs_timers_print` * :cpp:func:`nsgs_timers_reset` * :cpp:func:`nsgs_update_freeze_counter` : Update freeze counters for a block. * :cpp:func:`numericsSparseMatrix` : Creation, if needed, of sparse matrix storage. * :cpp:func:`numerics_error` : msg output and return error code * :cpp:func:`numerics_error_log` : msg output no return code * :cpp:func:`numerics_error_nonfatal` : log error message without exit * :cpp:func:`numerics_error_string` * :cpp:func:`numerics_log_error` * :cpp:func:`numerics_log_info` * :cpp:func:`numerics_log_warning` * :cpp:func:`numerics_printf` : log message (if verbosity is on) * :cpp:func:`numerics_printf_verbose` : log message if verbose is non null * :cpp:func:`numerics_set_verbose` * :cpp:func:`numerics_warning` : log warning * :cpp:func:`open_library` : open a library and return an handle (casted as void) * orthoBaseFromVector() * orthoBaseFromVector_old() : orthoBaseFromVector : From a vector A, build a matrix (A,A1,A2) such that it is an orthonormal. * pathsearch_set_default() : set some default value for the solver option when the path search algorithm is used * phi_FB() : Fischer Burmeister function, $ phi(z,F(z)) $. * phi_Mixed_FB() : Mixed Fischer Burmeister function,. * phi_Qi() : Evaluates the C function for a box-constrained VI. * pinv() : Compute the pseudo-inverse of dense matrix with column major storage. * pivot_init_lemke() : find the first leaving variable for Lemke’s algorithm * pivot_init_pathsearch() : find the first leaving variable for the pathsearch algorithm * pivot_selection_bard() * pivot_selection_least_index() * pivot_selection_lemke() : find the leaving variable for Lemke’s algorithm * pivot_selection_lemke2() : find the leaving variable for Lemke’s algorithm * pivot_selection_lemke3() : find the leaving variable for Lemke’s algorithm * pivot_selection_pathsearch() : find the leaving variable in a path search procedure. * plasticity2DProblem_free() * plasticity2DProblem_new() * plasticity2DProblem_new_with_data() * plasticity2D_copy() * plasticity2D_display() * plasticity2D_newFromFile() * plasticity2D_new_from_filename() * plasticity2D_printInFile() * plasticity2D_printInFilename() * plasticity2D_rescaling() * plasticityProblem_free() : free a PlasticityProblem * plasticityProblem_new() * plasticityProblem_new_with_data() : new PlasticityProblem from minimal set of data (Drucker-Prager model) * plasticity_2d_checkTrivialCase() : Check for trivial solution in the Mohr Coulomb 2D problem. * plasticity_2d_computeAlartCurnierSTD() * plasticity_2d_computeNaturalMap() * plasticity_2d_compute_error() : Error computation (using the normal map residual) for Mohr Coulomb 2D plasticity. * plasticity_2d_compute_rho_spectral_norm() * plasticity_2d_compute_rho_split_spectral_norm() * plasticity_2d_compute_rho_split_spectral_norm_cond() * plasticity_2d_driver() : General interface to solvers for Mohr Coulomb 2D problem. * plasticity_2d_driver() : Driver for Mohr Coulomb 2D problem. * plasticity_2d_local_problem_allocate() * plasticity_2d_local_problem_compute_q() * plasticity_2d_local_problem_fill_M() * plasticity_2d_local_problem_free() * plasticity_2d_nsgs() : Non-Smooth Gauss Seidel solver for Mohr Coulomb 2D problem. * plasticity_2d_nsgs_generic() : Non-Smooth Gauss Seidel solver for Mohr Coulomb 2D problem using generic NSGS framework. * plasticity_2d_onecone_nonsmooth_Newton_AC_update() : Update Mohr Coulomb 2D problem: formalize local problem for one contact. * plasticity_2d_onecone_nonsmooth_Newton_solvers_computeError() : compute error for Mohr Coulomb 2D problem with Newton * plasticity_2d_onecone_nonsmooth_Newton_solvers_free() : free memory for Mohr Coulomb 2D Newton solver * plasticity_2d_onecone_nonsmooth_Newton_solvers_initialize() : initialize Mohr Coulomb 2D Newton solver * plasticity_2d_onecone_nonsmooth_Newton_solvers_solve() : solve Mohr Coulomb 2D problem with Newton * plasticity_2d_onecone_nonsmooth_Newton_solvers_solve_damped() * plasticity_2d_onecone_nonsmooth_Newton_solvers_solve_direct() * plasticity_2d_onecone_nonsmooth_Newton_solvers_solve_hybrid() * plasticity_2d_projectionOnConeWithLocalIteration_free() * plasticity_2d_projectionOnConeWithLocalIteration_initialize() * plasticity_2d_projectionOnConeWithLocalIteration_solve() : solve Mohr Coulomb 2D problem with projection on the Cone with local iteration up to convergence of the local problem * plasticity_2d_projectionOnCone_solve() : solve Mohr Coulomb 2D problem with projection on the Cone * plasticity_2d_projectionOnVonMises() : Project a trial stress onto the Von Mises yield surface. * plasticity_2d_projectionOnVonMises_solve() : Solve a local problem using Von Mises radial return projection. * plasticity_2d_projection_free() : free memory for Mohr Coulomb 2D projection solver * plasticity_2d_projection_initialize() : Initialize Mohr Coulomb 2D projection. * plasticity_2d_projection_initialize_with_regularization() : Initialize Mohr Coulomb 2D projection with regularization. * plasticity_2d_projection_update() : Update Mohr Coulomb 2D projection solver: formalize local problem for one contact. * plasticity_2d_unitary_compute_and_add_error() : Error computation (using the normal map residual) for one Mohr Coulomb 2D plasticity. * plasticity_2d_vonMises_check_yield() : Check if stress is inside the Von Mises yield surface. * plasticity_2d_vonMises_equivalent_stress() : Compute the Von Mises equivalent stress (q). * plasticity_2d_vonmises_set_default() : Set default solver options for Von Mises projection. * plasticity_DruckerPrager_model_free() : Free a Drucker-Prager model. * plasticity_DruckerPrager_model_new() : Create a new Drucker-Prager model with given parameters. * plasticity_VonMises_model_free() : Free a Von Mises model. * plasticity_VonMises_model_new() : Create a new Von Mises model with given parameters. * plasticity_copy() : Creates a new Plasticity problem and initialize its content by copying an existing problem. * plasticity_display() : display a PlasticityProblem * plasticity_model_type_to_string() : Get a string representation of the model type. * plasticity_newFromFile() : read a PlasticityProblem from a file descriptor * plasticity_new_from_filename() : read a PlasticityProblem from a file (.dat or hdf5 if fclib is on) from its filename * plasticity_printInFile() : print a PlasticityProblem in a file (numerics .dat format) * plasticity_printInFilename() : print a PlasticityProblem in a file (numerics dat format) * plasticity_rescaling() : Rescales M matrix and q vector of a given PlasticityProblem. * pos_part() : Positive part values of the components of a vector. * primalResidual() * primalResidual_s() : Returns the primal constraint vector for global fricprob ( velocity - H @ globalVelocity - w ) * primalResidual_s_type() * primalResidual_type() * print3() : print a vector * print3x3() : print a matrix * printBlockVec() * printLCP() * print_connectedcomponent() * print_connectedcomponents() * print_graph() * project_on_box() : This function computes the projection on the boxr $ [lb,ub]$ of the vector $z$. * project_on_set() : project the point x on a set * projectionError() * projectionError_based_reaction_norm_infinity_conic() * projectionError_dual_norm_infinity_conic() * projectionError_norm_infinity_conic() * projectionError_relative_norm_infinity_conic() * projectionOn2DRollingCone() : projectionOnRollingCone Projection on the second Order Cone in $ R^3 $, $ K { r, r_1 geq 0, 0 sqrt(r_2^2+r_3^2) geq mu r_1, 0 sqrt(r_3^2+r_4^2) geq mu_r r_1 } $ * projectionOnCone() : Projection on the second Order Cone in $ R^3 $. * projectionOnCylinder() : projectionOnCylinder Projection onto the positive Cylinder of radius R $ { r, r_1 geq 0, 0 sqrt(r_2^2+r_3^2) geq R } $ * projectionOnDisk() : projectionOnDisk Projection onto the positive Disk of radius R $ { r, 0 sqrt(r_1^2+r_2^2) geq R } $ * projectionOnDualCone() : Projection on the second Order Cone in $ R^3 $. * projectionOnDualRollingCone() : projectionOnDualRollingCone Projection on the second Order Cone in $ R^3 $, $ K { r, r_1 geq 0, 0 mu sqrt(u_2^2+u_3^2) geq u_1, 0 sqrt(r_3^2+r_4^2) geq mu_r r_1 } $ * projectionOnGeneralCylinder() : projectionOnGeneralCylinder Projection onto the positive Cylinder of radius R $ { r, r_1 geq 0, 0 sqrt(r_2^2+r_3^2) geq R } $ * projectionOnGeneralDisk() : projectionOnGeneralDisk Projection onto the positive Disk of radius R $ { r, 0 sqrt(r_1^2+r_1^2) geq R } $ * projectionOnRollingCone() : projectionOnRollingCone Projection on the second Order Cone in $ R^3 $, $ K { r, r_1 geq 0, 0 sqrt(r_2^2+r_3^2) geq mu r_1, 0 sqrt(r_3^2+r_4^2) geq mu_r r_1 } $ * projectionOnSecondOrderCone() : Projection on the second Order Cone in $ R^n $. * ql0001() : solution of quadratic programming problems ql0001 solves the quadratic programming problem * read_fricprob_block() * relGap() * relayProblem_new() * relay_avi_caoferris() : Solve a Relay problem using the AVI framework and the solver by Cao and Ferris. * relay_avi_caoferris_test() : Solve a Relay problem using the AVI framework and the solver by Cao and Ferris. * relay_compute_error() : This function computes the input vector $ w = Mz + q $ and checks the validity of the vector z as a solution of the LCP : $

-(Mz + q) in N_{[lb,ub]}(z)

$ The criterion is based on $ error = |z- proj_{[lb,ub]}(z - rho * (M*z+q)) |, rho >0$ This error is divided by $ |q| $ and then compared to tol. * relay_driver() : General interface to solver for relay problems. * relay_enum() : relay_enum is enum solver for relay problems. * relay_lexicolemke() : relay_lexicolemke is a Lemke solver for relay problems. * relay_newFromFile() : read a RelayProblem from a file descriptor * relay_new_from_filename() : read a RelayProblem from a file (.dat or hdf5 if fclib is on) from its filename * relay_path() : relay_path is a resolution of the Relay with its inherent MCP formulation and using path. * relay_pgs() : relay_pgs is a projected Gauss-Seidel solver for relay problems. * relay_printInFile() : Saves relay struct into a file. * relay_to_lcp() : This function transform a RelayProblem into a LinearComplementarityProblem. * rollingFrictionContactProblem_compute_statistics() * rollingFrictionContactProblem_free() : free a RollingFrictionContactProblem * rollingFrictionContactProblem_new() * rollingFrictionContactProblem_new_with_data() : new RollingFrictionContactProblem from minimal set of data * rollingFrictionContact_display() : display a RollingFrictionContactProblem * rollingFrictionContact_newFromFile() : read a RollingFrictionContactProblem from a file descriptor * rollingFrictionContact_new_from_filename() : read a RollingFrictionContactProblem from a file (.dat or hdf5 if fclib is on) from its filename * rollingFrictionContact_printInFile() : print a RollingFrictionContactProblem in a file (numerics .dat format) * rollingFrictionContact_printInFilename() : print a RollingFrictionContactProblem in a file (numerics .dat format) from its filename * rolling_friction_2d_checkTrivialCase() : Check for trivial solution in the friction-contact 3D problem. * rolling_friction_2d_compute_error() : Error computation (using the normal map residual) for rolling friction-contact 2D problem. * rolling_friction_2d_driver() : General interface to solvers for rolling friction-contact 2D problem. * rolling_friction_2d_driver() : Driver for 2D rolling friction contact problem. * rolling_friction_2d_local_problem_allocate() * rolling_friction_2d_local_problem_compute_q() * rolling_friction_2d_local_problem_fill_M() * rolling_friction_2d_local_problem_free() * rolling_friction_2d_nsgs() : Non-Smooth Gauss Seidel solver for Rolling friction-contact 2D problem. * rolling_friction_2d_nsgs_initialize_local_solver() * rolling_friction_2d_projectionOnConeWithLocalIteration_free() * rolling_friction_2d_projectionOnConeWithLocalIteration_initialize() * rolling_friction_2d_projectionOnConeWithLocalIteration_setDefaultSolverOptions() * rolling_friction_2d_projectionOnConeWithLocalIteration_solve() : solve friction-contact 3D problem with projection on the Cone with local iteration up to convergence of the local problem * rolling_friction_2d_projectionOnCone_setDefaultSolverOptions() * rolling_friction_2d_projectionOnCone_solve() * rolling_friction_2d_projection_free() * rolling_friction_2d_projection_initialize() * rolling_friction_2d_projection_update() : Update friction-contact 3D projection solver: formalize local problem for one contact. * rolling_friction_2d_set_internalsolver_tolerance() * rolling_friction_2d_unitary_compute_and_add_error() : Error computation (using the normal map residual) for one rolling friction-contact 2D problem. * rolling_friction_3D_computeNaturalMap() * rolling_friction_3d_admm() * rolling_friction_3d_admm_free() * rolling_friction_3d_admm_init() * rolling_friction_3d_admm_set_default() * rolling_friction_3d_checkTrivialCase() : Check for trivial solution in the rolling friction-contact 3D problem. * rolling_friction_3d_compute_error() : Error computation (using the normal map residual) for friction-contact 3D problem. * rolling_friction_3d_driver() : General interface to solvers for rolling friction-contact 3D problem. * rolling_friction_3d_driver() : Driver for 3D rolling friction contact problem. * rolling_friction_3d_local_problem_allocate() * rolling_friction_3d_local_problem_compute_q() * rolling_friction_3d_local_problem_fill_M() * rolling_friction_3d_local_problem_free() * rolling_friction_3d_nsgs() : Non-Smooth Gauss Seidel solver for Rolling friction-contact 3D problem. * rolling_friction_3d_nsgs_initialize_local_solver() * rolling_friction_3d_onecone_nonsmooth_Newton_solvers_computeError() : compute error for rolling friction 3D problem with Newton * rolling_friction_3d_onecone_nonsmooth_Newton_solvers_free() : free memory for rolling friction 3D Newton solver * rolling_friction_3d_onecone_nonsmooth_Newton_solvers_initialize() : initialize rolling friction 3D Newton solver * rolling_friction_3d_onecone_nonsmooth_Newton_solvers_solve() : solve rolling friction 3D problem with Newton * rolling_friction_3d_onecone_nonsmooth_Newton_solvers_solve_damped() * rolling_friction_3d_onecone_nonsmooth_Newton_solvers_solve_direct() * rolling_friction_3d_onecone_nonsmooth_Newton_solvers_solve_hybrid() * rolling_friction_3d_onecone_nonsmooth_Newton_update() : Update rolling friction 3D problem: formalize local problem for one contact. * rolling_friction_3d_onecone_nsn_gp_set_default() : Set default options for onecone NSN GP solver. * rolling_friction_3d_onecone_nsn_set_default() : Set default options for onecone NSN solver. * rolling_friction_3d_projectionOnConeWithLocalIteration_free() * rolling_friction_3d_projectionOnConeWithLocalIteration_initialize() * rolling_friction_3d_projectionOnConeWithLocalIteration_setDefaultSolverOptions() * rolling_friction_3d_projectionOnConeWithLocalIteration_solve() : solve friction-contact 3D problem with projection on the Cone with local iteration up to convergence of the local problem * rolling_friction_3d_projectionOnCone_setDefaultSolverOptions() * rolling_friction_3d_projectionOnCone_solve() * rolling_friction_3d_projection_free() * rolling_friction_3d_projection_initialize() * rolling_friction_3d_projection_update() : Update friction-contact 3D projection solver: formalize local problem for one contact. * rolling_friction_3d_set_internalsolver_tolerance() * rolling_friction_3d_unitary_compute_and_add_error() : Error computation (using the normal map residual) for one friction-contact 3D problem. * scal3() : scalar multiplication of a vector3 * scal3x3() : scalar multiplication of a matrix3x3 * scal5() : scalar multiplication of a 5D vector * scal5_for_loop() : scalar multiplication of a 5D vector * scal5x5() : scalar multiplication of a matrix5x5 * scal5x5_for_loop() : scalar multiplication of a matrix5x5 * search_Armijo_params_init() : Initialize parameters to a default value. * search_Armijo_standalone() : Armijo (non-monotone) search, standalone version: it does not compute the reference value, it is expected as argument (theta) * search_Goldstein_params_init() : Initialize parameters to a default value. * search_Goldstein_standalone() : Goldstein (non-monotone) search, standalone version: it does not compute the reference value, it is expected as argument (theta) * secondOrderConeLinearComplementarityProblem_display() : display a SecondOrderConeLinearComplementarityProblem * secondOrderConeLinearComplementarityProblem_new() : new SecondOrderConeLinearComplementarityProblem from minimal set of data * secondOrderConeLinearComplementarityProblem_newFromFile() : read a SecondOrderConeLinearComplementarityProblem in a file (numerics .dat format) * secondOrderConeLinearComplementarityProblem_newFromFilename() : read a SecondOrderConeLinearComplementarityProblem in a file (numerics .dat format) from its filename * secondOrderConeLinearComplementarityProblem_printInFile() : print a SecondOrderConeLinearComplementarityProblem in a file (numerics .dat format) * secondOrderConeLinearComplementarityProblem_printInFilename() : print a SecondOrderConeLinearComplementarityProblem in a file (numerics .dat format) from its filename * setErrorArray() * set_lsa_params_data() : Set the parameters and data for newton_LSA. * set_nonmonotone_type() : Set the update type for the non-monotone line search. * set_set_id() : set set id * siconos_find_vertex() * size_t_shuffle() : shuffle a size_t array * size_t_swap() : swap two indices * skew5x5_for_loop() * sn_fatal_error() * sn_fatal_error_msg() * sn_get_internal_jmp_buf() * sn_get_jmp_buf() * sn_release_internal_jmp_buf() : Release the internal jmp buffer: this indicates that it is no longer in use and that there should be no longjmp() call to this part of the stack. * sn_release_jmp_buf() : Release the internal jmp buffer: this indicates that it is no longer in use and that there should be no longjmp() call to this part of the stack. * soclcp_VI_ExtraGradient() : Extra Gradient solver (VI_EG) for SOCLCP problem based on a VI reformulation. * soclcp_VI_FixedPointProjection() * soclcp_checkTrivialCase() : Check for trivial solution in the SOCLCP problem. * soclcp_compute_error() : Error computation for SOCLCP problem. * soclcp_compute_error_v() : Error computation for SOCLCP problem. * soclcp_driver() : General interface to solvers for SOCLCP problem. * soclcp_nsgs() : Non-Smooth Gauss Seidel solver for SOCLCP problem. * soclcp_nsgs_computeqLocal() * soclcp_nsgs_fillMLocal() * soclcp_projectionOnConeWithLocalIteration_free() * soclcp_projectionOnConeWithLocalIteration_initialize() * soclcp_projectionOnConeWithLocalIteration_solve() : solve SOCLCP problem with projection on the Cone with local iteration up to convergence of the local problem * soclcp_projectionOnCone_solve() : solve SOCLCP problem with projection on the Cone * soclcp_projectionOnCone_v_solve() : solve SOCLCP problem with projection on the Cone * soclcp_projectionOnCylinder_solve() : solve SOCLCP problem with projection on the (Tresca Cylinder) * soclcp_projection_free() : free memory for friction contact 3D projection solver * soclcp_projection_initialize() : Initialize SOCLCP projection. * soclcp_projection_initialize_with_regularization() : Initialize SOCLCP projection with regularization. * soclcp_projection_setDefaultSolverOptions() * soclcp_projection_update() : Update SOCLCP Projection solver: formalize local problem for one contact. * soclcp_projection_update_with_regularization() : Update SOCLCP projection solver: formalize local problem for one contact. * soclcp_projection_with_regularization_free() : free memory for friction contact 3D projection solver * soclcp_unitary_compute_and_add_error() : Error computation for one SOCLCP problem. * solv3x3() : system resolution : x <- sol(Ax = b) * solve_3x3_gepp() : solve Ax = b by partial pivoting Gaussian elimination. * solve_5x5_gepp_for_loop() * solve_nxn_gepp() * solver_options_copy() : Copy an existing set of options, to create a new one. * solver_options_create() : Create solver options using registration system. * solver_options_create_and_init() : Create options and apply solver initialization. * solver_options_create_by_name() : Create solver options by name. * solver_options_delete() : Clear and free all pointer members of the structure, then release memory. * solver_options_get_internal_solver() : return the internal solver options set * solver_options_id_to_name() : return the name of a solver given its id * solver_options_name_to_id() : return the id of a solver based on its name * solver_options_print() : screen display of solver parameters * solver_options_reset_to_defaults() : Reset options to registered defaults. * solver_options_set_internal_solver() : set internal solver * solver_options_update_internal() : Change one of the internal solver of a previously defined SolverOptions set. * solver_registry_count() * solver_registry_exists() * solver_registry_get_all() * solver_registry_lookup() * solver_registry_lookup_by_name() * solver_registry_print() * solver_registry_register() * sortTriplets() * sortsn_() * splittedFrictionContactProblem_free() : free a SplittedFrictionContactProblem * sqrt() * sub3() : sub a vector[3] * sub3x3() : sub a 3x3 matrix or a vector[9] * sub5x5() : sub a 5x5 matrix or a vector[25] * sub5x5_for_loop() : sub a 5x5 matrix or a vector[25] * subdifferentialProjectionOnCone() : Compute an element of the the subdifferential of the projection on the second Order Cone in $ R^3 $. * subdifferentialProjectionOnRollingCone() : subdifferentialProjectionOnRollingCone. * swap_row() * sym5x5_for_loop() * to_blasint() : convert to int format used in blas * to_csint() : convert to int format used in cs.h * to_int() * to_size_t() * tolerance_manager_adapt_working() : Adapt working tolerance based on error ratio. * tolerance_manager_check_convergence() : Handle convergence check with full error computation. * tolerance_manager_get_min() : Get minimum allowed tolerance. * tolerance_manager_init() : Initialize tolerance manager. * tolerance_manager_is_incr_very_small() : Check if incremental error is “very small”. * tolerance_manager_print() : Print tolerance manager state (for debugging) * tolerance_manager_restore_local() : Restore original local solver tolerance. * tolerance_manager_tighten_local() : Tighten local solver tolerance. * trace5x5_for_loop() * transpose5x5_for_loop() * uint_shuffle() * uint_swap() * update_non_monotone_ref() : update the reference value for the non-monotone line search * variationalInequality_ExtraGradient() : Extra Gradient solver forvariational inequality problem based on the De Saxce Formulation. * variationalInequality_FixedPointProjection() : Fixed Point Projection solver for variational inequality problem based on the De Saxce Formulation. * variationalInequality_HyperplaneProjection() : Hyperplane Projection solver for variational inequality problem based on the De Saxce Formulation. * variationalInequality_box_newton_QiLSA() : VI Solver based on a merit function minimization with a line-search type algorithm. * variationalInequality_clear() : Clear VariationalInequality structure: set all pointeurs to NULL, double and int to 0. * variationalInequality_computeError() : Error computation for a VI problem. * variationalInequality_compute_error_box() : Error computation for a box VI problem, that is $ Pi_box(x-F(x)) - x$. * variationalInequality_display() : display a VariationalInequalityProblem * variationalInequality_driver() : General interface to solvers for friction-contact 3D problem. * variationalInequality_new() : new VariationalInequality problem * variationalInequality_newFromFile() : read a VariationalInequalityProblem in a file (numerics .dat format) * variationalInequality_printInFile() : print a VariationalInequalityProblem in a file (numerics .dat format) * vi_box_AVI_LSA() : VI Solver based on the Newton-Josephy method globalized with a line-search type algorithm using the Qi merit function. * vi_box_path() : Solver for box constrainted VI using PATH. * vi_get_set() : Get the set from the VariationalInequality. * xdoty_type() : Returns the scalar product of 2 vectors depending on: type = STANDARD : <x,y>_2 = sum_i ( xi * yi ) type = NORM_INF : <x,y>_inf = max_i ( xi * yi ) type = NORM_2_INF: <x,y>_2_inf = max_i norm_2 ( xi o yi ) * zero3x3() : set to zero a matrix3x3 * zero5() * zero5_for_loop() : set to zero a 5D vector * zero5x5() : set to zero a matrix5x5 * zero5x5_for_loop() : set to zero a matrix5x5 * zero_nm_data() : Reset the storage for the non-monotone search.

Files