00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
00017 
00018 
00019 
00020 
00021 
00022 
00023 
00024 
00025 
00026 
00027 
00028 
00029 
00030 
00031 #include "SundanceQuadratureIntegralBase.hpp"
00032 #include "SundanceGaussianQuadrature.hpp"
00033 #include "SundanceMultiIndex.hpp"
00034 #include "SundanceOut.hpp"
00035 #include "PlayaTabs.hpp"
00036 #include "Teuchos_TimeMonitor.hpp"
00037 
00038 using namespace Sundance;
00039 using namespace Sundance;
00040 using namespace Sundance;
00041 using namespace Sundance;
00042 using namespace Sundance;
00043 using namespace Sundance;
00044 using namespace Sundance;
00045 using namespace Teuchos;
00046 
00047 
00048 extern "C" 
00049 {
00050 int dgemm_(const char* transA, const char* transB,
00051   const int* M, const int *N, const int* K,
00052   const double* alpha, 
00053   const double* A, const int* ldA,
00054   const double* B, const int* ldB,
00055   const double* beta,
00056   double* C, const int* ldC);
00057 }
00058 
00059 QuadratureIntegralBase::QuadratureIntegralBase(int spatialDim,
00060   const CellType& maxCellType,
00061   int dim, 
00062   const CellType& cellType,
00063   const QuadratureFamily& quad,
00064   bool isInternalBdry,
00065   const ParametrizedCurve& globalCurve,
00066   const Mesh& mesh,
00067   int verb)
00068 : ElementIntegral(spatialDim, maxCellType, dim, cellType, isInternalBdry, globalCurve, mesh,
00069     verb),
00070     nQuad_(0)
00071 {
00072 }
00073 
00074 
00075 QuadratureIntegralBase::QuadratureIntegralBase(int spatialDim,
00076   const CellType& maxCellType,
00077   int dim, 
00078   const CellType& cellType,
00079   const BasisFamily& testBasis,
00080   int alpha,
00081   int testDerivOrder,
00082   const QuadratureFamily& quad,
00083   bool isInternalBdry,
00084   const ParametrizedCurve& globalCurve,
00085   const Mesh& mesh,
00086   int verb)
00087   : ElementIntegral(spatialDim, maxCellType, dim, cellType, 
00088   testBasis, alpha, testDerivOrder, isInternalBdry, globalCurve, mesh, verb),
00089     nQuad_(0)
00090 {
00091 
00092 }
00093 
00094 
00095 
00096 
00097 QuadratureIntegralBase::QuadratureIntegralBase(int spatialDim,
00098   const CellType& maxCellType,
00099   int dim,
00100   const CellType& cellType,
00101   const BasisFamily& testBasis,
00102   int alpha,
00103   int testDerivOrder,
00104   const BasisFamily& unkBasis,
00105   int beta,
00106   int unkDerivOrder,
00107   const QuadratureFamily& quad,
00108   bool isInternalBdry,
00109   const ParametrizedCurve& globalCurve,
00110   const Mesh& mesh,
00111   int verb)
00112   : ElementIntegral(spatialDim, maxCellType, dim, cellType, 
00113     testBasis, alpha, testDerivOrder, 
00114     unkBasis, beta, unkDerivOrder, isInternalBdry, globalCurve, mesh, verb),
00115     nQuad_(0)
00116 {
00117 
00118 }
00119 
00120 
00121 
00122 
00123