ASPECT
|
Static Public Member Functions | |
static void | declare_parameters (ParameterHandler &prm) |
Static Public Member Functions inherited from aspect::Plugins::InterfaceBase | |
static void | declare_parameters (ParameterHandler &prm) |
Static Public Member Functions inherited from aspect::SimulatorAccess< dim > | |
static void | get_composition_values_at_q_point (const std::vector< std::vector< double >> &composition_values, const unsigned int q, std::vector< double > &composition_values_at_q_point) |
Private Member Functions | |
double | evaluate_interpolation_function (const Vector< double > &coefficients, const Point< dim > &position) const |
std::pair< double, double > | get_interpolation_bounds (const ::Vector< double > &coefficients) const |
std::vector<::Point< dim > > | get_critical_points (const ::Vector< double > &coefficients) const |
Private Attributes | |
Interpolator::CellAverage< dim > | fallback_interpolator |
ComponentMask | use_quadratic_least_squares_limiter |
ComponentMask | use_boundary_extrapolation |
Return the properties of all particles of the given cell by using a least squares projection onto the space of quadratic functions. For more details on the implementation and properties of this plugin see: Mack Gregory and Elbridge Gerry Puckett (2020), "Improving the Accuracy and Efficiency of Hybrid Finite Element / Particle-In-Cell Methods for Modeling Geologic Processes", Abstract Submission ID# 743654 https://agu.confex.com/agu/fm20/prelim.cgi/Paper/743654 Session: A002 - Addressing Challenges for the Next Generation of Earth System Models Submitted to 2020 AGU Fall Meeting, San Francisco, CA Dec. 7-11, 2020
Definition at line 49 of file quadratic_least_squares.h.
|
overridevirtual |
Return the cell-wise evaluated properties of the quadratic least squares function at the positions.
Implements aspect::Particle::Interpolator::Interface< dim >.
|
static |
Declare the parameters this class takes through input files.
|
overridevirtual |
Read the parameters this class declares from the parameter file.
Reimplemented from aspect::Plugins::InterfaceBase.
|
private |
Calculate the value of the interpolation function at a given position
|
private |
Update the bounds of where the plane reaches by checking whether each of the critical points are in the cell and evauating their value.
|
private |
|
private |
Use the cell average interpolator in case the quadratic least squares interpolator fails due to a lack of particles.
Definition at line 82 of file quadratic_least_squares.h.
|
private |
Enables a limiting scheme that prevents overshoot and undershoot of interpolated particles based upon the range of property values found in the area of the cell.
Definition at line 89 of file quadratic_least_squares.h.
|
private |
Enables a linear extrapolation of boundary values for the limiting scheme
Definition at line 94 of file quadratic_least_squares.h.