Public Types | Public Member Functions | Private Attributes

LCM::SurfaceBasis< EvalT, Traits > Class Template Reference

Surface Basis Evaluator. More...

#include <SurfaceBasis.hpp>

List of all members.

Public Types

typedef EvalT::ScalarT ScalarT
typedef EvalT::MeshScalarT MeshScalarT
typedef
Intrepid::FieldContainer
< ScalarT
SFC
typedef
Intrepid::FieldContainer
< MeshScalarT
MFC

Public Member Functions

 SurfaceBasis (const Teuchos::ParameterList &p, const Teuchos::RCP< Albany::Layouts > &dl)
 Constructor.
void postRegistrationSetup (typename Traits::SetupData d, PHX::FieldManager< Traits > &vm)
 Phalanx method to allocate space.
void evaluateFields (typename Traits::EvalData d)
 Implementation of physics.
void computeReferenceMidplaneCoords (const PHX::MDField< MeshScalarT, Cell, Vertex, Dim > refCoords, MFC &midplaneCoords)
 Takes the reference coordinates and computes the midplane.
void computeCurrentMidplaneCoords (const PHX::MDField< ScalarT, Cell, Vertex, Dim > currentCoords, SFC &midplaneCoords)
 Takes the current coordinates and computes the midplane.
void computeReferenceBaseVectors (const MFC &midplaneCoords, PHX::MDField< MeshScalarT, Cell, QuadPoint, Dim, Dim > basis)
 Computes Reference configuration Bases from the reference midplane.
void computeCurrentBaseVectors (const SFC &midplaneCoords, PHX::MDField< ScalarT, Cell, QuadPoint, Dim, Dim > basis)
 Computes current configuration Bases from the current midplane.
void computeDualBaseVectors (const MFC &midplaneCoords, const PHX::MDField< MeshScalarT, Cell, QuadPoint, Dim, Dim > basis, PHX::MDField< MeshScalarT, Cell, QuadPoint, Dim > normal, PHX::MDField< MeshScalarT, Cell, QuadPoint, Dim, Dim > dualBasis)
 Computes the Dual from the midplane and reference bases.
void computeJacobian (const PHX::MDField< MeshScalarT, Cell, QuadPoint, Dim, Dim > basis, const PHX::MDField< MeshScalarT, Cell, QuadPoint, Dim, Dim > dualBasis, PHX::MDField< MeshScalarT, Cell, QuadPoint > area)
 Computes the jacobian mapping - da/dA.

Private Attributes

unsigned int numDims
unsigned int numNodes
unsigned int numQPs
unsigned int numPlaneNodes
unsigned int numPlaneDims
bool needCurrentBasis
PHX::MDField< MeshScalarT,
Cell, Vertex, Dim
referenceCoords
 Input: Cordinates in the reference configuration.
Teuchos::RCP
< Intrepid::Cubature< RealType > > 
cubature
 Input: Numerical integration rule.
Teuchos::RCP< Intrepid::Basis
< RealType,
Intrepid::FieldContainer
< RealType > > > 
intrepidBasis
 Input: Finite element basis for the midplane.
Intrepid::FieldContainer
< MeshScalarT
refMidplaneCoords
 Local FieldContainer to store the reference midplaneCoords.
Intrepid::FieldContainer< ScalarTcurrentMidplaneCoords
 Local FieldContainer to store the current midplaneCoords.
PHX::MDField< MeshScalarT,
Cell, QuadPoint, Dim, Dim
refBasis
 Output: Reference basis.
PHX::MDField< MeshScalarT,
Cell, QuadPoint
refArea
 Output: Reference integration area.
PHX::MDField< MeshScalarT,
Cell, QuadPoint, Dim, Dim
refDualBasis
 Output: Reference dual basis.
PHX::MDField< MeshScalarT,
Cell, QuadPoint, Dim
refNormal
 Output: Reference normal.
PHX::MDField< ScalarT, Cell,
Vertex, Dim
currentCoords
 Optional Input: Coordinates in the current configuration.
PHX::MDField< ScalarT, Cell,
QuadPoint, Dim, Dim
currentBasis
 Optional Output: Current basis.
Intrepid::FieldContainer
< RealType
refValues
 Reference Cell FieldContainer for basis values.
Intrepid::FieldContainer
< RealType
refGrads
 Reference Cell FieldContainer for basis gradients.
Intrepid::FieldContainer
< RealType
refPoints
 Reference Cell FieldContainer for integration point locations.
Intrepid::FieldContainer
< RealType
refWeights
 Reference Cell FieldContainer for integration weights.

Detailed Description

template<typename EvalT, typename Traits>
class LCM::SurfaceBasis< EvalT, Traits >

Surface Basis Evaluator.

This evaluator computes bases for surface elements

Template Parameters:
EvalT 
Traits 

Definition at line 29 of file SurfaceBasis.hpp.


Member Typedef Documentation

template<typename EvalT , typename Traits >
typedef EvalT::ScalarT LCM::SurfaceBasis< EvalT, Traits >::ScalarT

Definition at line 33 of file SurfaceBasis.hpp.

template<typename EvalT , typename Traits >
typedef EvalT::MeshScalarT LCM::SurfaceBasis< EvalT, Traits >::MeshScalarT

Definition at line 34 of file SurfaceBasis.hpp.

template<typename EvalT , typename Traits >
typedef Intrepid::FieldContainer<ScalarT> LCM::SurfaceBasis< EvalT, Traits >::SFC

Definition at line 35 of file SurfaceBasis.hpp.

template<typename EvalT , typename Traits >
typedef Intrepid::FieldContainer<MeshScalarT> LCM::SurfaceBasis< EvalT, Traits >::MFC

Definition at line 36 of file SurfaceBasis.hpp.


Constructor & Destructor Documentation

template<typename EvalT , typename Traits >
LCM::SurfaceBasis< EvalT, Traits >::SurfaceBasis ( const Teuchos::ParameterList &  p,
const Teuchos::RCP< Albany::Layouts > &  dl 
)

Constructor.

Parameters:
[in] p Teuchos::ParameterList
[in] dl RCP to Albany::Layout

Definition at line 16 of file SurfaceBasis_Def.hpp.


Member Function Documentation

template<typename EvalT , typename Traits >
void LCM::SurfaceBasis< EvalT, Traits >::postRegistrationSetup ( typename Traits::SetupData  d,
PHX::FieldManager< Traits > &  vm 
)

Phalanx method to allocate space.

Definition at line 91 of file SurfaceBasis_Def.hpp.

template<typename EvalT , typename Traits >
void LCM::SurfaceBasis< EvalT, Traits >::evaluateFields ( typename Traits::EvalData  d  ) 

Implementation of physics.

Definition at line 106 of file SurfaceBasis_Def.hpp.

template<typename EvalT , typename Traits >
void LCM::SurfaceBasis< EvalT, Traits >::computeReferenceMidplaneCoords ( const PHX::MDField< MeshScalarT, Cell, Vertex, Dim refCoords,
MFC midplaneCoords 
)

Takes the reference coordinates and computes the midplane.

Parameters:
refCoords 
midplaneCoords 

Definition at line 134 of file SurfaceBasis_Def.hpp.

template<typename EvalT , typename Traits >
void LCM::SurfaceBasis< EvalT, Traits >::computeCurrentMidplaneCoords ( const PHX::MDField< ScalarT, Cell, Vertex, Dim currentCoords,
SFC midplaneCoords 
)

Takes the current coordinates and computes the midplane.

Parameters:
currentCoords 
midplaneCoords 

Definition at line 149 of file SurfaceBasis_Def.hpp.

template<typename EvalT , typename Traits >
void LCM::SurfaceBasis< EvalT, Traits >::computeReferenceBaseVectors ( const MFC midplaneCoords,
PHX::MDField< MeshScalarT, Cell, QuadPoint, Dim, Dim basis 
)

Computes Reference configuration Bases from the reference midplane.

Parameters:
midplaneCoords 
basis 

Definition at line 165 of file SurfaceBasis_Def.hpp.

template<typename EvalT , typename Traits >
void LCM::SurfaceBasis< EvalT, Traits >::computeCurrentBaseVectors ( const SFC midplaneCoords,
PHX::MDField< ScalarT, Cell, QuadPoint, Dim, Dim basis 
)

Computes current configuration Bases from the current midplane.

Parameters:
midplaneCoords 
basis 

Definition at line 201 of file SurfaceBasis_Def.hpp.

template<typename EvalT , typename Traits >
void LCM::SurfaceBasis< EvalT, Traits >::computeDualBaseVectors ( const MFC midplaneCoords,
const PHX::MDField< MeshScalarT, Cell, QuadPoint, Dim, Dim basis,
PHX::MDField< MeshScalarT, Cell, QuadPoint, Dim normal,
PHX::MDField< MeshScalarT, Cell, QuadPoint, Dim, Dim dualBasis 
)

Computes the Dual from the midplane and reference bases.

Parameters:
midplaneCoords 
basis 
normal 
dualBasis 

Definition at line 236 of file SurfaceBasis_Def.hpp.

template<typename EvalT , typename Traits >
void LCM::SurfaceBasis< EvalT, Traits >::computeJacobian ( const PHX::MDField< MeshScalarT, Cell, QuadPoint, Dim, Dim basis,
const PHX::MDField< MeshScalarT, Cell, QuadPoint, Dim, Dim dualBasis,
PHX::MDField< MeshScalarT, Cell, QuadPoint area 
)

Computes the jacobian mapping - da/dA.

Parameters:
basis 
dualBasis 
area 

Definition at line 275 of file SurfaceBasis_Def.hpp.


Member Data Documentation

template<typename EvalT , typename Traits >
unsigned int LCM::SurfaceBasis< EvalT, Traits >::numDims [private]

Definition at line 112 of file SurfaceBasis.hpp.

template<typename EvalT , typename Traits >
unsigned int LCM::SurfaceBasis< EvalT, Traits >::numNodes [private]

Definition at line 112 of file SurfaceBasis.hpp.

