Public Member Functions | Protected Attributes | Private Types | Private Member Functions | Private Attributes

AlbPUMI::FMDBDiscretization< Output > Class Template Reference

#include <AlbPUMI_FMDBDiscretization.hpp>

Inheritance diagram for AlbPUMI::FMDBDiscretization< Output >:
Inheritance graph
[legend]
Collaboration diagram for AlbPUMI::FMDBDiscretization< Output >:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 FMDBDiscretization (Teuchos::RCP< AlbPUMI::FMDBMeshStruct > fmdbMeshStruct, const Teuchos::RCP< const Epetra_Comm > &comm, const Teuchos::RCP< Piro::MLRigidBodyModes > &rigidBodyModes=Teuchos::null)
 Constructor.
 ~FMDBDiscretization ()
 Destructor.
Teuchos::RCP< const Epetra_Map > getMap () const
 Get DOF map.
Teuchos::RCP< const Epetra_Map > getOverlapMap () const
 Get overlapped DOF map.
Teuchos::RCP< const
Epetra_CrsGraph > 
getJacobianGraph () const
 Get Jacobian graph.
Teuchos::RCP< const
Epetra_CrsGraph > 
getOverlapJacobianGraph () const
 Get overlap Jacobian graph.
Teuchos::RCP< const Epetra_Map > getNodeMap () const
 Get Node map.
Teuchos::RCP< const Epetra_Map > getOverlapNodeMap () const
 Get Overlap Node map.
void setupMLCoords ()
 Process coords for ML.
const Albany::NodeSetListgetNodeSets () const
 Get Node set lists (typedef in Albany_AbstractDiscretization.hpp).
const Albany::NodeSetCoordListgetNodeSetCoords () const
const Albany::SideSetListgetSideSets (const int workset) const
 Get Side set lists (typedef in Albany_AbstractDiscretization.hpp).
Albany::WsLIDListgetElemGIDws ()
 Get connectivity map from elementGID to workset.
const Albany::WorksetArray
< Teuchos::ArrayRCP
< Teuchos::ArrayRCP
< Teuchos::ArrayRCP< int >
> > >::type & 
getWsElNodeEqID () const
 Get map from (Ws, El, Local Node) -> NodeLID.
const Albany::WorksetArray
< Teuchos::ArrayRCP
< Teuchos::ArrayRCP< int >
> >::type & 
getWsElNodeID () const
Teuchos::ArrayRCP< double > & getCoordinates () const
 Retrieve coodinate vector (num_used_nodes * 3).
const Albany::WorksetArray
< Teuchos::ArrayRCP
< Teuchos::ArrayRCP< double * >
> >::type & 
getCoords () const
const Albany::WorksetArray
< Teuchos::ArrayRCP
< Teuchos::ArrayRCP< double >
> >::type & 
getSurfaceHeight () const
const Albany::WorksetArray
< Teuchos::ArrayRCP< double >
>::type & 
getTemperature () const
const Albany::WorksetArray
< Teuchos::ArrayRCP
< Teuchos::ArrayRCP< double >
> >::type & 
getBasalFriction () const
const Albany::WorksetArray
< Teuchos::ArrayRCP
< Teuchos::ArrayRCP< double >
> >::type & 
getThickness () const
const Albany::WorksetArray
< Teuchos::ArrayRCP
< Teuchos::ArrayRCP< double * >
> >::type & 
getSurfaceVelocity () const
const Albany::WorksetArray
< Teuchos::ArrayRCP
< Teuchos::ArrayRCP< double * >
> >::type & 
getVelocityRMS () const
const Albany::WorksetArray
< Teuchos::ArrayRCP< double >
>::type & 
getFlowFactor () const
void printCoords () const
 Print coords for debugging.
void debugMeshWriteNative (const Epetra_Vector &sol, const char *filename)
void debugMeshWrite (const Epetra_Vector &sol, const char *filename)
int getNumDim () const
 Get number of spatial dimensions.
virtual Teuchos::RCP< const
Epetra_Comm > 
getComm () const
int getNumEq () const
 Get number of total DOFs per node.
Albany::StateArraysgetStateArrays ()
const Albany::WorksetArray
< std::string >::type & 
getWsEBNames () const
 Retrieve Vector (length num worksets) of element block names.
const Albany::WorksetArray
< int >::type & 
getWsPhysIndex () const
 Retrieve Vector (length num worksets) of physics set index.
void writeSolution (const Epetra_Vector &soln, const double time, const bool overlapped=false)
 Write the solution to the output file.
Teuchos::RCP< Epetra_Vector > getSolutionField () const
 Get solution vector from mesh database.
void setResidualField (const Epetra_Vector &residual)
 Set the residual field for output.
