X-Git-Url: https://www.hackdaworld.org/gitweb/?p=physik%2Fposic.git;a=blobdiff_plain;f=mdrun.h;h=b8ed70c0ace245d381cc823b05f066905893b08f;hp=953ec0d25a7c122b9850cdabdaa6c0a844d573c9;hb=HEAD;hpb=3de2d654be3a4c430261798edbe7c17201e4f366 diff --git a/mdrun.h b/mdrun.h index 953ec0d..b8ed70c 100644 --- a/mdrun.h +++ b/mdrun.h @@ -50,6 +50,11 @@ typedef struct s_stage { #define STAGE_CHSATTR 0x06 #define STAGE_SET_TEMP 0x07 #define STAGE_SET_TIMESTEP 0x08 +#define STAGE_FILL 0x09 +#define STAGE_THERMAL_INIT 0x10 +#define STAGE_DEL_ATOMS 0x11 +#define STAGE_MODIFY_ATOMS 0x12 +#define STAGE_CRT 0x13 typedef struct s_mdrun { char cfile[128]; // config file @@ -69,13 +74,9 @@ typedef struct s_mdrun { u8 pbcz; int element1; // element 1 - double m1; int element2; // element 2 - double m2; + double lc; // lattice constant - int lx; // amount of lc units - int ly; - int lz; u8 lattice; // type of lattice u8 sattr; // system attributes @@ -110,6 +111,17 @@ typedef struct s_displace_atom_params { double dx,dy,dz; } t_displace_atom_params; +typedef struct s_del_atoms_params { + double r; + t_3dvec o; +} t_del_atoms_params; + +typedef struct s_modify_aoms_params { + u8 type; + int tag; + t_3dvec ekin; +} t_modify_atoms_params; + typedef struct s_insert_atoms_params { u8 type; double x0,y0,z0,x1,y1,z1; @@ -136,8 +148,10 @@ typedef struct s_insert_mixed_atoms_params { } t_insert_mixed_atoms_params; #define INS_TOTAL 0x01 -#define INS_REGION 0x02 -#define INS_POS 0x03 +#define INS_RECT 0x02 +#define INS_SPHERE 0x03 +#define INS_POS 0x04 +#define INS_RELPOS 0x05 typedef struct s_continue_params { int runs; @@ -161,6 +175,7 @@ typedef struct s_chaattr_params { #define CHAATTR_TOTALV 0x01 #define CHAATTR_REGION 0x02 #define CHAATTR_ELEMENT 0x04 +#define CHAATTR_NUMBER 0x08 typedef struct s_chsattr_params { u8 type; @@ -191,9 +206,39 @@ typedef struct s_set_timestep_params { double tau; } t_set_timestep_params; +typedef struct s_fill_params { + double lc; // lattice constant + int lx; // amount of lc units + int ly; + int lz; + u8 lattice; + int fill_element; + u8 fill_brand; + t_part_params p_params; + t_defect_params d_params; + t_offset_params o_params; +} t_fill_params; + +typedef struct s_crt_params { + u8 type; + char file[128]; + t_3dvec *r_fin; + u8 *constraints; + int steps; + int count; +} t_crt_params; + /* - * function prototypes + * extern variables */ +// constraint relaxation technique +extern u8 crtt; +extern u8 *constraints; +extern double *trafo_angle; + +/* + * function prototypes + */ #endif