make use of utils::sfgets() in a few more places

This commit is contained in:
Axel Kohlmeyer
2019-10-19 13:26:55 -04:00
parent d8c86d9abc
commit fd9da6f934
21 changed files with 247 additions and 223 deletions

View File

@ -32,6 +32,7 @@
#include "error.h"
#include "citeme.h"
#include "math_const.h"
#include "utils.h"
using namespace LAMMPS_NS;
using namespace FixConst;
@ -93,10 +94,11 @@ FixTTMMod::FixTTMMod(LAMMPS *lmp, int narg, char **arg) :
if (nxnodes <= 0 || nynodes <= 0 || nznodes <= 0)
error->all(FLERR,"Fix ttm/mod number of nodes must be > 0");
FILE *fpr = force->open_potential(arg[8]);
const char *filename = arg[8];
FILE *fpr = force->open_potential(filename);
if (fpr == NULL) {
char str[128];
snprintf(str,128,"Cannot open file %s",arg[8]);
snprintf(str,128,"Cannot open file %s",filename);
error->all(FLERR,str);
}
@ -117,113 +119,113 @@ FixTTMMod::FixTTMMod(LAMMPS *lmp, int narg, char **arg) :
double tresh_d;
int tresh_i;
// C0 (metal)
fgets(linee,MAXLINE,fpr_2);
fgets(linee,MAXLINE,fpr_2);
utils::sfgets(FLERR,linee,MAXLINE,fpr_2,filename,error);
utils::sfgets(FLERR,linee,MAXLINE,fpr_2,filename,error);
sscanf(linee,"%lg",&tresh_d);
esheat_0 = tresh_d;
// C1 (metal*10^3)
fgets(linee,MAXLINE,fpr_2);
fgets(linee,MAXLINE,fpr_2);
utils::sfgets(FLERR,linee,MAXLINE,fpr_2,filename,error);
utils::sfgets(FLERR,linee,MAXLINE,fpr_2,filename,error);
sscanf(linee,"%lg",&tresh_d);
esheat_1 = tresh_d;
// C2 (metal*10^6)
fgets(linee,MAXLINE,fpr_2);
fgets(linee,MAXLINE,fpr_2);
utils::sfgets(FLERR,linee,MAXLINE,fpr_2,filename,error);
utils::sfgets(FLERR,linee,MAXLINE,fpr_2,filename,error);
sscanf(linee,"%lg",&tresh_d);
esheat_2 = tresh_d;
// C3 (metal*10^9)
fgets(linee,MAXLINE,fpr_2);
fgets(linee,MAXLINE,fpr_2);
utils::sfgets(FLERR,linee,MAXLINE,fpr_2,filename,error);
utils::sfgets(FLERR,linee,MAXLINE,fpr_2,filename,error);
sscanf(linee,"%lg",&tresh_d);
esheat_3 = tresh_d;
// C4 (metal*10^12)
fgets(linee,MAXLINE,fpr_2);
fgets(linee,MAXLINE,fpr_2);
utils::sfgets(FLERR,linee,MAXLINE,fpr_2,filename,error);
utils::sfgets(FLERR,linee,MAXLINE,fpr_2,filename,error);
sscanf(linee,"%lg",&tresh_d);
esheat_4 = tresh_d;
// C_limit
fgets(linee,MAXLINE,fpr_2);
fgets(linee,MAXLINE,fpr_2);
utils::sfgets(FLERR,linee,MAXLINE,fpr_2,filename,error);
utils::sfgets(FLERR,linee,MAXLINE,fpr_2,filename,error);
sscanf(linee,"%lg",&tresh_d);
C_limit = tresh_d;
//Temperature damping factor
fgets(linee,MAXLINE,fpr_2);
fgets(linee,MAXLINE,fpr_2);
utils::sfgets(FLERR,linee,MAXLINE,fpr_2,filename,error);
utils::sfgets(FLERR,linee,MAXLINE,fpr_2,filename,error);
sscanf(linee,"%lg",&tresh_d);
T_damp = tresh_d;
// rho_e
fgets(linee,MAXLINE,fpr_2);
fgets(linee,MAXLINE,fpr_2);
utils::sfgets(FLERR,linee,MAXLINE,fpr_2,filename,error);
utils::sfgets(FLERR,linee,MAXLINE,fpr_2,filename,error);
sscanf(linee,"%lg",&tresh_d);
electronic_density = tresh_d;
//thermal_diffusion
fgets(linee,MAXLINE,fpr_2);
fgets(linee,MAXLINE,fpr_2);
utils::sfgets(FLERR,linee,MAXLINE,fpr_2,filename,error);
utils::sfgets(FLERR,linee,MAXLINE,fpr_2,filename,error);
sscanf(linee,"%lg",&tresh_d);
el_th_diff = tresh_d;
// gamma_p
fgets(linee,MAXLINE,fpr_2);
fgets(linee,MAXLINE,fpr_2);
utils::sfgets(FLERR,linee,MAXLINE,fpr_2,filename,error);
utils::sfgets(FLERR,linee,MAXLINE,fpr_2,filename,error);
sscanf(linee,"%lg",&tresh_d);
gamma_p = tresh_d;
// gamma_s
fgets(linee,MAXLINE,fpr_2);
fgets(linee,MAXLINE,fpr_2);
utils::sfgets(FLERR,linee,MAXLINE,fpr_2,filename,error);
utils::sfgets(FLERR,linee,MAXLINE,fpr_2,filename,error);
sscanf(linee,"%lg",&tresh_d);
gamma_s = tresh_d;
// v0
fgets(linee,MAXLINE,fpr_2);
fgets(linee,MAXLINE,fpr_2);
utils::sfgets(FLERR,linee,MAXLINE,fpr_2,filename,error);
utils::sfgets(FLERR,linee,MAXLINE,fpr_2,filename,error);
sscanf(linee,"%lg",&tresh_d);
v_0 = tresh_d;
// average intensity of pulse (source of energy) (metal units)
fgets(linee,MAXLINE,fpr_2);
fgets(linee,MAXLINE,fpr_2);
utils::sfgets(FLERR,linee,MAXLINE,fpr_2,filename,error);
utils::sfgets(FLERR,linee,MAXLINE,fpr_2,filename,error);
sscanf(linee,"%lg",&tresh_d);
intensity = tresh_d;
// coordinate of 1st surface in x-direction (in box units) - constant
fgets(linee,MAXLINE,fpr_2);
fgets(linee,MAXLINE,fpr_2);
utils::sfgets(FLERR,linee,MAXLINE,fpr_2,filename,error);
utils::sfgets(FLERR,linee,MAXLINE,fpr_2,filename,error);
sscanf(linee,"%d",&tresh_i);
surface_l = tresh_i;
// coordinate of 2nd surface in x-direction (in box units) - constant
fgets(linee,MAXLINE,fpr_2);
fgets(linee,MAXLINE,fpr_2);
utils::sfgets(FLERR,linee,MAXLINE,fpr_2,filename,error);
utils::sfgets(FLERR,linee,MAXLINE,fpr_2,filename,error);
sscanf(linee,"%d",&tresh_i);
surface_r = tresh_i;
// skin_layer = intensity is reduced (I=I0*exp[-x/skin_layer])
fgets(linee,MAXLINE,fpr_2);
fgets(linee,MAXLINE,fpr_2);
utils::sfgets(FLERR,linee,MAXLINE,fpr_2,filename,error);
utils::sfgets(FLERR,linee,MAXLINE,fpr_2,filename,error);
sscanf(linee,"%d",&tresh_i);
skin_layer = tresh_i;
// width of pulse (picoseconds)
fgets(linee,MAXLINE,fpr_2);
fgets(linee,MAXLINE,fpr_2);
utils::sfgets(FLERR,linee,MAXLINE,fpr_2,filename,error);
utils::sfgets(FLERR,linee,MAXLINE,fpr_2,filename,error);
sscanf(linee,"%lg",&tresh_d);
width = tresh_d;
// factor of electronic pressure (PF) Pe = PF*Ce*Te
fgets(linee,MAXLINE,fpr_2);
fgets(linee,MAXLINE,fpr_2);
utils::sfgets(FLERR,linee,MAXLINE,fpr_2,filename,error);
utils::sfgets(FLERR,linee,MAXLINE,fpr_2,filename,error);
sscanf(linee,"%lg",&tresh_d);
pres_factor = tresh_d;
// effective free path of electrons (angstrom)
fgets(linee,MAXLINE,fpr_2);
fgets(linee,MAXLINE,fpr_2);
utils::sfgets(FLERR,linee,MAXLINE,fpr_2,filename,error);
utils::sfgets(FLERR,linee,MAXLINE,fpr_2,filename,error);
sscanf(linee,"%lg",&tresh_d);
free_path = tresh_d;
// ionic density (ions*angstrom^{-3})
fgets(linee,MAXLINE,fpr_2);
fgets(linee,MAXLINE,fpr_2);
utils::sfgets(FLERR,linee,MAXLINE,fpr_2,filename,error);
utils::sfgets(FLERR,linee,MAXLINE,fpr_2,filename,error);
sscanf(linee,"%lg",&tresh_d);
ionic_density = tresh_d;
// if movsur = 0: surface is freezed
fgets(linee,MAXLINE,fpr_2);
fgets(linee,MAXLINE,fpr_2);
utils::sfgets(FLERR,linee,MAXLINE,fpr_2,filename,error);
utils::sfgets(FLERR,linee,MAXLINE,fpr_2,filename,error);
sscanf(linee,"%d",&tresh_i);
movsur = tresh_i;
// electron_temperature_min
fgets(linee,MAXLINE,fpr_2);
fgets(linee,MAXLINE,fpr_2);
utils::sfgets(FLERR,linee,MAXLINE,fpr_2,filename,error);
utils::sfgets(FLERR,linee,MAXLINE,fpr_2,filename,error);
sscanf(linee,"%lg",&tresh_d);
electron_temperature_min = tresh_d;
fclose(fpr_2);