snl_fei_FEMatrixTraits_FED.hpp

00001 /*--------------------------------------------------------------------*/
00002 /*    Copyright 2005 Sandia Corporation.                              */
00003 /*    Under the terms of Contract DE-AC04-94AL85000, there is a       */
00004 /*    non-exclusive license for use of this work by or on behalf      */
00005 /*    of the U.S. Government.  Export of this program may require     */
00006 /*    a license from the United States Government.                    */
00007 /*--------------------------------------------------------------------*/
00008 
00009 #ifndef _snl_fei_FEMatrixTraits_FED_hpp_
00010 #define _snl_fei_FEMatrixTraits_FED_hpp_
00011 
00012 #include <fei_macros.hpp>
00013 #include <fei_FiniteElementData.hpp>
00014 #include <snl_fei_FEMatrixTraits.hpp>
00015 
00016 namespace snl_fei {
00017 
00019   template<>
00020   struct FEMatrixTraits<FiniteElementData> {
00021 
00023     static const char* typeName()
00024       { return("FiniteElementData"); }
00025 
00028     static int reset(FiniteElementData* mat)
00029       { return( mat->reset() ); }
00030 
00032     static int sumInElemMatrix(FiniteElementData* mat,
00033              int elemBlockID,
00034              int elemID,
00035              int numNodes,
00036              const int* nodeNumbers,
00037              const int* dofPerNode,
00038              const double *const * coefs)
00039       { return( mat->setElemMatrix(elemBlockID, elemID, numNodes,
00040            nodeNumbers, dofPerNode, coefs) ); }
00041 
00043     static int setDirichletBCs(FiniteElementData* mat,
00044              int numBCs,
00045              const int* nodeNumbers,
00046              const int* dofOffsets,
00047              const double* values)
00048       { return( mat->setDirichletBCs(numBCs, nodeNumbers,
00049              dofOffsets, values) ); }
00050 
00051   };//struct FEMatrixTraits
00052 }//namespace snl_fei
00053 
00054 #endif // _snl_fei_FEMatrixTraits_FED_hpp_

Generated on Wed May 12 21:30:42 2010 for FEI by  doxygen 1.4.7