OpenFCST: The open-source Fuel Cell Simulation Toolbox
|
Integration of interior face matrices. More...
Functions | |
template<int dim> | |
void | advection (FullMatrix< double > &Mii, FullMatrix< double > &Mie, FullMatrix< double > &Mei, FullMatrix< double > &Mee, 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 interior faces. | |
template<int dim> | |
void | advection (FullMatrix< double > &Mii, FullMatrix< double > &Mie, FullMatrix< double > &Mei, FullMatrix< double > &Mee, const FEFaceValuesBase< dim > &int_fe, const FEFaceValuesBase< dim > &ext_fe, const std::vector< Point< dim > > &velocity) |
Upwind flux at interior faces. | |
template<int dim> | |
void | u_times_n (std::vector< MatrixBlock< FullMatrix< double > > > &intint, std::vector< MatrixBlock< FullMatrix< double > > > &intext, std::vector< MatrixBlock< FullMatrix< double > > > &extint, std::vector< MatrixBlock< FullMatrix< double > > > &extext, const std::vector< unsigned int > &indices, const FEFaceValuesBase< dim > &int_fe, const FEFaceValuesBase< dim > &ext_fe, const FEFaceValuesBase< dim > &int_fetest, const FEFaceValuesBase< dim > &ext_fetest, double factor=1.) |
Normal flux. | |
template<int dim> | |
void | u_times_n_scaled (FullMatrix< double > &intint, FullMatrix< double > &intext, FullMatrix< double > &extint, FullMatrix< double > &extext, const FEFaceValuesBase< dim > &int_fetest, const FEFaceValuesBase< dim > &int_fe, const FEFaceValuesBase< dim > &ext_fetest, const FEFaceValuesBase< dim > &ext_fe, const std::vector< double > &int_factor, const std::vector< double > &ext_factor) |
Flux [n.u]{v}. | |
template<int dim> | |
void | div_super (FullMatrix< double > &Mii, FullMatrix< double > &Mie, FullMatrix< double > &Mei, FullMatrix< double > &Mee, const FEFaceValuesBase< dim > &int_fe, const FEFaceValuesBase< dim > &int_fetest, const FEFaceValuesBase< dim > &ext_fe, const FEFaceValuesBase< dim > &ext_fetest) |
Flux for superconvergent LDG. | |
template<int dim> | |
void | u_ni (FullMatrix< double > &Mii, FullMatrix< double > &Mie, FullMatrix< double > &Mei, FullMatrix< double > &Mee, const FEFaceValuesBase< dim > &int_fe, const FEFaceValuesBase< dim > &ext_fe, const FEFaceValuesBase< dim > &int_fetest, const FEFaceValuesBase< dim > &ext_fetest, unsigned int i) |
Jump of u times normal vector component. | |
template<int dim> | |
void | u_ni_scaled (FullMatrix< double > &intint, FullMatrix< double > &intext, FullMatrix< double > &extint, FullMatrix< double > &extext, const FEFaceValuesBase< dim > &int_fe, const FEFaceValuesBase< dim > &ext_fe, const FEFaceValuesBase< dim > &int_fetest, const FEFaceValuesBase< dim > &ext_fetest, unsigned int d, const std::vector< double > &int_factor, const std::vector< double > &ext_factor) |
Jump of u times normal vector component. | |
template<int dim> | |
void | jump (FullMatrix< double > &Mii, FullMatrix< double > &Mie, FullMatrix< double > &Mei, FullMatrix< double > &Mee, const FEFaceValuesBase< dim > &int_fe, const FEFaceValuesBase< dim > &ext_fe, const double factor2) |
Jump of u. | |
template<int dim> | |
void | jump_scaled (FullMatrix< double > &Mii, FullMatrix< double > &Mie, FullMatrix< double > &Mei, FullMatrix< double > &Mee, 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 (FullMatrix< double > &Mii, FullMatrix< double > &Mie, FullMatrix< double > &Mei, FullMatrix< double > &Mee, const FEFaceValuesBase< dim > &int_fe, const FEFaceValuesBase< dim > &ext_fe, double penalty, double int_factor=1., double ext_factor=-1.) |
Flux for the interior penalty method for the Laplacian. | |
template<int dim> | |
void | ip_scaled (FullMatrix< double > &Mii, FullMatrix< double > &Mie, FullMatrix< double > &Mei, FullMatrix< double > &Mee, const FEFaceValuesBase< dim > &int_fe, const FEFaceValuesBase< dim > &ext_fe, const std::vector< double > &factor, double penalty) |
Flux for the interior penalty method for the Laplacian with coefficient. | |
Integration of interior face matrices.
void AppShop::Matrix::Face::advection | ( | FullMatrix< double > & | Mii, |
FullMatrix< double > & | Mie, | ||
FullMatrix< double > & | Mei, | ||
FullMatrix< double > & | Mee, | ||
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 interior faces.
void AppShop::Matrix::Face::advection | ( | FullMatrix< double > & | Mii, |
FullMatrix< double > & | Mie, | ||
FullMatrix< double > & | Mei, | ||
FullMatrix< double > & | Mee, | ||
const FEFaceValuesBase< dim > & | int_fe, | ||
const FEFaceValuesBase< dim > & | ext_fe, | ||
const std::vector< Point< dim > > & | velocity | ||
) |
Upwind flux at interior faces.
void AppShop::Matrix::Face::div_super | ( | FullMatrix< double > & | Mii, |
FullMatrix< double > & | Mie, | ||
FullMatrix< double > & | Mei, | ||
FullMatrix< double > & | Mee, | ||
const FEFaceValuesBase< dim > & | int_fe, | ||
const FEFaceValuesBase< dim > & | int_fetest, | ||
const FEFaceValuesBase< dim > & | ext_fe, | ||
const FEFaceValuesBase< dim > & | ext_fetest | ||
) |
Flux for superconvergent LDG.
void AppShop::Matrix::Face::ip | ( | FullMatrix< double > & | Mii, |
FullMatrix< double > & | Mie, | ||
FullMatrix< double > & | Mei, | ||
FullMatrix< double > & | Mee, | ||
const FEFaceValuesBase< dim > & | int_fe, | ||
const FEFaceValuesBase< dim > & | ext_fe, | ||
double | penalty, | ||
double | int_factor = 1. , |
||
double | ext_factor = -1. |
||
) |
Flux for the interior penalty method for the Laplacian.
With jumping coefficients if ext_factor
is nonnegative. The penalty
should be computed for coefficient 1.
void AppShop::Matrix::Face::ip_scaled | ( | FullMatrix< double > & | Mii, |
FullMatrix< double > & | Mie, | ||
FullMatrix< double > & | Mei, | ||
FullMatrix< double > & | Mee, | ||
const FEFaceValuesBase< dim > & | int_fe, | ||
const FEFaceValuesBase< dim > & | ext_fe, | ||
const std::vector< double > & | factor, | ||
double | penalty | ||
) |
Flux for the interior penalty method for the Laplacian with coefficient.
void AppShop::Matrix::Face::jump | ( | FullMatrix< double > & | Mii, |
FullMatrix< double > & | Mie, | ||
FullMatrix< double > & | Mei, | ||
FullMatrix< double > & | Mee, | ||
const FEFaceValuesBase< dim > & | int_fe, | ||
const FEFaceValuesBase< dim > & | ext_fe, | ||
const double | factor2 | ||
) |
Jump of u.
void AppShop::Matrix::Face::jump_scaled | ( | FullMatrix< double > & | Mii, |
FullMatrix< double > & | Mie, | ||
FullMatrix< double > & | Mei, | ||
FullMatrix< double > & | Mee, | ||
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::Matrix::Face::u_ni | ( | FullMatrix< double > & | Mii, |
FullMatrix< double > & | Mie, | ||
FullMatrix< double > & | Mei, | ||
FullMatrix< double > & | Mee, | ||
const FEFaceValuesBase< dim > & | int_fe, | ||
const FEFaceValuesBase< dim > & | ext_fe, | ||
const FEFaceValuesBase< dim > & | int_fetest, | ||
const FEFaceValuesBase< dim > & | ext_fetest, | ||
unsigned int | i | ||
) |
Jump of u times normal vector component.
void AppShop::Matrix::Face::u_ni_scaled | ( | FullMatrix< double > & | intint, |
FullMatrix< double > & | intext, | ||
FullMatrix< double > & | extint, | ||
FullMatrix< double > & | extext, | ||
const FEFaceValuesBase< dim > & | int_fe, | ||
const FEFaceValuesBase< dim > & | ext_fe, | ||
const FEFaceValuesBase< dim > & | int_fetest, | ||
const FEFaceValuesBase< dim > & | ext_fetest, | ||
unsigned int | d, | ||
const std::vector< double > & | int_factor, | ||
const std::vector< double > & | ext_factor | ||
) |
Jump of u times normal vector component.
void AppShop::Matrix::Face::u_times_n | ( | std::vector< MatrixBlock< FullMatrix< double > > > & | intint, |
std::vector< MatrixBlock< FullMatrix< double > > > & | intext, | ||
std::vector< MatrixBlock< FullMatrix< double > > > & | extint, | ||
std::vector< MatrixBlock< FullMatrix< double > > > & | extext, | ||
const std::vector< unsigned int > & | indices, | ||
const FEFaceValuesBase< dim > & | int_fe, | ||
const FEFaceValuesBase< dim > & | ext_fe, | ||
const FEFaceValuesBase< dim > & | int_fetest, | ||
const FEFaceValuesBase< dim > & | ext_fetest, | ||
double | factor = 1. |
||
) |
Normal flux.
\[ -\left<\{u\}, [v n]\right> \]
void AppShop::Matrix::Face::u_times_n_scaled | ( | FullMatrix< double > & | intint, |
FullMatrix< double > & | intext, | ||
FullMatrix< double > & | extint, | ||
FullMatrix< double > & | extext, | ||
const FEFaceValuesBase< dim > & | int_fetest, | ||
const FEFaceValuesBase< dim > & | int_fe, | ||
const FEFaceValuesBase< dim > & | ext_fetest, | ||
const FEFaceValuesBase< dim > & | ext_fe, | ||
const std::vector< double > & | int_factor, | ||
const std::vector< double > & | ext_factor | ||
) |
Flux [n.u]{v}.