Teuchos::RCP
< AlbPUMI::FMDBMeshStruct
getFMDBMeshStruct ()
Teuchos::RCP
< Albany::AbstractMeshStruct
getMeshStruct () const
bool hasRestartSolution () const
 Flag if solution has a restart values -- used in Init Cond.
double restartDataTime () const
 If restarting, convenience function to return restart data time.
virtual bool supportsMOR () const
 FMDB does not support MOR.
void updateMesh ()
void getOwned_xyz (double **x, double **y, double **z, double **rbm, int &nNodes, int numPDEs, int numScalar, int nullSpaceDim)
 Accessor function to get coordinates for ML. Memory controlled here.
void transformMesh ()
int getDOF (const int inode, const int eq) const
int getOwnedDOF (const int inode, const int eq) const
int getOverlapDOF (const int inode, const int eq) const
int getGlobalDOF (const int inode, const int eq) const
void setField (const char *name, const Epetra_Vector &data, bool overlapped, int offset=0)
void setSplitFields (std::vector< std::string > names, std::vector< int > indices, const Epetra_Vector &data, bool overlapped)
void getField (const char *name, Epetra_Vector &data, bool overlapped, int offset=0) const
void getSplitFields (std::vector< std::string > names, std::vector< int > indices, Epetra_Vector &data, bool overlapped) const
void reNameExodusOutput (const std::string &str)

Protected Attributes

Output meshOutput
 Output object.
Teuchos::RCP< const Epetra_Comm > comm
 Stk Mesh Objects.
Teuchos::RCP< Epetra_Map > node_map
 Node map.
Teuchos::RCP< Epetra_Map > map
 Unknown Map.
Teuchos::RCP< Epetra_Map > overlap_map
 Overlapped unknown map, and node map.
Teuchos::RCP< Epetra_Map > overlap_node_map
Teuchos::RCP< Epetra_CrsGraph > graph
 Jacobian matrix graph.
Teuchos::RCP< Epetra_CrsGraph > overlap_graph
 Overlapped Jacobian matrix graph.
const unsigned int neq
 Number of equations (and unknowns) per node.
Albany::NodeSetList nodeSets
 node sets stored as std::map(string ID, int vector of GIDs)
Albany::NodeSetCoordList nodeSetCoords
std::vector< Albany::SideSetListsideSets
 side sets stored as std::map(string ID, SideArray classes) per workset (std::vector across worksets)
Albany::WorksetArray
< Teuchos::ArrayRCP
< Teuchos::ArrayRCP
< Teuchos::ArrayRCP< int >
> > >::type 
wsElNodeEqID
 Connectivity array [workset, element, local-node, Eq] => LID.
Albany::WorksetArray
< Teuchos::ArrayRCP
< Teuchos::ArrayRCP< int >
> >::type 
wsElNodeID
Teuchos::ArrayRCP< double > coordinates
Albany::WorksetArray
< std::string >::type 
wsEBNames
Albany::WorksetArray< int >::type wsPhysIndex
Albany::WorksetArray
< Teuchos::ArrayRCP
< Teuchos::ArrayRCP< double * >
> >::type 
coords
Albany::WorksetArray
< Teuchos::ArrayRCP
< Teuchos::ArrayRCP< double >
> >::type 
sHeight
Albany::WorksetArray
< Teuchos::ArrayRCP< double >
>::type 
temperature
Albany::WorksetArray
< Teuchos::ArrayRCP
< Teuchos::ArrayRCP< double >
> >::type 
basalFriction
Albany::WorksetArray
< Teuchos::ArrayRCP
< Teuchos::ArrayRCP< double >
> >::type 
thickness
Albany::WorksetArray
< Teuchos::ArrayRCP
< Teuchos::ArrayRCP< double * >
> >::type 
surfaceVelocity
Albany::WorksetArray
< Teuchos::ArrayRCP
< Teuchos::ArrayRCP< double * >
> >::type 
velocityRMS
Albany::WorksetArray
< Teuchos::ArrayRCP< double >
>::type 
flowFactor
Albany::WsLIDList elemGIDws
 Connectivity map from elementGID to workset and LID in workset.
Albany::StateArrays stateArrays
apf::DynamicArray< apf::Node > nodes
 list of all overlap nodes, saved for setting solution
int numOwnedNodes
 Number of elements on this processor.
int numOverlapNodes
int numGlobalNodes
double * xx
double * yy
double * zz
double * rr
bool allocated_xyz
Teuchos::RCP
< AlbPUMI::FMDBMeshStruct
fmdbMeshStruct
bool interleavedOrdering
std::vector< std::vector
< apf::MeshEntity * > > 
buckets
std::map< std::string,
std::vector< double > > 
nodeset_node_coords
Teuchos::RCP
< Piro::MLRigidBodyModes > 
rigidBodyModes
int outputInterval

