Class ExtruderMeshGenerator

Inheritance Relationships

Base Type

Class Documentation

class ExtruderMeshGenerator : public opensn::MeshGenerator

Mesh generator that extrudes 2D geometry into 3D by stacking layers.

Extrusion layers are specified using an ExtrusionLayer specification which takes either pairs of parameters: Pair A = “n” and “z”, or Pair B = “n” and “h”. When pair A is used then the layer heights h will be computed automatically. Vice versa, when pair B is used then the z-levels will be computed automatically. Layers can be specified with a mixture of Pair A and Pair B. For example: Two main layers, one specified using a height, and the other specified using a z-level.

Public Functions

explicit ExtruderMeshGenerator(const InputParameters &params)
virtual std::shared_ptr<UnpartitionedMesh> GenerateUnpartitionedMesh(std::shared_ptr<UnpartitionedMesh> input_umesh) override

Virtual method to generate the unpartitioned mesh for the next step.

Default behavior here is to return the input umesh unaltered.

Public Static Functions

static InputParameters GetInputParameters()
static std::shared_ptr<ExtruderMeshGenerator> Create(const ParameterBlock &params)

Protected Attributes

const std::string top_boundary_name_
const std::string bottom_boundary_name_
std::vector<ExtrusionLayer> layers_