Nektar++
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Pages
solvers
CardiacEPSolver
CellModels
FentonKarma.h
Go to the documentation of this file.
1
///////////////////////////////////////////////////////////////////////////////
2
//
3
// File: FentonKarma.h
4
//
5
// For more information, please see: http://www.nektar.info
6
//
7
// The MIT License
8
//
9
// Copyright (c) 2006 Division of Applied Mathematics, Brown University (USA),
10
// Department of Aeronautics, Imperial College London (UK), and Scientific
11
// Computing and Imaging Institute, University of Utah (USA).
12
//
13
// License for the specific language governing rights and limitations under
14
// Permission is hereby granted, free of charge, to any person obtaining a
15
// copy of this software and associated documentation files (the "Software"),
16
// to deal in the Software without restriction, including without limitation
17
// the rights to use, copy, modify, merge, publish, distribute, sublicense,
18
// and/or sell copies of the Software, and to permit persons to whom the
19
// Software is furnished to do so, subject to the following conditions:
20
//
21
// The above copyright notice and this permission notice shall be included
22
// in all copies or substantial portions of the Software.
23
//
24
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
25
// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
26
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
27
// THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
28
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
29
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
30
// DEALINGS IN THE SOFTWARE.
31
//
32
// Description: Fenton-Karma cell model
33
//
34
///////////////////////////////////////////////////////////////////////////////
35
36
#ifndef NEKTAR_SOLVERS_ADRSOLVER_EQUATIONSYSTEMS_FENTONKARMA_H
37
#define NEKTAR_SOLVERS_ADRSOLVER_EQUATIONSYSTEMS_FENTONKARMA_H
38
39
#include <
CardiacEPSolver/CellModels/CellModel.h
>
40
41
namespace
Nektar
42
{
43
class
FentonKarma
:
public
CellModel
44
{
45
public
:
46
/// Creates an instance of this class
47
static
CellModelSharedPtr
create
(
48
const
LibUtilities::SessionReaderSharedPtr
& pSession,
49
const
MultiRegions::ExpListSharedPtr
& pField)
50
{
51
return
MemoryManager<FentonKarma>
52
::AllocateSharedPtr
(pSession, pField);
53
}
54
55
/// Name of class
56
static
std::string
className
;
57
58
/// Constructor
59
FentonKarma
(
60
const
LibUtilities::SessionReaderSharedPtr
& pSession,
61
const
MultiRegions::ExpListSharedPtr
& pField);
62
63
/// Destructor
64
virtual
~FentonKarma
();
65
66
protected
:
67
/// Computes the reaction terms $f(u,v)$ and $g(u,v)$.
68
virtual
void
v_Update
(
69
const
Array<
OneD
,
const
Array<OneD, NekDouble> >&inarray,
70
Array<
OneD
, Array<OneD, NekDouble> >&outarray,
71
const
NekDouble
time);
72
73
/// Prints a summary of the model parameters.
74
virtual
void
v_GenerateSummary
(
SummaryList
& s);
75
76
virtual
void
v_SetInitialConditions
();
77
78
virtual
std::string
v_GetCellVarName
(
unsigned
int
idx);
79
80
private
:
81
NekDouble
C_m
;
82
NekDouble
V_0
;
83
NekDouble
u_fi
;
84
NekDouble
u_c
;
85
NekDouble
u_v
;
86
NekDouble
u_r
;
87
NekDouble
g_fi_max
;
88
NekDouble
tau_d
;
89
NekDouble
tau_v1_minus
;
90
NekDouble
tau_v2_minus
;
91
NekDouble
tau_v_plus
;
92
NekDouble
tau_0
;
93
NekDouble
tau_r
;
94
NekDouble
tau_si
;
95
NekDouble
tau_y_plus
;
96
NekDouble
tau_y_minus
;
97
NekDouble
u_csi
;
98
NekDouble
k1
;
99
NekDouble
k2
;
100
NekDouble
tau_w_minus
;
101
NekDouble
tau_w_plus
;
102
103
bool
isCF3
;
104
105
enum
Variants
{
106
eBR
,
107
eMBR
,
108
eMLR1
,
109
eGP
,
110
eCF1
,
111
eCF2a
,
112
eCF2b
,
113
eCF2c
,
114
eCF3a
,
115
eCF3b
116
};
117
enum
Variants
model_variant
;
118
119
static
std::string
lookupIds
[];
120
static
std::string
def
;
121
};
122
123
}
124
125
#endif
Generated on Sun Mar 15 2015 00:11:31 for Nektar++ by
1.8.1.2