36 #ifndef _PSEUDOECGALCALCULATOR_HPP_
37 #define _PSEUDOECGALCALCULATOR_HPP_
39 #include "AbstractFunctionalCalculator.hpp"
40 #include "AbstractTetrahedralMesh.hpp"
41 #include "ChastePoint.hpp"
43 #include "Hdf5DataReader.hpp"
70 template<
unsigned ELEMENT_DIM,
unsigned SPACE_DIM,
unsigned PROBLEM_DIM>
75 friend class TestPseudoEcgCalculator;
96 c_vector<double,PROBLEM_DIM>& rU,
97 c_matrix<double,PROBLEM_DIM,SPACE_DIM>& rGradU);
137 const std::string& rHdf5FileName,
138 const std::string& rVariableName =
"V",
139 unsigned timestepStride = 1);
168 #endif //_PSEUDOECGALCALCULATOR_HPP_
void SetDiffusionCoefficient(double diffusionCoefficient)
double GetIntegrand(ChastePoint< SPACE_DIM > &rX, c_vector< double, PROBLEM_DIM > &rU, c_matrix< double, PROBLEM_DIM, SPACE_DIM > &rGradU)
AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM > & mrMesh
bool ShouldSkipThisElement(Element< ELEMENT_DIM, SPACE_DIM > &rElement)
double mDiffusionCoefficient
std::string mVariableName
PseudoEcgCalculator(AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM > &rMesh, const ChastePoint< SPACE_DIM > &rProbeElectrode, const FileFinder &rDirectory, const std::string &rHdf5FileName, const std::string &rVariableName="V", unsigned timestepStride=1)
ChastePoint< SPACE_DIM > mProbeElectrode
Hdf5DataReader * mpDataReader
double ComputePseudoEcgAtOneTimeStep(unsigned timeStep)