pystra.options.FORMOptions#

class FORMOptions(*, max_iterations=100, limit_state_tolerance=0.001, gradient_tolerance=0.001, step_size=0, differentiation='ffd', ffd_parameter=1000, block_size=1000, transform=None, rosenblatt_order=None)[source]#

Bases: object

Settings for FORM and the design-point methods built on it.

Parameters:
  • max_iterations (int) – Iteration limit of the design-point search.

  • limit_state_tolerance (float) – Convergence tolerance on \(|g(u)| / |g(u_0)|\), how close the point is to the limit-state surface.

  • gradient_tolerance (float) – Convergence tolerance on how nearly the gradient points towards the origin, \(\|u - (\alpha \cdot u)\alpha\|\).

  • step_size (float) – Fixed step length, or 0 to choose each step by the Armijo rule.

  • differentiation (str) – Forward finite differences, or direct differentiation with a gradient returned by the limit-state function.

  • ffd_parameter (float) – Finite-difference step divisor: each variable is perturbed by its standard deviation divided by this value. 1000 suits closed-form limit states; about 50 suits finite-element models.

  • block_size (int) – Points passed to the limit-state function per call.

  • transform (str | None) – Isoprobabilistic transformation; None selects it from the model.

  • rosenblatt_order (tuple[int, ...] | None) – Conditioning order of the variables for the Rosenblatt transformation.

Methods