PetIBM 0.5.4
Toolbox and applications of the immersed-boundary method for distributed-memory architectures
|
Base (abstract) class for different solution holders. More...
#include <solution.h>
Public Member Functions | |
SolutionBase ()=default | |
Default constructor. More... | |
SolutionBase (const type::Mesh &mesh) | |
Constructor using a Cartesian mesh. More... | |
virtual | ~SolutionBase () |
Default destructor. More... | |
virtual PetscErrorCode | destroy () |
Manually destroy data. More... | |
PetscErrorCode | printInfo () const |
Print information about the solution to standard output. More... | |
virtual PetscErrorCode | setInitialConditions (const YAML::Node &node)=0 |
Set initial conditions of the flow fields. More... | |
virtual PetscErrorCode | convert2Velocity (const Mat &Rinv)=0 |
Convert velocity fluxes to velocity components. More... | |
virtual PetscErrorCode | convert2Flux (const Mat &R)=0 |
Convert velocity components to velocity fluxes. More... | |
virtual PetscErrorCode | write (const std::string &filePath) const =0 |
Write flow field solutions to a file. More... | |
virtual PetscErrorCode | read (const std::string &filePath)=0 |
Read the flow field solutions from a file. More... | |
Public Attributes | |
PetscInt | dim |
Number of dimensions. More... | |
Vec | UGlobal |
Packed PETSc Vec object for the velocity vector field. More... | |
Vec | pGlobal |
PETSc Vec for the pressure scalar field. More... | |
std::string | info |
String containing information about the solution. More... | |
Protected Member Functions | |
virtual PetscErrorCode | init (const type::Mesh &mesh)=0 |
Initialize the flow field solutions. More... | |
Protected Attributes | |
MPI_Comm | comm |
MPI communicator. More... | |
PetscMPIInt | mpiSize |
Size of MPI communicator. More... | |
PetscMPIInt | mpiRank |
Rank of the local process. More... | |
type::Mesh | mesh |
Shared pointer to the underlying Cartesian mesh object. More... | |
Base (abstract) class for different solution holders.
Definition at line 59 of file solution.h.
|
default |
Default constructor.
|
inline |
Constructor using a Cartesian mesh.
mesh | [in] Cartesian mesh object. |
Definition at line 82 of file solution.h.
|
virtual |
Default destructor.
Definition at line 18 of file solution.cpp.
|
pure virtual |
Convert velocity components to velocity fluxes.
It assumes that UGlobal currently contains velocity components and converts (inplace) to velocity fluxes.
R | [in] Operator to convert components to fluxes. |
Implemented in petibm::solution::SolutionSimple.
|
pure virtual |
Convert velocity fluxes to velocity components.
It assumes that UGlobal currently contains velocity fluxes and converts (inplace) to velocity components.
Rinv | [in] Operator to convert fluxes to components. |
Implemented in petibm::solution::SolutionSimple.
|
virtual |
|
protectedpure virtual |
Initialize the flow field solutions.
mesh | [in] Cartesian mesh object. |
Implemented in petibm::solution::SolutionSimple.
PetscErrorCode petibm::solution::SolutionBase::printInfo | ( | ) | const |
Print information about the solution to standard output.
Definition at line 53 of file solution.cpp.
|
pure virtual |
Read the flow field solutions from a file.
Currently only supports HDF5 format.
filePath | [in] Path of the file to read from. |
Implemented in petibm::solution::SolutionSimple.
|
pure virtual |
Set initial conditions of the flow fields.
node | [in] YAML node with flow settings. |
Implemented in petibm::solution::SolutionSimple.
|
pure virtual |
Write flow field solutions to a file.
Currently only supports HDF5 format.
filePath | [in] Path of the file to write in. |
Implemented in petibm::solution::SolutionSimple.
|
protected |
MPI communicator.
Definition at line 167 of file solution.h.
PetscInt petibm::solution::SolutionBase::dim |
Number of dimensions.
Definition at line 63 of file solution.h.
std::string petibm::solution::SolutionBase::info |
String containing information about the solution.
Definition at line 72 of file solution.h.
|
protected |
Shared pointer to the underlying Cartesian mesh object.
Definition at line 176 of file solution.h.
|
protected |
Rank of the local process.
Definition at line 173 of file solution.h.
|
protected |
Size of MPI communicator.
Definition at line 170 of file solution.h.
Vec petibm::solution::SolutionBase::pGlobal |
PETSc Vec for the pressure scalar field.
Definition at line 69 of file solution.h.
Vec petibm::solution::SolutionBase::UGlobal |
Packed PETSc Vec object for the velocity vector field.
Definition at line 66 of file solution.h.