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