Chi-Tech
|
#include <chi_ffinter_slice.h>
Public Member Functions | |
FieldFunctionInterpolationSlice () | |
chi_mesh::Normal & | GetNormal () |
chi_mesh::Normal & | GetBiNorm () |
chi_mesh::Normal & | GetTangent () |
chi_mesh::Vector3 & | GetPlanePoint () |
void | Initialize () override |
void | Execute () override |
std::string | GetDefaultFileBaseName () const override |
void | ExportPython (std::string base_name) override |
Public Member Functions inherited from chi_mesh::FieldFunctionInterpolation | |
FieldFunctionInterpolation (ff_interpolation::Type type) | |
std::vector< chi_physics::FieldFunctionGridBasedPtr > & | GetFieldFunctions () |
ff_interpolation::Type | Type () const |
virtual void | Initialize () |
virtual void | Execute () |
virtual std::string | GetDefaultFileBaseName () const =0 |
virtual void | ExportPython (std::string base_name)=0 |
Protected Attributes | |
chi_mesh::Normal | normal_ =chi_mesh::Normal(0.0, 0.0, 1.0) |
chi_mesh::Normal | binorm_ =chi_mesh::Normal(0.0, 1.0, 0.0) |
chi_mesh::Normal | tangent_ =chi_mesh::Normal(1.0, 0.0, 0.0) |
chi_mesh::Vector3 | plane_point_ |
Protected Attributes inherited from chi_mesh::FieldFunctionInterpolation | |
ff_interpolation::Type | type_ |
unsigned int | ref_component_ = 0 |
std::vector< chi_physics::FieldFunctionGridBasedPtr > | field_functions_ |
Private Attributes | |
std::vector< FFICellIntersection > | cell_intersections_ |
A slice based interpolation function.
This functionality needs to cater for numerous spatial discretizations. The most simple one is cell-averaged values and the more complicated ones are PWLD and then CFEM.
Cell average values requires computing the slice of the polyhedron and then computing the centroid of that cut. This can be done cell by cell.
Definition at line 37 of file chi_ffinter_slice.h.
|
inline |
Definition at line 48 of file chi_ffinter_slice.h.
|
overridevirtual |
Executes the slice interpolation.
Reimplemented from chi_mesh::FieldFunctionInterpolation.
Definition at line 11 of file chi_ffinter_slice_execute.cc.
|
overridevirtual |
Implements chi_mesh::FieldFunctionInterpolation.
Definition at line 12 of file chi_ffinter_slice_exportpython.cc.
|
inline |
Definition at line 53 of file chi_ffinter_slice.h.
|
inlineoverridevirtual |
Implements chi_mesh::FieldFunctionInterpolation.
Definition at line 63 of file chi_ffinter_slice.h.
|
inline |
Definition at line 52 of file chi_ffinter_slice.h.
|
inline |
Definition at line 55 of file chi_ffinter_slice.h.
|
inline |
Definition at line 54 of file chi_ffinter_slice.h.
|
overridevirtual |
Initializes the data structures necessary for interpolation. This is independent of the physics and hence is a routine on its own.
The first step of this initialization is to determine which cells are intersected by this plane. For polyhedrons this is evaluated tet-by-tet.
The second step is find where face-edges are intersected. This will effectively create intersection polygons.
Reimplemented from chi_mesh::FieldFunctionInterpolation.
Definition at line 22 of file chi_ffinter_slice_initialize.cc.
|
protected |
Definition at line 41 of file chi_ffinter_slice.h.
|
private |
Definition at line 46 of file chi_ffinter_slice.h.
|
protected |
Definition at line 40 of file chi_ffinter_slice.h.
|
protected |
Definition at line 43 of file chi_ffinter_slice.h.
|
protected |
Definition at line 42 of file chi_ffinter_slice.h.