Private Types

enum  TRANSFORMTYPE { NONE, ISMIP_HOM_TEST_A }

Private Member Functions

 FMDBDiscretization (const FMDBDiscretization &)
 Private to prohibit copying.
FMDBDiscretizationoperator= (const FMDBDiscretization &)
 Private to prohibit copying.
void setSolutionField (const Epetra_Vector &soln)
int nonzeroesPerRow (const int neq) const
double monotonicTimeLabel (const double time)
void computeOwnedNodesAndUnknowns ()
 Process FMDB mesh for Owned nodal quantitites.
void computeOverlapNodesAndUnknowns ()
 Process FMDB mesh for Overlap nodal quantitites.
void computeGraphs ()
 Process FMDB mesh for CRS Graphs.
void computeWorksetInfo ()
 Process FMDB mesh for Workset/Bucket Info.
void computeNodeSets ()
 Process FMDB mesh for NodeSets.
void computeSideSets ()
 Process FMDB mesh for SideSets.
void copyQPScalarToAPF (unsigned nqp, QPData< double, 2 > &state, apf::Field *f)
 Transfer QPData to APF.
void copyQPVectorToAPF (unsigned nqp, QPData< double, 3 > &state, apf::Field *f)
void copyQPTensorToAPF (unsigned nqp, QPData< double, 4 > &state, apf::Field *f)
void copyQPStatesToAPF ()
void removeQPStatesFromAPF ()

Private Attributes

std::vector< std::string > solNames
std::vector< std::string > resNames
std::vector< int > solIndex
Teuchos::RCP
< Teuchos::FancyOStream > 
out
 Call stk_io for creating exodus output file.
double previous_time_label
TRANSFORMTYPE transform_type

Detailed Description

template<class Output>
class AlbPUMI::FMDBDiscretization< Output >

Definition at line 30 of file AlbPUMI_FMDBDiscretization.hpp.


Member Enumeration Documentation

template<class Output >
enum AlbPUMI::FMDBDiscretization::TRANSFORMTYPE [private]
Enumerator:
NONE 
ISMIP_HOM_TEST_A 

Definition at line 231 of file AlbPUMI_FMDBDiscretization.hpp.


Constructor & Destructor Documentation

template<class Output >
AlbPUMI::FMDBDiscretization< Output >::FMDBDiscretization ( Teuchos::RCP< AlbPUMI::FMDBMeshStruct fmdbMeshStruct,
const Teuchos::RCP< const Epetra_Comm > &  comm,
const Teuchos::RCP< Piro::MLRigidBodyModes > &  rigidBodyModes = Teuchos::null 
)

Constructor.

Definition at line 26 of file AlbPUMI_FMDBDiscretization_Def.hpp.

template<class Output >
AlbPUMI::FMDBDiscretization< Output >::~FMDBDiscretization (  ) 

Destructor.

Definition at line 60 of file AlbPUMI_FMDBDiscretization_Def.hpp.

template<class Output >
AlbPUMI::FMDBDiscretization< Output >::FMDBDiscretization ( const FMDBDiscretization< Output > &   )  [private]

Private to prohibit copying.


Member Function Documentation

template<class Output >
Teuchos::RCP< const Epetra_Map > AlbPUMI::FMDBDiscretization< Output >::getMap (  )  const [virtual]

Get DOF map.

Implements Albany::AbstractDiscretization.

Definition at line 66 of file AlbPUMI_FMDBDiscretization_Def.hpp.

template<class Output >
Teuchos::RCP< const Epetra_Map > AlbPUMI::FMDBDiscretization< Output >::getOverlapMap (  )  const [virtual]

Get overlapped DOF map.

Implements Albany::AbstractDiscretization.

Definition at line 73 of file AlbPUMI_FMDBDiscretization_Def.hpp.

template<class Output >
Teuchos::RCP< const Epetra_CrsGraph > AlbPUMI::FMDBDiscretization< Output >::getJacobianGraph (  )  const [virtual]

Get Jacobian graph.

Implements Albany::AbstractDiscretization.

Definition at line 80 of file AlbPUMI_FMDBDiscretization_Def.hpp.

template<class Output >
Teuchos::RCP< const Epetra_CrsGraph > AlbPUMI::FMDBDiscretization< Output >::getOverlapJacobianGraph (  )  const [virtual]

Get overlap Jacobian graph.

Implements Albany::AbstractDiscretization.

Definition at line 87 of file AlbPUMI_FMDBDiscretization_Def.hpp.

