#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
+#include <unistd.h>
#include <math.h>
u8 executed;
} t_stage;
+#define STAGE_DISPLACE_ATOM 0x00
#define STAGE_INSERT_ATOMS 0x01
#define STAGE_CONTINUE 0x02
#define STAGE_ANNEAL 0x03
typedef struct s_mdrun {
char cfile[128]; // config file
+ char continue_file[128]; // moldyn save file to continue
+
u8 intalgo; // integration algorithm
double timestep; // timestep
u8 potential; // potential
-
double cutoff; // cutoff radius
+ double nnd; // next neighbour distance
+
t_3dvec dim; // simulation volume
u8 pbcx; // periodic boundary conditions
u8 pbcy;
u8 sattr; // system attributes
double temperature; // temperature
double pressure; // pressure
- double p_tau; // pressure tau
- double t_tau; // temperature tau
- double dp; // delta p fpr pctrl
- double dt; // delta t for tctrl
+ double dp;
+ double dt;
int relax_steps; // amount of relaxation steps
int prerun; // amount of loops in first run
int avgskip; // average skip
char sdir[128]; // save root
- t_list *stage; // stages
+ t_list stage; // stages
int s_cnt; // stage counter
} t_mdrun;
#define SATTR_TRELAX 0x02
#define SATTR_AVGRST 0x04
+typedef struct s_displace_atom_params {
+ int nr;
+ double dx,dy,dz;
+} t_displace_atom_params;
+
typedef struct s_insert_atoms_params {
u8 type;
double x0,y0,z0,x1,y1,z1;
int ins_atoms;
int element;
u8 brand;
- u8 aattr;
+ u8 attr;
} t_insert_atoms_params;
#define INS_TOTAL 0x01
#define INS_REGION 0x02
+#define INS_POS 0x03
typedef struct s_continue_params {
int runs;
typedef struct s_chsattr_params {
u8 type;
- double tau;
- u8 ctrl;
- double delta;
+ double ttau;
+ double ptau;
+ double dt;
+ double dp;
+ int rsteps;
+ u8 avgrst;
} t_chsattr_params;
#define CHSATTR_PCTRL 0x01
#define CHSATTR_PRELAX 0x04
#define CHSATTR_TRELAX 0x08
#define CHSATTR_AVGRST 0x10
+#define CHSATTR_RSTEPS 0x20
/*
* function prototypes