O P A R - Open Architecture Particle in Cell Simulation - Version 3.0
Plasma simulations with dust particles
 All Classes Files Functions Variables Friends Macros Groups Pages
density.h
Go to the documentation of this file.
1 
5 #ifndef DENSITY_H
6 #define DENSITY_H
7 #include "task.h"
8 #include "numeric.h"
9 #include "movement.h"
10 #include "species.h"
11 #include <vector>
12 #define ID_DENSITY "Density"
13 //#define ID_CURDENSITY "CurDensity"
14 //---------------------------------------------------------------------------------------------------------------------
15 class Geometry;
16 
23 class Density : public Task {
24  private:
26  std::string strGeometry, strWall;
28 
29  protected:
35  double dx;
37  double dC;
39  double dV;
43  std::vector<WSpeciesBase> species;
44 #ifdef ONE_DIMENSIONAL
45 
46  int Rg;
47 #endif
48  public:
50  Density () {}
52  virtual ~Density () {}
54  std::string GetClassName () const {return ID_DENSITY;};
55 
61  void Init ();
62 
71  bool Execute ();
73  void AddSpecies (SpeciesBase* pS);
75  virtual grid<double>* GetGrid () {return &den;};
77  virtual const GridPosition& GetNx () const {return NG;};
79  double& operator[] (GridPosition i) {return den[i];};
80  protected:
81  PARAMETERMAP* MakeParamMap (PARAMETERMAP* pm = NULL);
82 };
83 #endif
84