ug4
ug::FVGeometry< TOrder, TElem, TWorldDim, TQuadOrder >::SCV Class Reference

sub control volume structure More...

#include <fvho_geom.h>

Public Member Functions

number detJ (size_t ip) const
 Determinant of Jacobian in integration point. More...
 
const MathVector< worldDim > & global_corner (size_t co) const
 return glbal corner number i More...
 
const MathVector< worldDim > & global_grad (size_t ip, size_t sh) const
 value of global gradient of shape function i in integration point More...
 
const MathVector< worldDim > * global_grad_vector (size_t ip) const
 vector of global gradients in ip point More...
 
const MathVector< worldDim > & global_ip (size_t ip) const
 global integration point More...
 
const MathMatrix< worldDim, dim > & JTInv (size_t ip) const
 Transposed Inverse of Jacobian in integration point. More...
 
const MathVector< dim > & local_corner (size_t co) const
 return local corner number i More...
 
const MathVector< dim > & local_grad (size_t ip, size_t sh) const
 value of local gradient of shape function i in integration point More...
 
const MathVector< dim > * local_grad_vector (size_t ip) const
 vector of local gradients in ip point More...
 
const MathVector< dim > & local_ip (size_t ip) const
 local integration point of scv More...
 
size_t node_id () const
 node id that this scv is associated to More...
 
size_t num_corners () const
 number of corners, that bound the scvf More...
 
size_t num_ip () const
 number of integration points More...
 
size_t num_sh () const
 number of shape functions More...
 
 SCV ()
 
number shape (size_t ip, size_t sh) const
 value of shape function i in integration point More...
 
const numbershape_vector (size_t ip) const
 vector of shape functions in ip point More...
 
number weight (size_t ip) const
 weigth of integration point More...
 

Static Public Attributes

static const size_t nip = scv_quad_rule_type::nip
 Number of integration points. More...
 
static const size_t numCo = traits::NumCornersOfSCV
 Number of corners of scvf. More...
 

Private Attributes

size_t nodeId
 
number vDetJ [nip]
 
number vDetJMap [nip]
 
MathVector< worldDimvGlobalIP [nip]
 
MathVector< worldDimvGloPos [numCo]
 
MathMatrix< worldDim, dimvJtInv [nip]
 
MathVector< dimvLocalIP [nip]
 
MathVector< dimvLocPos [numCo]
 
MidID vMidID [numCo]
 
MathVector< worldDimvvGlobalGrad [nip][nsh]
 
MathVector< dimvvLocalGrad [nip][nsh]
 
number vvShape [nip][nsh]
 
const numbervWeight
 

Friends

class FVGeometry< TOrder, TElem, TWorldDim, TQuadOrder >
 

Detailed Description

template<int TOrder, typename TElem, int TWorldDim, int TQuadOrder = TOrder + 1>
class ug::FVGeometry< TOrder, TElem, TWorldDim, TQuadOrder >::SCV

sub control volume structure

Constructor & Destructor Documentation

◆ SCV()

template<int TOrder, typename TElem , int TWorldDim, int TQuadOrder = TOrder + 1>
ug::FVGeometry< TOrder, TElem, TWorldDim, TQuadOrder >::SCV::SCV ( )
inline

Member Function Documentation

◆ detJ()

template<int TOrder, typename TElem , int TWorldDim, int TQuadOrder = TOrder + 1>
number ug::FVGeometry< TOrder, TElem, TWorldDim, TQuadOrder >::SCV::detJ ( size_t  ip) const
inline

◆ global_corner()

template<int TOrder, typename TElem , int TWorldDim, int TQuadOrder = TOrder + 1>
const MathVector<worldDim>& ug::FVGeometry< TOrder, TElem, TWorldDim, TQuadOrder >::SCV::global_corner ( size_t  co) const
inline

◆ global_grad()

template<int TOrder, typename TElem , int TWorldDim, int TQuadOrder = TOrder + 1>
const MathVector<worldDim>& ug::FVGeometry< TOrder, TElem, TWorldDim, TQuadOrder >::SCV::global_grad ( size_t  ip,
size_t  sh 
) const
inline

◆ global_grad_vector()

