BFGS¶
Module: core
Category: newtonstrategy
Type string: "BFGS"
Parameters¶
| Name | Description | Default | Units |
|---|---|---|---|
max_ups |
max_ups | 10 | [] |
max_buffer_size |
max_buffer_size | 0 | [] |
cycle_buffer |
cycle_buffer | true | [] |
cmax |
cmax | 100000 | [] |
Description¶
The BFGS (Broyden–Fletcher–Goldfarb–Shanno) Newton strategy is the default strategy that FEBio uses for symmetric matrices. It can still be used with non–symmetric matrices, but the convergence might be compromised.
The BFGS method calculates the global stiffness matrix at the beginning of each time step. For each iteration, a matrix update is then done. The maximum number of such updates is set with max_ups. When FEBio reaches this number, or if the solution diverges and diverge_reform is set to 1, it reforms the global stiffness matrix (that is, it recalculates it) and factorizes it, essentially taking a "full Newton" iteration. Then FEBio continues with BFGS iterations. The max_refs parameter is used to set the maximum of such reformations FEBio can do, before it fails the timestep. In that case, FEBio will either terminate or, if the auto-time stepper is enabled, retry with a smaller time step size.