Skip to content

NewtonLineSearchAlgorithm

NewtonLineSearchAlgorithm

NewtonLineSearchAlgorithm(type_search: str = 'InitialInterpolated', tol: float = 0.8, max_iter: int = 10, min_eta: float = 0.1, max_eta: float = 10.0)

Bases: Algorithm

Newton solution algorithm with line search acceleration.

NewtonLineSearchAlgorithm introduces line search techniques to the standard Newton-Raphson iterations to enhance convergence robustness, especially in highly nonlinear problems (such as contact or plasticity).

Tcl form

algorithm NewtonLineSearch -type <typeSearch> [-tol <tol>] [-maxIter <max>] [-minEta <min>] [-maxEta <max>]

Example
from femora.core.model import Model

model = Model()
algo = model.analysis.algorithm.newtonlinesearch(
    type_search="Secant",
    tol=0.5,
)

Create a Newton Line Search solution algorithm.

Parameters:

Name Type Description Default
type_search str

Line search algorithm type. Must be one of 'Bisection', 'Secant', 'RegulaFalsi', or 'InitialInterpolated'.

'InitialInterpolated'
tol float

Tolerance for the line search convergence.

0.8
max_iter int

Maximum number of line search iterations per step.

10
min_eta float

Minimum scaling factor limit.

0.1
max_eta float

Maximum scaling factor limit.

10.0

Raises:

Type Description
ValueError

If type_search is not a valid line search type.