24 #ifndef ASLFDADVECTIONDIFFUSION_H
25 #define ASLFDADVECTIONDIFFUSION_H
31 class VectorOfElementsData;
32 class VectorOfElements;
38 template <
typename V>
class DataWithGhostNodes;
41 class AbstractDataWithGhostNodes;
60 class FDAdvectionDiffusion:
public SingleKernelNM
63 typedef SPDataWithGhostNodesACLData
Data;
64 typedef SPAbstractDataWithGhostNodes
Field;
67 std::vector<Data> cData;
68 std::vector<Data> cInternalData;
74 std::vector<Field> efChargeAnd;
78 Field distributionFunction;
79 bool compressibilityCorrectionFlag;
84 std::vector<acl::VectorOfElements> diffusionCoefficient;
87 virtual void postProcessing();
102 void setVelocity(Field v,
bool compressibilityCorrection=
false);
107 inline std::vector<Data> &
getData();
126 double diffustionCoeff,
127 SPAbstractDataWithGhostNodes v,
129 bool compressibilityCorrection =
false);
141 double diffustionCoeff,
153 return distributionFunction;
163 return vectorTemplate;
169 return diffusionCoefficient[i];
173 #endif // ASLFDADVECTIONDIFFUSION_H
const VectorTemplate * getVectorTemplate() const
Advanced Simulation Library.
Advanced Computational Language.
std::shared_ptr< DataWithGhostNodesACLData > SPDataWithGhostNodesACLData
void addComponent(Data c, acl::VectorOfElements &dC)
void setDiffusionCoefficient(acl::VectorOfElements d, unsigned int i=0)
void setElectricFieldParameters(Field phi, Field f1, Field f2, Field qAnd)
DataWithGhostNodes< acl::VectorOfElementsData > DataWithGhostNodesACLData
std::vector< Data > & getData()
Field getDistributionFunction()
SPFDAdvectionDiffusion generateFDAdvectionDiffusion(SPDataWithGhostNodesACLData c, double diffustionCoeff, SPAbstractDataWithGhostNodes v, const VectorTemplate *vt, bool compressibilityCorrection=false)
void setVelocity(Field v, bool compressibilityCorrection=false)
The class represents several Element.
const acl::VectorOfElements & getDiffusionCoefficient(unsigned int i=0) const
std::shared_ptr< FDAdvectionDiffusion > SPFDAdvectionDiffusion
SPDataWithGhostNodesACLData Data
void setDistributionFunction(Field f)
SPAbstractDataWithGhostNodes Field
std::shared_ptr< AbstractDataWithGhostNodes > SPAbstractDataWithGhostNodes
Defines set of vectros with several properties.
void setVectorTemplate(VectorTemplate *vT)