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