hexed 0.3.0
 
Loading...
Searching...
No Matches
hexed::Ringleb_errsq Class Reference

Squared error metric for computing \(L^2\) error of Ringleb flow. More...

#include <Domain_func.hpp>

Inheritance diagram for hexed::Ringleb_errsq:
hexed::Domain_func hexed::Qpoint_func hexed::Surface_func hexed::Output_data hexed::Boundary_func hexed::Output_data

Public Member Functions

 Ringleb_errsq (double heat_rat=1.4)
 
int n_var (int n_dim) const override
 number of output variables when called on n_dim-dimensional input
 
std::string variable_name (int n_dim, int i_var) const override
 name of i_varth variable (for plotting) when called on n_dim-dimensional input
 
std::vector< double > operator() (std::vector< double > point_pos, double point_time, std::vector< double > state) const override
 
- Public Member Functions inherited from hexed::Domain_func
std::vector< double > operator() (Element &, const Basis &, int i_qpoint, double time) const override
 
std::vector< double > operator() (std::vector< double > pos, double time, std::vector< double > state, std::vector< double > outward_normal) const override
 normal is surface unit normal vector pointing out of the surface (into the domain).
 
- Public Member Functions inherited from hexed::Surface_func
std::vector< double > operator() (Boundary_connection &, int i_fqpoint, double time) const override
 

Detailed Description

Squared error metric for computing \(L^2\) error of Ringleb flow.

Computes the squared difference between the given position vector and what the position vector should be based on the state if the state were an exact solution. Computing the error in the state vector based on the position would be nicer, but that's actually kind of hard because it involves numerically finding roots of a somewhat ill-behaved function.

See also
Ringleb

Member Function Documentation

◆ n_var()

int hexed::Ringleb_errsq::n_var ( int n_dim) const
inlineoverridevirtual

number of output variables when called on n_dim-dimensional input

Implements hexed::Output_data.

◆ operator()()

std::vector< double > hexed::Ringleb_errsq::operator() ( std::vector< double > point_pos,
double point_time,
std::vector< double > state ) const
overridevirtual

Implements hexed::Domain_func.

◆ variable_name()

std::string hexed::Ringleb_errsq::variable_name ( int n_dim,
int i_var ) const
inlineoverridevirtual

name of i_varth variable (for plotting) when called on n_dim-dimensional input

Reimplemented from hexed::Output_data.


The documentation for this class was generated from the following file: