Documentation of 'smile.math.matrix.BiconjugateGradient' Java class
BiconjugateGradient
smile.math.matrix

Class BiconjugateGradient



  • public class BiconjugateGradient
    extends java.lang.Object
    The biconjugate gradient method is an algorithm to solve systems of linear equations.
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method and Description
      static double solve(Matrix A, double[] b, double[] x)
      Solves A * x = b by iterative biconjugate gradient method.
      static double solve(Matrix A, double[] b, double[] x, double tol)
      Solves A * x = b by iterative biconjugate gradient method.
      static double solve(Matrix A, double[] b, double[] x, double tol, int itol)
      Solves A * x = b by iterative biconjugate gradient method.
      static double solve(Matrix A, double[] b, double[] x, double tol, int itol, int maxIter)
      Solves A * x = b by iterative biconjugate gradient method.
      static double solve(Matrix A, Preconditioner Ap, double[] b, double[] x)
      Solves A * x = b by iterative biconjugate gradient method.
      static double solve(Matrix A, Preconditioner Ap, double[] b, double[] x, double tol)
      Solves A * x = b by iterative biconjugate gradient method.
      static double solve(Matrix A, Preconditioner Ap, double[] b, double[] x, double tol, int itol)
      Solves A * x = b by iterative biconjugate gradient method.
      static double solve(Matrix A, Preconditioner Ap, double[] b, double[] x, double tol, int itol, int maxIter)
      Solves A * x = b by iterative biconjugate gradient method.
      • Methods inherited from class java.lang.Object

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

      • BiconjugateGradient

        public BiconjugateGradient()
    • Method Detail

      • solve

        public static double solve(Matrix A,
                                   double[] b,
                                   double[] x)
        Solves A * x = b by iterative biconjugate gradient method.
        Parameters:
        b - the right hand side of linear equations.
        x - on input, x should be set to an initial guess of the solution (or all zeros). On output, x is reset to the improved solution.
        Returns:
        the estimated error.
      • solve

        public static double solve(Matrix A,
                                   Preconditioner Ap,
                                   double[] b,
                                   double[] x)
        Solves A * x = b by iterative biconjugate gradient method.
        Parameters:
        Ap - the preconditioned matrix of A.
        b - the right hand side of linear equations.
        x - on input, x should be set to an initial guess of the solution (or all zeros). On output, x is reset to the improved solution.
        Returns:
        the estimated error.
      • solve

        public static double solve(Matrix A,
                                   double[] b,
                                   double[] x,
                                   double tol)
        Solves A * x = b by iterative biconjugate gradient method.
        Parameters:
        b - the right hand side of linear equations.
        x - on input, x should be set to an initial guess of the solution (or all zeros). On output, x is reset to the improved solution.
        tol - the desired convergence tolerance.
        Returns:
        the estimated error.
      • solve

        public static double solve(Matrix A,
                                   Preconditioner Ap,
                                   double[] b,
                                   double[] x,
                                   double tol)
        Solves A * x = b by iterative biconjugate gradient method.
        Parameters:
        Ap - the preconditioned matrix of A.
        b - the right hand side of linear equations.
        x - on input, x should be set to an initial guess of the solution (or all zeros). On output, x is reset to the improved solution.
        tol - the desired convergence tolerance.
        Returns:
        the estimated error.
      • solve

        public static double solve(Matrix A,
                                   double[] b,
                                   double[] x,
                                   double tol,
                                   int itol)
        Solves A * x = b by iterative biconjugate gradient method.
        Parameters:
        b - the right hand side of linear equations.
        x - on input, x should be set to an initial guess of the solution (or all zeros). On output, x is reset to the improved solution.
        itol - specify which convergence test is applied. If itol = 1, iteration stops when |Ax - b| / |b| is less than the parameter tolerance. If itol = 2, the stop criterion is |A-1 (Ax - b)| / |A-1b| is less than tolerance. If tol = 3, |xk+1 - xk|2 is less than tolerance. The setting of tol = 4 is same as tol = 3 except that the L∞ norm instead of L2.
        tol - the desired convergence tolerance.
        Returns:
        the estimated error.
      • solve

        public static double solve(Matrix A,
                                   Preconditioner Ap,
                                   double[] b,
                                   double[] x,
                                   double tol,
                                   int itol)
        Solves A * x = b by iterative biconjugate gradient method.
        Parameters:
        Ap - the preconditioned matrix of A.
        b - the right hand side of linear equations.
        x - on input, x should be set to an initial guess of the solution (or all zeros). On output, x is reset to the improved solution.
        itol - specify which convergence test is applied. If itol = 1, iteration stops when |Ax - b| / |b| is less than the parameter tolerance. If itol = 2, the stop criterion is |A-1 (Ax - b)| / |A-1b| is less than tolerance. If tol = 3, |xk+1 - xk|2 is less than tolerance. The setting of tol = 4 is same as tol = 3 except that the L∞ norm instead of L2.
        tol - the desired convergence tolerance.
        Returns:
        the estimated error.
      • solve

        public static double solve(Matrix A,
                                   double[] b,
                                   double[] x,
                                   double tol,
                                   int itol,
                                   int maxIter)
        Solves A * x = b by iterative biconjugate gradient method. This method can be called repeatedly, with maxIter < n, to monitor how error decreases.
        Parameters:
        b - the right hand side of linear equations.
        x - on input, x should be set to an initial guess of the solution (or all zeros). On output, x is reset to the improved solution.
        itol - specify which convergence test is applied. If itol = 1, iteration stops when |Ax - b| / |b| is less than the parameter tolerance. If itol = 2, the stop criterion is |A-1 (Ax - b)| / |A-1b| is less than tolerance. If tol = 3, |xk+1 - xk|2 is less than tolerance. The setting of tol = 4 is same as tol = 3 except that the L∞ norm instead of L2.
        tol - the desired convergence tolerance.
        maxIter - the maximum number of allowed iterations.
        Returns:
        the estimated error.
      • solve

        public static double solve(Matrix A,
                                   Preconditioner Ap,
                                   double[] b,
                                   double[] x,
                                   double tol,
                                   int itol,
                                   int maxIter)
        Solves A * x = b by iterative biconjugate gradient method. This method can be called repeatedly, with maxIter < n, to monitor how error decreases.
        Parameters:
        Ap - the preconditioned matrix of A.
        b - the right hand side of linear equations.
        x - on input, x should be set to an initial guess of the solution (or all zeros). On output, x is reset to the improved solution.
        itol - specify which convergence test is applied. If itol = 1, iteration stops when |Ax - b| / |b| is less than the parameter tolerance. If itol = 2, the stop criterion is |A-1 (Ax - b)| / |A-1b| is less than tolerance. If tol = 3, |xk+1 - xk|2 is less than tolerance. The setting of tol = 4 is same as tol = 3 except that the L∞ norm instead of L2.
        tol - the desired convergence tolerance.
        maxIter - the maximum number of allowed iterations.
        Returns:
        the estimated error.

DataMelt 3.0 © DataMelt by jWork.ORG

Ads help maintain this website.