template<int TOrder, typename TElem , int TWorldDim, int TQuadOrder = TOrder + 1>
const MathVector<worldDim>* ug::FVGeometry< TOrder, TElem, TWorldDim, TQuadOrder >::SCV::global_grad_vector ( size_t  ip) const
inline

vector of global gradients in ip point

◆ global_ip()

template<int TOrder, typename TElem , int TWorldDim, int TQuadOrder = TOrder + 1>
const MathVector<worldDim>& ug::FVGeometry< TOrder, TElem, TWorldDim, TQuadOrder >::SCV::global_ip ( size_t  ip) const
inline

◆ JTInv()

template<int TOrder, typename TElem , int TWorldDim, int TQuadOrder = TOrder + 1>
const MathMatrix<worldDim,dim>& ug::FVGeometry< TOrder, TElem, TWorldDim, TQuadOrder >::SCV::JTInv ( size_t  ip) const
inline

◆ local_corner()

template<int TOrder, typename TElem , int TWorldDim, int TQuadOrder = TOrder + 1>
const MathVector<dim>& ug::FVGeometry< TOrder, TElem, TWorldDim, TQuadOrder >::SCV::local_corner ( size_t  co) const
inline

◆ local_grad()

template<int TOrder, typename TElem , int TWorldDim, int TQuadOrder = TOrder + 1>
const MathVector<dim>& ug::FVGeometry< TOrder, TElem, TWorldDim, TQuadOrder >::SCV::local_grad ( size_t  ip,
size_t  sh 
) const
inline

◆ local_grad_vector()

template<int TOrder, typename TElem , int TWorldDim, int TQuadOrder = TOrder + 1>
const MathVector<dim>* ug::FVGeometry< TOrder, TElem, TWorldDim, TQuadOrder >::SCV::local_grad_vector ( size_t  ip) const
inline

◆ local_ip()

template<int TOrder, typename TElem , int TWorldDim, int TQuadOrder = TOrder + 1>
const MathVector<dim>& ug::FVGeometry< TOrder, TElem, TWorldDim, TQuadOrder >::SCV::local_ip ( size_t  ip) const
inline

◆ node_id()

template<int TOrder, typename TElem , int TWorldDim, int TQuadOrder = TOrder + 1>
size_t ug::FVGeometry< TOrder, TElem, TWorldDim, TQuadOrder >::SCV::node_id ( ) const
inline

node id that this scv is associated to

References ug::FVGeometry< TOrder, TElem, TWorldDim, TQuadOrder >::SCV::nodeId.

◆ num_corners()

template<int TOrder, typename TElem , int TWorldDim, int TQuadOrder = TOrder + 1>
size_t ug::FVGeometry< TOrder, TElem, TWorldDim, TQuadOrder >::SCV::num_corners ( ) const
inline

◆ num_ip()

◆ num_sh()

template<int TOrder, typename TElem , int TWorldDim, int TQuadOrder = TOrder + 1>
size_t ug::FVGeometry< TOrder, TElem, TWorldDim, TQuadOrder >::SCV::num_sh ( ) const
inline

◆ shape()

template<int TOrder, typename TElem , int TWorldDim, int TQuadOrder = TOrder + 1>
number ug::FVGeometry< TOrder, TElem, TWorldDim, TQuadOrder >::SCV::shape ( size_t  ip,
size_t  sh 
) const
inline

◆ shape_vector()

template<int TOrder, typename TElem , int TWorldDim, int TQuadOrder = TOrder + 1>
const number* ug::FVGeometry< TOrder, TElem, TWorldDim, TQuadOrder >::SCV::shape_vector ( size_t  ip) const
inline

◆ weight()

template<int TOrder, typename TElem , int TWorldDim, int TQuadOrder = TOrder + 1>
number ug::FVGeometry< TOrder, TElem, TWorldDim, TQuadOrder >::SCV::weight ( size_t  ip) const
inline

Friends And Related Function Documentation

◆ FVGeometry< TOrder, TElem, TWorldDim, TQuadOrder >

template<int TOrder, typename TElem , int TWorldDim, int TQuadOrder = TOrder + 1>
friend class FVGeometry< TOrder, TElem, TWorldDim, TQuadOrder >
friend

Member Data Documentation

◆ nip

