OpenFCST: The open-source Fuel Cell Simulation Toolbox
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Functions
AppShop::Residual::Face Namespace Reference

Integration of interior face residuals. More...

Functions

template<int dim>
void advection (Vector< double > &int_result, Vector< double > &ext_result, const std::vector< double > &int_input, const std::vector< double > &ext_input, const FEFaceValuesBase< dim > &int_fe, const FEFaceValuesBase< dim > &ext_fe, const std::vector< Point< dim > > &velocity, double factor=1.)
 Upwind flux at interior faces.
 
template<int dim>
void advection (Vector< double > &int_result, Vector< double > &ext_result, const std::vector< double > &int_input, const std::vector< double > &ext_input, const FEFaceValuesBase< dim > &int_fe, const FEFaceValuesBase< dim > &ext_fe, const VectorSlice< const std::vector< std::vector< double > > > &velocity, double factor=1.)
 Upwind flux at boundary faces.
 
template<int dim>
void advection (Vector< double > &int_result, Vector< double > &ext_result, const VectorSlice< const std::vector< std::vector< double > > > &int_input, const VectorSlice< const std::vector< std::vector< double > > > &ext_input, const FEFaceValuesBase< dim > &int_fe, const FEFaceValuesBase< dim > &ext_fe, const VectorSlice< const std::vector< std::vector< double > > > &velocity, double factor=1.)
 Vector valued upwind flux at boundary faces.
 
template<int dim>
void u_ni (Vector< double > &int_result, Vector< double > &ext_result, const std::vector< double > &int_input, const std::vector< double > &ext_input, unsigned int direction, const FEFaceValuesBase< dim > &int_fe, const FEFaceValuesBase< dim > &ext_fe, const FEFaceValuesBase< dim > &int_fetest, const FEFaceValuesBase< dim > &ext_fetest, double factor=1.)
 Normal jump.
 
template<int dim>
void u_times_n (Vector< double > &int_result, Vector< double > &ext_result, const std::vector< double > &int_input, const std::vector< double > &ext_input, const FEFaceValuesBase< dim > &int_fe, const FEFaceValuesBase< dim > &ext_fe, const FEFaceValuesBase< dim > &int_fetest, const FEFaceValuesBase< dim > &ext_fetest, double int_factor=1., double ext_factor=0)
 Vector-valued normal jump for scalar function.
 
template<int dim>
void u_dot_n (Vector< double > &int_result, Vector< double > &ext_result, const VectorSlice< const std::vector< std::vector< double > > > &int_input, const VectorSlice< const std::vector< std::vector< double > > > &ext_input, const FEFaceValuesBase< dim > &int_fe, const FEFaceValuesBase< dim > &ext_fe, const FEFaceValuesBase< dim > &int_fetest, const FEFaceValuesBase< dim > &ext_fetest, double factor=1.)
 Jump of normal component.
 
template<int dim>
void u_dot_n_scaled (Vector< double > &int_result, Vector< double > &ext_result, const VectorSlice< const std::vector< std::vector< double > > > &int_input_value, const VectorSlice< const std::vector< std::vector< double > > > &ext_input_value, const FEFaceValuesBase< dim > &int_fetest, const FEFaceValuesBase< dim > &ext_fetest, const FEFaceValuesBase< dim > &int_fe, const FEFaceValuesBase< dim > &ext_fe, const std::vector< double > &int_factor, const std::vector< double > &ext_factor)
 Jump of normal component.
 
template<int dim>
void div_super (Vector< double > &int_result, Vector< double > &ext_result, const VectorSlice< const std::vector< std::vector< double > > > &int_input, const VectorSlice< const std::vector< std::vector< double > > > &ext_input, const FEFaceValuesBase< dim > &int_fe, const FEFaceValuesBase< dim > &ext_fe, const FEFaceValuesBase< dim > &int_fetest, const FEFaceValuesBase< dim > &ext_fetest)
 Interior flux for negative divergence according to superconvergent LDG method.
 
template<int dim>
void grad_super (Vector< double > &int_result, Vector< double > &ext_result, const std::vector< double > &int_input, const std::vector< double > &ext_input, const FEFaceValuesBase< dim > &int_fe, const FEFaceValuesBase< dim > &ext_fe, const FEFaceValuesBase< dim > &int_fetest, const FEFaceValuesBase< dim > &ext_fetest)
 Interior flux for negative divergence according to superconvergent LDG method.
 
