#include <fieldDescription.hpp>
Public Member Functions | |
FieldDescription (std::string name, const std::string &prefix, const std::vector< std::string > &components, FieldLocation location, FieldType type, std::shared_ptr< domain::Region >={}, const std::shared_ptr< parameters::Parameters > &={}, std::vector< std::string > tags={}) | |
void | DecompressComponents (PetscInt dim) |
std::vector< std::shared_ptr< FieldDescription > > | GetFields () override |
virtual PetscObject | CreatePetscField (DM dm) const |
std::shared_ptr< FieldDescription > | Specialize (FieldType typeIn, std::shared_ptr< domain::Region > regionIn, std::shared_ptr< parameters::Parameters > optionsIn={}, std::vector< std::string > tagsIn={}) |
Public Attributes | |
const std::string | name |
const std::string | prefix |
std::vector< std::string > | components = {"_"} |
enum FieldLocation | location = FieldLocation::SOL |
enum FieldType | type = FieldType::FEM |
const std::shared_ptr< domain::Region > | region |
const std::vector< std::string > | tags |
Static Public Attributes | |
static const std::string | DIMENSION = "_DIMENSION_" |
static const std::vector< std::string > | ONECOMPONENT = {"_"} |
Describes the necessary information to produce a field in the domain/dm
|
virtual |
Create the petsc field used by the dm
dm |
void ablate::domain::FieldDescription::DecompressComponents | ( | PetscInt | dim | ) |
Public function that will cause the components to expand or decompress based upon the number of dims
|
overridevirtual |
Allow a single FieldDescription to report it self allowing FieldDescription to be used as FieldDescriptor
Implements ablate::domain::FieldDescriptor.
|
inline |
public configure to set the options after creation
optionsIn |