BFGS Algorithm

The BFGS (Broyden-Fletcher-Goldfarb-Shanno) algorithm is a quasi-Newton method that builds an approximation to the inverse Hessian matrix. It is particularly useful for problems where the tangent stiffness matrix is difficult to compute.

Description

The BFGS algorithm: - Builds an approximation to the inverse Hessian matrix - Updates the geometry and internal forces based on the displacement increment - Repeats until convergence is achieved - Uses a specified number of vectors to store the Hessian approximation

Parameters

Parameter

Type

Description

count

int

Number of vectors to store the Hessian approximation

Usage Example

# Create a Femora instance


# Create a BFGS algorithm with default settings
fm.analysis.algorithm.create_algorithm("BFGS", count=3)

# Create a BFGS algorithm with more vectors
fm.analysis.algorithm.create_algorithm("BFGS", count=5)

Notes

  • The BFGS algorithm is a quasi-Newton method

  • It does not require the computation of the tangent stiffness matrix

  • It can be more efficient for problems where the tangent stiffness matrix is difficult to compute

  • The count parameter controls the memory usage and accuracy of the Hessian approximation

  • A larger count value generally leads to better convergence but uses more memory