-
Notifications
You must be signed in to change notification settings - Fork 0
/
coulombStructurePreserving.h
80 lines (78 loc) · 2.06 KB
/
coulombStructurePreserving.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
#include "coulomb_kernel.h"
#include "coulomb_utils.h"
namespace Coulomb {
void Run(Config* config);
Config* normalizeConfig(Config* config);
Config* copyConfig(Config* config);
double f(Vector2d v, int specie, Config* config);
Particle2d* initMarkers(int specie, Config* config, DistributionType type);
Particle2d* initOutputPrintMesh(Config* config, int s);
double psi(Vector2d v, double eps);
void mesh_distribution(
double** ret,
Particle2d** p_mesh,
Particle2d** p,
Config* config
);
int pushForward_dv(
Particle2d** p0,
Particle2d** p1,
VectorXd* dSdV,
VectorXd* f,
Config* config
);
int pushForwardNewtonIteration(
Particle2d** p0,
Particle2d** p1,
VectorXd* dSdV,
Config* config
);
void f_eqmotion(
VectorXd* f,
Particle2d** p0,
Particle2d** p1,
VectorXd* dSdV,
Config* config
);
double K(Particle2d** p, Config* config);
double Kspecie(Particle2d** p, int s, Config* config);
double nSpecie(
Particle2d** p,
int s,
Config* config
);
double TemperatureSpecieSingleAxis(
Particle2d** p,
int s,
int axis,
Config* config
);
double TemperatureSpecie(
Particle2d** p,
int s,
Config* config
);
Vector2d Momentum(Particle2d** p, Config* config);
Vector2d MomentumSpecie(Particle2d** p, int s, Config* config);
void printState(
double** f_mesh,
Particle2d** p_mesh,
Particle2d** p1,
Config* config,
Config* config0,
int t,
double E0,
Vector2d P0,
double S0
);
double mccc_coefs_clog(int s1, int s2, Config* config);
double coefs_nu(int s1, int s2, Config* config);
void format_duration(int milliseconds, char* ret);
Vector2d averageVelocitySpecie(
Particle2d** p,
int s,
Config* config
);
double thermalizationTime(Config* config);
double getTime();
}