template<class Output >
Teuchos::RCP< const Epetra_Map > AlbPUMI::FMDBDiscretization< Output >::getNodeMap (  )  const [virtual]

Get Node map.

Implements Albany::AbstractDiscretization.

Definition at line 94 of file AlbPUMI_FMDBDiscretization_Def.hpp.

template<class Output >
Teuchos::RCP< const Epetra_Map > AlbPUMI::FMDBDiscretization< Output >::getOverlapNodeMap (  )  const

Get Overlap Node map.

Definition at line 101 of file AlbPUMI_FMDBDiscretization_Def.hpp.

template<class Output >
void AlbPUMI::FMDBDiscretization< Output >::setupMLCoords (  ) 

Process coords for ML.

Definition at line 217 of file AlbPUMI_FMDBDiscretization_Def.hpp.

template<class Output >
const Albany::NodeSetList& AlbPUMI::FMDBDiscretization< Output >::getNodeSets (  )  const [inline, virtual]

Get Node set lists (typedef in Albany_AbstractDiscretization.hpp).

Implements Albany::AbstractDiscretization.

Definition at line 65 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
const Albany::NodeSetCoordList& AlbPUMI::FMDBDiscretization< Output >::getNodeSetCoords (  )  const [inline, virtual]

Implements Albany::AbstractDiscretization.

Definition at line 66 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
const Albany::SideSetList& AlbPUMI::FMDBDiscretization< Output >::getSideSets ( const int  workset  )  const [inline, virtual]

Get Side set lists (typedef in Albany_AbstractDiscretization.hpp).

Implements Albany::AbstractDiscretization.

Definition at line 69 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
Albany::WsLIDList& AlbPUMI::FMDBDiscretization< Output >::getElemGIDws (  )  [inline, virtual]

Get connectivity map from elementGID to workset.

Implements Albany::AbstractDiscretization.

Definition at line 72 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
const Albany::WorksetArray< Teuchos::ArrayRCP< Teuchos::ArrayRCP< Teuchos::ArrayRCP< int > > > >::type & AlbPUMI::FMDBDiscretization< Output >::getWsElNodeEqID (  )  const [virtual]

Get map from (Ws, El, Local Node) -> NodeLID.

Implements Albany::AbstractDiscretization.

Definition at line 108 of file AlbPUMI_FMDBDiscretization_Def.hpp.

template<class Output >
const Albany::WorksetArray< Teuchos::ArrayRCP< Teuchos::ArrayRCP< int > > >::type & AlbPUMI::FMDBDiscretization< Output >::getWsElNodeID (  )  const [virtual]
template<class Output >
Teuchos::ArrayRCP< double > & AlbPUMI::FMDBDiscretization< Output >::getCoordinates (  )  const [virtual]

Retrieve coodinate vector (num_used_nodes * 3).

Implements Albany::AbstractDiscretization.

Definition at line 148 of file AlbPUMI_FMDBDiscretization_Def.hpp.

template<class Output >
const Albany::WorksetArray< Teuchos::ArrayRCP< Teuchos::ArrayRCP< double * > > >::type & AlbPUMI::FMDBDiscretization< Output >::getCoords (  )  const [virtual]
template<class Output >
const Albany::WorksetArray< Teuchos::ArrayRCP< Teuchos::ArrayRCP< double > > >::type & AlbPUMI::FMDBDiscretization< Output >::getSurfaceHeight (  )  const [virtual]
template<class Output >
const Albany::WorksetArray< Teuchos::ArrayRCP< double > >::type & AlbPUMI::FMDBDiscretization< Output >::getTemperature (  )  const [virtual]
template<class Output >
const Albany::WorksetArray< Teuchos::ArrayRCP< Teuchos::ArrayRCP< double > > >::type & AlbPUMI::FMDBDiscretization< Output >::getBasalFriction (  )  const [virtual]
template<class Output >
const Albany::WorksetArray< Teuchos::ArrayRCP< Teuchos::ArrayRCP< double > > >::type & AlbPUMI::FMDBDiscretization< Output >::getThickness (  )  const [virtual]
template<class Output >
const Albany::WorksetArray< Teuchos::ArrayRCP< Teuchos::ArrayRCP< double * > > >::type & AlbPUMI::FMDBDiscretization< Output >::getSurfaceVelocity (  )  const [virtual]
template<class Output >
const Albany::WorksetArray< Teuchos::ArrayRCP< Teuchos::ArrayRCP< double * > > >::type & AlbPUMI::FMDBDiscretization< Output >::getVelocityRMS (  )  const [virtual]
template<class Output >
const Albany::WorksetArray< Teuchos::ArrayRCP< double > >::type & AlbPUMI::FMDBDiscretization< Output >::getFlowFactor (  )  const [virtual]
template<class Output >
void AlbPUMI::FMDBDiscretization< Output >::printCoords (  )  const [virtual]