template<int TOrder, typename TElem , int TWorldDim, int TQuadOrder = TOrder + 1>
const size_t ug::FVGeometry< TOrder, TElem, TWorldDim, TQuadOrder >::SCV::nip = scv_quad_rule_type::nip
static

Number of integration points.

Referenced by ug::FVGeometry< TOrder, TElem, TWorldDim, TQuadOrder >::SCV::num_ip().

◆ nodeId

template<int TOrder, typename TElem , int TWorldDim, int TQuadOrder = TOrder + 1>
size_t ug::FVGeometry< TOrder, TElem, TWorldDim, TQuadOrder >::SCV::nodeId
private

◆ numCo

template<int TOrder, typename TElem , int TWorldDim, int TQuadOrder = TOrder + 1>
const size_t ug::FVGeometry< TOrder, TElem, TWorldDim, TQuadOrder >::SCV::numCo = traits::NumCornersOfSCV
static

◆ vDetJ

template<int TOrder, typename TElem , int TWorldDim, int TQuadOrder = TOrder + 1>
number ug::FVGeometry< TOrder, TElem, TWorldDim, TQuadOrder >::SCV::vDetJ[nip]
private

◆ vDetJMap

template<int TOrder, typename TElem , int TWorldDim, int TQuadOrder = TOrder + 1>
number ug::FVGeometry< TOrder, TElem, TWorldDim, TQuadOrder >::SCV::vDetJMap[nip]
private

◆ vGlobalIP

template<int TOrder, typename TElem , int TWorldDim, int TQuadOrder = TOrder + 1>
MathVector<worldDim> ug::FVGeometry< TOrder, TElem, TWorldDim, TQuadOrder >::SCV::vGlobalIP[nip]
private

◆ vGloPos

template<int TOrder, typename TElem , int TWorldDim, int TQuadOrder = TOrder + 1>
MathVector<worldDim> ug::FVGeometry< TOrder, TElem, TWorldDim, TQuadOrder >::SCV::vGloPos[numCo]
private

◆ vJtInv

template<int TOrder, typename TElem , int TWorldDim, int TQuadOrder = TOrder + 1>
MathMatrix<worldDim,dim> ug::FVGeometry< TOrder, TElem, TWorldDim, TQuadOrder >::SCV::vJtInv[nip]
private

◆ vLocalIP

template<int TOrder, typename TElem , int TWorldDim, int TQuadOrder = TOrder + 1>
MathVector<dim> ug::FVGeometry< TOrder, TElem, TWorldDim, TQuadOrder >::SCV::vLocalIP[nip]
private

◆ vLocPos

template<int TOrder, typename TElem , int TWorldDim, int TQuadOrder = TOrder + 1>
MathVector<dim> ug::FVGeometry< TOrder, TElem, TWorldDim, TQuadOrder >::SCV::vLocPos[numCo]
private

◆ vMidID

template<int TOrder, typename TElem , int TWorldDim, int TQuadOrder = TOrder + 1>
MidID ug::FVGeometry< TOrder, TElem, TWorldDim, TQuadOrder >::SCV::vMidID[numCo]
private

◆ vvGlobalGrad

template<int TOrder, typename TElem , int TWorldDim, int TQuadOrder = TOrder + 1>
MathVector<worldDim> ug::FVGeometry< TOrder, TElem, TWorldDim, TQuadOrder >::SCV::vvGlobalGrad[nip][nsh]
private

◆ vvLocalGrad

template<int TOrder, typename TElem , int TWorldDim, int TQuadOrder = TOrder + 1>
MathVector<dim> ug::FVGeometry< TOrder, TElem, TWorldDim, TQuadOrder >::SCV::vvLocalGrad[nip][nsh]
private

◆ vvShape

template<int TOrder, typename TElem , int TWorldDim, int TQuadOrder = TOrder + 1>
number ug::FVGeometry< TOrder, TElem, TWorldDim, TQuadOrder >::SCV::vvShape[nip][nsh]
private

◆ vWeight

template<int TOrder, typename TElem , int TWorldDim, int TQuadOrder = TOrder + 1>
const number* ug::FVGeometry< TOrder, TElem, TWorldDim, TQuadOrder >::SCV::vWeight
private

The documentation for this class was generated from the following file: