integratorq2q4.h

Go to the documentation of this file.
00001 #ifndef __IntegratorQ2Q4_h
00002 #define __IntegratorQ2Q4_h
00003 
00004 #include "basicintegrator.h"
00005 
00006 namespace Gascoigne
00007 {
00008 
00009 /**********************************************************/
00010 
00011   template<int DIM>
00012   class IntegratorQ2Q4 : public BasicIntegrator
00013   {
00014     protected:
00015       double Volume2MeshSize(double vol) const { return pow(vol,1./float(DIM));}
00016       int PatchMeshNr2IntegratorNr(int in) const;
00017 
00018     public:
00019       IntegratorQ2Q4<DIM>() : BasicIntegrator() { }
00020       ~IntegratorQ2Q4<DIM>() { }
00021 
00022       void BasicInit() { }
00023 
00024       void Form(const Equation& EQ, LocalVector& F, const FemInterface& FemH, const FemInterface& FemL, const LocalVector& U, const LocalData& Q, const LocalData& QC) const;
00025       void AdjointForm(const Equation& EQ, LocalVector& F, const FemInterface& FemH, const FemInterface& FemL, const LocalVector& U, const LocalData& Q, const LocalData& QC) const;
00026       void BoundaryForm(const BoundaryEquation& BE, LocalVector& F, const FemInterface& FemH, const FemInterface& FemL, const LocalVector& U, int ile, int col, LocalData& Q, const LocalData& QC) const;
00027       void Rhs(const DomainRightHandSide& RHS, LocalVector& F, const FemInterface& FemH, const FemInterface& FemL, const LocalData& Q, const LocalData& QC) const;
00028       void BoundaryRhs(const BoundaryRightHandSide& RHS, LocalVector& F, const FemInterface& FemH, const FemInterface& FemL, int ile, int col, const LocalData& Q, const LocalData& QC) const;
00029       void DiracRhsPoint(LocalVector& b, const FemInterface& FemH, const FemInterface& FemL, const Vertex<DIM>& p, const DiracRightHandSide& DRHS, int j, const LocalData& Q, const LocalData& QC) const;
00030 
00031       double MassMatrix(EntryMatrix& E, const FemInterface& FemH, const FemInterface& FemL) const;
00032       void MassForm(const TimePattern& TP, LocalVector& F, const FemInterface& FemH, const FemInterface& FemL, const LocalVector& U) const;
00033 
00034       std::string GetName() const { return "IntegratorQ2Q4"; }
00035   };
00036 
00037 /**********************************************************/
00038 
00039 }
00040 
00041 #endif

Generated on Thu Sep 14 10:34:36 2006 for Gascoigne by  doxygen 1.4.7