OpenFCST: The open-source Fuel Cell Simulation Toolbox
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Namespaces | Functions
matrix_shop_face.h File Reference

Matrix integration routines for face fluxes for standard bilinear forms. More...

#include <appframe/app_shop.h>
#include <appframe/matrix_base.h>
Include dependency graph for matrix_shop_face.h:

Go to the source code of this file.

Namespaces

namespace  AppShop
 Integration routines for matrices and residual for standard applications.
 
namespace  AppShop::Matrix
 Local integration routines for matrices.
 
namespace  AppShop::Matrix::Face
 Integration of interior face matrices.
 

Functions

template<int dim>
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.
 
template<int dim>
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.
 
template<int dim>
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.
 
template<int dim>
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}.
 
template<int dim>
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.
 
template<int dim>
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.
 
template<int dim>
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.
 
template<int dim>
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.
 
template<int dim>
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.
 
template<int dim>
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.
 
template<int dim>
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.
 

Detailed Description

Matrix integration routines for face fluxes for standard bilinear forms.