Print coords for debugging.

Implements Albany::AbstractDiscretization.

Definition at line 129 of file AlbPUMI_FMDBDiscretization_Def.hpp.

template<class Output >
void AlbPUMI::FMDBDiscretization< Output >::debugMeshWriteNative ( const Epetra_Vector &  sol,
const char *  filename 
) [virtual]
template<class Output >
void AlbPUMI::FMDBDiscretization< Output >::debugMeshWrite ( const Epetra_Vector &  sol,
const char *  filename 
) [virtual]
template<class Output >
int AlbPUMI::FMDBDiscretization< Output >::getNumDim (  )  const [inline, virtual]

Get number of spatial dimensions.

Implements Albany::AbstractDiscretization.

Definition at line 99 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
virtual Teuchos::RCP<const Epetra_Comm> AlbPUMI::FMDBDiscretization< Output >::getComm (  )  const [inline, virtual]
template<class Output >
int AlbPUMI::FMDBDiscretization< Output >::getNumEq (  )  const [inline, virtual]

Get number of total DOFs per node.

Implements Albany::AbstractDiscretization.

Definition at line 104 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
Albany::StateArrays& AlbPUMI::FMDBDiscretization< Output >::getStateArrays (  )  [inline, virtual]

Implements Albany::AbstractDiscretization.

Definition at line 106 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
const Albany::WorksetArray< std::string >::type & AlbPUMI::FMDBDiscretization< Output >::getWsEBNames (  )  const [virtual]

Retrieve Vector (length num worksets) of element block names.

Implements Albany::AbstractDiscretization.

Definition at line 275 of file AlbPUMI_FMDBDiscretization_Def.hpp.

template<class Output >
const Albany::WorksetArray< int >::type & AlbPUMI::FMDBDiscretization< Output >::getWsPhysIndex (  )  const [virtual]

Retrieve Vector (length num worksets) of physics set index.

Implements Albany::AbstractDiscretization.

Definition at line 282 of file AlbPUMI_FMDBDiscretization_Def.hpp.

template<class Output >
void AlbPUMI::FMDBDiscretization< Output >::writeSolution ( const Epetra_Vector &  solution,
const double  time,
const bool  overlapped = false 
) [virtual]

Write the solution to the output file.

Implements Albany::AbstractDiscretization.

Definition at line 380 of file AlbPUMI_FMDBDiscretization_Def.hpp.

template<class Output >
Teuchos::RCP< Epetra_Vector > AlbPUMI::FMDBDiscretization< Output >::getSolutionField (  )  const [virtual]

Get solution vector from mesh database.

Implements Albany::AbstractDiscretization.

Definition at line 493 of file AlbPUMI_FMDBDiscretization_Def.hpp.

template<class Output >
void AlbPUMI::FMDBDiscretization< Output >::setResidualField ( const Epetra_Vector &  residual  )  [virtual]

Set the residual field for output.

Implements Albany::AbstractDiscretization.

Definition at line 481 of file AlbPUMI_FMDBDiscretization_Def.hpp.

template<class Output >
Teuchos::RCP<AlbPUMI::FMDBMeshStruct> AlbPUMI::FMDBDiscretization< Output >::getFMDBMeshStruct (  )  [inline, virtual]
template<class Output >
Teuchos::RCP<Albany::AbstractMeshStruct> AlbPUMI::FMDBDiscretization< Output >::getMeshStruct (  )  const [inline, virtual]

Implements Albany::AbstractDiscretization.

Definition at line 121 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
bool AlbPUMI::FMDBDiscretization< Output >::hasRestartSolution (  )  const [inline, virtual]

Flag if solution has a restart values -- used in Init Cond.

Implements Albany::AbstractDiscretization.

Definition at line 124 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
double AlbPUMI::FMDBDiscretization< Output >::restartDataTime (  )  const [inline, virtual]

If restarting, convenience function to return restart data time.

Implements Albany::AbstractDiscretization.

Definition at line 127 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
virtual bool AlbPUMI::FMDBDiscretization< Output >::supportsMOR (  )  const [inline, virtual]

FMDB does not support MOR.

Implements Albany::AbstractDiscretization.

Definition at line 130 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
void AlbPUMI::FMDBDiscretization< Output >::updateMesh (  )  [virtual]
template<class Output >
void AlbPUMI::FMDBDiscretization< Output >::getOwned_xyz ( double **  x,
double **  y,
double **  z,
double **  rbm,
int &  nNodes,
int  numPDEs,
int  numScalar,
int  nullSpaceDim 
)

