diff --git a/src/coupled/solvers/CellModelSolver.cpp b/src/coupled/solvers/CellModelSolver.cpp index ec0f46e0ba73a24d03e58c06aee40d3531c5fbe6..e2af47122369fce012977219e084e03480fe8cfb 100644 --- a/src/coupled/solvers/CellModelSolver.cpp +++ b/src/coupled/solvers/CellModelSolver.cpp @@ -19,7 +19,7 @@ void CellModelSolver::Solve(Vector &potential, Vector &stretch) { int step=elphyA.Step()+1; //if (verbose == 1) mout << "Solving Step " << step << " at time " << elphyA.Time() << "." << endl; - elphySolver.SolveStep(elphyA, uNew); + elphySolver.Step(elphyA, uNew); if (verbose > 0) { PlotValues(uNew, step); diff --git a/src/coupled/solvers/SegregatedSolver.cpp b/src/coupled/solvers/SegregatedSolver.cpp index 83c0f78c55f3f2de7f714f7a24f24847d985feb8..84363b3cd3fbb3e0263c3bb0d4cd75db78b5fa7a 100644 --- a/src/coupled/solvers/SegregatedSolver.cpp +++ b/src/coupled/solvers/SegregatedSolver.cpp @@ -181,7 +181,7 @@ void SegregatedSolver::Step(IElphyAssemble &elphyAssemble, IElasticity &mechAsse << elphyAssemble.LastTStep() << "] - step " << elphyAssemble.Step() + 1 << " at time " << elphyAssemble.Time() << "." << endl; - elphySolver->SolveStep(elphyAssemble, elphyValues); + elphySolver->Step(elphyAssemble, elphyValues); } // Projects stretch from elphy to mech diff --git a/src/electrophysiology/MainMonodomain.cpp b/src/electrophysiology/MainMonodomain.cpp index be66533d3f867eb8153bb6a238c8bf1be434a417..c77729dbb0b616aee1d5ced03f14eddac8f0a95b 100644 --- a/src/electrophysiology/MainMonodomain.cpp +++ b/src/electrophysiology/MainMonodomain.cpp @@ -53,7 +53,7 @@ void MainMonodomain::Initialize() { Vector &MainMonodomain::Run() { auto elphySolver = GetElphySolver(modelName, *cellModel, elphyA->ExcitationData()); - elphySolver->Solve(*elphyA, *potential); + elphySolver->Method(*elphyA, *potential); elphyA->PrintActivationTime(); diff --git a/src/electrophysiology/MainOneCell.cpp b/src/electrophysiology/MainOneCell.cpp index 83989471ee35158159d910e5f2ea8e33500de674..58a5811d80c0a55c9fe6238d3dc37152e31d9158 100644 --- a/src/electrophysiology/MainOneCell.cpp +++ b/src/electrophysiology/MainOneCell.cpp @@ -37,7 +37,7 @@ Vector &MainOneCell::Run() { } else { elphyA = std::make_unique<MonodomainSplitting>(*problem, 0); IBTSplittingSolver eSolver(ONLYODE); - eSolver.Solve(*elphyA, *potential); + eSolver.Method(*elphyA, *potential); } diff --git a/src/electrophysiology/solvers/DiffusionSolver.cpp b/src/electrophysiology/solvers/DiffusionSolver.cpp index 01b9d4eb6e633faaff83889eacbb5d6352d97369..b27b848e2cb987d866f05cce0a129dc190e1ddbd 100644 --- a/src/electrophysiology/solvers/DiffusionSolver.cpp +++ b/src/electrophysiology/solvers/DiffusionSolver.cpp @@ -26,7 +26,7 @@ void DiffusionSolver::Initialize(IElphyAssemble &A, Vector &v) { A.SetInitialValue(v); } -void DiffusionSolver::Solve(IElphyAssemble &A, Vector &potential) { +void DiffusionSolver::Method(IElphyAssemble &A, Vector &potential) { //mout.StartBlock("Elphy"); Initialize(A, potential); @@ -103,6 +103,6 @@ bool DiffusionSolver::AssemblesOnce() const { return assembleOnce; } -void DiffusionSolver::SolveStep(IElphyAssemble &A, Vectors &values) { +void DiffusionSolver::Step(IElphyAssemble &A, Vectors &values) { SolveStep(A, values[0]); } diff --git a/src/electrophysiology/solvers/DiffusionSolver.hpp b/src/electrophysiology/solvers/DiffusionSolver.hpp index 110a6a9cb7920d58da31b3001973e728e28bc87f..2dc37c60e93988637c37ace801758c6aa51974e2 100644 --- a/src/electrophysiology/solvers/DiffusionSolver.hpp +++ b/src/electrophysiology/solvers/DiffusionSolver.hpp @@ -21,9 +21,9 @@ public: void SolveStep(IElphyAssemble &A, Vector &potential); - void SolveStep(IElphyAssemble &A, Vectors &values) override; + void Step(IElphyAssemble &A, Vectors &values) override; - void Solve(IElphyAssemble &A, Vector &potential); + void Method(IElphyAssemble &A, Vector &potential); void assembleStep(IElphyAssemble &A, Vector &v); diff --git a/src/electrophysiology/solvers/ElphySolver.cpp b/src/electrophysiology/solvers/ElphySolver.cpp index bb2b687a4aa15a36005f46a116b8e9aa917143d0..3bb8e60690984b96a62be94bcc622968ce187c8c 100644 --- a/src/electrophysiology/solvers/ElphySolver.cpp +++ b/src/electrophysiology/solvers/ElphySolver.cpp @@ -8,7 +8,7 @@ ElphySolver::ElphySolver() { Config::Get("IextInPDE", iextInPDE); } -void ElphySolver::Solve(IElphyAssemble &A, Vector &potential) { +void ElphySolver::Method(IElphyAssemble &A, Vector &potential) { //mout.StartBlock("Elphy"); Initialize(A, potential); Vectors uNew(1, potential); @@ -17,10 +17,10 @@ void ElphySolver::Solve(IElphyAssemble &A, Vector &potential) { A.PlotIteration(uNew[0]); A.PrintIteration(uNew[0]); - vout(1) << "Solving Step " << A.Step() + 1 << " at time " << A.Time() << "." << endl; + vout(1) << "Solving Step " << A.Step() + 1 << " at time " << A.Time() << "." << endl; vout(10).StartBlock("Godunov Splitting Step"); - SolveStep(A, uNew); + Step(A, uNew); A.NextTimeStep(); diff --git a/src/electrophysiology/solvers/ElphySolver.hpp b/src/electrophysiology/solvers/ElphySolver.hpp index 1605e4d22a9e25517e0594293b3eefdb141a9ac3..214612e6229747e9d67b79d0575c4c4587dd37c4 100644 --- a/src/electrophysiology/solvers/ElphySolver.hpp +++ b/src/electrophysiology/solvers/ElphySolver.hpp @@ -14,13 +14,15 @@ protected: public: explicit ElphySolver(); + virtual void Initialize(IElphyAssemble &A, Vector &potential) {}; + /** * Solves purely electrophysiolical problem over the course of the timeSeries * @param potential * @param timeSeries * The solution is stored in potential */ - virtual void Solve(IElphyAssemble &A, Vector &potential); + virtual void Method(IElphyAssemble &A, Vector &potential); /** * Solves a single electrophysiolgical time step with the given parameters @@ -29,9 +31,7 @@ public: * @param t * @param dt */ - virtual void SolveStep(IElphyAssemble &A, Vectors &values) = 0; - - virtual void Initialize(IElphyAssemble &A, Vector &potential) {}; + virtual void Step(IElphyAssemble &A, Vectors &values) = 0; virtual void Finalize(Vectors &values) {}; }; diff --git a/src/electrophysiology/solvers/LinearImplicitSolver.cpp b/src/electrophysiology/solvers/LinearImplicitSolver.cpp index e702d82ff2dc9359a3ba84557ac1c78ce6640bba..3429cdbd83d71de8035d827eb4308974e6f9cfc4 100644 --- a/src/electrophysiology/solvers/LinearImplicitSolver.cpp +++ b/src/electrophysiology/solvers/LinearImplicitSolver.cpp @@ -20,7 +20,7 @@ void LinearImplicitSolver::Initialize(IElphyAssemble &A, Vector &V) { A.SetInitialValue(V); } -void LinearImplicitSolver::Solve(IElphyAssemble &A, Vector &V) { +void LinearImplicitSolver::Method(IElphyAssemble &A, Vector &V) { Vectors vNew(M.Type() == TENSION ? 3 : 1, V); Initialize(A, vNew[0]); if (M.Type() == TENSION) { @@ -35,7 +35,7 @@ void LinearImplicitSolver::Solve(IElphyAssemble &A, Vector &V) { << A.NextTimeStep(false) << " (" << A.StepSize() << ")" << endl; vout(10).StartBlock("LinearImplicit Step"); - SolveStep(A, vNew); + Step(A, vNew); vout(10).EndBlock(); @@ -47,7 +47,7 @@ void LinearImplicitSolver::Solve(IElphyAssemble &A, Vector &V) { A.PrintIteration(V); } -void LinearImplicitSolver::SolveStep(IElphyAssemble &A, Vectors &values) { +void LinearImplicitSolver::Step(IElphyAssemble &A, Vectors &values) { A.Initialize(values[0]); A.updateExternalCurrent(values[0]); A.updateIionVecs(*gating); @@ -173,7 +173,7 @@ void LinearImplicitSolver::PrintMaxMinGating() { } -void ImplicitSolver::Solve(IElphyAssemble &A, Vector &V) { +void ImplicitSolver::Method(IElphyAssemble &A, Vector &V) { Vectors vNew(M.Type() == TENSION ? 3 : 1, V); Initialize(A, vNew[0]); if (M.Type() == TENSION) { @@ -191,7 +191,7 @@ void ImplicitSolver::Solve(IElphyAssemble &A, Vector &V) { << A.NextTimeStep(false) << " (" << A.StepSize() << ")" << endl; vout(10).StartBlock("Implicit step"); - SolveStep(A, vNew); + Step(A, vNew); vout(10).EndBlock(); @@ -204,7 +204,7 @@ void ImplicitSolver::Solve(IElphyAssemble &A, Vector &V) { } -void ImplicitSolver::SolveStep(IElphyAssemble &A, Vectors &values) { +void ImplicitSolver::Step(IElphyAssemble &A, Vectors &values) { A.NextTimeStep(); A.Initialize(values[0]); A.updateExternalCurrent(values[0]); @@ -230,7 +230,7 @@ bool ImplicitSolver::SolvePDE(IElphyAssemble &A, Vectors &values) { } -void SemiImplicitSolver::Solve(IElphyAssemble &A, Vector &V) { +void SemiImplicitSolver::Method(IElphyAssemble &A, Vector &V) { Vectors vNew(M.Type() == TENSION ? 3 : 1, V); Initialize(A, vNew[0]); if (M.Type() == TENSION) { @@ -246,7 +246,7 @@ void SemiImplicitSolver::Solve(IElphyAssemble &A, Vector &V) { << A.NextTimeStep(false) << " (" << A.StepSize() << ")" << endl; vout(10).StartBlock("Semi Implicit Step"); - SolveStep(A, vNew); + Step(A, vNew); vout(10).EndBlock(); } diff --git a/src/electrophysiology/solvers/LinearImplicitSolver.hpp b/src/electrophysiology/solvers/LinearImplicitSolver.hpp index e2474cfbd58cb224647c2b15f41d09ce6741787d..85e0f463cfac4f753ee2a73a14bcf6793d9e2d16 100644 --- a/src/electrophysiology/solvers/LinearImplicitSolver.hpp +++ b/src/electrophysiology/solvers/LinearImplicitSolver.hpp @@ -76,7 +76,7 @@ public: virtual void Initialize(IElphyAssemble &A, Vector &potential); - virtual void Solve(IElphyAssemble &A, Vector &V); + virtual void Method(IElphyAssemble &A, Vector &V); void SolveConcentration(double t, double dt, const Vectors &values); @@ -84,7 +84,7 @@ public: virtual void SolvePDE(IElphyAssemble &A); - void SolveStep(IElphyAssemble &A, Vectors &values) override; + void Step(IElphyAssemble &A, Vectors &values) override; std::function<void(IElphyAssemble &A, const Vectors &values)> StaggeredStep; @@ -112,9 +112,9 @@ public: std::unique_ptr<LinearSolver>(GetLinearSolverByPrefix("Elphy")) ) {}; - void Solve(IElphyAssemble &A, Vector &V) override; + void Method(IElphyAssemble &A, Vector &V) override; - void SolveStep(IElphyAssemble &A, Vectors &values) override; + void Step(IElphyAssemble &A, Vectors &values) override; bool SolvePDE(IElphyAssemble &A, Vectors &values); }; @@ -124,7 +124,7 @@ class SemiImplicitSolver : public LinearImplicitSolver { public: SemiImplicitSolver(MCellModel &cellModel) : LinearImplicitSolver(cellModel) {}; - void Solve(IElphyAssemble &A, Vector &V) override; + void Method(IElphyAssemble &A, Vector &V) override; void SolvePDE(IElphyAssemble &A) override; }; diff --git a/src/electrophysiology/solvers/SplittingSolver.hpp b/src/electrophysiology/solvers/SplittingSolver.hpp index 48a73e095a13795bc25d3e5036a4463980ae78bb..2d085d6cd7347393c0d150f932c587750b4798b3 100644 --- a/src/electrophysiology/solvers/SplittingSolver.hpp +++ b/src/electrophysiology/solvers/SplittingSolver.hpp @@ -118,7 +118,7 @@ public: selectScheme(splitting); } - void SolveStep(IElphyAssemble &A, Vectors &values) override { + void Step(IElphyAssemble &A, Vectors &values) override { solveSplittingStep(A, values); } diff --git a/test/coupled/TestCoupledConsistency.cpp b/test/coupled/TestCoupledConsistency.cpp index 5fa53997be7fce46bd5d093fdf8f227db7e5b9f0..e1ec4e5924bed1a501e2a7d3e796a845f74274ff 100644 --- a/test/coupled/TestCoupledConsistency.cpp +++ b/test/coupled/TestCoupledConsistency.cpp @@ -120,8 +120,8 @@ TEST_P(CoupledConsistencyTest, CompareCellModels) { tensionV[2] = 1.0; // Iota4 while (!elphyA->IsFinished()) { - elphySolver->SolveStep(*elphyA, elphyV); - tensionSolver->SolveStep(*coupledA, tensionV); + elphySolver->Step(*elphyA, elphyV); + tensionSolver->Step(*coupledA, tensionV); EXPECT_EQ(elphyA->Time(), coupledA->Time()); ASSERT_MPPVECTOR_EQ(elphyV[0], tensionV[0]); @@ -162,7 +162,7 @@ TEST_P(CoupledConsistencyTest, CompareSolvers) { ASSERT_MPPVECTOR_EQ(elphyA->ExternalCurrent(), coupledA->ExternalCurrent()); while (!mechA->IsFinished()) { - elphySolver->SolveStep(*elphyA, elphyV); + elphySolver->Step(*elphyA, elphyV); coupledSolver.Step(*coupledA, *mechA, coupledV, coupledU); EXPECT_EQ(elphyA->Time(), mechA->Time());