| Interface | Description |
|---|---|
| DirectSolver | |
| IterativeSolver | |
| LCPSolver |
General interface for linear complementarity problem (LCP) solvers.
|
| Class | Description |
|---|---|
| AccelerateSolver |
A direct solver based on the sparse factorizations in Apple's Accelerate
framework (Sparse/Solve.h), for comparison with MUMPS on Arm-based Macs,
where Pardiso is not available.
|
| AccelerateSolverTest |
Test for
AccelerateSolver. |
| CGSolver |
Solves linear systems using the conjugate gradient algorithm
|
| CGSolverTest |
Unit test for the class CGSolver
|
| CRSolver | |
| CRSolverTest |
Unit test for the class CGSolver
|
| DantzigLCPSolver |
Solves linear complementarity problems (LCPs) and bounded linear
complementarity problems (BLCPs) for symmetric positive semi-definite (SPSD)
matrices using a principal pivoting method.
|
| DantzigLCPSolverTest | |
| DantzigQPSolver |
A dense QP (Quadratic Program) solver that that uses Dantzig's algorithm.
|
| DantzigQPSolverTest |
Testing program for the QPSolver
|
| DirectSolverBase |
Base class for
DirectSolver implementations which are implemented
natively and which accept their matrices in compressed row storage (CRS)
format with 1-based indices. |
| DirectSolverTestBase |
Base class for testing
DirectSolver implementations. |
| DirectSolverTiming |
Times the analyze, factor and solve phases of the direct sparse solvers
across a range of matrix sizes, using the synthetic 2D and 3D finite element
matrices produced by
FemMatrixGenerator. |
| FemMatrixGenerator |
Generates synthetic sparse matrices whose sparsity patterns match those
arising from 2D and 3D finite element models on structured grids.
|
| FemMatrixGenerator.CRSMatrix |
Sparse symmetric matrix in the 1-based upper triangular CRS form used by
DirectSolver. |
| FindSolverThreadThreshold |
Finds the single matrix-size threshold below which a
DirectSolverBase subclass should be forced to one thread, and prints the
resulting ThreadLimit table entry -- see DirectSolverBase.maxThreadsNnz(int, int), DirectSolverBase.ThreadLimit and
DirectSolverBase.lookupMaxThreads(maspack.solvers.DirectSolverBase.ThreadLimit[], int) -- ready to paste into that
solver's override. |
| HybridReplayTiming |
Replays the solves recorded by
MurtyMechSolver.writeSolveInfo(java.io.PrintWriter, maspack.solvers.LCPSolver.Status, maspack.matrix.VectorNd, maspack.matrix.VectorNd, maspack.matrix.VectorNd, maspack.matrix.VectorNd, maspack.matrix.VectorNd, maspack.matrix.VectorNd, maspack.matrix.SparseBlockMatrix, int, maspack.matrix.VectorNd, int, maspack.matrix.SparseBlockMatrix, maspack.matrix.VectorNd, maspack.matrix.VectorNd, maspack.matrix.SparseBlockMatrix, maspack.matrix.VectorNd, maspack.matrix.VectorNd, maspack.matrix.VectorNi, maspack.matrix.SparseBlockMatrix, maspack.matrix.VectorNd, maspack.matrix.VectorNd, maspack.matrix.VectorNi, java.util.ArrayList<maspack.spatialmotion.FrictionInfo>, int, int) for a
simulation with (at most) bilateral constraints, to measure hybrid
direct/iterative solves on real ArtiSynth matrix sequences. |
| HybridSolvePolicy |
Decides when hybrid direct/iterative solves should use an iterative solve
(preconditioned by the most recent factorization) and when they should
refactor.
|
| HybridSolvePolicyTest |
Tests the refactor and backoff decisions of HybridSolvePolicy using
scripted solve times.
|
| HybridSolveTiming |
Measures the performance of hybrid direct/iterative solves, in which a
matrix factored for values
V0 is used as a preconditioner for an
iterative solve with nearby values V1, as done by DirectSolver.iterativeSolve(double[], double[], double[]). |
| IncompleteCholeskyDecomposition |
Constructs the Cholesky decomposition of a symmetric positive definite
matrix.
|
| IncompleteCholeskyDecompositionTest | |
| IncompleteLUDecomposition |
Constructs the Cholesky decomposition of a symmetric positive definite
matrix.
|
| IncompleteLUDecompositionTest | |
| KKTSolver | |
| KKTSolverTest | |
| LCPSolverTestBase |
Base class for LCP solver tests
|
| LemkeContactSolver | |
| LemkeContactSolverTest | |
| LemkeSolverBase | |
| MumpsSolver |
JNI interface to the MUMPS sparse solver.
|
| MumpsSolverTest |
Unit test for MumpsSolver.
|
| MurtyLCPSolver |
Solves linear complementarity problems (LCPs) and bounded linear
complementarity problems (BLCPs) for symmetric positive definite (SPD)
matrices using Murty's method.
|
| MurtyLCPSolverTest | |
| MurtyMechSolver |
Solves a bounded mixed linear complementarity problem (MLCP) for a system
arising from velocity solves for mechanical systems including bilateral
constraints (e.g.
|
| MurtyMechSolverTest | |
| NMFactorization |
Computes a non-negative matrix factorization (NMF) of a non-negative
m X n matrix V: |
| NMFactorizationTest | |
| PardisoSolver |
JNI interface to the Pardiso sparse solver.
|
| PardisoSolverTest | |
| PardisoThreadTest | |
| PardisoThreadTest.SparseElement | |
| PhysicalCoreCountTiming |
Quick timing check for
DirectSolverBase.getPhysicalCoreCountNative(),
backed by hybridGetPhysicalCoreCount() in hybridSolve.cc. |
| ProjectedCGSolver |
Solves linear systems using the conjugate gradient algorithm
|
| SimpleLCPSolver |
Solves linear complementarity problems (LCPs) for symmetric positive
semi-definite (SPSD) matrices using the simple principal pivoting
method.
|
| SimpleLCPSolverTest | |
| TriDiagonalSolver |
Solvers for tridiagonal matrices, using the Thomas algorithms as described
in the wikipedia entry for "Tridiagonal matrix algorithm".
|
| TriDiagonalSolverTest |
Test class for TriDiagonalSolver.
|
| UmfpackSolver | |
| UmfpackSolverTest |
| Enum | Description |
|---|---|
| DantzigQPSolver.Status |
Described whether or not a solution was found.
|
| DirectSolver.IterativeMethod |
Describes the methods available for
DirectSolver.iterativeSolve(double[], double[], double[]), each of
which uses the most recent factorization as a preconditioner. |
| FemMatrixGenerator.ElemType |
Element type used to subdivide the grid.
|
| IterativeSolver.ToleranceType | |
| KKTSolver.Status |
Described whether or not a solution was found.
|
| LCPSolver.Status |
Solver return status
|
| MumpsSolver.ReorderMethod |
Describes the reorder methods that can be used during the analyze phase
to reduce factorization fill-in.
|
| NMFactorization.Init |
Method used to initialize the factors.
|
| NMFactorization.Normalization |
Normalization applied to the factors once the factorization is complete.
|
| NMFactorization.Update |
Method used to update the factors at each iteration.
|
| PardisoSolver.ReorderMethod |
Describes the reorder methods that can be used during the analyze phase
to reduce factorization fill-in.
|
| SparseSolverId |
Identifies the general-purpose sparse solvers available in this package.
|