Accessor function to get coordinates for ML. Memory controlled here.

template<class Output >
void AlbPUMI::FMDBDiscretization< Output >::transformMesh (  )  [inline]

Definition at line 141 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
int AlbPUMI::FMDBDiscretization< Output >::getDOF ( const int  inode,
const int  eq 
) const [inline]

Definition at line 143 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
int AlbPUMI::FMDBDiscretization< Output >::getOwnedDOF ( const int  inode,
const int  eq 
) const [inline]

Definition at line 149 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
int AlbPUMI::FMDBDiscretization< Output >::getOverlapDOF ( const int  inode,
const int  eq 
) const [inline]

Definition at line 154 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
int AlbPUMI::FMDBDiscretization< Output >::getGlobalDOF ( const int  inode,
const int  eq 
) const [inline]

Definition at line 159 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
void AlbPUMI::FMDBDiscretization< Output >::setField ( const char *  name,
const Epetra_Vector &  data,
bool  overlapped,
int  offset = 0 
)

Definition at line 288 of file AlbPUMI_FMDBDiscretization_Def.hpp.

template<class Output >
void AlbPUMI::FMDBDiscretization< Output >::setSplitFields ( std::vector< std::string >  names,
std::vector< int >  indices,
const Epetra_Vector &  data,
bool  overlapped 
)

Definition at line 317 of file AlbPUMI_FMDBDiscretization_Def.hpp.

template<class Output >
void AlbPUMI::FMDBDiscretization< Output >::getField ( const char *  name,
Epetra_Vector &  data,
bool  overlapped,
int  offset = 0 
) const

Definition at line 333 of file AlbPUMI_FMDBDiscretization_Def.hpp.

template<class Output >
void AlbPUMI::FMDBDiscretization< Output >::getSplitFields ( std::vector< std::string >  names,
std::vector< int >  indices,
Epetra_Vector &  data,
bool  overlapped 
) const

Definition at line 362 of file AlbPUMI_FMDBDiscretization_Def.hpp.

template<class Output >
void AlbPUMI::FMDBDiscretization< Output >::reNameExodusOutput ( const std::string &  str  )  [inline, virtual]
template<class Output >
FMDBDiscretization& AlbPUMI::FMDBDiscretization< Output >::operator= ( const FMDBDiscretization< Output > &   )  [private]

Private to prohibit copying.

template<class Output >
void AlbPUMI::FMDBDiscretization< Output >::setSolutionField ( const Epetra_Vector &  soln  )  [private, virtual]

Reimplemented from Albany::AbstractDiscretization.

Definition at line 512 of file AlbPUMI_FMDBDiscretization_Def.hpp.

template<class Output >
int AlbPUMI::FMDBDiscretization< Output >::nonzeroesPerRow ( const int  neq  )  const [private]

Definition at line 524 of file AlbPUMI_FMDBDiscretization_Def.hpp.

template<class Output >
double AlbPUMI::FMDBDiscretization< Output >::monotonicTimeLabel ( const double  time  )  [private]

Definition at line 454 of file AlbPUMI_FMDBDiscretization_Def.hpp.

template<class Output >
void AlbPUMI::FMDBDiscretization< Output >::computeOwnedNodesAndUnknowns (  )  [private]

Process FMDB mesh for Owned nodal quantitites.

Definition at line 544 of file AlbPUMI_FMDBDiscretization_Def.hpp.

template<class Output >
void AlbPUMI::FMDBDiscretization< Output >::computeOverlapNodesAndUnknowns (  )  [private]

Process FMDB mesh for Overlap nodal quantitites.

Definition at line 572 of file AlbPUMI_FMDBDiscretization_Def.hpp.

template<class Output >
void AlbPUMI::FMDBDiscretization< Output >::computeGraphs (  )  [private]

Process FMDB mesh for CRS Graphs.

Definition at line 599 of file AlbPUMI_FMDBDiscretization_Def.hpp.

template<class Output >
void AlbPUMI::FMDBDiscretization< Output >::computeWorksetInfo (  )  [private]

Process FMDB mesh for Workset/Bucket Info.

Definition at line 654 of file AlbPUMI_FMDBDiscretization_Def.hpp.

template<class Output >
void AlbPUMI::FMDBDiscretization< Output >::computeNodeSets (  )  [private]

Process FMDB mesh for NodeSets.

Definition at line 1095 of file AlbPUMI_FMDBDiscretization_Def.hpp.

template<class Output >
void AlbPUMI::FMDBDiscretization< Output >::computeSideSets (  )  [private]

Process FMDB mesh for SideSets.

Definition at line 1010 of file AlbPUMI_FMDBDiscretization_Def.hpp.

template<class Output >
void AlbPUMI::FMDBDiscretization< Output >::copyQPScalarToAPF ( unsigned  nqp,
QPData< double, 2 > &  state,
apf::Field *  f 
) [private]

Transfer QPData to APF.

Definition at line 912 of file AlbPUMI_FMDBDiscretization_Def.hpp.

template<class Output >
void AlbPUMI::FMDBDiscretization< Output >::copyQPVectorToAPF ( unsigned  nqp,
QPData< double, 3 > &  state,
apf::Field *  f 
) [private]

Definition at line 927 of file AlbPUMI_FMDBDiscretization_Def.hpp.

template<class Output >
void AlbPUMI::FMDBDiscretization< Output >::copyQPTensorToAPF ( unsigned  nqp,
QPData< double, 4 > &  state,
apf::Field *  f 
) [private]

Definition at line 947 of file AlbPUMI_FMDBDiscretization_Def.hpp.

template<class Output >
void AlbPUMI::FMDBDiscretization< Output >::copyQPStatesToAPF (  )  [private]

Definition at line 968 of file AlbPUMI_FMDBDiscretization_Def.hpp.

template<class Output >
void AlbPUMI::FMDBDiscretization< Output >::removeQPStatesFromAPF (  )  [private]

Definition at line 993 of file AlbPUMI_FMDBDiscretization_Def.hpp.


Member Data Documentation

template<class Output >
std::vector<std::string> AlbPUMI::FMDBDiscretization< Output >::solNames [private]

Definition at line 221 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
std::vector<std::string> AlbPUMI::FMDBDiscretization< Output >::resNames [private]

Definition at line 222 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
std::vector<int> AlbPUMI::FMDBDiscretization< Output >::solIndex [private]

Definition at line 223 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
Teuchos::RCP<Teuchos::FancyOStream> AlbPUMI::FMDBDiscretization< Output >::out [private]

Call stk_io for creating exodus output file.

Definition at line 226 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
double AlbPUMI::FMDBDiscretization< Output >::previous_time_label [private]

Definition at line 228 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
TRANSFORMTYPE AlbPUMI::FMDBDiscretization< Output >::transform_type [private]

Definition at line 232 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
Output AlbPUMI::FMDBDiscretization< Output >::meshOutput [protected]

Output object.

Definition at line 237 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
Teuchos::RCP<const Epetra_Comm> AlbPUMI::FMDBDiscretization< Output >::comm [protected]

Stk Mesh Objects.

Epetra communicator

Definition at line 242 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
Teuchos::RCP<Epetra_Map> AlbPUMI::FMDBDiscretization< Output >::node_map [protected]

Node map.

Definition at line 245 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
Teuchos::RCP<Epetra_Map> AlbPUMI::FMDBDiscretization< Output >::map [protected]

Unknown Map.

Definition at line 248 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
Teuchos::RCP<Epetra_Map> AlbPUMI::FMDBDiscretization< Output >::overlap_map [protected]

Overlapped unknown map, and node map.

Definition at line 251 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
Teuchos::RCP<Epetra_Map> AlbPUMI::FMDBDiscretization< Output >::overlap_node_map [protected]

Definition at line 252 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
Teuchos::RCP<Epetra_CrsGraph> AlbPUMI::FMDBDiscretization< Output >::graph [protected]

Jacobian matrix graph.

Definition at line 255 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
Teuchos::RCP<Epetra_CrsGraph> AlbPUMI::FMDBDiscretization< Output >::overlap_graph [protected]

Overlapped Jacobian matrix graph.

Definition at line 258 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
const unsigned int AlbPUMI::FMDBDiscretization< Output >::neq [protected]

Number of equations (and unknowns) per node.

Definition at line 261 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
Albany::NodeSetList AlbPUMI::FMDBDiscretization< Output >::nodeSets [protected]

node sets stored as std::map(string ID, int vector of GIDs)

Definition at line 264 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
Albany::NodeSetCoordList AlbPUMI::FMDBDiscretization< Output >::nodeSetCoords [protected]

Definition at line 265 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
std::vector<Albany::SideSetList> AlbPUMI::FMDBDiscretization< Output >::sideSets [protected]

side sets stored as std::map(string ID, SideArray classes) per workset (std::vector across worksets)

Definition at line 268 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
Albany::WorksetArray<Teuchos::ArrayRCP<Teuchos::ArrayRCP<Teuchos::ArrayRCP<int> > > >::type AlbPUMI::FMDBDiscretization< Output >::wsElNodeEqID [protected]

Connectivity array [workset, element, local-node, Eq] => LID.

Definition at line 271 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
Albany::WorksetArray<Teuchos::ArrayRCP<Teuchos::ArrayRCP<int> > >::type AlbPUMI::FMDBDiscretization< Output >::wsElNodeID [protected]

