58class ArrowTransformator;
60class TransientBCInputFileReader;
67namespace grid_generator
69class BoundaryCondition;
71class GeometryBoundaryCondition;
92 uint *
geo,
const int level)
const = 0;
93 virtual void getDimensions(
int &nx,
int &ny,
int &nz,
const int level)
const = 0;
134 int& numberOfPrecursorNodes,
size_t& numberOfQuantities,
uint& timeStepsBetweenReads,
135 real& velocityX,
real& velocityY,
real& velocityZ,
int level)
const = 0;
virtual void getGeometryValues(real *vx, real *vy, real *vz, int level) const =0
virtual SPtr< Grid > getGrid(uint level)=0
virtual uint getPressureSize(int level) const =0
virtual bool hasGeometryValues() const =0
virtual void getOffsetCF(real *xOffFc, real *yOffFc, real *zOffFc, int level)=0
virtual uint getNumberOfFluidNodesAllFeatures(uint level) const =0
virtual void getVelocityQs(real *qs[27], int level) const =0
virtual void getSurfaceLayerQs(real *qs[27], int level) const =0
virtual void getGridInterfaceIndices(uint *iCellCfc, uint *iCellCff, uint *iCellFcc, uint *iCellFcf, int level) const =0
virtual uint getADDirichletSize(int level) const =0
virtual void getFluidNodeIndicesMacroVars(uint *fluidNodeIndicesMacroVars, int level) const =0
virtual void getFluidNodeIndicesAllFeatures(uint *fluidNodeIndicesAllFeatures, int level) const =0
virtual void getStressQs(real *qs[27], int level) const =0
virtual void getSlipValues(real *normalX, real *normalY, real *normalZ, int *indices, int level) const =0
virtual void getPressureValues(real *rho, int *indices, int *neighborIndices, int level) const =0
virtual size_t getPressureBoundaryConditionDirection(uint level, uint indexInBoundaryConditionVector) const =0
virtual uint getSurfaceLayerSize(int level) const =0
virtual void sortFluidNodeIndicesApplyBodyForce(uint level)=0
virtual size_t getNumberOfADOutflowBoundaryConditions(uint level) const =0
virtual void getOffsetFC(real *xOffCf, real *yOffCf, real *zOffCf, int level)=0
virtual uint getVelocitySize(int level) const =0
virtual void getReceiveIndices(uint *sendIndices, int direction, int level)=0
virtual uint getNumberOfNodesCF(int level)=0
virtual uint getNumberOfFluidNodesBorder(unsigned int level) const =0
virtual void getGridInformations(std::vector< int > &gridX, std::vector< int > &gridY, std::vector< int > &gridZ, std::vector< int > &distX, std::vector< int > &distY, std::vector< int > &distZ)=0
virtual uint getCommunicationProcess(int direction)=0
virtual void getADOutflowQs(real *qs[27], uint level, uint indexInBoundaryConditionVector) const =0
virtual void getSlipQs(real *qs[27], int level) const =0
virtual void getFluidNodeIndices(uint *fluidNodeIndices, const int level) const =0
virtual uint getADNeumannSize(int level) const =0
virtual void addFluidNodeIndicesApplyBodyForce(const std::vector< uint > &fluidNodeIndicesApplyBodyForce, uint level)=0
virtual void addAllFluidNodeIndicesToAllFeatures(uint level)=0
virtual void getADNoFluxValues(int *indices, int level) const =0
virtual void sortFluidNodeIndicesMacroVars(uint level)=0
virtual uint getGeometrySize(int level) const =0
virtual void getADDirichletValues(real *values, real *vx, real *vy, real *vz, int *indices, int level) const =0
virtual size_t getADOutflowBoundaryConditionDirection(uint level, uint indexInBoundaryConditionVector) const =0
virtual uint getNumberOfReceiveIndices(int direction, uint level)=0
virtual size_t getSizeOfPressureBoundaryCondition(uint level, uint indexInBoundaryConditionVector) const =0
virtual void addFluidNodeIndicesAllFeatures(const std::vector< uint > &fluidNodeIndicesAllFeatures, uint level)=0
virtual uint getNumberOfGridLevels() const =0
virtual void sortFluidNodeIndicesAllFeatures(uint level)=0
virtual void addFluidNodeIndicesMacroVars(const std::vector< uint > &fluidNodeIndicesMacroVars, uint level)=0
virtual void getADNoFluxQs(real *qs[27], int level) const =0
virtual void getADFluxValues(real *normalX, real *normalY, real *normalZ, real *gradient, int *indices, int level) const =0
virtual void getDimensions(int &nx, int &ny, int &nz, const int level) const =0
virtual uint getNumberOfSendIndices(int direction, uint level)=0
virtual void getSurfaceLayerValues(real *normalX, real *normalY, real *normalZ, int *indices, real *samplingDistances, uint *samplingIndices, real *vonKarmanConstants, real *roughnessLengths, real *roughnessLengthsTemperature, real *surfaceHeatFluxes, real *surfaceTemperatures, real *heatingRates, int level) const =0
virtual uint getNumberOfFluidNodesApplyBodyForce(uint level) const =0
virtual SPtr< grid_generator::BoundaryCondition > getBoundaryCondition(SideType side, uint level) const =0
virtual void getVelocityValues(real *vx, real *vy, real *vz, int *indices, int level) const =0
virtual uint getNumberOfNodesFC(int level)=0
virtual uint getNumberOfFluidNodes(unsigned int level) const =0
virtual void getGeometryQs(real *qs[27], int level) const =0
virtual void getADNeumannValues(real *gradients, real *vx, real *vy, real *vz, int *indices, int level) const =0
virtual void getFluidNodeIndicesBorder(uint *fluidNodeIndices, const int level) const =0
virtual uint getADFluxSize(int level) const =0
virtual uint getPrecursorSize(int level) const =0
virtual SPtr< GeometryBoundaryCondition > getGeometryBoundaryCondition(uint level) const =0
virtual unsigned int getNumberOfNodes(unsigned int level) const =0
virtual void getNodeValues(real *xCoords, real *yCoords, real *zCoords, uint *neighborX, uint *neighborY, uint *neighborZ, uint *neighborNegative, uint *geo, const int level) const =0
virtual void getADFluxQs(real *qs[27], int level) const =0
virtual size_t getNumberOfPressureBoundaryConditions(uint level) const =0
virtual uint getADNoFluxSize(int level) const =0
virtual void getGeometryIndices(int *indices, int level) const =0
virtual uint getNumberOfFluidNodesMacroVars(uint level) const =0
virtual void getSendIndices(uint *sendIndices, int direction, int level)=0
virtual void findFluidNodes(bool splitDomain)=0
virtual void getPressureValues(real *density, int *indices, int *neighborIndices, uint level, uint indexInBoundaryConditionVector) const =0
virtual void getADDirichletQs(real *qs[27], int level) const =0
virtual uint getSlipSize(int level) const =0
virtual void getPressureQs(real *qs[27], int level) const =0
virtual size_t getSizeOfADOutflowBoundaryCondition(uint level, uint indexInBoundaryConditionVector) const =0
virtual uint getStressSize(int level) const =0
virtual void getStressValues(real *normalX, real *normalY, real *normalZ, int *indices, uint *samplingIndices, real *samplingDistance, real *vonKarmanConstants, real *roughnessLengths, int level) const =0
virtual void getPrecursorValues(uint *neighbor0PP, uint *neighbor0PM, uint *neighbor0MP, uint *neighbor0MM, real *weights0PP, real *weights0PM, real *weights0MP, real *weights0MM, int *indices, std::vector< SPtr< TransientBCInputFileReader > > &reader, int &numberOfPrecursorNodes, size_t &numberOfQuantities, uint &timeStepsBetweenReads, real &velocityX, real &velocityY, real &velocityZ, int level) const =0
virtual void getADOutflowValues(int *indices, int *neighborIndices, uint level, uint indexInBoundaryConditionVector) const =0
virtual void writeArrows(std::string fileName) const =0
virtual void getFluidNodeIndicesApplyBodyForce(uint *fluidNodeIndicesApplyBodyForce, int level) const =0
virtual void getPrecursorQs(real *qs[27], int level) const =0
virtual void getADNeumannQs(real *qs[27], int level) const =0
virtual void getPressureQs(real *qs[27], uint level, uint indexInBoundaryConditionVector) const =0
std::shared_ptr< T > SPtr