Search Results for

    Show / Hide Table of Contents

    Class SparseSymmetricCGMultipleRHS

    [RMS] this is a variant of SparseSymmetricCG that supports multiple right-hand-sides. Makes quite a big difference as matrix gets bigger, because MultiplyF can unroll inner loops (as long as you actually do that)

    However, if this is done then it is not really possible to do different numbers of iterations for different RHS's. We will not update that RHS once it has converged, however we still have to do the multiplies!

    Inheritance
    Object
    SparseSymmetricCGMultipleRHS
    Inherited Members
    Object.ToString()
    Object.Equals(Object)
    Object.Equals(Object, Object)
    Object.ReferenceEquals(Object, Object)
    Object.GetHashCode()
    Object.GetType()
    Object.MemberwiseClone()
    Namespace: g3
    Assembly: cs.temp.dll.dll
    Syntax
    public class SparseSymmetricCGMultipleRHS

    Fields

    B

    Declaration
    public double[][] B
    Field Value
    Type Description
    Double[][]

    ConvergeTolerance

    Declaration
    public double ConvergeTolerance
    Field Value
    Type Description
    Double

    Iterations

    Declaration
    public int Iterations
    Field Value
    Type Description
    Int32

    MaxIterations

    Declaration
    public int MaxIterations
    Field Value
    Type Description
    Int32

    MultiplyF

    Declaration
    public Action<double[][], double[][]> MultiplyF
    Field Value
    Type Description
    Action<Double[][], Double[][]>

    PreconditionMultiplyF

    Declaration
    public Action<double[][], double[][]> PreconditionMultiplyF
    Field Value
    Type Description
    Action<Double[][], Double[][]>

    UseXAsInitialGuess

    Declaration
    public bool UseXAsInitialGuess
    Field Value
    Type Description
    Boolean

    X

    Declaration
    public double[][] X
    Field Value
    Type Description
    Double[][]

    Methods

    Solve()

    standard CG solve

    Declaration
    public bool Solve()
    Returns
    Type Description
    Boolean

    SolvePreconditioned()

    Preconditioned variant Similar to non-preconditioned version, this can suffer if one solution converges much slower than others, as we can't skip matrix multiplies in that case.

    Declaration
    public bool SolvePreconditioned()
    Returns
    Type Description
    Boolean
    In This Article
    Back to top ViRGIS VR GIS