Skip to content
 
Documentation pymor.algorithms.line_search
Type to start searching
    • pyMOR v2024.2.0 Manual
    • API Reference
    • pymor
    • pymor.algorithms
    • Getting Started
    • Available MOR methods
    • Tutorials
    • API Reference
      • pymor
        • Subpackages
          • algorithms
            • Submodules
              • adaptivegreedy
              • basic
              • bernoulli
              • bfgs
              • chol_qr
              • dmd
              • ei
              • eigs
              • error
              • genericsolvers
              • gram_schmidt
              • greedy
              • hapod
              • image
              • krylov
              • lincomb
              • line_search
              • lradi
              • lrradi
              • lyapunov
              • newton
              • pod
              • preassemble
              • projection
              • rand_la
              • riccati
              • rules
              • samdp
              • scm
              • simplify
              • svd_va
              • sylvester
              • symplectic
              • timestepping
              • to_matrix
              • tr
          • analyticalproblems
          • bindings
          • core
          • discretizers
          • models
          • operators
          • parallel
          • parameters
          • reductors
          • scripts
          • tools
          • vectorarrays
        • Submodules
        • Package Contents
      • pymordemos
    • Technical Overview
    • Release Notes
    • Developer Documentation
    • Environment Variables
    • Bibliography

    pymor.algorithms.line_search¶

    Module Contents¶

    pymor.algorithms.line_search.armijo(f, starting_point, direction, grad=None, initial_value=None, alpha_init=1.0, tau=0.5, beta=0.0001, maxiter=10)[source]¶

    Unconstrained Armijo line search algorithm.

    This method computes a step size such that the unconstrained Armijo condition (see [NW06], p. 33) is fulfilled.

    Parameters

    f

    Real-valued function that can be evaluated for its value.

    starting_point

    A VectorArray of length 1 containing the starting point of the line search.

    direction

    Descent direction along which the line search is performed.

    grad

    Gradient of f in the point starting_point as either a VectorArray or a NumPy array.

    initial_value

    Value of f in the point starting_point.

    tau

    The fraction by which the step size is reduced in each iteration.

    beta

    Control parameter to adjust the required decrease of the function value of f.

    maxiter

    Use alpha_init as default if the iteration count reaches this value without finding a point fulfilling the Armijo condition.

    Returns

    alpha

    Step size computed according to the Armijo condition.

    iterations

    Number of total Armijo line search iterations.

    pymor.algorithms.line_search.constrained_armijo(f, starting_point, direction, armijo_condition=None, grad=None, initial_value=None, alpha_init=1.0, tau=0.5, beta=0.0001, maxiter=10)[source]¶

    Constrained Armijo line search algorithm.

    This method computes a step size such that the given constrained Armijo condition is fulfilled.

    Parameters

    f

    Real-valued function that can be evaluated for its value.

    starting_point

    A VectorArray of length 1 containing the starting point of the line search.

    direction

    Descent direction along which the line search is performed.

    armijo_condition

    A callable used as the Armijo termination condition during the step length computation.

    grad

    Gradient of f in the point starting_point as either a VectorArray or a NumPy array.

    initial_value

    Value of f in the point starting_point.

    tau

    The fraction by which the step size is reduced in each iteration.

    beta

    Control parameter to adjust the required decrease of the function value of f.

    maxiter

    Use alpha_init as default if the iteration count reaches this value without finding a point fulfilling the Armijo condition.

    Returns

    alpha

    Step size computed according to the Armijo condition.

    iterations

    Number of total Armijo line search iterations.

    "Previous" pymor.algorithms.lincomb
    "Next" pymor.algorithms.lradi
    © Copyright pyMOR developers and contributors.
    Last updated on Dec 20, 2024.
    Created using Sphinx 7.3.7. and Material for Sphinx