diff options
author | Hein-Pieter van Braam <hp@tmm.cx> | 2017-12-08 15:05:47 +0100 |
---|---|---|
committer | Hein-Pieter van Braam <hp@tmm.cx> | 2017-12-08 15:47:15 +0100 |
commit | bf05309af734431c3b3cf869a63ed477439a6739 (patch) | |
tree | 72c1c939f9035c711f50ec94b0270ea60e0bb4e4 /thirdparty/thekla_atlas/nvmath/Solver.h | |
parent | b3b4727dff009dda0a65b8a013ec04d52a54b367 (diff) |
Import thekla_atlas
As requested by reduz, an import of thekla_atlas into thirdparty/
Diffstat (limited to 'thirdparty/thekla_atlas/nvmath/Solver.h')
-rw-r--r-- | thirdparty/thekla_atlas/nvmath/Solver.h | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/thirdparty/thekla_atlas/nvmath/Solver.h b/thirdparty/thekla_atlas/nvmath/Solver.h new file mode 100644 index 0000000000..2bbf92736a --- /dev/null +++ b/thirdparty/thekla_atlas/nvmath/Solver.h @@ -0,0 +1,24 @@ +// This code is in the public domain -- castanyo@yahoo.es + +#pragma once +#ifndef NV_MATH_SOLVER_H +#define NV_MATH_SOLVER_H + +#include "nvmath.h" + +namespace nv +{ + class SparseMatrix; + class FullVector; + + + // Linear solvers. + NVMATH_API bool LeastSquaresSolver(const SparseMatrix & A, const FullVector & b, FullVector & x, float epsilon = 1e-5f); + NVMATH_API bool LeastSquaresSolver(const SparseMatrix & A, const FullVector & b, FullVector & x, const uint * lockedParameters, uint lockedCount, float epsilon = 1e-5f); + NVMATH_API bool SymmetricSolver(const SparseMatrix & A, const FullVector & b, FullVector & x, float epsilon = 1e-5f); + //NVMATH_API void NonSymmetricSolver(const SparseMatrix & A, const FullVector & b, FullVector & x, float epsilon = 1e-5f); + +} // nv namespace + + +#endif // NV_MATH_SOLVER_H |