GCC Code Coverage Report


Directory: ./
File: Solver/FhNSolver.hpp
Date: 2024-04-14 07:32:34
Exec Total Coverage
Lines: 0 6 0.0%
Branches: 0 0 -%

Line Branch Exec Source
1 // ______ ______ _ _ _____ ______
2 // | ____| ____| | (_)/ ____| | ____|
3 // | |__ | |__ | | _| (___ ___| |__
4 // | __| | __| | | | |\___ \ / __| __|
5 // | | | |____| |____| |____) | (__| |____
6 // |_| |______|______|_|_____/ \___|______|
7 // Finite Elements for Life Sciences and Engineering
8 //
9 // License: LGL2.1 License
10 // FELiScE default license: LICENSE in root folder
11 //
12 // Main authors: C. Corrado
13 //
14
15 #ifndef _FHNSOLVER_HPP
16 #define _FHNSOLVER_HPP
17
18 // System includes
19
20 // External includes
21
22 // Project includes
23 #include "Solver/ionicSolver.hpp"
24 #include "Solver/cardiacFunction.hpp"
25
26 /*!
27 \class FhNSolver
28 \brief Fitzhugh Nagumo Ionic model
29
30 \c FhNSolver is the class implementing the Fitzhugh Nagumo Ionic model:
31
32 \c dw/dt = eps * (u*gamma - beta*w), w(t=0) = 0
33
34 \c I_{ion} = f_0 * u * (u-alpha) * (1-u) - w
35
36 \c This class inherits from ionicSolver
37
38 \author Cesare Corrado
39 */
40
41
42 namespace felisce {
43 class FhNSolver:
44 public IonicSolver {
45 public:
46 //!Constructor.
47 FhNSolver(FelisceTransient::Pointer fstransient);
48 //!Destructor.
49 ~FhNSolver() override;
50 //!Compute RHS in EDO.
51 void computeRHS() override;
52 //!Solve the EDO.
53 void solveEDO() override;
54 //!Computation of ionic current from EDO solution.
55 void computeIon() override;
56
57
58 // functor and acces to variable properties fhn
59
60 inline const std::vector<double>& f0Par() const {
61 return m_f0Par;
62 }
63 inline std::vector<double>& f0Par() {
64 return m_f0Par;
65 }
66
67 virtual inline const HeteroSparFHN& fctSpar() const {
68 return m_heteroSpar;
69 }
70 virtual inline HeteroSparFHN& fctSpar() {
71 return m_heteroSpar;
72 }
73
74 protected:
75 HeteroSparFHN m_heteroSpar;
76 std::vector<double> m_f0Par;
77
78 };
79 }
80
81 #endif
82