LifeV
|
#include <ETCurrentFE.hpp>
Private Types | |
typedef VectorSmall< fieldDim > | array1D_Return_Type |
typedef MatrixSmall< fieldDim, spaceDim > | matrix_Return_Type |
typedef std::vector< std::vector< array1D_Return_Type > > | array2D_vector_Type |
typedef std::vector< std::vector< matrix_Return_Type > > | array2D_matrix_Type |
typedef std::vector< std::vector< std::vector< matrix_Return_Type > > > | array_3D_matrix_Type |
typedef MatrixSmall< spaceDim, spaceDim > | matrix_d2Phi |
typedef std::vector< std::vector< std::vector< matrix_d2Phi > > > | array_d2Phi |
typedef std::vector< Real > | array1D_Type |
typedef std::vector< array1D_Type > | array2D_Type |
typedef std::vector< array2D_Type > | array3D_Type |
typedef std::vector< std::vector< array1D_Return_Type > > | arrayLaplacian_Type |
typedef std::vector< array3D_Type > | array4D_Type |
Friends | |
template<UInt dim> | |
class | ExpressionAssembly::EvaluationPhiI |
Friend to allow direct access to the raw data. More... | |
template<UInt dim> | |
class | ExpressionAssembly::EvaluationPhiJ |
Friend to allow direct access to the raw data. More... | |
template<UInt dim, UInt FSpaceDim> | |
class | ExpressionAssembly::EvaluationDphiI |
Friend to allow direct access to the raw data. More... | |
template<UInt dim, UInt FSpaceDim> | |
class | ExpressionAssembly::EvaluationDphiJ |
Friend to allow direct access to the raw data. More... | |
template<UInt dim, UInt FSpaceDim> | |
class | ExpressionAssembly::EvaluationDivI |
Friend to allow direct access to the raw data. More... | |
template<UInt dim, UInt FSpaceDim> | |
class | ExpressionAssembly::EvaluationDivJ |
Friend to allow direct access to the raw data. More... | |
template<UInt dim, UInt FSpaceDim> | |
class | ExpressionAssembly::EvaluationLaplacianI |
Friend to allow direct access to the raw data. More... | |
template<UInt dim, UInt FSpaceDim> | |
class | ExpressionAssembly::EvaluationLaplacianJ |
Friend to allow direct access to the raw data. More... | |
Static constants | |
static const UInt | S_spaceDimension = spaceDim |
Static value for the space dimension. More... | |
static const UInt | S_fieldDimension = fieldDim |
Static value for the dimension of the field (fieldDim here as it is a vectorial FE) More... | |
Constructors, destructor | |
ETCurrentFE (const ReferenceFE &refFE, const GeometricMap &geoMap, const QuadratureRule &qr) | |
Full constructor. More... | |
ETCurrentFE (const ReferenceFE &refFE, const GeometricMap &geoMap) | |
Constructor without quadrature rule. More... | |
ETCurrentFE (const ETCurrentFE< spaceDim, fieldDim > &otherFE) | |
Copy constructor. More... | |
virtual | ~ETCurrentFE () |
Destructor. More... | |
Methods | |
template<typename elementType > | |
void | update (const elementType &element, const flag_Type &flag) |
Update method. More... | |
void | showMe (std::ostream &out=std::cout) const |
ShowMe method. More... | |
Set Methods | |
void | setQuadratureRule (const QuadratureRule &qr) |
Setter for the quadrature rule. More... | |
Get Methods | |
UInt | nbFEDof () const |
Getter for the number of degrees of freedom of this element. More... | |
const array1D_Return_Type & | phi (const UInt &i, const UInt &q) const |
Getter for the values of the basis functions in the quadrature nodes in the current element. More... | |
Real | quadNode (const UInt &q, const UInt &coord) const |
Getter for the coordinates of the quadrature nodes in the current element. More... | |
Real | wDet (const UInt &q) const |
Getter for the weighted jacobian determinant (current element) More... | |
const Real & | dphi (const UInt &i, const UInt &iCoor, const UInt &dxi, const UInt &q) const |
Getter for the derivatives of the basis function in the quadrature nodes (current element) More... | |
MatrixSmall< spaceDim, 3 > const & | dphi (const UInt &i, const UInt &q) const |
Getter for the derivatives of the basis function in the quadrature nodes (current element) More... | |
const array1D_Return_Type & | divergence (const UInt &i, const UInt &q) const |
Getter for the divergence of the basis functions in the quadrature nodes in the current element. More... | |
const VectorSmall< fieldDim > & | laplacian (const UInt &i, const UInt &q) const |
Getter for the laplacian of the basis functions in the quadrature nodes in the current element. More... | |
UInt | currentId () const |
Getter for the identifier of the current element. More... | |
Private Methods | |
ETCurrentFE () | |
No default constructor. More... | |
void | operator= (const ETCurrentFE< spaceDim, fieldDim > &) |
No assignement. More... | |
void | setupInternalConstants () |
Resize all the internal containers w.r. to the stored data and compute the constant values. More... | |
template<typename ElementType > | |
void | updateCellNode (const ElementType &element) |
Update the cell nodes. More... | |
void | updateQuadNode (const UInt &iQuadPt) |
Update the quadrature nodes. More... | |
void | updateJacobian (const UInt &iQuadPt) |
Update Jacobian. More... | |
void | updateDetJacobian (const UInt &iQuadPt) |
Update DetJacobian. More... | |
void | updateInverseJacobian (const UInt &iQuadPt) |
Update InverseJacobian. More... | |
void | updateWDet (const UInt &iQuadPt) |
Update WeightedJacobian. More... | |
void | updateDphi (const UInt &iQuadPt) |
Update Dphi. More... | |
void | updateD2phi (const UInt &iQuadPt) |
Update D2phi. More... | |
void | updateDivergence (const UInt &iQuadPt) |
Update Divergence. More... | |
void | updateLaplacian (const UInt &iQuadPt) |
Update Laplacian. More... | |
ETCurrenteFE is a template class. If fieldDim the general case is treated as representing a vectorial FE (only the case where fieldDim represents a scalar FE, but this is a partial specialization of this class).
ETCurrenteFE is a template class. This is the non-specialized class used with fieldDim = 3 or 2 (using faster VectorSmall return objects)
Definition at line 9 of file ETCurrentFE.hpp.
|
private |
Definition at line 52 of file ETCurrentFE.hpp.
|
private |
Definition at line 55 of file ETCurrentFE.hpp.
|
private |
Definition at line 58 of file ETCurrentFE.hpp.
|
private |
Definition at line 61 of file ETCurrentFE.hpp.
|
private |
Definition at line 64 of file ETCurrentFE.hpp.
|
private |
Definition at line 67 of file ETCurrentFE.hpp.
|
private |
Definition at line 68 of file ETCurrentFE.hpp.
|
private |
Definition at line 289 of file ETCurrentFE.hpp.
|
private |
Definition at line 292 of file ETCurrentFE.hpp.
|
private |
Definition at line 295 of file ETCurrentFE.hpp.
|
private |
Definition at line 297 of file ETCurrentFE.hpp.
|
private |
Definition at line 300 of file ETCurrentFE.hpp.
ETCurrentFE | ( | const ReferenceFE & | refFE, |
const GeometricMap & | geoMap, | ||
const QuadratureRule & | qr | ||
) |
Full constructor.
refFE | The reference element for the FE |
geoMap | The geometric map from the reference element to the current element |
qr | The quadrature rule |
Definition at line 440 of file ETCurrentFE.hpp.
ETCurrentFE | ( | const ReferenceFE & | refFE, |
const GeometricMap & | geoMap | ||
) |
Constructor without quadrature rule.
refFE | The reference element for the FE |
geoMap | The geometric map from the reference element to the current element |
Definition at line 491 of file ETCurrentFE.hpp.
ETCurrentFE | ( | const ETCurrentFE< spaceDim, fieldDim > & | otherFE | ) |
Copy constructor.
otherFE | The currentFE to be copied |
Definition at line 542 of file ETCurrentFE.hpp.
|
virtual |
Destructor.
Definition at line 592 of file ETCurrentFE.hpp.
|
private |
No default constructor.
void update | ( | const elementType & | element, |
const flag_Type & | flag | ||
) |
Update method.
The update method computes the required quantities (indicated by the flag, see in Flags to update the ETCurrentFE) on the element.
element | The current element were to compute the values |
flag | The flag indicating the quantities to update |
Template parameters
elementType: The type of the element
Template requirements
elementType: has a id() method returning the identifier (global); has a localId() method returning the identifier (local); has a method point(UInt i) that returns the ith point.
Definition at line 603 of file ETCurrentFE.hpp.
void showMe | ( | std::ostream & | out = std::cout | ) | const |
ShowMe method.
out | Output stream were to print the informations |
Definition at line 675 of file ETCurrentFE.hpp.
void setQuadratureRule | ( | const QuadratureRule & | qr | ) |
Setter for the quadrature rule.
Beware that when this setter is called, all the internal structures have to be reshaped (according to the number of quadrature nodes).
qr | The new quadrature to use. |
Definition at line 764 of file ETCurrentFE.hpp.
|
inline |
Getter for the number of degrees of freedom of this element.
Definition at line 165 of file ETCurrentFE.hpp.
|
inline |
Getter for the values of the basis functions in the quadrature nodes in the current element.
i | The index of the basis function |
q | The index of the quadrature node |
Definition at line 176 of file ETCurrentFE.hpp.
Getter for the coordinates of the quadrature nodes in the current element.
q | The index of the quadrature node |
coord | The coordinate required |
Definition at line 190 of file ETCurrentFE.hpp.
Getter for the weighted jacobian determinant (current element)
q | The index of the quadrature point |
Definition at line 203 of file ETCurrentFE.hpp.
|
inline |
Getter for the derivatives of the basis function in the quadrature nodes (current element)
i | The index of the basis function |
iCoor | The component of the basis function to be derived |
dxi | The direction of the derivative required (0 for d/dx, 1 for d/dy...) |
q | The index of the quadrature node |
Definition at line 218 of file ETCurrentFE.hpp.
|
inline |
Getter for the derivatives of the basis function in the quadrature nodes (current element)
i | The index of the basis function |
q | The index of the quadrature node |
Definition at line 235 of file ETCurrentFE.hpp.
|
inline |
Getter for the divergence of the basis functions in the quadrature nodes in the current element.
i | The index of the basis function |
q | The index of the quadrature node |
Definition at line 249 of file ETCurrentFE.hpp.
|
inline |
Getter for the laplacian of the basis functions in the quadrature nodes in the current element.
i | The index of the basis function |
q | The index of the quadrature node |
Definition at line 265 of file ETCurrentFE.hpp.
|
inline |
Getter for the identifier of the current element.
Definition at line 278 of file ETCurrentFE.hpp.
|
private |
No assignement.
|
private |
Resize all the internal containers w.r. to the stored data and compute the constant values.
Definition at line 778 of file ETCurrentFE.hpp.
|
private |
Update the cell nodes.
Definition at line 1170 of file ETCurrentFE.hpp.
|
private |
Update the quadrature nodes.
Definition at line 954 of file ETCurrentFE.hpp.
|
private |
Update Jacobian.
Definition at line 978 of file ETCurrentFE.hpp.
|
private |
Update DetJacobian.
|
private |
Update InverseJacobian.
|
private |
Update WeightedJacobian.
Definition at line 1005 of file ETCurrentFE.hpp.
|
private |
Update Dphi.
Definition at line 1018 of file ETCurrentFE.hpp.
|
private |
Update D2phi.
Definition at line 1092 of file ETCurrentFE.hpp.
|
private |
Update Divergence.
Definition at line 1061 of file ETCurrentFE.hpp.
|
private |
Update Laplacian.
Definition at line 1134 of file ETCurrentFE.hpp.
|
friend |
Friend to allow direct access to the raw data.
Definition at line 17 of file ETCurrentFE.hpp.
|
friend |
Friend to allow direct access to the raw data.
Definition at line 21 of file ETCurrentFE.hpp.
|
friend |
Friend to allow direct access to the raw data.
Definition at line 25 of file ETCurrentFE.hpp.
|
friend |
Friend to allow direct access to the raw data.
Definition at line 29 of file ETCurrentFE.hpp.
|
friend |
Friend to allow direct access to the raw data.
Definition at line 33 of file ETCurrentFE.hpp.
|
friend |
Friend to allow direct access to the raw data.
Definition at line 37 of file ETCurrentFE.hpp.
|
friend |
Friend to allow direct access to the raw data.
Definition at line 41 of file ETCurrentFE.hpp.
|
friend |
Friend to allow direct access to the raw data.
Definition at line 45 of file ETCurrentFE.hpp.
|
static |
Static value for the space dimension.
Definition at line 76 of file ETCurrentFE.hpp.
|
static |
Static value for the dimension of the field (fieldDim here as it is a vectorial FE)
Definition at line 79 of file ETCurrentFE.hpp.
|
private |
Definition at line 349 of file ETCurrentFE.hpp.
|
private |
Definition at line 351 of file ETCurrentFE.hpp.
|
private |
Definition at line 353 of file ETCurrentFE.hpp.
|
private |
Definition at line 356 of file ETCurrentFE.hpp.
|
private |
Definition at line 358 of file ETCurrentFE.hpp.
|
private |
Definition at line 360 of file ETCurrentFE.hpp.
|
private |
Definition at line 363 of file ETCurrentFE.hpp.
|
private |
Definition at line 365 of file ETCurrentFE.hpp.
|
private |
Definition at line 368 of file ETCurrentFE.hpp.
|
private |
Definition at line 371 of file ETCurrentFE.hpp.
|
private |
Definition at line 373 of file ETCurrentFE.hpp.
|
private |
Definition at line 375 of file ETCurrentFE.hpp.
|
private |
Definition at line 377 of file ETCurrentFE.hpp.
|
private |
Definition at line 380 of file ETCurrentFE.hpp.
|
private |
Definition at line 382 of file ETCurrentFE.hpp.
|
private |
Definition at line 384 of file ETCurrentFE.hpp.
|
private |
Definition at line 386 of file ETCurrentFE.hpp.
|
private |
Definition at line 388 of file ETCurrentFE.hpp.
|
private |
Definition at line 390 of file ETCurrentFE.hpp.
|
private |
Definition at line 393 of file ETCurrentFE.hpp.
|
private |
Definition at line 395 of file ETCurrentFE.hpp.
|
private |
Definition at line 398 of file ETCurrentFE.hpp.
|
private |
Definition at line 401 of file ETCurrentFE.hpp.