Definition at line 273 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
Teuchos::ArrayRCP<double> AlbPUMI::FMDBDiscretization< Output >::coordinates [mutable, protected]

Definition at line 275 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
Albany::WorksetArray<std::string>::type AlbPUMI::FMDBDiscretization< Output >::wsEBNames [protected]

Definition at line 276 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
Albany::WorksetArray<int>::type AlbPUMI::FMDBDiscretization< Output >::wsPhysIndex [protected]

Definition at line 277 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
Albany::WorksetArray<Teuchos::ArrayRCP<Teuchos::ArrayRCP<double*> > >::type AlbPUMI::FMDBDiscretization< Output >::coords [protected]

Definition at line 278 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
Albany::WorksetArray<Teuchos::ArrayRCP<Teuchos::ArrayRCP<double> > >::type AlbPUMI::FMDBDiscretization< Output >::sHeight [protected]

Definition at line 281 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
Albany::WorksetArray<Teuchos::ArrayRCP<double> >::type AlbPUMI::FMDBDiscretization< Output >::temperature [protected]

Definition at line 282 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
Albany::WorksetArray<Teuchos::ArrayRCP<Teuchos::ArrayRCP<double> > >::type AlbPUMI::FMDBDiscretization< Output >::basalFriction [protected]

Definition at line 283 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
Albany::WorksetArray<Teuchos::ArrayRCP<Teuchos::ArrayRCP<double> > >::type AlbPUMI::FMDBDiscretization< Output >::thickness [protected]

Definition at line 284 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
Albany::WorksetArray<Teuchos::ArrayRCP<Teuchos::ArrayRCP<double*> > >::type AlbPUMI::FMDBDiscretization< Output >::surfaceVelocity [protected]

Definition at line 285 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
Albany::WorksetArray<Teuchos::ArrayRCP<Teuchos::ArrayRCP<double*> > >::type AlbPUMI::FMDBDiscretization< Output >::velocityRMS [protected]

Definition at line 286 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
Albany::WorksetArray<Teuchos::ArrayRCP<double> >::type AlbPUMI::FMDBDiscretization< Output >::flowFactor [protected]

Definition at line 287 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
Albany::WsLIDList AlbPUMI::FMDBDiscretization< Output >::elemGIDws [protected]

Connectivity map from elementGID to workset and LID in workset.

Definition at line 290 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
Albany::StateArrays AlbPUMI::FMDBDiscretization< Output >::stateArrays [protected]

Definition at line 293 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
apf::DynamicArray<apf::Node> AlbPUMI::FMDBDiscretization< Output >::nodes [protected]

list of all overlap nodes, saved for setting solution

Definition at line 296 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
int AlbPUMI::FMDBDiscretization< Output >::numOwnedNodes [protected]

Number of elements on this processor.

Definition at line 299 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
int AlbPUMI::FMDBDiscretization< Output >::numOverlapNodes [protected]

Definition at line 300 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
int AlbPUMI::FMDBDiscretization< Output >::numGlobalNodes [protected]

Definition at line 301 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
double* AlbPUMI::FMDBDiscretization< Output >::xx [protected]

Definition at line 304 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
double * AlbPUMI::FMDBDiscretization< Output >::yy [protected]

Definition at line 304 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
double * AlbPUMI::FMDBDiscretization< Output >::zz [protected]

Definition at line 304 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
double * AlbPUMI::FMDBDiscretization< Output >::rr [protected]

Definition at line 304 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
bool AlbPUMI::FMDBDiscretization< Output >::allocated_xyz [protected]

Definition at line 305 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
Teuchos::RCP<AlbPUMI::FMDBMeshStruct> AlbPUMI::FMDBDiscretization< Output >::fmdbMeshStruct [protected]

Definition at line 307 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
bool AlbPUMI::FMDBDiscretization< Output >::interleavedOrdering [protected]

Definition at line 309 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
std::vector< std::vector<apf::MeshEntity*> > AlbPUMI::FMDBDiscretization< Output >::buckets [protected]

Definition at line 311 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
std::map<std::string, std::vector<double> > AlbPUMI::FMDBDiscretization< Output >::nodeset_node_coords [protected]

Definition at line 314 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
Teuchos::RCP<Piro::MLRigidBodyModes> AlbPUMI::FMDBDiscretization< Output >::rigidBodyModes [protected]

Definition at line 317 of file AlbPUMI_FMDBDiscretization.hpp.

template<class Output >
int AlbPUMI::FMDBDiscretization< Output >::outputInterval [protected]

Definition at line 320 of file AlbPUMI_FMDBDiscretization.hpp.


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