FEI Version of the Day
snl_fei_FEMatrixTraits.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_hpp_
00010 #define _snl_fei_FEMatrixTraits_hpp_
00011 
00012 #include <fei_macros.hpp>
00013 
00014 namespace snl_fei {
00020   template<typename T>
00021   struct FEMatrixTraits {
00022 
00024     static const char* typeName()
00025       { return("unsupported"); }
00026 
00029     static int reset(T* mat)
00030       { return(-1); }
00031 
00033     static int sumInElemMatrix(T* mat,
00034              int elemBlockID,
00035              int elemID,
00036              int numNodes,
00037              const int* nodeNumbers,
00038              const int* dofPerNode,
00039              const int* dof_ids,
00040              const double *const * coefs)
00041       { return(-1); }
00042 
00044     static int setDirichletBCs(T* mat,
00045              int numBCs,
00046              const int* nodeNumbers,
00047              const int* dof_ids,
00048              const double* values)
00049       { return(-1); }
00050 
00051   };//class FEMatrixTraits
00052 }//namespace snl_fei
00053 
00054 #endif // _snl_fei_FEMatrixTraits_hpp_
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Friends