Skip to content

Line Search

*Line Search, type = <method> [, default]
<subsequent line>

In strongly nonlinear problems, the Newton-Raphson solution procedure - used by default in numgeo - may fail to converge or even diverge during equilibrium iterations. To address such issues and improve convergence behaviour, a line search algorithm is available.

The line search modifies the iterative update by applying a scaling factor \(\lambda\) to the computed correction vector \(\boldsymbol{c}_i\), such that:

\[ \boldsymbol{u}^{t+\Delta t} = \boldsymbol{u}^t + \Delta \boldsymbol{u}^{\Delta t}_{i=0} + \lambda \boldsymbol{c}_i \]

This approach helps guide the solution toward equilibrium even in difficult nonlinear regions. While the line search is disabled by default, it can be activated using the *Line Search command.

Line search is not only helpful in preventing divergence but can also significantly improve the convergence rate in slowly converging problems.


Keyword Options

  • type = <method>

    Specifies the line search strategy to be used. This keyword is mandatory. Available options are:

    • relaxation - uses a fixed scaling factor
    • linear - determines \(\lambda\) using a linear model

Method: Relaxation

*Line Search, type = relaxation [, default]
lambda

This option applies a constant scaling factor \(\lambda\) to the correction vector in each iteration. A typical value is in the range \(0 \leq \lambda \leq 1\).

If default is specified, \(\lambda = 0.8\) is used.


Method: Linear

*Line Search, type = linear [, default]
lambda_min, lambda_max

This method attempts to improve convergence by linearly interpolating the residual to estimate an optimal scaling factor \(\lambda\).

  • lambda_min: Lower bound for the scaling factor
  • lambda_max: Upper bound for the scaling factor

If default is specified, no subsequent line is required and lambda_min = 0.5 and lambda_max = 1.0 are used.