65 m_nq = pField->GetNpoints();
82 for (
size_t i = 0; i <
m_nq; ++i)
86 NekDouble var_chaste_interface__membrane__V = inarray[0][i];
88 NekDouble var_chaste_interface__fast_sodium_current_m_gate__m =
91 NekDouble var_chaste_interface__fast_sodium_current_h_gate__h =
94 NekDouble var_chaste_interface__fast_sodium_current_j_gate__j =
97 NekDouble var_chaste_interface__slow_inward_current_d_gate__d =
100 NekDouble var_chaste_interface__slow_inward_current_f_gate__f =
104 var_chaste_interface__time_dependent_potassium_current_X_gate__X =
108 var_chaste_interface__intracellular_calcium_concentration__Cai =
113 NekDouble d_dt_chaste_interface__membrane__V;
114 const NekDouble var_fast_sodium_current__j =
115 var_chaste_interface__fast_sodium_current_j_gate__j;
116 const NekDouble var_fast_sodium_current__h =
117 var_chaste_interface__fast_sodium_current_h_gate__h;
118 const NekDouble var_fast_sodium_current__m =
119 var_chaste_interface__fast_sodium_current_m_gate__m;
120 const NekDouble var_fast_sodium_current__V =
121 var_chaste_interface__membrane__V;
122 const NekDouble var_slow_inward_current__d =
123 var_chaste_interface__slow_inward_current_d_gate__d;
124 const NekDouble var_slow_inward_current__f =
125 var_chaste_interface__slow_inward_current_f_gate__f;
126 const NekDouble var_slow_inward_current__V =
127 var_chaste_interface__membrane__V;
128 const NekDouble var_slow_inward_current__Cai =
129 var_chaste_interface__intracellular_calcium_concentration__Cai;
130 const NekDouble var_slow_inward_current__E_si =
132 (13.0287 *
log(var_slow_inward_current__Cai / 1.0));
133 const NekDouble var_slow_inward_current__i_si =
134 0.09 * var_slow_inward_current__d * var_slow_inward_current__f *
135 (var_slow_inward_current__V -
136 var_slow_inward_current__E_si);
137 const NekDouble var_time_dependent_potassium_current__V =
138 var_chaste_interface__membrane__V;
139 const NekDouble var_time_dependent_potassium_current__X =
140 var_chaste_interface__time_dependent_potassium_current_X_gate__X;
142 const NekDouble var_fast_sodium_current_m_gate__m = var_fast_sodium_current__m;
144 const NekDouble var_fast_sodium_current_m_gate__V =
145 var_fast_sodium_current__V;
146 const NekDouble var_fast_sodium_current_m_gate__alpha_m =
147 (0.32 * (var_fast_sodium_current_m_gate__V + 47.13)) /
148 (1.0 - exp((-0.1) * (var_fast_sodium_current_m_gate__V +
150 const NekDouble var_fast_sodium_current_m_gate__beta_m =
152 exp((-var_fast_sodium_current_m_gate__V) / 11.0);
154 const NekDouble var_fast_sodium_current_m_gate__d_m_d_environment__time = (var_fast_sodium_current_m_gate__alpha_m * (1.0 - var_fast_sodium_current_m_gate__m)) - (var_fast_sodium_current_m_gate__beta_m * var_fast_sodium_current_m_gate__m);
155 const NekDouble var_fast_sodium_current__fast_sodium_current_m_gate__d_m_d_environment__time = var_fast_sodium_current_m_gate__d_m_d_environment__time;
157 const NekDouble var_fast_sodium_current_h_gate__V =
158 var_fast_sodium_current__V;
159 const NekDouble var_fast_sodium_current_h_gate__beta_h =
160 (var_fast_sodium_current_h_gate__V < (-40.0))
161 ? ((3.56 * exp(0.079 * var_fast_sodium_current_h_gate__V)) +
162 (310000.0 * exp(0.35 * var_fast_sodium_current_h_gate__V)))
163 : (1.0 / (0.13 * (1.0 + exp((var_fast_sodium_current_h_gate__V +
166 const NekDouble var_fast_sodium_current_h_gate__alpha_h =
167 (var_fast_sodium_current_h_gate__V < (-40.0))
169 exp((80.0 + var_fast_sodium_current_h_gate__V) / (-6.8)))
172 const NekDouble var_fast_sodium_current_h_gate__h = var_fast_sodium_current__h;
173 const NekDouble var_fast_sodium_current_h_gate__d_h_d_environment__time = (var_fast_sodium_current_h_gate__alpha_h * (1.0 - var_fast_sodium_current_h_gate__h)) - (var_fast_sodium_current_h_gate__beta_h * var_fast_sodium_current_h_gate__h);
174 const NekDouble var_fast_sodium_current__fast_sodium_current_h_gate__d_h_d_environment__time = var_fast_sodium_current_h_gate__d_h_d_environment__time;
176 const NekDouble var_fast_sodium_current_j_gate__V =
177 var_fast_sodium_current__V;
178 const NekDouble var_fast_sodium_current_j_gate__alpha_j =
179 (var_fast_sodium_current_j_gate__V < (-40.0))
181 exp(0.2444 * var_fast_sodium_current_j_gate__V)) -
183 exp((-0.04391) * var_fast_sodium_current_j_gate__V))) *
184 (var_fast_sodium_current_j_gate__V + 37.78)) /
186 exp(0.311 * (var_fast_sodium_current_j_gate__V + 79.23))))
188 const NekDouble var_fast_sodium_current_j_gate__beta_j =
189 (var_fast_sodium_current_j_gate__V < (-40.0))
191 exp((-0.01052) * var_fast_sodium_current_j_gate__V)) /
192 (1.0 + exp((-0.1378) *
193 (var_fast_sodium_current_j_gate__V + 40.14))))
195 exp((-2.535e-07) * var_fast_sodium_current_j_gate__V)) /
196 (1.0 + exp((-0.1) * (var_fast_sodium_current_j_gate__V +
199 const NekDouble var_fast_sodium_current_j_gate__j = var_fast_sodium_current__j;
200 const NekDouble var_fast_sodium_current_j_gate__d_j_d_environment__time = (var_fast_sodium_current_j_gate__alpha_j * (1.0 - var_fast_sodium_current_j_gate__j)) - (var_fast_sodium_current_j_gate__beta_j * var_fast_sodium_current_j_gate__j);
201 const NekDouble var_fast_sodium_current__fast_sodium_current_j_gate__d_j_d_environment__time = var_fast_sodium_current_j_gate__d_j_d_environment__time;
203 const NekDouble var_slow_inward_current_d_gate__V =
204 var_slow_inward_current__V;
205 const NekDouble var_slow_inward_current_d_gate__alpha_d =
206 (0.095 * exp((-0.01) * (var_slow_inward_current_d_gate__V - 5.0))) /
207 (1.0 + exp((-0.072) * (var_slow_inward_current_d_gate__V -
210 const NekDouble var_slow_inward_current_d_gate__d = var_slow_inward_current__d;
212 const NekDouble var_slow_inward_current_d_gate__beta_d =
214 exp((-0.017) * (var_slow_inward_current_d_gate__V + 44.0))) /
215 (1.0 + exp(0.05 * (var_slow_inward_current_d_gate__V +
218 const NekDouble var_slow_inward_current_d_gate__d_d_d_environment__time = (var_slow_inward_current_d_gate__alpha_d * (1.0 - var_slow_inward_current_d_gate__d)) - (var_slow_inward_current_d_gate__beta_d * var_slow_inward_current_d_gate__d);
219 const NekDouble var_slow_inward_current__slow_inward_current_d_gate__d_d_d_environment__time = var_slow_inward_current_d_gate__d_d_d_environment__time;
220 const NekDouble var_slow_inward_current_f_gate__f = var_slow_inward_current__f;
222 const NekDouble var_slow_inward_current_f_gate__V =
223 var_slow_inward_current__V;
224 const NekDouble var_slow_inward_current_f_gate__alpha_f =
226 exp((-0.008) * (var_slow_inward_current_f_gate__V + 28.0))) /
227 (1.0 + exp(0.15 * (var_slow_inward_current_f_gate__V +
229 const NekDouble var_slow_inward_current_f_gate__beta_f =
231 exp((-0.02) * (var_slow_inward_current_f_gate__V + 30.0))) /
232 (1.0 + exp((-0.2) * (var_slow_inward_current_f_gate__V +
235 const NekDouble var_slow_inward_current_f_gate__d_f_d_environment__time = (var_slow_inward_current_f_gate__alpha_f * (1.0 - var_slow_inward_current_f_gate__f)) - (var_slow_inward_current_f_gate__beta_f * var_slow_inward_current_f_gate__f);
236 const NekDouble var_slow_inward_current__slow_inward_current_f_gate__d_f_d_environment__time = var_slow_inward_current_f_gate__d_f_d_environment__time;
237 const NekDouble var_time_dependent_potassium_current_X_gate__X = var_time_dependent_potassium_current__X;
239 const NekDouble var_time_dependent_potassium_current_X_gate__V =
240 var_time_dependent_potassium_current__V;
241 const NekDouble var_time_dependent_potassium_current_X_gate__beta_X =
244 (var_time_dependent_potassium_current_X_gate__V + 20.0))) /
246 exp((-0.04) * (var_time_dependent_potassium_current_X_gate__V +
248 const NekDouble var_time_dependent_potassium_current_X_gate__alpha_X =
251 (var_time_dependent_potassium_current_X_gate__V + 50.0))) /
252 (1.0 + exp(0.057 * (var_time_dependent_potassium_current_X_gate__V +
255 const NekDouble var_time_dependent_potassium_current_X_gate__d_X_d_environment__time = (var_time_dependent_potassium_current_X_gate__alpha_X * (1.0 - var_time_dependent_potassium_current_X_gate__X)) - (var_time_dependent_potassium_current_X_gate__beta_X * var_time_dependent_potassium_current_X_gate__X);
256 const NekDouble var_time_dependent_potassium_current__time_dependent_potassium_current_X_gate__d_X_d_environment__time = var_time_dependent_potassium_current_X_gate__d_X_d_environment__time;
258 const NekDouble var_intracellular_calcium_concentration__Cai =
259 var_chaste_interface__intracellular_calcium_concentration__Cai;
260 const NekDouble var_intracellular_calcium_concentration__i_si =
261 var_slow_inward_current__i_si;
263 var_intracellular_calcium_concentration__d_Cai_d_environment__time =
265 var_intracellular_calcium_concentration__i_si) +
268 var_intracellular_calcium_concentration__Cai));
273 const NekDouble var_chaste_interface__fast_sodium_current_m_gate__d_m_d_environment__time = var_fast_sodium_current__fast_sodium_current_m_gate__d_m_d_environment__time;
274 const NekDouble var_chaste_interface__fast_sodium_current_h_gate__d_h_d_environment__time = var_fast_sodium_current__fast_sodium_current_h_gate__d_h_d_environment__time;
275 const NekDouble var_chaste_interface__fast_sodium_current_j_gate__d_j_d_environment__time = var_fast_sodium_current__fast_sodium_current_j_gate__d_j_d_environment__time;
276 const NekDouble var_chaste_interface__slow_inward_current_d_gate__d_d_d_environment__time = var_slow_inward_current__slow_inward_current_d_gate__d_d_d_environment__time;
277 const NekDouble var_chaste_interface__slow_inward_current_f_gate__d_f_d_environment__time = var_slow_inward_current__slow_inward_current_f_gate__d_f_d_environment__time;
278 const NekDouble var_chaste_interface__time_dependent_potassium_current_X_gate__d_X_d_environment__time = var_time_dependent_potassium_current__time_dependent_potassium_current_X_gate__d_X_d_environment__time;
281 var_chaste_interface__intracellular_calcium_concentration__d_Cai_d_environment__time =
282 var_intracellular_calcium_concentration__d_Cai_d_environment__time;
284 const NekDouble d_dt_chaste_interface__fast_sodium_current_m_gate__m = var_chaste_interface__fast_sodium_current_m_gate__d_m_d_environment__time;
285 const NekDouble d_dt_chaste_interface__fast_sodium_current_h_gate__h = var_chaste_interface__fast_sodium_current_h_gate__d_h_d_environment__time;
286 const NekDouble d_dt_chaste_interface__fast_sodium_current_j_gate__j = var_chaste_interface__fast_sodium_current_j_gate__d_j_d_environment__time;
287 const NekDouble d_dt_chaste_interface__slow_inward_current_d_gate__d = var_chaste_interface__slow_inward_current_d_gate__d_d_d_environment__time;
288 const NekDouble d_dt_chaste_interface__slow_inward_current_f_gate__f = var_chaste_interface__slow_inward_current_f_gate__d_f_d_environment__time;
289 const NekDouble d_dt_chaste_interface__time_dependent_potassium_current_X_gate__X = var_chaste_interface__time_dependent_potassium_current_X_gate__d_X_d_environment__time;
292 d_dt_chaste_interface__intracellular_calcium_concentration__Cai =
293 var_chaste_interface__intracellular_calcium_concentration__d_Cai_d_environment__time;
295 const NekDouble var_membrane__R = 8314.0;
297 const NekDouble var_membrane__F = 96484.6;
299 const NekDouble var_chaste_interface__membrane__I_stim = 0.0;
301 var_chaste_interface__membrane__I_stim;
302 const NekDouble var_fast_sodium_current__g_Na = 23.0;
303 const NekDouble var_fast_sodium_current__R =
305 const NekDouble var_fast_sodium_current__F =
307 const NekDouble var_ionic_concentrations__Nao = 140.0;
308 const NekDouble var_fast_sodium_current__Nao =
309 var_ionic_concentrations__Nao;
310 const NekDouble var_ionic_concentrations__Nai = 18.0;
311 const NekDouble var_fast_sodium_current__Nai =
312 var_ionic_concentrations__Nai;
313 const NekDouble var_fast_sodium_current__T = var_membrane__T;
314 const NekDouble var_fast_sodium_current__E_Na =
315 ((var_fast_sodium_current__R * var_fast_sodium_current__T) /
316 var_fast_sodium_current__F) *
317 log(var_fast_sodium_current__Nao /
318 var_fast_sodium_current__Nai);
319 const NekDouble var_fast_sodium_current__i_Na =
320 var_fast_sodium_current__g_Na *
321 pow(var_fast_sodium_current__m, 3.0) * var_fast_sodium_current__h *
322 var_fast_sodium_current__j *
323 (var_fast_sodium_current__V -
324 var_fast_sodium_current__E_Na);
326 var_fast_sodium_current__i_Na;
328 var_slow_inward_current__i_si;
329 const NekDouble var_time_dependent_potassium_current_Xi_gate__V =
330 var_time_dependent_potassium_current__V;
331 const NekDouble var_time_dependent_potassium_current_Xi_gate__Xi =
332 (var_time_dependent_potassium_current_Xi_gate__V > (-100.0))
335 (var_time_dependent_potassium_current_Xi_gate__V +
338 ((var_time_dependent_potassium_current_Xi_gate__V + 77.0) *
340 (var_time_dependent_potassium_current_Xi_gate__V +
343 const NekDouble var_time_dependent_potassium_current__Xi =
344 var_time_dependent_potassium_current_Xi_gate__Xi;
345 const NekDouble var_ionic_concentrations__Ko = 5.4;
346 const NekDouble var_time_dependent_potassium_current__Ko =
347 var_ionic_concentrations__Ko;
348 const NekDouble var_time_dependent_potassium_current__g_K =
349 0.282 *
sqrt(var_time_dependent_potassium_current__Ko /
351 const NekDouble var_time_dependent_potassium_current__PR_NaK =
353 const NekDouble var_time_dependent_potassium_current__F =
355 const NekDouble var_time_dependent_potassium_current__Nao =
356 var_ionic_concentrations__Nao;
357 const NekDouble var_ionic_concentrations__Ki = 145.0;
358 const NekDouble var_time_dependent_potassium_current__Ki =
359 var_ionic_concentrations__Ki;
360 const NekDouble var_time_dependent_potassium_current__Nai =
361 var_ionic_concentrations__Nai;
362 const NekDouble var_time_dependent_potassium_current__T =
364 const NekDouble var_time_dependent_potassium_current__R =
366 const NekDouble var_time_dependent_potassium_current__E_K =
367 ((var_time_dependent_potassium_current__R *
368 var_time_dependent_potassium_current__T) /
369 var_time_dependent_potassium_current__F) *
370 log((var_time_dependent_potassium_current__Ko +
371 (var_time_dependent_potassium_current__PR_NaK *
372 var_time_dependent_potassium_current__Nao)) /
373 (var_time_dependent_potassium_current__Ki +
374 (var_time_dependent_potassium_current__PR_NaK *
375 var_time_dependent_potassium_current__Nai)));
376 const NekDouble var_time_dependent_potassium_current__i_K =
377 var_time_dependent_potassium_current__g_K *
378 var_time_dependent_potassium_current__X *
379 var_time_dependent_potassium_current__Xi *
380 (var_time_dependent_potassium_current__V -
381 var_time_dependent_potassium_current__E_K);
383 var_time_dependent_potassium_current__i_K;
384 const NekDouble var_time_independent_potassium_current__V =
385 var_chaste_interface__membrane__V;
386 const NekDouble var_time_independent_potassium_current_K1_gate__V =
387 var_time_independent_potassium_current__V;
388 const NekDouble var_time_independent_potassium_current__Ki =
389 var_ionic_concentrations__Ki;
390 const NekDouble var_time_independent_potassium_current__R =
392 const NekDouble var_time_independent_potassium_current__F =
394 const NekDouble var_time_independent_potassium_current__Ko =
395 var_ionic_concentrations__Ko;
396 const NekDouble var_time_independent_potassium_current__T =
398 const NekDouble var_time_independent_potassium_current__E_K1 =
399 ((var_time_independent_potassium_current__R *
400 var_time_independent_potassium_current__T) /
401 var_time_independent_potassium_current__F) *
402 log(var_time_independent_potassium_current__Ko /
403 var_time_independent_potassium_current__Ki);
404 const NekDouble var_time_independent_potassium_current_K1_gate__E_K1 =
405 var_time_independent_potassium_current__E_K1;
407 var_time_independent_potassium_current_K1_gate__beta_K1 =
410 ((var_time_independent_potassium_current_K1_gate__V +
412 var_time_independent_potassium_current_K1_gate__E_K1))) +
415 (var_time_independent_potassium_current_K1_gate__V -
416 (var_time_independent_potassium_current_K1_gate__E_K1 +
420 ((var_time_independent_potassium_current_K1_gate__V -
421 var_time_independent_potassium_current_K1_gate__E_K1) +
424 var_time_independent_potassium_current_K1_gate__alpha_K1 =
428 ((var_time_independent_potassium_current_K1_gate__V -
429 var_time_independent_potassium_current_K1_gate__E_K1) -
432 var_time_independent_potassium_current_K1_gate__K1_infinity =
433 var_time_independent_potassium_current_K1_gate__alpha_K1 /
434 (var_time_independent_potassium_current_K1_gate__alpha_K1 +
435 var_time_independent_potassium_current_K1_gate__beta_K1);
436 const NekDouble var_time_independent_potassium_current__K1_infinity =
437 var_time_independent_potassium_current_K1_gate__K1_infinity;
438 const NekDouble var_time_independent_potassium_current__g_K1 =
439 0.6047 *
sqrt(var_time_independent_potassium_current__Ko /
441 const NekDouble var_time_independent_potassium_current__i_K1 =
442 var_time_independent_potassium_current__g_K1 *
443 var_time_independent_potassium_current__K1_infinity *
444 (var_time_independent_potassium_current__V -
445 var_time_independent_potassium_current__E_K1);
447 var_time_independent_potassium_current__i_K1;
448 const NekDouble var_plateau_potassium_current__g_Kp =
450 const NekDouble var_plateau_potassium_current__V =
451 var_chaste_interface__membrane__V;
452 const NekDouble var_plateau_potassium_current__Kp =
453 1.0 / (1.0 + exp((7.488 - var_plateau_potassium_current__V) /
455 const NekDouble var_plateau_potassium_current__E_K1 =
456 var_time_independent_potassium_current__E_K1;
457 const NekDouble var_plateau_potassium_current__E_Kp =
458 var_plateau_potassium_current__E_K1;
459 const NekDouble var_plateau_potassium_current__i_Kp =
460 var_plateau_potassium_current__g_Kp *
461 var_plateau_potassium_current__Kp *
462 (var_plateau_potassium_current__V -
463 var_plateau_potassium_current__E_Kp);
465 var_plateau_potassium_current__i_Kp;
466 const NekDouble var_background_current__E_b = -59.87;
467 const NekDouble var_background_current__g_b = 0.03921;
468 const NekDouble var_background_current__V =
469 var_chaste_interface__membrane__V;
470 const NekDouble var_background_current__i_b =
471 var_background_current__g_b *
472 (var_background_current__V -
473 var_background_current__E_b);
475 var_background_current__i_b;
476 const NekDouble var_membrane__d_V_d_environment__time =
477 ((-1.0) / var_membrane__C) *
478 (var_membrane__I_stim + var_membrane__i_Na + var_membrane__i_si +
479 var_membrane__i_K + var_membrane__i_K1 + var_membrane__i_Kp +
482 var_chaste_interface__membrane__d_V_d_environment__time =
483 var_membrane__d_V_d_environment__time;
484 d_dt_chaste_interface__membrane__V =
485 var_chaste_interface__membrane__d_V_d_environment__time;
488 const NekDouble m_inf = var_fast_sodium_current_m_gate__alpha_m /
489 (var_fast_sodium_current_m_gate__alpha_m +
490 var_fast_sodium_current_m_gate__beta_m);
491 const NekDouble m_tau = 1.0 / (var_fast_sodium_current_m_gate__alpha_m +
492 var_fast_sodium_current_m_gate__beta_m);
493 const NekDouble h_inf = var_fast_sodium_current_h_gate__alpha_h /
494 (var_fast_sodium_current_h_gate__alpha_h +
495 var_fast_sodium_current_h_gate__beta_h);
496 const NekDouble h_tau = 1.0 / (var_fast_sodium_current_h_gate__alpha_h +
497 var_fast_sodium_current_h_gate__beta_h);
498 const NekDouble j_inf = var_fast_sodium_current_j_gate__alpha_j /
499 (var_fast_sodium_current_j_gate__alpha_j +
500 var_fast_sodium_current_j_gate__beta_j);
501 const NekDouble j_tau = 1.0 / (var_fast_sodium_current_j_gate__alpha_j +
502 var_fast_sodium_current_j_gate__beta_j);
503 const NekDouble d_inf = var_slow_inward_current_d_gate__alpha_d /
504 (var_slow_inward_current_d_gate__alpha_d +
505 var_slow_inward_current_d_gate__beta_d);
506 const NekDouble d_tau = 1.0 / (var_slow_inward_current_d_gate__alpha_d +
507 var_slow_inward_current_d_gate__beta_d);
508 const NekDouble f_inf = var_slow_inward_current_f_gate__alpha_f /
509 (var_slow_inward_current_f_gate__alpha_f +
510 var_slow_inward_current_f_gate__beta_f);
511 const NekDouble f_tau = 1.0 / (var_slow_inward_current_f_gate__alpha_f +
512 var_slow_inward_current_f_gate__beta_f);
514 var_time_dependent_potassium_current_X_gate__alpha_X /
515 (var_time_dependent_potassium_current_X_gate__alpha_X +
516 var_time_dependent_potassium_current_X_gate__beta_X);
518 1.0 / (var_time_dependent_potassium_current_X_gate__alpha_X +
519 var_time_dependent_potassium_current_X_gate__beta_X);
521 outarray[0][i] = d_dt_chaste_interface__membrane__V;
522 outarray[1][i] = m_inf;
524 outarray[2][i] = h_inf;
526 outarray[3][i] = j_inf;
528 outarray[4][i] = d_inf;
530 outarray[5][i] = f_inf;
532 outarray[6][i] = X_inf;
535 d_dt_chaste_interface__intracellular_calcium_concentration__Cai;
Array< OneD, Array< OneD, NekDouble > > m_cellSol
Cell model solution variables.
std::vector< int > m_concentrations
Indices of cell model variables which are concentrations.
std::vector< int > m_gates
Indices of cell model variables which are gates.
size_t m_nq
Number of physical points.
size_t m_nvar
Number of variables in cell model (inc. transmembrane voltage)
Array< OneD, Array< OneD, NekDouble > > m_gates_tau
Storage for gate tau values.
tKey RegisterCreatorFunction(tKey idKey, CreatorFunction classCreator, std::string pDesc="")
Register a class with the factory.
static CellModelSharedPtr create(const LibUtilities::SessionReaderSharedPtr &pSession, const MultiRegions::ExpListSharedPtr &pField)
Creates an instance of this class.
void v_SetInitialConditions() override
Set initial conditions for the cell model.
void v_Update(const Array< OneD, const Array< OneD, NekDouble > > &inarray, Array< OneD, Array< OneD, NekDouble > > &outarray, const NekDouble time) override
Computes the reaction terms $f(u,v)$ and $g(u,v)$.
LuoRudy91(const LibUtilities::SessionReaderSharedPtr &pSession, const MultiRegions::ExpListSharedPtr &pField)
Constructor.
void v_GenerateSummary(SummaryList &s) override
Prints a summary of the model parameters.
static std::string className
Name of class.
std::shared_ptr< SessionReader > SessionReaderSharedPtr
std::shared_ptr< ExpList > ExpListSharedPtr
Shared pointer to an ExpList object.
std::vector< std::pair< std::string, std::string > > SummaryList
void AddSummaryItem(SummaryList &l, const std::string &name, const std::string &value)
Adds a summary item to the summary info list.
CellModelFactory & GetCellModelFactory()
void Fill(int n, const T alpha, T *x, const int incx)
Fill a vector with a constant value.
scalarT< T > log(scalarT< T > in)
scalarT< T > sqrt(scalarT< T > in)