-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathsimconf.h
More file actions
executable file
·63 lines (48 loc) · 1.28 KB
/
simconf.h
File metadata and controls
executable file
·63 lines (48 loc) · 1.28 KB
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
#ifndef SIMCONF_H
#define SIMCONF_H 1
#include <string>
#include <iostream>
// ZBL coefficients a,b,c,d for all element pairs from Z=1..92
struct scoefLine {
char sym[3], name[30];
double mm1, m1, mnat, rho, atrho, vfermi, heat, lfctr;
double radius;
};
enum potentials { NONE, HARDSPHERE, RUTHERFORD, TRIM };
enum boundaryCondition { PBC, INF, CUT }; // periodic, infinitly large, cut off cascades
struct simconfType {
double ed, alfa, alpha, tmin, angmin, da, cw;
double mdmin, mdmax; // energy ranges for ion selection
long int ionId;
double latp;
double spawn_min_e;
double ion_min_e;
double fg_min_e;
// input from commandline
std::string run_name, fueltype;
double bub_rad, length, fissions;
double bub_model;
// tables from files
scoefLine scoef[92];
double pcoef[92][8];
double snuc[92][92][4];
bool fullTraj;
bool makeRecoils;
bool BoundaryFix;
bool AddAndKill;
bool calc_eloss;
bool save_eloss;
bool monolayer;
potentials pot_ff, pot_fg, pot_lat;
boundaryCondition bounds;
// statistics of the simulation run
int vacancies_created;
double KP_vacancies;
void read_arg( int argc, char *argv[], bool range_only );
simconfType();
private:
void read_scoef();
void read_snuc();
};
extern simconfType *simconf;
#endif