Versions in this module Expand all Collapse all v0 v0.1.0 Oct 20, 2026 Changes in this version + const BreakdownOmega + const BreakdownRho + const Converged + var ErrBreakdown = errors.New("iter: factorisation breakdown") + var ErrShape = errors.New("iter: incompatible shapes") + func TrueResidual(a Operator, b, x []float64) float64 + type IC0 struct + func NewIC0(a *sparse.CSR[float64]) (*IC0, error) + func (c *IC0) L() *sparse.CSR[float64] + func (c *IC0) Solve(dst, r []float64) + type ILU struct + func NewILU0(a *sparse.CSR[float64]) (*ILU, error) + func NewILUT(a *sparse.CSR[float64], droptol float64, lfil int) (*ILU, error) + func (f *ILU) L() *sparse.CSR[float64] + func (f *ILU) Solve(dst, r []float64) + func (f *ILU) U() *sparse.CSR[float64] + type Jacobi struct + func NewJacobi(a *sparse.CSR[float64]) (*Jacobi, error) + func (j *Jacobi) Solve(dst, r []float64) + type LSMROptions struct + ATol float64 + BTol float64 + ConLim float64 + Damp float64 + MaxIter int + X0 []float64 + type LSMRResult struct + CondA float64 + Istop int + Itn int + NormA float64 + NormAR float64 + NormR float64 + NormX float64 + X []float64 + func LSMR(a sparse.TransposeOperator, b []float64, o *LSMROptions) (LSMRResult, error) + type LSQROptions struct + ATol float64 + BTol float64 + CalcVar bool + ConLim float64 + Damp float64 + IterLim int + X0 []float64 + type LSQRResult struct + ACond float64 + ANorm float64 + ARNorm float64 + Istop int + Itn int + R1Norm float64 + R2Norm float64 + Var []float64 + X []float64 + XNorm float64 + func LSQR(a sparse.TransposeOperator, b []float64, o *LSQROptions) (LSQRResult, error) + type Operator = sparse.LinearOperator + type Options struct + ATol float64 + Callback func(x []float64) + M Preconditioner + MaxIter int + RTol float64 + Restart int + Shift float64 + X0 []float64 + type Preconditioner interface + Solve func(dst, r []float64) + type Result struct + Info int + Iterations int + X []float64 + func BiCGSTAB(a Operator, b []float64, o *Options) (Result, error) + func CG(a Operator, b []float64, o *Options) (Result, error) + func GMRES(a Operator, b []float64, o *Options) (Result, error) + func MINRES(a Operator, b []float64, o *Options) (Result, error) + type SSOR struct + func NewSSOR(a *sparse.CSR[float64], omega float64) (*SSOR, error) + func (s *SSOR) Solve(dst, r []float64)