template<int dim>
void jump (Vector< double > &int_result, Vector< double > &ext_result, const std::vector< double > &int_input, const std::vector< double > &ext_input, const FEFaceValuesBase< dim > &int_fe, const FEFaceValuesBase< dim > &ext_fe, const double factor2)
 Jump of u.
 
template<int dim>
void jump_scaled (Vector< double > &int_result, Vector< double > &ext_result, const std::vector< double > &int_input, const std::vector< double > &ext_input, const FEFaceValuesBase< dim > &int_fe, const FEFaceValuesBase< dim > &ext_fe, const std::vector< double > &factor, const double factor2, bool divide=false)
 Jump of u.
 
template<int dim>
void ip (Vector< double > &int_result, Vector< double > &ext_result, const std::vector< double > &int_u, const std::vector< Tensor< 1, dim > > &int_Du, const std::vector< double > &ext_u, const std::vector< Tensor< 1, dim > > &ext_Du, const FEFaceValuesBase< dim > &int_fe, const FEFaceValuesBase< dim > &ext_fe, double penalty, double int_factor=1., double ext_factor=-1.)
 Residual flux for the interior penalty method for the Laplacian.
 
template<int dim>
void ip (Vector< double > &int_result, Vector< double > &ext_result, const VectorSlice< const std::vector< std::vector< double > > > &int_u, const VectorSlice< const std::vector< std::vector< Tensor< 1, dim > > > > &int_Du, const VectorSlice< const std::vector< std::vector< double > > > &ext_u, const VectorSlice< const std::vector< std::vector< Tensor< 1, dim > > > > &ext_Du, const FEFaceValuesBase< dim > &int_fe, const FEFaceValuesBase< dim > &ext_fe, double penalty, double int_factor=1., double ext_factor=-1.)
 Vector-valued residual flux for the interior penalty method for the Laplacian.
 
template<int dim>
void ip_scaled (Vector< double > &int_result, Vector< double > &ext_result, const std::vector< double > &int_u, const std::vector< Tensor< 1, dim > > &int_Du, const std::vector< double > &ext_u, const std::vector< Tensor< 1, dim > > &ext_Du, const FEFaceValuesBase< dim > &int_fe, const FEFaceValuesBase< dim > &ext_fe, const std::vector< double > &factor, double penalty)
 Residual flux for the interior penalty method for the Laplacian with coefficient.
 
template<int dim>
void ip_scaled (Vector< double > &int_result, Vector< double > &ext_result, const VectorSlice< const std::vector< std::vector< double > > > &int_u, const VectorSlice< const std::vector< std::vector< Tensor< 1, dim > > > > &int_Du, const VectorSlice< const std::vector< std::vector< double > > > &ext_u, const VectorSlice< const std::vector< std::vector< Tensor< 1, dim > > > > &ext_Du, const FEFaceValuesBase< dim > &int_fe, const FEFaceValuesBase< dim > &ext_fe, const std::vector< double > &factor, double penalty)
 Residual flux for the interior penalty method for the Laplacian with coefficient.
 
template<int dim>
void eps (Vector< double > &int_result, Vector< double > &ext_result, const VectorSlice< const std::vector< std::vector< double > > > &int_input, const VectorSlice< const std::vector< std::vector< double > > > &ext_input, const FEFaceValuesBase< dim > &int_fe, const FEFaceValuesBase< dim > &ext_fe, const FEFaceValuesBase< dim > &int_fetest, const FEFaceValuesBase< dim > &ext_fetest)
 Elasticity.
 
template<int dim>
void eps_div (Vector< double > &int_result, Vector< double > &ext_result, const VectorSlice< const std::vector< std::vector< double > > > &int_input, const VectorSlice< const std::vector< std::vector< double > > > &ext_input, const FEFaceValuesBase< dim > &int_fe, const FEFaceValuesBase< dim > &ext_fe, const FEFaceValuesBase< dim > &int_fetest, const FEFaceValuesBase< dim > &ext_fetest)
 Elasticity.
 

Detailed Description

Integration of interior face residuals.

Function Documentation

template<int dim>
void AppShop::Residual::Face::advection ( Vector< double > &  int_result,
Vector< double > &  ext_result,
const std::vector< double > &  int_input,
const std::vector< double > &  ext_input,
const FEFaceValuesBase< dim > &  int_fe,
const FEFaceValuesBase< dim > &  ext_fe,
const std::vector< Point< dim > > &  velocity,
double  factor = 1. 
)

Upwind flux at interior faces.

template<int dim>
void AppShop::Residual::Face::advection ( Vector< double > &  int_result,
Vector< double > &  ext_result,
const std::vector< double > &  int_input,
const std::vector< double > &  ext_input,
const FEFaceValuesBase< dim > &  int_fe,
const FEFaceValuesBase< dim > &  ext_fe,
const VectorSlice< const std::vector< std::vector< double > > > &  velocity,
double  factor = 1. 
)

Upwind flux at boundary faces.

\[ \left< u^u \mathbf w, v \mathbf n \right> \]

template<int dim>
void AppShop::Residual::Face::advection ( Vector< double > &  int_result,
Vector< double > &  ext_result,
const VectorSlice< const std::vector< std::vector< double > > > &  int_input,
const VectorSlice< const std::vector< std::vector< double > > > &  ext_input,
const FEFaceValuesBase< dim > &  int_fe,
const FEFaceValuesBase< dim > &  ext_fe,
const VectorSlice< const std::vector< std::vector< double > > > &  velocity,
double  factor = 1. 
)

Vector valued upwind flux at boundary faces.

\[ \left< u^u \mathbf w, v \mathbf n \right> \]

template<int dim>
void AppShop::Residual::Face::div_super ( Vector< double > &  int_result,
Vector< double > &  ext_result,
const VectorSlice< const std::vector< std::vector< double > > > &  int_input,
const VectorSlice< const std::vector< std::vector< double > > > &  ext_input,
const FEFaceValuesBase< dim > &  int_fe,
const FEFaceValuesBase< dim > &  ext_fe,
const FEFaceValuesBase< dim > &  int_fetest,
const FEFaceValuesBase< dim > &  ext_fetest 
)

Interior flux for negative divergence according to superconvergent LDG method.

See Cell::div().

template<int dim>
void AppShop::Residual::Face::eps ( Vector< double > &  int_result,
Vector< double > &  ext_result,
const VectorSlice< const std::vector< std::vector< double > > > &  int_input,
const VectorSlice< const std::vector< std::vector< double > > > &  ext_input,
const FEFaceValuesBase< dim > &  int_fe,
const FEFaceValuesBase< dim > &  ext_fe,
const FEFaceValuesBase< dim > &  int_fetest,
const FEFaceValuesBase< dim > &  ext_fetest 
)

Elasticity.

template<int dim>
void AppShop::Residual::Face::eps_div ( Vector< double > &  int_result,
Vector< double > &  ext_result,
const VectorSlice< const std::vector< std::vector< double > > > &  int_input,
const VectorSlice< const std::vector< std::vector< double > > > &  ext_input,
const FEFaceValuesBase< dim > &  int_fe,
const FEFaceValuesBase< dim > &  ext_fe,
const FEFaceValuesBase< dim > &  int_fetest,
const FEFaceValuesBase< dim > &  ext_fetest 
)

Elasticity.

template<int dim>
void AppShop::Residual::Face::grad_super ( Vector< double > &  int_result,
Vector< double > &  ext_result,
const std::vector< double > &  int_input,
const std::vector< double > &  ext_input,
const FEFaceValuesBase< dim > &  int_fe,
const FEFaceValuesBase< dim > &  ext_fe,
const FEFaceValuesBase< dim > &  int_fetest,
const FEFaceValuesBase< dim > &  ext_fetest 
)

Interior flux for negative divergence according to superconvergent LDG method.

See Cell::div().

template<int dim>
void AppShop::Residual::Face::ip ( Vector< double > &  int_result,
Vector< double > &  ext_result,
const std::vector< double > &  int_u,
const std::vector< Tensor< 1, dim > > &  int_Du,
const std::vector< double > &  ext_u,
const std::vector< Tensor< 1, dim > > &  ext_Du,
const FEFaceValuesBase< dim > &  int_fe,
const FEFaceValuesBase< dim > &  ext_fe,
double  penalty,
double  int_factor = 1.,
double  ext_factor = -1. 
)

Residual flux for the interior penalty method for the Laplacian.

template<int dim>
void AppShop::Residual::Face::ip ( Vector< double > &  int_result,
Vector< double > &  ext_result,
const VectorSlice< const std::vector< std::vector< double > > > &  int_u,
const VectorSlice< const std::vector< std::vector< Tensor< 1, dim > > > > &  int_Du,
const VectorSlice< const std::vector< std::vector< double > > > &  ext_u,
const VectorSlice< const std::vector< std::vector< Tensor< 1, dim > > > > &  ext_Du,
const FEFaceValuesBase< dim > &  int_fe,
const FEFaceValuesBase< dim > &  ext_fe,
double  penalty,
double  int_factor = 1.,
double  ext_factor = -1. 
)

Vector-valued residual flux for the interior penalty method for the Laplacian.

template<int dim>
void AppShop::Residual::Face::ip_scaled ( Vector< double > &  int_result,
Vector< double > &  ext_result,
const std::vector< double > &  int_u,
const std::vector< Tensor< 1, dim > > &  int_Du,
const std::vector< double > &  ext_u,
const std::vector< Tensor< 1, dim > > &  ext_Du,
const FEFaceValuesBase< dim > &  int_fe,
const FEFaceValuesBase< dim > &  ext_fe,
const std::vector< double > &  factor,
double  penalty 
)

Residual flux for the interior penalty method for the Laplacian with coefficient.

template<int dim>
void AppShop::Residual::Face::ip_scaled ( Vector< double > &  int_result,
Vector< double > &  ext_result,
const VectorSlice< const std::vector< std::vector< double > > > &  int_u,
const VectorSlice< const std::vector< std::vector< Tensor< 1, dim > > > > &  int_Du,
const VectorSlice< const std::vector< std::vector< double > > > &  ext_u,
const VectorSlice< const std::vector< std::vector< Tensor< 1, dim > > > > &  ext_Du,
const FEFaceValuesBase< dim > &  int_fe,
const FEFaceValuesBase< dim > &  ext_fe,
const std::vector< double > &  factor,
double  penalty 
)

Residual flux for the interior penalty method for the Laplacian with coefficient.

template<int dim>
void AppShop::Residual::Face::jump ( Vector< double > &  int_result,
Vector< double > &  ext_result,
const std::vector< double > &  int_input,
const std::vector< double > &  ext_input,
const FEFaceValuesBase< dim > &  int_fe,
const FEFaceValuesBase< dim > &  ext_fe,
const double  factor2 
)

Jump of u.

template<int dim>
void AppShop::Residual::Face::jump_scaled ( Vector< double > &  int_result,
Vector< double > &  ext_result,
const std::vector< double > &  int_input,
const std::vector< double > &  ext_input,
const FEFaceValuesBase< dim > &  int_fe,
const FEFaceValuesBase< dim > &  ext_fe,
const std::vector< double > &  factor,
const double  factor2,
bool  divide = false 
)

Jump of u.

template<int dim>
void AppShop::Residual::Face::u_dot_n ( Vector< double > &  int_result,
Vector< double > &  ext_result,
const VectorSlice< const std::vector< std::vector< double > > > &  int_input,
const VectorSlice< const std::vector< std::vector< double > > > &  ext_input,
const FEFaceValuesBase< dim > &  int_fe,
const FEFaceValuesBase< dim > &  ext_fe,
const FEFaceValuesBase< dim > &  int_fetest,
const FEFaceValuesBase< dim > &  ext_fetest,
double  factor = 1. 
)

Jump of normal component.

\[ ([u\cdot n], \{q\}) \]

template<int dim>
void AppShop::Residual::Face::u_dot_n_scaled ( Vector< double > &  int_result,
Vector< double > &  ext_result,
const VectorSlice< const std::vector< std::vector< double > > > &  int_input_value,
const VectorSlice< const std::vector< std::vector< double > > > &  ext_input_value,
const FEFaceValuesBase< dim > &  int_fetest,
const FEFaceValuesBase< dim > &  ext_fetest,
const FEFaceValuesBase< dim > &  int_fe,
const FEFaceValuesBase< dim > &  ext_fe,
const std::vector< double > &  int_factor,
const std::vector< double > &  ext_factor 
)

Jump of normal component.

template<int dim>
void AppShop::Residual::Face::u_ni ( Vector< double > &  int_result,
Vector< double > &  ext_result,
const std::vector< double > &  int_input,
const std::vector< double > &  ext_input,
unsigned int  direction,
const FEFaceValuesBase< dim > &  int_fe,
const FEFaceValuesBase< dim > &  ext_fe,
const FEFaceValuesBase< dim > &  int_fetest,
const FEFaceValuesBase< dim > &  ext_fetest,
double  factor = 1. 
)

Normal jump.

template<int dim>
void AppShop::Residual::Face::u_times_n ( Vector< double > &  int_result,
Vector< double > &  ext_result,
const std::vector< double > &  int_input,
const std::vector< double > &  ext_input,
const FEFaceValuesBase< dim > &  int_fe,
const FEFaceValuesBase< dim > &  ext_fe,
const FEFaceValuesBase< dim > &  int_fetest,
const FEFaceValuesBase< dim > &  ext_fetest,
double  int_factor = 1.,
double  ext_factor = 0 
)

Vector-valued normal jump for scalar function.

\[ ([u n], \{q\}) \]