35 #ifndef STREETERFIBREGENERATOR_HPP_
36 #define STREETERFIBREGENERATOR_HPP_
41 #include "DistanceMapCalculator.hpp"
42 #include "AbstractTetrahedralMesh.hpp"
43 #include "HeartGeometryInformation.hpp"
44 #include "AbstractPerElementWriter.hpp"
45 #include "OutputFileHandler.hpp"
63 template<
unsigned SPACE_DIM>
80 const std::vector<double>& wallThickness)
const;
87 double GetFibreMaxAngle(
const c_vector<HeartRegionType, SPACE_DIM+1>& nodesRegionsForElement)
const;
110 unsigned localElementIndex,
111 c_vector<double, SPACE_DIM*SPACE_DIM>& rData);
157 const std::string& rRightVentricleFile,
158 const std::string& rLeftVentricleFile,
167 void SetApexToBase(
const c_vector<double, SPACE_DIM>& apexToBase);
void SetLogInfo(bool logInfo=true)
void SetApexToBase(const c_vector< double, SPACE_DIM > &apexToBase)
void WriteHeaderOnMaster()
c_vector< double, SPACE_DIM > mApexToBase
std::vector< double > mAveragedWallThickness
StreeterFibreGenerator(AbstractTetrahedralMesh< SPACE_DIM, SPACE_DIM > &rMesh)
double GetAveragedThicknessLocalNode(const unsigned nodeIndex, const std::vector< double > &wallThickness) const
void SetSurfaceFiles(const std::string &rEpicardiumFile, const std::string &rRightVentricleFile, const std::string &rLeftVentricleFile, bool indexFromZero)
~StreeterFibreGenerator()
double GetFibreMaxAngle(const c_vector< HeartRegionType, SPACE_DIM+1 > &nodesRegionsForElement) const
void PreWriteCalculations(OutputFileHandler &rOutputDirectory)
std::vector< double > mWallThickness
HeartGeometryInformation< SPACE_DIM > * mpGeometryInfo
void Visit(Element< SPACE_DIM, SPACE_DIM > *pElement, unsigned localElementIndex, c_vector< double, SPACE_DIM *SPACE_DIM > &rData)