35 #ifndef _ABSTRACTLINEARPARABOLICPDE_HPP_
36 #define _ABSTRACTLINEARPARABOLICPDE_HPP_
39 #include <boost/serialization/base_object.hpp>
41 #include "AbstractLinearPde.hpp"
43 #include "ChastePoint.hpp"
45 #include "Element.hpp"
55 template<
unsigned ELEMENT_DIM,
unsigned SPACE_DIM = ELEMENT_DIM>
61 friend class boost::serialization::access;
68 template<
class Archive>
69 void serialize(Archive & archive,
const unsigned int version)
71 archive & boost::serialization::base_object<AbstractLinearPde<ELEMENT_DIM, SPACE_DIM> >(*this);
128 template<
unsigned ELEMENT_DIM,
unsigned SPACE_DIM>
132 return ComputeSourceTerm(rNode.
GetPoint(), u);
135 #endif //_ABSTRACTLINEARPARABOLICPDE_HPP_
void serialize(Archive &archive, const unsigned int version)
virtual c_matrix< double, SPACE_DIM, SPACE_DIM > ComputeDiffusionTerm(const ChastePoint< SPACE_DIM > &rX, Element< ELEMENT_DIM, SPACE_DIM > *pElement=NULL)=0
virtual double ComputeDuDtCoefficientFunction(const ChastePoint< SPACE_DIM > &rX)=0
AbstractLinearParabolicPde()
virtual double ComputeSourceTerm(const ChastePoint< SPACE_DIM > &rX, double u, Element< ELEMENT_DIM, SPACE_DIM > *pElement=nullptr)=0
ChastePoint< SPACE_DIM > GetPoint() const
virtual ~AbstractLinearParabolicPde()
virtual double ComputeSourceTermAtNode(const Node< SPACE_DIM > &rNode, double u)