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

Integration of boundary face residuals. More...

Functions

template<int dim>
void advection (Vector< double > &result, const std::vector< double > &input, const std::vector< Vector< double > > &data, unsigned int data_index, const FEFaceValuesBase< dim > &fe, const std::vector< Point< dim > > &velocity, double factor=1.)
 Upwind flux at boundary faces.
 
template<int dim>
void advection (Vector< double > &result, const std::vector< double > &input, const std::vector< double > &data, const FEFaceValuesBase< dim > &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 > &result, const VectorSlice< const std::vector< std::vector< double > > > &input, const VectorSlice< const std::vector< std::vector< double > > > &data, const FEFaceValuesBase< dim > &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_times_n (Vector< double > &result, const std::vector< double > &input, const FEFaceValuesBase< dim > &fe, const FEFaceValuesBase< dim > &fetest, double factor=1.)
 Product of solution and normal vector.
 
template<int dim>
void u_times_n (Vector< double > &result, const VectorSlice< const std::vector< std::vector< double > > > &input, const FEFaceValuesBase< dim > &fe, const FEFaceValuesBase< dim > &fetest, double factor=1.)
 Product of solution and normal vector, vector valued.
 
template<int dim>
void u_times_n_scaled (Vector< double > &result, const std::vector< double > &input, const FEFaceValuesBase< dim > &fe, const FEFaceValuesBase< dim > &fetest, const std::vector< double > &a, bool divide=false)
 Product of solution and normal vector.
 
template<int dim>
void u_dot_n (Vector< double > &result, const VectorSlice< const std::vector< std::vector< double > > > &input, const FEFaceValuesBase< dim > &fe, const FEFaceValuesBase< dim > &fetest, double factor=1.)
 Dot product of solution and normal vector.
 
template<int dim>
void u_dot_n_scaled (Vector< double > &result, const VectorSlice< const std::vector< std::vector< double > > > &input, const FEFaceValuesBase< dim > &fe, const FEFaceValuesBase< dim > &fetest, const std::vector< double > &a, bool divide=false)
 Dot product of solution and normal vector.
 
template<int dim>
void eps (Vector< double > &result, const VectorSlice< const std::vector< std::vector< double > > > &input, const FEFaceValuesBase< dim > &fe, const FEFaceValuesBase< dim > &fetest)
 Elasticity.
 
template<int dim>
void eps_div (Vector< double > &result, const VectorSlice< const std::vector< std::vector< double > > > &input, const FEFaceValuesBase< dim > &fe, const FEFaceValuesBase< dim > &fetest)
 Elasticity.
 
template<int dim>
void jump (Vector< double > &result, const std::vector< double > &input, const FEFaceValuesBase< dim > &fe, const double factor=1.)
 Boundary mass matrix.
 
template<int dim>
void jump_scaled (Vector< double > &result, const std::vector< double > &input, const FEFaceValuesBase< dim > &fe, const std::vector< double > &a, const double factor=1., bool divide=false)
 Boundary mass.
 
template<int dim>
void jump_scaled (Vector< double > &result, const std::vector< double > &input, const std::vector< Vector< double > > &data, const unsigned int data_index, const FEFaceValuesBase< dim > &fe, const std::vector< double > &factor, const double factor2=1., bool divide=false)
 Boundary jump, vector valued.
 
template<int dim>
void nitsche (Vector< double > &result, const std::vector< double > &u, const std::vector< Tensor< 1, dim > > &Du, const std::vector< double > &data, const FEFaceValuesBase< dim > &fe, double penalty, double factor=1.)
 Weak boundary condition for the Laplacian by Nitsche.
 
template<int dim>
void nitsche (Vector< double > &result, const VectorSlice< const std::vector< std::vector< double > > > &u, const VectorSlice< const std::vector< std::vector< Tensor< 1, dim > > > > &Du, const VectorSlice< const std::vector< std::vector< double > > > &data, const FEFaceValuesBase< dim > &fe, double penalty, double factor=1.)
 Weak boundary condition for the Laplacian by Nitsche for vector valued elements.
 
template<int dim>
void nitsche (Vector< double > &result, const std::vector< double > &u, const std::vector< Tensor< 1, dim > > &Du, const std::vector< Vector< double > > &data, const unsigned int data_index, const FEFaceValuesBase< dim > &fe, double penalty, double factor=1.)
 Weak boundary condition for the Laplacian by Nitsche.
 
template<int dim>
void nitsche_scaled (Vector< double > &result, const std::vector< double > &u, const std::vector< Tensor< 1, dim > > &Du, const std::vector< Vector< double > > &data, const unsigned int data_index, const FEFaceValuesBase< dim > &fe, const std::vector< double > &factor, double penalty)
 Weak boundary condition for the Laplacian by Nitsche.
 
template<int dim>
void nitsche_scaled (Vector< double > &result, const VectorSlice< const std::vector< std::vector< double > > > &u, const VectorSlice< const std::vector< std::vector< Tensor< 1, dim > > > > &Du, const std::vector< Vector< double > > &data, const unsigned int data_index, const FEFaceValuesBase< dim > &fe, const std::vector< double > &factor, double penalty)
 Weak boundary condition for the Laplacian by Nitsche.
 

Detailed Description

Integration of boundary face residuals.

Function Documentation

template<int dim>
void AppShop::Residual::Boundary::advection ( Vector< double > &  result,
const std::vector< double > &  input,
const std::vector< Vector< double > > &  data,
unsigned int  data_index,
const FEFaceValuesBase< dim > &  fe,
const std::vector< Point< dim > > &  velocity,
double  factor = 1. 
)

Upwind flux at boundary faces.

template<int dim>
void AppShop::Residual::Boundary::advection ( Vector< double > &  result,
const std::vector< double > &  input,
const std::vector< double > &  data,
const FEFaceValuesBase< dim > &  fe,
const VectorSlice< const std::vector< std::vector< double > > > &  velocity,
double  factor = 1. 
)

Upwind flux at boundary faces.

template<int dim>
void AppShop::Residual::Boundary::advection ( Vector< double > &  result,
const VectorSlice< const std::vector< std::vector< double > > > &  input,
const VectorSlice< const std::vector< std::vector< double > > > &  data,
const FEFaceValuesBase< dim > &  fe,
const VectorSlice< const std::vector< std::vector< double > > > &  velocity,
double  factor = 1. 
)

Vector valued upwind flux at boundary faces.

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

template<int dim>
void AppShop::Residual::Boundary::eps ( Vector< double > &  result,
const VectorSlice< const std::vector< std::vector< double > > > &  input,
const FEFaceValuesBase< dim > &  fe,
const FEFaceValuesBase< dim > &  fetest 
)

Elasticity.

template<int dim>
void AppShop::Residual::Boundary::eps_div ( Vector< double > &  result,
const VectorSlice< const std::vector< std::vector< double > > > &  input,
const FEFaceValuesBase< dim > &  fe,
const FEFaceValuesBase< dim > &  fetest 
)

Elasticity.

template<int dim>
void AppShop::Residual::Boundary::jump ( Vector< double > &  result,
const std::vector< double > &  input,
const FEFaceValuesBase< dim > &  fe,
const double  factor = 1. 
)

Boundary mass matrix.

\[ \left<u, v\right> \]

template<int dim>
void AppShop::Residual::Boundary::jump_scaled ( Vector< double > &  result,
const std::vector< double > &  input,
const FEFaceValuesBase< dim > &  fe,
const std::vector< double > &  a,
const double  factor = 1.,
bool  divide = false 
)

Boundary mass.

\[ \left<a u, v\right> \]

template<int dim>
void AppShop::Residual::Boundary::jump_scaled ( Vector< double > &  result,
const std::vector< double > &  input,
const std::vector< Vector< double > > &  data,
const unsigned int  data_index,
const FEFaceValuesBase< dim > &  fe,
const std::vector< double > &  factor,
const double  factor2 = 1.,
bool  divide = false 
)

Boundary jump, vector valued.

\[ \left<a (u-u^D), v\right> \]

template<int dim>
void AppShop::Residual::Boundary::nitsche ( Vector< double > &  result,
const std::vector< double > &  u,
const std::vector< Tensor< 1, dim > > &  Du,
const std::vector< double > &  data,
const FEFaceValuesBase< dim > &  fe,
double  penalty,
double  factor = 1. 
)

Weak boundary condition for the Laplacian by Nitsche.

template<int dim>
void AppShop::Residual::Boundary::nitsche ( Vector< double > &  result,
const VectorSlice< const std::vector< std::vector< double > > > &  u,
const VectorSlice< const std::vector< std::vector< Tensor< 1, dim > > > > &  Du,
const VectorSlice< const std::vector< std::vector< double > > > &  data,
const FEFaceValuesBase< dim > &  fe,
double  penalty,
double  factor = 1. 
)

Weak boundary condition for the Laplacian by Nitsche for vector valued elements.

template<int dim>
void AppShop::Residual::Boundary::nitsche ( Vector< double > &  result,
const std::vector< double > &  u,
const std::vector< Tensor< 1, dim > > &  Du,
const std::vector< Vector< double > > &  data,
const unsigned int  data_index,
const FEFaceValuesBase< dim > &  fe,
double  penalty,
double  factor = 1. 
)

Weak boundary condition for the Laplacian by Nitsche.

template<int dim>
void AppShop::Residual::Boundary::nitsche_scaled ( Vector< double > &  result,
const std::vector< double > &  u,
const std::vector< Tensor< 1, dim > > &  Du,
const std::vector< Vector< double > > &  data,
const unsigned int  data_index,
const FEFaceValuesBase< dim > &  fe,
const std::vector< double > &  factor,
double  penalty 
)

Weak boundary condition for the Laplacian by Nitsche.

template<int dim>
void AppShop::Residual::Boundary::nitsche_scaled ( Vector< double > &  result,
const VectorSlice< const std::vector< std::vector< double > > > &  u,
const VectorSlice< const std::vector< std::vector< Tensor< 1, dim > > > > &  Du,
const std::vector< Vector< double > > &  data,
const unsigned int  data_index,
const FEFaceValuesBase< dim > &  fe,
const std::vector< double > &  factor,
double  penalty 
)

Weak boundary condition for the Laplacian by Nitsche.

template<int dim>
void AppShop::Residual::Boundary::u_dot_n ( Vector< double > &  result,
const VectorSlice< const std::vector< std::vector< double > > > &  input,
const FEFaceValuesBase< dim > &  fe,
const FEFaceValuesBase< dim > &  fetest,
double  factor = 1. 
)

Dot product of solution and normal vector.

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

template<int dim>
void AppShop::Residual::Boundary::u_dot_n_scaled ( Vector< double > &  result,
const VectorSlice< const std::vector< std::vector< double > > > &  input,
const FEFaceValuesBase< dim > &  fe,
const FEFaceValuesBase< dim > &  fetest,
const std::vector< double > &  a,
bool  divide = false 
)

Dot product of solution and normal vector.

\[ \left<a \mathbf u\cdot \mathbf n, v\right> \]

template<int dim>
void AppShop::Residual::Boundary::u_times_n ( Vector< double > &  result,
const std::vector< double > &  input,
const FEFaceValuesBase< dim > &  fe,
const FEFaceValuesBase< dim > &  fetest,
double  factor = 1. 
)

Product of solution and normal vector.

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

template<int dim>
void AppShop::Residual::Boundary::u_times_n ( Vector< double > &  result,
const VectorSlice< const std::vector< std::vector< double > > > &  input,
const FEFaceValuesBase< dim > &  fe,
const FEFaceValuesBase< dim > &  fetest,
double  factor = 1. 
)

Product of solution and normal vector, vector valued.

\[ \left< u_i\mathbf n, \mathbf v\right> \quad i=1\ldots d \]

template<int dim>
void AppShop::Residual::Boundary::u_times_n_scaled ( Vector< double > &  result,
const std::vector< double > &  input,
const FEFaceValuesBase< dim > &  fe,
const FEFaceValuesBase< dim > &  fetest,
const std::vector< double > &  a,
bool  divide = false 
)

Product of solution and normal vector.

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