36 #include "CellBasedParabolicPdeSolver.hpp" 38 template<
unsigned DIM>
46 template<
unsigned DIM>
51 template<
unsigned DIM>
53 c_vector<double, DIM+1>& rPhi,
54 c_matrix<double, DIM, DIM+1>& rGradPhi,
56 c_vector<double, 1>& rU,
57 c_matrix<double, 1, DIM>& rGradU ,
64 template<
unsigned DIM>
66 c_vector<double, DIM+1>& rPhi,
67 c_matrix<double, DIM, DIM+1>& rGradPhi,
69 c_vector<double, 1>& rU,
70 c_matrix<double, 1, DIM>& rGradU,
74 c_matrix<double, DIM, DIM> pde_diffusion_term = this->
mpParabolicPde->ComputeDiffusionTerm(rX, pElement);
76 return prod( trans(rGradPhi), c_matrix<double, DIM, DIM+1>(prod(pde_diffusion_term, rGradPhi)) )
80 template<
unsigned DIM>
86 template<
unsigned DIM>
89 unsigned index_of_unknown = 0;
virtual double GetCurrentSolutionOrGuessValue(unsigned nodeIndex, unsigned indexOfUnknown)
void IncrementInterpolatedQuantities(double phiI, const Node< DIM > *)
void ResetInterpolatedQuantities()
AbstractLinearParabolicPde< ELEMENT_DIM, SPACE_DIM > * mpParabolicPde
virtual c_matrix< double, 1 *(DIM+1), 1 *(DIM+1)> ComputeMatrixTerm(c_vector< double, DIM+1 > &rPhi, c_matrix< double, DIM, DIM+1 > &rGradPhi, ChastePoint< DIM > &rX, c_vector< double, 1 > &rU, c_matrix< double, 1, DIM > &rGradU, Element< DIM, DIM > *pElement)
virtual c_vector< double, 1 *(DIM+1)> ComputeVectorTerm(c_vector< double, DIM+1 > &rPhi, c_matrix< double, DIM, DIM+1 > &rGradPhi, ChastePoint< DIM > &rX, c_vector< double, 1 > &rU, c_matrix< double, 1, DIM > &rGradU, Element< DIM, DIM > *pElement)
double mInterpolatedSourceTerm
static double GetPdeTimeStepInverse()
virtual ~CellBasedParabolicPdeSolver()
unsigned GetIndex() const
CellBasedParabolicPdeSolver(TetrahedralMesh< DIM, DIM > *pMesh, AbstractLinearParabolicPde< DIM, DIM > *pPde, BoundaryConditionsContainer< DIM, DIM, 1 > *pBoundaryConditions)