00001 00005 #ifndef maxwell3D_hh 00006 #define maxwell3D_hh 00007 00008 #include "basics/cloneable.hh" 00009 #include "toolbox/array.hh" 00010 #include "basics/vectorsMatrices.hh" 00011 00012 namespace hp3D { 00013 // forward declarations 00014 class Hexahedron; 00015 00016 using concepts::Real; 00017 00018 // ***************************************************** MaxwellSharedData ** 00019 00035 class MaxwellSharedData : public concepts::Cloneable { 00036 public: 00037 MaxwellSharedData() : jacobian(0), jacobianInv(0), elm(0) {} 00038 virtual ~MaxwellSharedData() {} 00039 virtual MaxwellSharedData* clone() const { 00040 return new MaxwellSharedData(); } 00041 concepts::Array<Real> jacobian; 00042 concepts::Array<concepts::MapReal3d> jacobianInv; 00043 const Hexahedron* elm; 00044 }; 00045 00046 } // namespace hp3D 00047 00048 #endif // maxwell3D_hh