36#ifndef ABSTRACTPDEMODIFIER_HPP_
37#define ABSTRACTPDEMODIFIER_HPP_
41#include <boost/shared_ptr.hpp>
43#include "AbstractCellBasedSimulationModifier.hpp"
44#include "TetrahedralMesh.hpp"
45#include "AbstractLinearPde.hpp"
46#include "AbstractBoundaryCondition.hpp"
67 template<
class Archive>
68 void serialize(Archive & archive,
const unsigned int version)
70 archive & boost::serialization::base_object<AbstractCellBasedSimulationModifier<DIM,DIM> >(*this);
87 boost::shared_ptr<AbstractLinearPde<DIM,DIM> >
mpPde;
146 bool isNeumannBoundaryCondition=
true,
147 Vec solution=
nullptr);
157 boost::shared_ptr<AbstractLinearPde<DIM,DIM> >
GetPde();
#define TEMPLATED_CLASS_IS_ABSTRACT_1_UNSIGNED(T)
gcov doesn't like this file...
bool mIsNeumannBoundaryCondition
virtual void SetupSolve(AbstractCellPopulation< DIM, DIM > &rCellPopulation, std::string outputDirectory)
std::string mDependentVariableName
virtual void UpdateAtEndOfOutputTimeStep(AbstractCellPopulation< DIM, DIM > &rCellPopulation)
void OutputSimulationModifierParameters(out_stream &rParamsFile)
virtual ~AbstractPdeModifier()
boost::shared_ptr< AbstractLinearPde< DIM, DIM > > mpPde
void serialize(Archive &archive, const unsigned int version)
void SetOutputSolutionAtPdeNodes(bool outputSolutionAtPdeNodes)
void SetOutputGradient(bool outputGradient)
TetrahedralMesh< DIM, DIM > * mpFeMesh
TetrahedralMesh< DIM, DIM > * GetFeMesh() const
bool IsNeumannBoundaryCondition()
boost::shared_ptr< AbstractLinearPde< DIM, DIM > > GetPde()
bool mOutputSolutionAtPdeNodes
virtual void UpdateAtEndOfSolve(AbstractCellPopulation< DIM, DIM > &rCellPopulation)
std::string & rGetDependentVariableName()
boost::shared_ptr< AbstractBoundaryCondition< DIM > > mpBoundaryCondition
std::string mOutputDirectory
void SetDependentVariableName(const std::string &rName)
friend class boost::serialization::access
bool HasAveragedSourcePde()
void SetUpSourceTermsForAveragedSourcePde(TetrahedralMesh< DIM, DIM > *pMesh, std::map< CellPtr, unsigned > *pCellPdeElementMap=nullptr)
out_stream mpVizPdeSolutionResultsFile
virtual void UpdateAtEndOfTimeStep(AbstractCellPopulation< DIM, DIM > &rCellPopulation)=0
boost::shared_ptr< AbstractBoundaryCondition< DIM > > GetBoundaryCondition()