template<typename EvalT , typename Traits >
unsigned int LCM::SurfaceBasis< EvalT, Traits >::numQPs [private]

Definition at line 112 of file SurfaceBasis.hpp.

template<typename EvalT , typename Traits >
unsigned int LCM::SurfaceBasis< EvalT, Traits >::numPlaneNodes [private]

Definition at line 112 of file SurfaceBasis.hpp.

template<typename EvalT , typename Traits >
unsigned int LCM::SurfaceBasis< EvalT, Traits >::numPlaneDims [private]

Definition at line 112 of file SurfaceBasis.hpp.

template<typename EvalT , typename Traits >
bool LCM::SurfaceBasis< EvalT, Traits >::needCurrentBasis [private]

Definition at line 114 of file SurfaceBasis.hpp.

template<typename EvalT , typename Traits >
PHX::MDField<MeshScalarT,Cell,Vertex,Dim> LCM::SurfaceBasis< EvalT, Traits >::referenceCoords [private]

Input: Cordinates in the reference configuration.

Definition at line 119 of file SurfaceBasis.hpp.

template<typename EvalT , typename Traits >
Teuchos::RCP<Intrepid::Cubature<RealType> > LCM::SurfaceBasis< EvalT, Traits >::cubature [private]

Input: Numerical integration rule.

Definition at line 124 of file SurfaceBasis.hpp.

template<typename EvalT , typename Traits >
Teuchos::RCP<Intrepid::Basis<RealType, Intrepid::FieldContainer<RealType> > > LCM::SurfaceBasis< EvalT, Traits >::intrepidBasis [private]

Input: Finite element basis for the midplane.

Definition at line 129 of file SurfaceBasis.hpp.

template<typename EvalT , typename Traits >
Intrepid::FieldContainer<MeshScalarT> LCM::SurfaceBasis< EvalT, Traits >::refMidplaneCoords [private]

Local FieldContainer to store the reference midplaneCoords.

Definition at line 134 of file SurfaceBasis.hpp.

template<typename EvalT , typename Traits >
Intrepid::FieldContainer<ScalarT> LCM::SurfaceBasis< EvalT, Traits >::currentMidplaneCoords [private]

Local FieldContainer to store the current midplaneCoords.

Definition at line 139 of file SurfaceBasis.hpp.

template<typename EvalT , typename Traits >
PHX::MDField<MeshScalarT,Cell,QuadPoint,Dim,Dim> LCM::SurfaceBasis< EvalT, Traits >::refBasis [private]

Output: Reference basis.

Definition at line 144 of file SurfaceBasis.hpp.

template<typename EvalT , typename Traits >
PHX::MDField<MeshScalarT,Cell,QuadPoint> LCM::SurfaceBasis< EvalT, Traits >::refArea [private]

Output: Reference integration area.

Definition at line 149 of file SurfaceBasis.hpp.

template<typename EvalT , typename Traits >
PHX::MDField<MeshScalarT,Cell,QuadPoint,Dim,Dim> LCM::SurfaceBasis< EvalT, Traits >::refDualBasis [private]

Output: Reference dual basis.

Definition at line 154 of file SurfaceBasis.hpp.

template<typename EvalT , typename Traits >
PHX::MDField<MeshScalarT,Cell,QuadPoint,Dim> LCM::SurfaceBasis< EvalT, Traits >::refNormal [private]

Output: Reference normal.

Definition at line 159 of file SurfaceBasis.hpp.

template<typename EvalT , typename Traits >
PHX::MDField<ScalarT,Cell,Vertex,Dim> LCM::SurfaceBasis< EvalT, Traits >::currentCoords [private]

Optional Input: Coordinates in the current configuration.

Definition at line 165 of file SurfaceBasis.hpp.

template<typename EvalT , typename Traits >
PHX::MDField<ScalarT,Cell,QuadPoint,Dim,Dim> LCM::SurfaceBasis< EvalT, Traits >::currentBasis [private]

Optional Output: Current basis.

Definition at line 170 of file SurfaceBasis.hpp.

template<typename EvalT , typename Traits >
Intrepid::FieldContainer<RealType> LCM::SurfaceBasis< EvalT, Traits >::refValues [private]

Reference Cell FieldContainer for basis values.

Definition at line 175 of file SurfaceBasis.hpp.

template<typename EvalT , typename Traits >
Intrepid::FieldContainer<RealType> LCM::SurfaceBasis< EvalT, Traits >::refGrads [private]

Reference Cell FieldContainer for basis gradients.

Definition at line 180 of file SurfaceBasis.hpp.

template<typename EvalT , typename Traits >
Intrepid::FieldContainer<RealType> LCM::SurfaceBasis< EvalT, Traits >::refPoints [private]

Reference Cell FieldContainer for integration point locations.

Definition at line 185 of file SurfaceBasis.hpp.

template<typename EvalT , typename Traits >
Intrepid::FieldContainer<RealType> LCM::SurfaceBasis< EvalT, Traits >::refWeights [private]

Reference Cell FieldContainer for integration weights.

Definition at line 190 of file SurfaceBasis.hpp.


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