Class SuccessiveOverRelaxationConvergenceAnalyzer

java.lang.Object
org.drip.numerical.iterativesolver.SuccessiveOverRelaxationConvergenceAnalyzer

public class SuccessiveOverRelaxationConvergenceAnalyzer
extends java.lang.Object
SuccessiveOverRelaxationConvergenceAnalyzer implements the Convergence Analytics for SOR and the SSOR schemes. The References are:

  • Greenbaum, A. (1997): Iterative Methods for Solving Linear Systems Society for Industrial and Applied Mathematics Philadelphia, PA
  • Hackbusch, W. (2016): Iterative Solution of Large Sparse Systems of Equations Spring-Verlag Berlin, Germany
  • Wikipedia (2023): Symmetric Successive Over-Relaxation https://en.wikipedia.org/wiki/Symmetric_successive_over-relaxation
  • Wikipedia (2024): Successive Over-Relaxation https://en.wikipedia.org/wiki/Successive_over-relaxation
  • Young, D. M. (1950): Iterative methods for solving partial difference equations of elliptical type Harvard University Cambridge, MA
It provides the following functionality:
  • Construct the R1 To R1 Bessel First Kind Frobenius Summation Series




Author:
Lakshmi Krishnamurthy
  • Constructor Summary

    Constructors
    Constructor Description
    SuccessiveOverRelaxationConvergenceAnalyzer​(double[][] squareMatrix, double relaxationParameter, double jacobiIterationMatrixSpectralRadius)
    Construct an Instance of SuccessiveOverRelaxationConvergenceAnalyzer from the Inputs
  • Method Summary

    Modifier and Type Method Description
    SuccessiveOverRelaxationConvergenceCheck check()
    Compute the Convergence Check Criteria Status
    double gaussSeidelRate()
    Estimate the Gauss-Seidel Convergence Rate from the Relaxation Parameter and the Jacobi Iteration Matrix Spectral Radius
    double[][] jacobiIterationMatrix()
    Retrieve the Jacobi Iteration Matrix
    boolean jacobiIterationMatrixRealEigenvalues()
    Indicate if the Jacobi Iteration Matrix has Real Eigenvalues
    double jacobiIterationMatrixSpectralRadius()
    Retrieve the Jacobi Iteration Matrix Spectral Radius
    boolean jacobiSpectralRadiusVerification()
    Indicate if the Jacobi Spectral Radius satisfies Convergence Check
    double optimalRate()
    Compute the Convergence Rate corresponding to Optimal Relaxation Parameter
    double optimalRelaxationParameter()
    Calculate the Optimal Relaxation Parameter from the Jacobi Iteration Matrix Spectral Radius
    double rate()
    Estimate the Convergence Rate from the Relaxation Parameter and the Jacobi Iteration Matrix Spectral Radius
    double relaxationParameter()
    Retrieve the Relaxation Parameter
    boolean relaxationParameterRangeVerification()
    Indicate if the Relaxation Parameter Range satisfies Convergence Check
    double[][] squareMatrix()
    Retrieve the Square Matrix
    static SuccessiveOverRelaxationConvergenceAnalyzer Standard​(double[][] squareMatrix, double jacobiIterationMatrixSpectralRadius)
    Construct a Standard Instance of SuccessiveOverRelaxationConvergenceAnalyzer

    Methods inherited from class java.lang.Object

    equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • SuccessiveOverRelaxationConvergenceAnalyzer

      public SuccessiveOverRelaxationConvergenceAnalyzer​(double[][] squareMatrix, double relaxationParameter, double jacobiIterationMatrixSpectralRadius) throws java.lang.Exception
      Construct an Instance of SuccessiveOverRelaxationConvergenceAnalyzer from the Inputs
      Parameters:
      squareMatrix - Input Square Matrix
      relaxationParameter - Relaxation Parameter
      jacobiIterationMatrixSpectralRadius - Jacobi Iteration Matrix Spectral Radius
      Throws:
      java.lang.Exception - Thrown if the Inputs are Invalid
  • Method Details

    • Standard

      public static final SuccessiveOverRelaxationConvergenceAnalyzer Standard​(double[][] squareMatrix, double jacobiIterationMatrixSpectralRadius)
      Construct a Standard Instance of SuccessiveOverRelaxationConvergenceAnalyzer
      Parameters:
      squareMatrix - Input Square Matrix
      jacobiIterationMatrixSpectralRadius - Jacobi Iteration Matrix Spectral Radius
      Returns:
      Standard Instance of SuccessiveOverRelaxationConvergenceAnalyzer
    • squareMatrix

      public double[][] squareMatrix()
      Retrieve the Square Matrix
      Returns:
      Square Matrix
    • relaxationParameter

      public double relaxationParameter()
      Retrieve the Relaxation Parameter
      Returns:
      Relaxation Parameter
    • jacobiIterationMatrixSpectralRadius

      public double jacobiIterationMatrixSpectralRadius()
      Retrieve the Jacobi Iteration Matrix Spectral Radius
      Returns:
      Jacobi Iteration Matrix Spectral Radius
    • jacobiIterationMatrix

      public double[][] jacobiIterationMatrix()
      Retrieve the Jacobi Iteration Matrix
      Returns:
      Jacobi Iteration Matrix
    • jacobiIterationMatrixRealEigenvalues

      public boolean jacobiIterationMatrixRealEigenvalues()
      Indicate if the Jacobi Iteration Matrix has Real Eigenvalues
      Returns:
      TRUE - Jacobi Iteration Matrix has Real Eigenvalues
    • jacobiSpectralRadiusVerification

      public boolean jacobiSpectralRadiusVerification()
      Indicate if the Jacobi Spectral Radius satisfies Convergence Check
      Returns:
      TRUE - Jacobi Spectral Radius satisfies Convergence Check
    • relaxationParameterRangeVerification

      public boolean relaxationParameterRangeVerification()
      Indicate if the Relaxation Parameter Range satisfies Convergence Check
      Returns:
      TRUE - Relaxation Parameter Range satisfies Convergence Check
    • check

      Compute the Convergence Check Criteria Status
      Returns:
      Convergence Check Criteria Status
    • optimalRelaxationParameter

      public double optimalRelaxationParameter()
      Calculate the Optimal Relaxation Parameter from the Jacobi Iteration Matrix Spectral Radius
      Returns:
      Optimal Relaxation Parameter
    • gaussSeidelRate

      public double gaussSeidelRate()
      Estimate the Gauss-Seidel Convergence Rate from the Relaxation Parameter and the Jacobi Iteration Matrix Spectral Radius
      Returns:
      Gauss-Seidel Convergence Rate
    • rate

      public double rate()
      Estimate the Convergence Rate from the Relaxation Parameter and the Jacobi Iteration Matrix Spectral Radius
      Returns:
      Convergence Rate
    • optimalRate

      public double optimalRate()
      Compute the Convergence Rate corresponding to Optimal Relaxation Parameter
      Returns:
      Convergence Rate corresponding to Optimal Relaxation Parameter