Public Member Functions | |
const std::string & | GetName () const |
DM & | GetDM () noexcept |
Vec | GetSolutionVector () |
void | RegisterField (const ablate::domain::FieldDescription &fieldDescription) |
PetscInt | GetDimensions () const noexcept |
void | InitializeSubDomains (const std::vector< std::shared_ptr< solver::Solver >> &solvers={}, const std::shared_ptr< ablate::domain::Initializer > &initializations={}, const std::vector< std::shared_ptr< mathFunctions::FieldFunction >> &={}) |
void | ProjectFieldFunctions (const std::vector< std::shared_ptr< mathFunctions::FieldFunction >> &fieldFunctions, Vec globVec, PetscReal time=0.0) |
std::shared_ptr< SubDomain > | GetSubDomain (const std::shared_ptr< Region > &name) const |
std::vector< std::weak_ptr< io::Serializable > > | GetSerializableSubDomains () |
const Field & | GetField (int fieldId) const |
const Field & | GetField (const std::string_view &fieldName) const |
const std::vector< Field > & | GetFields () const |
bool | CheckFieldValues (Vec globSourceVector=nullptr) |
Static Public Attributes | |
static const std::string | solution_vector_name = "solution" |
The name of the solution field vector. | |
static const std::string | aux_vector_name = "aux" |
The name of the aux field vector. | |
Protected Member Functions | |
Domain (DM dm, std::string name, std::vector< std::shared_ptr< FieldDescriptor >>, std::vector< std::shared_ptr< modifiers::Modifier >> modifiers, const std::shared_ptr< parameters::Parameters > &options={}, bool setFromOptions=true) | |
Protected Attributes | |
DM | dm |
bool ablate::domain::Domain::CheckFieldValues | ( | Vec | globSourceVector = nullptr | ) |
checks check point in this domain for nan/inf in the solution aux vectors
globSourceVector | optional source vector to also check |
|
inline |
returns the field by global id
fieldId |
|
inline |
returns all of the fields
fieldId |
std::vector< std::weak_ptr< ablate::io::Serializable > > ablate::domain::Domain::GetSerializableSubDomains | ( | ) |
Provide a list of serialize subDomains
|
inline |
Returns access to the global solution field
std::shared_ptr< ablate::domain::SubDomain > ablate::domain::Domain::GetSubDomain | ( | const std::shared_ptr< Region > & | name | ) | const |
return the shared pointer for this subdomain
name |
void ablate::domain::Domain::InitializeSubDomains | ( | const std::vector< std::shared_ptr< solver::Solver >> & | solvers = {} , |
const std::shared_ptr< ablate::domain::Initializer > & | initializations = {} , |
||
const std::vector< std::shared_ptr< mathFunctions::FieldFunction >> & | exactSolutions = {} |
||
) |
Setup the local data storage
solvers | |
initializations |
void ablate::domain::Domain::ProjectFieldFunctions | ( | const std::vector< std::shared_ptr< mathFunctions::FieldFunction >> & | fieldFunctions, |
Vec | globVec, | ||
PetscReal | time = 0.0 |
||
) |
project the list of field function into the provided global vector
fieldFunctions | |
globVec |
void ablate::domain::Domain::RegisterField | ( | const ablate::domain::FieldDescription & | fieldDescription | ) |
Register the field with the dm
fieldDescription |