00001 #ifndef _MY_FaceFluxWithIndependentEquations_
00002 #define _MY_FaceFluxWithIndependentEquations_
00003 #include "facefluxfunction.h"
00004
00005
00009 class FaceFluxWithIndependentEquations : public FaceFluxFunction
00010 {
00011 private:
00012 std::vector<Function1D*> m_fs;
00013 std::vector<Function1D*> m_Dfs;
00014 bool m_deleteObjs;
00015 Matrix m_Vel;
00016
00017 protected:
00018
00019 public:
00020 FaceFluxWithIndependentEquations(OrthoMesh &mesh,Function1D *f1,Function1D *Df1,Function1D *f2,Function1D *Df2,bool deleteObjs);
00021 virtual ~FaceFluxWithIndependentEquations();
00022
00023 virtual void fluxAtFace(VecDouble &vFlux, const FaceInfo &face,const VecDouble &Q1,const VecDouble &Q2);
00024 virtual double maxLocalCharVelocity(const FaceInfo &face,const VecDouble &Q1, const VecDouble &Q2);
00025
00026
00027
00028 virtual void maxGlobalCharVelocity(double vel[3]);
00029 void updateDynamicData(DynamicBase &dynMod);
00030
00031
00032 };
00033
00034 #endif