Parameters: Simulation
Model ElementParam_Simulation defines the solution control parameters for simulations that are associated with more than one analysis method. Exceptions are noted.
Format
<Param_Simulation
[ constr_tol = "real" ]
[ implicit_diff_tol = "real" ]
[ nr_converge_ratio = "real" ]
[ linsolver = "string" ]
[ save_increment = "integer" ]
[ save_inc_overwrite = "{ TRUE  FALSE }" ]
[ usrsub_param_string = "USER([par1,par2,…,parN])"
{
usrsub_dll_name = "string"

interpreter = "string"
script_name = "string"
}
[ usrsub_fnc_name = "string"
[ acusolve_cosim = "{ TRUE  FALSE }" ]
/>
Attributes
 constr_tol
 Defines the accuracy to which the system configuration and motion constraints are to be satisfied at each step. This is used by kinematics and the transient solver in the ODE formulation (ABAM, VSTIFF, or MSTIFF), but not the DAE form, which has its own tolerance for this (Param_Transient::dae_constr_tol). This should be a small positive number.
 implicit_diff_tol
 Defines the accuracy to which implicit differential equations, such as Control_Diff equations with the is_implicit = "TRUE", are to be satisfied. The default value for implicit_diff_tol = 1.0E5.
 nr_converg_ratio
 Defines a measure of the rate of convergence in the NewtonRaphson method for ODE solvers. If the maximum entry in the constraint vector is larger than nr_converg_ratio times the maximum entry from the previous iteration, the NewtonRaphson iterations are converging slowly and the generalized coordinates will be repartitioned in the next integration step to select a new set of independent coordinates. This attribute is applicable only if an ODE integrator (ABAM, VSTIFF, or MSTIFF) is selected.
 linsolver
 Defines the type of linear solver to be used. Options include:
 HARWELL (MA48)
 PARDISO (MKL)
 USER (userdefined using SPARSESUB)
 save_increment
 Instructs MotionSolve to save the model at every n^{th} print_interval (like Save ). If save_increment is not provided, MotionSolve does not save the model during simulation.
 save_inc_overwrite
 Instructs MotionSolve to reuse the same XML for save_increment. If TRUE, the same XML, called <mrf_base_name>_saved_at_laststep.xml, is overwritten during each save operation. If FALSE, a new XML, called <mrf_base_name>_saved_at_<time>.xml, is generated for each save operation. This attribute is only used if save_increment is provided.
 usrsub_param_string
 The list of parameters that are passed from the data file to the user defined subroutine, defined by usrsub_fnc_name. This attribute is common to all types of user subroutines and scripts.
 usrsub_dll_name
 Specifies the path and name of the shared library containing the user subroutine. MotionSolve uses this information to load the user subroutine at run time.
 usrsub_fnc_name
 Specifies an alternative name for the user subroutine. For details on the definition and syntax of the subroutine, please refer to its documentation.
 script_name
 Specifies the path and name of the user written script that contains the routine specified by usrsub_fnc_name.
 interpreter
 Specifies the interpreted language that the user script is written in (example: "PYTHON"). See UserWritten Subroutines for a choice of valid interpreted languages.
 acusolve_cosim
 A Boolean flag that determines whether the simulation will be coupled with AcuSolve or not.
Example
The example below shows the default settings for the Param_Simulation modeling element.
<Param_Simulation
constr_tol = "1E10"
implicit_diff_tol = "1E5"
nr_converg_ratio = "0.09"
linsolver = "HARWELL"
/>
Comments
 Linear Solvers: At the core of most analyses in MotionSolve is solving a set of linear equations (A x = b). For
example, the NewtonRaphson method solves a set of linear equations as part of the iteration
process to find the solution to a set of nonlinear algebraic equations. A brief explanation
of how the linear solver works follows.
The Harwell Linear Solver is a tool for solving linear algebraic equations. It is especially suited for linear systems characterized by nonsingular, unsymmetrical and sparse coefficient matrices A that have a fixed nonzero entry pattern. The latter implies that while matrix entries are allowed to change with time, the pattern of nonzeroes is not. The matrix entries must be real.
This methodology is suitable for solving small to medium sets of equations (< 10,000 equations) and is therefore quite suitable for multibody systems simulation. The Harwell software solves the equations in three major steps: Symbolic LU factorization.
 Numeric LU factorization.
 ForwardBackward Substitution.
 Symbolic LU Factorization
 Given a pattern of nonzero entries in A and their representative values, this function computes the symbolic lower and uppertriangular (LU) factors of A. A partial pivoting scheme is used. It tries to maximize the stability of the LU factors while still maintaining sparsity of the factors. This operation is typically done once or only a few times during the simulation.
 Numeric LU Factorization
 Given the current values of the nonzero entries in A and the symbolic LU factors, this utility returns the numeric LU factors of A. The symbolic LU factorization must therefore precede the numeric LU factorization. This operation is done whenever a new Jacobian is needed.
 ForwardBackward Substitution
 Given the numeric LU factors of a sparse matrix A and an appropriately sized righthandside vector b, this utility returns the solution x for the linear problem. The Numeric LU factorization must precede the forwardbackward substitution operation. This operation is performed at each iteration.