Solver control parameters
The HPLS solver control parameters are specified in the name.iL file:
IP KMET KOUT NSUBI NITER NINT KTPR RP UTOL RTOL XTOL PENAL
The meaning of the control parameters depends on the type of nonlinear problem being solved. An elastoplastic problem leads to solving a system of nonlinear algebraic equations in each load case. At the same time, the constitutive equations are integrated with a strain-driven step, on which the size of the load increment has no significant influence. For an elastoplastic problem, the parameters related to the iterative solution method are therefore important ($\mathtt{KMET}$, $\mathtt{NITER}$, and the convergence criteria). For creep computation, by contrast, time-driven integration is used, which does not require solving a system of nonlinear equations but places emphasis on choosing the correct step length. The parameters $\mathtt{NSUBI}$ and $\mathtt{NINT}$ are therefore important.
KMET selects the method for solving the system of nonlinear algebraic equations. For a purely creep problem, this parameter has no significance, since explicit time integration leads to linearized equations.
$=1$ … modified Newton-Raphson method
$=2$ … BFGS method (default)
KOUT activates the output of solution vectors to the binary file name.PLS, to which the sequence number $\mathtt{ILC}$ then corresponds in the STR2/STR3 program (see name.i5). If the problem was restarted with $\mathtt{KREST}=2$ (see Load case sequence), the name.PLS file is overwritten, i.e., the solution from the previous run must be processed before the restart. The number in parentheses gives the number of solution vectors written:
$=0$ … input data check ($0$)
$=1$ … after each load case ($\mathtt{NCYC}\cdot\mathtt{NLC}$)
$=2$ … after each cycle ($\mathtt{NCYC}$)
$=3$ … only the final solution ($1$)
NSUBI specifies the sub-incrementation of load cases (the default value is $1$). Intermediate solutions are not written to the name.PLS file. This subdivision is mainly relevant for a creep problem, where the time step length $\Delta t=(t_{i+1}-t_i)/\mathtt{NSUBI}$ can be fixed ($t_i$ correspond to the load cases $L_i$, see Load case sequence). It is also advisable to set $\mathtt{NINT}=1$. For a time-independent problem, the parameter $\mathtt{NSUBI}$ is used only in exceptional cases, essentially only when a proportional force change between $L_i$ and $L_{i+1}$ needs to be enforced (see Load case sequence).
NITER specifies the maximum number of iterations (the default value is $10$).
NINT specifies the subdivision of the integration interval (the default value is $10$) and is related to the accuracy of the solution. The order-of-magnitude error in the stresses is substantially smaller than $100/\mathtt{NINT}$ %. The default value gives a small error in most cases (approx. 1–3 %) and it is therefore not recommended to change it. When solving creep problems, the time step is set automatically by the program. Setting $\mathtt{NINT}=1$ disables the step-size algorithm (a 100% local error is permitted). In that case, the time step must be prescribed using the parameter $\mathtt{NSUBI}$. For elastoplastic problems, integration with $\mathtt{NINT}=1$ can significantly speed up the computation without unduly compromising the solution. The integration method is then reduced to a predictor-corrector algorithm (Euler forward – radial return); it is advisable, however, to limit the size of the force increments using $\mathtt{NSUBI}$.
The convergence criteria UTOL, RTOL, and XTOL relate to the iterative solver. The solution continues until either all criteria are satisfied simultaneously or the maximum allowed number of iterations $\mathtt{NITER}$ is exceeded. If the solution was interrupted because $\mathtt{NITER}$ was exceeded, the program must be run again. The computation is automatically restarted from the last iteration. Before restarting the program, it is possible to change the convergence criteria, the solution method $\mathtt{KMET}$, and the integration parameter $\mathtt{NINT}$. The superscript $^{(i)}$ denotes the $i$-th iteration, the superscript $^{(0)}$ the initial state, and $\sqrt{\mathtt{LSOL}}$ is the square root of the total number of unknowns (degrees of freedom of the mesh):
- $||\Delta\mathbf{u}^{(i)} || < \mathtt{UTOL}\,||\mathbf{u}^{(i)}||$ (the default value is $\mathtt{UTOL}=10^{-3}$)
- $||\mathbf{R}^{(i)}|| < \mathtt{RTOL}\,||\mathbf{R}^{(0)}||$ (the default value is $\mathtt{RTOL}=10^{-3}$)
- $\sqrt{\mathtt{LSOL}}\max|\mathbf{R}^{(i)}|<\mathtt{XTOL}\,||\mathbf{R}^{(0)}||$ (the default value is $\mathtt{XTOL}=10^{-2}$)
PENAL is specified for contact problems, and the stability and accuracy of the solution depend on its correct choice.
The following file can be recommended for most problems:
- name.iL
; KMET KOUT NSUBI NITER NINT KTPR IP 2 1 0 0 0 1 ; UTOL RTOL XTOL RP 0 0 0 EN EN
