O P A R - Open Architecture Particle in Cell Simulation - Version 3.0
Plasma simulations with dust particles
Main Page
Related Pages
Modules
Classes
Files
File List
File Members
All
Classes
Files
Functions
Variables
Friends
Macros
Groups
Pages
movement.h
Go to the documentation of this file.
1
6
#ifndef MOVEMENT_H
7
#define MOVEMENT_H
8
#include "
task.h
"
9
#include "
numeric.h
"
10
#include <iostream>
11
#include <omp.h>
12
//---------------------------------------------------------------------------------------------------------------------
13
class
Species
;
14
class
Geometry
;
15
class
ES_EField
;
16
33
class
Movement
:
public
Task
{
34
private
:
36
std::string strEField;
38
std::string strGeom;
39
protected
:
41
double
dx
;
43
double
dt
;
45
Species
*
pS
;
47
ES_EField
*
pE
;
49
Geometry
*
pGeom
;
51
double
dttxE
;
53
double
q
;
55
double
m
;
57
double
rg
;
59
double
Bz
;
61
double
Te
;
62
public
:
64
Movement
() :
pE
(NULL) {};
66
virtual
~Movement
() {};
68
virtual
std::string
GetClassName
()
const
{
return
"Movement"
;};
70
virtual
grid<Velocity>
*
GetCurrent
() {
71
std::cerr <<
"Internal Error! "
<< std::endl;
72
exit(1);
73
}
74
virtual
void
Init
();
75
virtual
bool
Execute
();
77
Species
*
GetSpecies
() {
return
pS
;}
78
protected
:
79
virtual
PARAMETERMAP*
MakeParamMap
(PARAMETERMAP* pm = NULL);
80
};
81
typedef
PtrWrapper<Movement>
WMovement
;
82
91
class
SphericalMovement
:
public
Movement
{
92
public
:
94
SphericalMovement
() :
Movement
() {};
96
virtual
~SphericalMovement
() {};
98
virtual
std::string
GetClassName
()
const
{
return
"SphericalMovement"
;};
99
virtual
void
Init
();
100
virtual
bool
Execute
();
101
protected
:
103
int
Rg
;
105
double
dx
;
106
virtual
PARAMETERMAP*
MakeParamMap
(PARAMETERMAP* pm = NULL);
107
};
108
typedef
PtrWrapper<Movement>
WMovement
;
109
#endif
110
111
112
113
Generated by
1.8.1.1