summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author couriersud <couriersud@gmx.org>2020-07-25 14:45:54 +0200
committer couriersud <couriersud@gmx.org>2020-07-25 14:47:24 +0200
commitad1bc7b3186d64963ca74b2a59ec22ad47f4457e (patch)
tree72fd59d7fecf272c2f3681c22072f555e645bea8
parent599f5572e73d8b1791733745d70d86c29c71294c (diff)
netlist: include GMRES solver in build.
* The GMRES solver for larger matrices (>>100) can outperform Gaussian elimination. Including it so it gets wider attention. * As far as I know netlist is the only SPICE-like circuit simulation providing a GMRES solver.
-rw-r--r--src/lib/netlist/solver/nld_solver.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/lib/netlist/solver/nld_solver.cpp b/src/lib/netlist/solver/nld_solver.cpp
index 45f8a389b51..cac70167d82 100644
--- a/src/lib/netlist/solver/nld_solver.cpp
+++ b/src/lib/netlist/solver/nld_solver.cpp
@@ -193,9 +193,9 @@ namespace devices
return create_it<solver::matrix_solver_GCR_t<FT, SIZE>>(*this, solvername, nets, m_params, size);
case solver::matrix_type_e::MAT:
return create_it<solver::matrix_solver_direct_t<FT, SIZE>>(*this, solvername, nets, m_params, size);
-#if (NL_USE_ACADEMIC_SOLVERS)
case solver::matrix_type_e::GMRES:
return create_it<solver::matrix_solver_GMRES_t<FT, SIZE>>(*this, solvername, nets, m_params, size);
+#if (NL_USE_ACADEMIC_SOLVERS)
case solver::matrix_type_e::SOR:
return create_it<solver::matrix_solver_SOR_t<FT, SIZE>>(*this, solvername, nets, m_params, size);
case solver::matrix_type_e::SOR_MAT:
@@ -207,7 +207,7 @@ namespace devices
// Woodbury Formula
return create_it<solver::matrix_solver_w_t<FT, SIZE>>(*this, solvername, nets, m_params, size);
#else
- case solver::matrix_type_e::GMRES:
+ //case solver::matrix_type_e::GMRES:
case solver::matrix_type_e::SOR:
case solver::matrix_type_e::SOR_MAT:
case solver::matrix_type_e::SM: