OpenFCST: The open-source Fuel Cell Simulation Toolbox
|
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. | |
Integration of interior face residuals.
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.
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> \]
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> \]
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().
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.
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.
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().
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.
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.
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.
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.
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.
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.
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\}) \]
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.
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.
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\}) \]