Class FiniteVolumeMapping

Inheritance Relationships

Base Type

Class Documentation

class FiniteVolumeMapping : public opensn::CellMapping

Cell mapping for a finite volume representation of a cell.

Public Functions

inline explicit FiniteVolumeMapping(const std::shared_ptr<MeshContinuum> grid, const Cell &cell, const Vector3 &cc, std::vector<std::vector<int>> face_node_mappings)
inline virtual double ShapeValue(int i, const Vector3 &xyz) const override

Returns the value of the required shape function at the world xyz point.

inline virtual void ShapeValues(const Vector3 &xyz, Vector<double> &shape_values) const override

Populates all the shape function values at the given world xyz point. This method is optimized to minimize reallocation of shape_values.

inline virtual Vector3 GradShapeValue(int i, const Vector3 &xyz) const override

Returns the value of the required shape function gradient at the world xyz point.

inline virtual void GradShapeValues(const Vector3 &xyz, std::vector<Vector3> &gradshape_values) const override

Populates all the shape function gradient values at the given world xyz point. This method is optimized to minimize reallocation of gradshape_values.

virtual VolumetricFiniteElementData MakeVolumetricFiniteElementData() const override

Makes the volumetric/internal finite element data for this element.

virtual SurfaceFiniteElementData MakeSurfaceFiniteElementData(size_t face_index) const override

Makes the surface finite element data for this element, at the specified face.