diff --git a/src/balance.cpp b/src/balance.cpp index 4638599f0a3fbd932a0882cf30c48578ee22f5e4..b315a4454b03ec0681187211035a07d42ab9661d 100644 --- a/src/balance.cpp +++ b/src/balance.cpp @@ -163,9 +163,9 @@ void Balance::command(int narg, char **arg) if (dimension == 3) zflag = DYNAMIC; if (strlen(arg[iarg+1]) > 3) error->all(FLERR,"Illegal balance command"); strcpy(bstr,arg[iarg+1]); - nitermax = atoi(arg[iarg+2]); + nitermax = force->inumeric(FLERR,arg[iarg+2]); if (nitermax <= 0) error->all(FLERR,"Illegal balance command"); - thresh = atof(arg[iarg+3]); + thresh = force->numeric(FLERR,arg[iarg+3]); if (thresh < 1.0) error->all(FLERR,"Illegal balance command"); iarg += 4; diff --git a/src/change_box.cpp b/src/change_box.cpp index 9da5535237777e05966ece8a39cadf7df372a419..fe6566446bca76f986a168161fbe2b72d07e6696 100644 --- a/src/change_box.cpp +++ b/src/change_box.cpp @@ -27,12 +27,13 @@ #include "output.h" #include "group.h" #include "error.h" +#include "force.h" using namespace LAMMPS_NS; -enum{XYZ,TILT,BOUNDARY,ORTHO,TRICLINIC,SET,REMAP}; -enum{FINAL,DELTA,SCALE}; -enum{X,Y,Z,YZ,XZ,XY}; +enum{XYZ=0,TILT,BOUNDARY,ORTHO,TRICLINIC,SET,REMAP}; +enum{FINAL=0,DELTA,SCALE}; +enum{X=0,Y,Z,YZ,XZ,XY}; /* ---------------------------------------------------------------------- */ @@ -66,6 +67,7 @@ void ChangeBox::command(int narg, char **arg) int dimension = domain->dimension; ops = new Operation[narg-1]; + memset(ops,0,(narg-1)*sizeof(Operation)); nops = 0; int index; @@ -85,23 +87,23 @@ void ChangeBox::command(int narg, char **arg) if (strcmp(arg[iarg+1],"final") == 0) { if (iarg+4 > narg) error->all(FLERR,"Illegal change_box command"); ops[nops].flavor = FINAL; - ops[nops].flo = atof(arg[iarg+2]); - ops[nops].fhi = atof(arg[iarg+3]); + ops[nops].flo = force->numeric(FLERR,arg[iarg+2]); + ops[nops].fhi = force->numeric(FLERR,arg[iarg+3]); ops[nops].vdim1 = ops[nops].vdim2 = -1; nops++; iarg += 4; } else if (strcmp(arg[iarg+1],"delta") == 0) { if (iarg+4 > narg) error->all(FLERR,"Illegal change_box command"); ops[nops].flavor = DELTA; - ops[nops].dlo = atof(arg[iarg+2]); - ops[nops].dhi = atof(arg[iarg+3]); + ops[nops].dlo = force->numeric(FLERR,arg[iarg+2]); + ops[nops].dhi = force->numeric(FLERR,arg[iarg+3]); ops[nops].vdim1 = ops[nops].vdim2 = -1; nops++; iarg += 4; } else if (strcmp(arg[iarg+1],"scale") == 0) { if (iarg+3 > narg) error->all(FLERR,"Illegal change_box command"); ops[nops].flavor = SCALE; - ops[nops].scale = atof(arg[iarg+2]); + ops[nops].scale = force->numeric(FLERR,arg[iarg+2]); ops[nops].vdim1 = ops[nops].vdim2 = -1; nops++; iarg += 3; @@ -131,13 +133,13 @@ void ChangeBox::command(int narg, char **arg) if (strcmp(arg[iarg+1],"final") == 0) { if (iarg+3 > narg) error->all(FLERR,"Illegal change_box command"); ops[nops].flavor = FINAL; - ops[nops].ftilt = atof(arg[iarg+2]); + ops[nops].ftilt = force->numeric(FLERR,arg[iarg+2]); nops++; iarg += 3; } else if (strcmp(arg[iarg+1],"delta") == 0) { if (iarg+3 > narg) error->all(FLERR,"Illegal change_box command"); ops[nops].flavor = DELTA; - ops[nops].dtilt = atof(arg[iarg+2]); + ops[nops].dtilt = force->numeric(FLERR,arg[iarg+2]); nops++; iarg += 3; } else error->all(FLERR,"Illegal change_box command"); diff --git a/src/comm.cpp b/src/comm.cpp index b15fc5a285d8f3b8eba6ed63e391c7d03f47b460..4090fc2cea9238def704ed32ca510381732c036a 100644 --- a/src/comm.cpp +++ b/src/comm.cpp @@ -1699,7 +1699,7 @@ void Comm::set(int narg, char **arg) iarg += 2; } else if (strcmp(arg[iarg],"cutoff") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal communicate command"); - cutghostuser = atof(arg[iarg+1]); + cutghostuser = force->numeric(FLERR,arg[iarg+1]); if (cutghostuser < 0.0) error->all(FLERR,"Invalid cutoff in communicate command"); iarg += 2; @@ -1723,11 +1723,11 @@ void Comm::set_processors(int narg, char **arg) if (narg < 3) error->all(FLERR,"Illegal processors command"); if (strcmp(arg[0],"*") == 0) user_procgrid[0] = 0; - else user_procgrid[0] = atoi(arg[0]); + else user_procgrid[0] = force->inumeric(FLERR,arg[0]); if (strcmp(arg[1],"*") == 0) user_procgrid[1] = 0; - else user_procgrid[1] = atoi(arg[1]); + else user_procgrid[1] = force->inumeric(FLERR,arg[1]); if (strcmp(arg[2],"*") == 0) user_procgrid[2] = 0; - else user_procgrid[2] = atoi(arg[2]); + else user_procgrid[2] = force->inumeric(FLERR,arg[2]); if (user_procgrid[0] < 0 || user_procgrid[1] < 0 || user_procgrid[2] < 0) error->all(FLERR,"Illegal processors command"); @@ -1748,13 +1748,13 @@ void Comm::set_processors(int narg, char **arg) if (iarg+6 > narg) error->all(FLERR,"Illegal processors command"); gridflag = TWOLEVEL; - ncores = atoi(arg[iarg+2]); + ncores = force->inumeric(FLERR,arg[iarg+2]); if (strcmp(arg[iarg+3],"*") == 0) user_coregrid[0] = 0; - else user_coregrid[0] = atoi(arg[iarg+3]); + else user_coregrid[0] = force->inumeric(FLERR,arg[iarg+3]); if (strcmp(arg[iarg+4],"*") == 0) user_coregrid[1] = 0; - else user_coregrid[1] = atoi(arg[iarg+4]); + else user_coregrid[1] = force->inumeric(FLERR,arg[iarg+4]); if (strcmp(arg[iarg+5],"*") == 0) user_coregrid[2] = 0; - else user_coregrid[2] = atoi(arg[iarg+5]); + else user_coregrid[2] = force->inumeric(FLERR,arg[iarg+5]); if (ncores <= 0 || user_coregrid[0] < 0 || user_coregrid[1] < 0 || user_coregrid[2] < 0) @@ -1797,8 +1797,8 @@ void Comm::set_processors(int narg, char **arg) error->all(FLERR, "Cannot use processors part command " "without using partitions"); - int isend = atoi(arg[iarg+1]); - int irecv = atoi(arg[iarg+2]); + int isend = force->inumeric(FLERR,arg[iarg+1]); + int irecv = force->inumeric(FLERR,arg[iarg+2]); if (isend < 1 || isend > universe->nworlds || irecv < 1 || irecv > universe->nworlds || isend == irecv) error->all(FLERR,"Invalid partitions in processors part command"); diff --git a/src/compute.cpp b/src/compute.cpp index d37b1a4899e691ad8bd643b4b73cb80bc754bf5f..9be14029dc81de5f691a5540da74e7acbf01fb70 100644 --- a/src/compute.cpp +++ b/src/compute.cpp @@ -24,6 +24,7 @@ #include "atom_masks.h" #include "memory.h" #include "error.h" +#include "force.h" using namespace LAMMPS_NS; @@ -111,7 +112,7 @@ void Compute::modify_params(int narg, char **arg) while (iarg < narg) { if (strcmp(arg[iarg],"extra") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal compute_modify command"); - extra_dof = atoi(arg[iarg+1]); + extra_dof = force->inumeric(FLERR,arg[iarg+1]); iarg += 2; } else if (strcmp(arg[iarg],"dynamic") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal compute_modify command"); diff --git a/src/compute_centro_atom.cpp b/src/compute_centro_atom.cpp index f5fad86bd2c2641d2a557b1b6a2d8677dfa8bd5b..fa0d3ce4afa312094f3a78777c81ec7ed191df33 100644 --- a/src/compute_centro_atom.cpp +++ b/src/compute_centro_atom.cpp @@ -41,7 +41,7 @@ ComputeCentroAtom::ComputeCentroAtom(LAMMPS *lmp, int narg, char **arg) : if (strcmp(arg[3],"fcc") == 0) nnn = 12; else if (strcmp(arg[3],"bcc") == 0) nnn = 8; - else nnn = atoi(arg[3]); + else nnn = force->inumeric(FLERR,arg[3]); if (nnn <= 0 || nnn % 2) error->all(FLERR,"Illegal neighbor value for compute centro/atom command"); diff --git a/src/compute_cluster_atom.cpp b/src/compute_cluster_atom.cpp index 3e5def23d4eeb4f4eb3b6ccd5845b980df06070a..030090dcb2dcecff874f30729b62b9a4eddb730d 100644 --- a/src/compute_cluster_atom.cpp +++ b/src/compute_cluster_atom.cpp @@ -36,7 +36,7 @@ ComputeClusterAtom::ComputeClusterAtom(LAMMPS *lmp, int narg, char **arg) : { if (narg != 4) error->all(FLERR,"Illegal compute cluster/atom command"); - double cutoff = atof(arg[3]); + double cutoff = force->numeric(FLERR,arg[3]); cutsq = cutoff*cutoff; peratom_flag = 1; diff --git a/src/compute_cna_atom.cpp b/src/compute_cna_atom.cpp index 5b274a33d3eaccc7a933f3c62d55072760034e2e..b053b9fb646e077d37eebb380e83b1d1a2614f0c 100644 --- a/src/compute_cna_atom.cpp +++ b/src/compute_cna_atom.cpp @@ -49,7 +49,7 @@ ComputeCNAAtom::ComputeCNAAtom(LAMMPS *lmp, int narg, char **arg) : peratom_flag = 1; size_peratom_cols = 0; - double cutoff = atof(arg[3]); + double cutoff = force->numeric(FLERR,arg[3]); if (cutoff < 0.0) error->all(FLERR,"Illegal compute cna/atom command"); cutsq = cutoff*cutoff; diff --git a/src/compute_coord_atom.cpp b/src/compute_coord_atom.cpp index fd28b7551559f03a7f028ebd710d3fa24dd66c24..caa40575ae0bc4dc91e7d752f5e9a386d60f4f77 100644 --- a/src/compute_coord_atom.cpp +++ b/src/compute_coord_atom.cpp @@ -36,7 +36,7 @@ ComputeCoordAtom::ComputeCoordAtom(LAMMPS *lmp, int narg, char **arg) : { if (narg < 4) error->all(FLERR,"Illegal compute coord/atom command"); - double cutoff = atof(arg[3]); + double cutoff = force->numeric(FLERR,arg[3]); cutsq = cutoff*cutoff; ncol = narg-4 + 1; diff --git a/src/compute_rdf.cpp b/src/compute_rdf.cpp index 7511e1b5c3097d1c7451e0478d679d5e8300b592..ca194dc86ae93cc863b1f47eeaf2ff0ecc45d25f 100644 --- a/src/compute_rdf.cpp +++ b/src/compute_rdf.cpp @@ -45,7 +45,7 @@ ComputeRDF::ComputeRDF(LAMMPS *lmp, int narg, char **arg) : array_flag = 1; extarray = 0; - nbin = atoi(arg[3]); + nbin = force->inumeric(FLERR,arg[3]); if (nbin < 1) error->all(FLERR,"Illegal compute rdf command"); if (narg == 4) npairs = 1; else npairs = (narg-4)/2; diff --git a/src/compute_slice.cpp b/src/compute_slice.cpp index 76763dc50f223bc15fc9edb8a8a799996b7a1518..e28e9d5bce3f82beb3e8814472161b73d705a7a0 100644 --- a/src/compute_slice.cpp +++ b/src/compute_slice.cpp @@ -20,6 +20,7 @@ #include "group.h" #include "memory.h" #include "error.h" +#include "force.h" using namespace LAMMPS_NS; @@ -37,9 +38,9 @@ ComputeSlice::ComputeSlice(LAMMPS *lmp, int narg, char **arg) : MPI_Comm_rank(world,&me); - nstart = atoi(arg[3]); - nstop = atoi(arg[4]); - nskip = atoi(arg[5]); + nstart = force->inumeric(FLERR,arg[3]); + nstop = force->inumeric(FLERR,arg[4]); + nskip = force->inumeric(FLERR,arg[5]); if (nstart < 1 || nstop < nstart || nskip < 1) error->all(FLERR,"Illegal compute slice command"); diff --git a/src/create_atoms.cpp b/src/create_atoms.cpp index 336d18fe2f75d6e1803cc2cf276a1e98ad59efce..8a1c1c6d3255bf82cf086168d9c68fd6616fe943 100644 --- a/src/create_atoms.cpp +++ b/src/create_atoms.cpp @@ -25,6 +25,7 @@ #include "region.h" #include "random_park.h" #include "error.h" +#include "force.h" using namespace LAMMPS_NS; @@ -50,7 +51,7 @@ void CreateAtoms::command(int narg, char **arg) // parse arguments if (narg < 2) error->all(FLERR,"Illegal create_atoms command"); - itype = atoi(arg[0]); + itype = force->inumeric(FLERR,arg[0]); if (itype <= 0 || itype > atom->ntypes) error->all(FLERR,"Invalid atom type in create_atoms command"); @@ -68,15 +69,15 @@ void CreateAtoms::command(int narg, char **arg) } else if (strcmp(arg[1],"single") == 0) { style = SINGLE; if (narg < 5) error->all(FLERR,"Illegal create_atoms command"); - xone[0] = atof(arg[2]); - xone[1] = atof(arg[3]); - xone[2] = atof(arg[4]); + xone[0] = force->numeric(FLERR,arg[2]); + xone[1] = force->numeric(FLERR,arg[3]); + xone[2] = force->numeric(FLERR,arg[4]); iarg = 5; } else if (strcmp(arg[1],"random") == 0) { style = RANDOM; if (narg < 5) error->all(FLERR,"Illegal create_atoms command"); - nrandom = atoi(arg[2]); - seed = atoi(arg[3]); + nrandom = force->inumeric(FLERR,arg[2]); + seed = force->inumeric(FLERR,arg[3]); if (strcmp(arg[4],"NULL") == 0) nregion = -1; else { nregion = domain->find_region(arg[4]); @@ -98,8 +99,8 @@ void CreateAtoms::command(int narg, char **arg) while (iarg < narg) { if (strcmp(arg[iarg],"basis") == 0) { if (iarg+3 > narg) error->all(FLERR,"Illegal create_atoms command"); - int ibasis = atoi(arg[iarg+1]); - itype = atoi(arg[iarg+2]); + int ibasis = force->inumeric(FLERR,arg[iarg+1]); + itype = force->inumeric(FLERR,arg[iarg+2]); if (ibasis <= 0 || ibasis > nbasis || itype <= 0 || itype > atom->ntypes) error->all(FLERR,"Invalid basis setting in create_atoms command"); diff --git a/src/create_box.cpp b/src/create_box.cpp index b8d53494199fce40e736806d3bd3e28d53e17236..5c62d2bd5eef5f37ba397f0532e3ec23fb05cb43 100644 --- a/src/create_box.cpp +++ b/src/create_box.cpp @@ -94,7 +94,7 @@ void CreateBox::command(int narg, char **arg) // set atom and topology type quantities - atom->ntypes = atoi(arg[0]); + atom->ntypes = force->inumeric(FLERR,arg[0]); atom->nbondtypes = 0; atom->nangletypes = 0; atom->ndihedraltypes = 0; diff --git a/src/delete_atoms.cpp b/src/delete_atoms.cpp index d2fa42192bf21dacc82b3665751569509f1cd7f2..f16cc4ce3cc7918b9d37edffff001da7a1d72565 100644 --- a/src/delete_atoms.cpp +++ b/src/delete_atoms.cpp @@ -228,7 +228,7 @@ void DeleteAtoms::delete_overlap(int narg, char **arg) // read args - double cut = atof(arg[1]); + double cut = force->numeric(FLERR,arg[1]); double cutsq = cut*cut; int igroup1 = group->find(arg[2]); @@ -375,8 +375,8 @@ void DeleteAtoms::delete_porosity(int narg, char **arg) int iregion = domain->find_region(arg[1]); if (iregion == -1) error->all(FLERR,"Could not find delete_atoms region ID"); - double porosity_fraction = atof(arg[2]); - int seed = atoi(arg[3]); + double porosity_fraction = force->numeric(FLERR,arg[2]); + int seed = force->inumeric(FLERR,arg[3]); options(narg-4,&arg[4]); RanMars *random = new RanMars(lmp,seed + comm->me); diff --git a/src/delete_bonds.cpp b/src/delete_bonds.cpp index 078e935ef7b5a3d447320153ee88fec8bdeac258..9e33b472b0095ce0fe39ffda4f9c42d688391bec 100644 --- a/src/delete_bonds.cpp +++ b/src/delete_bonds.cpp @@ -76,7 +76,7 @@ void DeleteBonds::command(int narg, char **arg) int which; if (style != MULTI && style != STATS) { if (narg < 3) error->all(FLERR,"Illegal delete_bonds command"); - which = atoi(arg[2]); + which = force->inumeric(FLERR,arg[2]); iarg++; } diff --git a/src/displace_atoms.cpp b/src/displace_atoms.cpp index d9f5ce55c027203addf06efa9a40dab89affd6f2..3076bb2deda7bc6ff1c95bd7124e83e025f67751 100644 --- a/src/displace_atoms.cpp +++ b/src/displace_atoms.cpp @@ -26,6 +26,7 @@ #include "math_const.h" #include "random_park.h" #include "error.h" +#include "force.h" using namespace LAMMPS_NS; using namespace MathConst; @@ -89,9 +90,9 @@ void DisplaceAtoms::command(int narg, char **arg) if (style == MOVE) { - double delx = xscale*atof(arg[2]); - double dely = yscale*atof(arg[3]); - double delz = zscale*atof(arg[4]); + double delx = xscale*force->numeric(FLERR,arg[2]); + double dely = yscale*force->numeric(FLERR,arg[3]); + double delz = zscale*force->numeric(FLERR,arg[4]); double **x = atom->x; int *mask = atom->mask; @@ -118,14 +119,14 @@ void DisplaceAtoms::command(int narg, char **arg) double d_lo,d_hi; if (d_dim == 0) { - d_lo = xscale*atof(arg[3]); - d_hi = xscale*atof(arg[4]); + d_lo = xscale*force->numeric(FLERR,arg[3]); + d_hi = xscale*force->numeric(FLERR,arg[4]); } else if (d_dim == 1) { - d_lo = yscale*atof(arg[3]); - d_hi = yscale*atof(arg[4]); + d_lo = yscale*force->numeric(FLERR,arg[3]); + d_hi = yscale*force->numeric(FLERR,arg[4]); } else if (d_dim == 2) { - d_lo = zscale*atof(arg[3]); - d_hi = zscale*atof(arg[4]); + d_lo = zscale*force->numeric(FLERR,arg[3]); + d_hi = zscale*force->numeric(FLERR,arg[4]); } int coord_dim; @@ -136,14 +137,14 @@ void DisplaceAtoms::command(int narg, char **arg) double coord_lo,coord_hi; if (coord_dim == 0) { - coord_lo = xscale*atof(arg[6]); - coord_hi = xscale*atof(arg[7]); + coord_lo = xscale*force->numeric(FLERR,arg[6]); + coord_hi = xscale*force->numeric(FLERR,arg[7]); } else if (coord_dim == 1) { - coord_lo = yscale*atof(arg[6]); - coord_hi = yscale*atof(arg[7]); + coord_lo = yscale*force->numeric(FLERR,arg[6]); + coord_hi = yscale*force->numeric(FLERR,arg[7]); } else if (coord_dim == 2) { - coord_lo = zscale*atof(arg[6]); - coord_hi = zscale*atof(arg[7]); + coord_lo = zscale*force->numeric(FLERR,arg[6]); + coord_hi = zscale*force->numeric(FLERR,arg[7]); } double **x = atom->x; @@ -169,10 +170,10 @@ void DisplaceAtoms::command(int narg, char **arg) if (style == RANDOM) { RanPark *random = new RanPark(lmp,1); - double dx = xscale*atof(arg[2]); - double dy = yscale*atof(arg[3]); - double dz = zscale*atof(arg[4]); - int seed = atoi(arg[5]); + double dx = xscale*force->numeric(FLERR,arg[2]); + double dy = yscale*force->numeric(FLERR,arg[3]); + double dz = zscale*force->numeric(FLERR,arg[4]); + int seed = force->inumeric(FLERR,arg[5]); if (seed <= 0) error->all(FLERR,"Illegal displace_atoms random command"); double **x = atom->x; @@ -207,13 +208,13 @@ void DisplaceAtoms::command(int narg, char **arg) double a[3],b[3],c[3],d[3],disp[3],runit[3]; int dim = domain->dimension; - point[0] = xscale*atof(arg[2]); - point[1] = yscale*atof(arg[3]); - point[2] = zscale*atof(arg[4]); - axis[0] = atof(arg[5]); - axis[1] = atof(arg[6]); - axis[2] = atof(arg[7]); - double theta = atof(arg[8]); + point[0] = xscale*force->numeric(FLERR,arg[2]); + point[1] = yscale*force->numeric(FLERR,arg[3]); + point[2] = zscale*force->numeric(FLERR,arg[4]); + axis[0] = force->numeric(FLERR,arg[5]); + axis[1] = force->numeric(FLERR,arg[6]); + axis[2] = force->numeric(FLERR,arg[7]); + double theta = force->numeric(FLERR,arg[8]); if (dim == 2 and (axis[0] != 0.0 || axis[1] != 0.0)) error->all(FLERR,"Invalid displace_atoms rotate axis for 2d"); diff --git a/src/dump.cpp b/src/dump.cpp index 8bee56a0de9658a2a7206327a6e85233c2eafa17..551cde0ad4ad1b23f7a70115345b9a40aca19207 100644 --- a/src/dump.cpp +++ b/src/dump.cpp @@ -25,6 +25,7 @@ #include "output.h" #include "memory.h" #include "error.h" +#include "force.h" using namespace LAMMPS_NS; @@ -667,7 +668,7 @@ void Dump::modify_params(int narg, char **arg) strcpy(output->var_dump[idump],&arg[iarg+1][2]); n = 0; } else { - n = atoi(arg[iarg+1]); + n = force->inumeric(FLERR,arg[iarg+1]); if (n <= 0) error->all(FLERR,"Illegal dump_modify command"); } output->every_dump[idump] = n; @@ -684,7 +685,7 @@ void Dump::modify_params(int narg, char **arg) if (!multiproc) error->all(FLERR,"Cannot use dump_modify fileper " "without % in dump file name"); - int nper = atoi(arg[iarg+1]); + int nper = force->inumeric(FLERR,arg[iarg+1]); if (nper <= 0) error->all(FLERR,"Illegal dump_modify command"); multiproc = nprocs/nper; @@ -730,7 +731,7 @@ void Dump::modify_params(int narg, char **arg) if (!multiproc) error->all(FLERR,"Cannot use dump_modify nfile " "without % in dump file name"); - int nfile = atoi(arg[iarg+1]); + int nfile = force->inumeric(FLERR,arg[iarg+1]); if (nfile <= 0) error->all(FLERR,"Illegal dump_modify command"); nfile = MIN(nfile,nprocs); @@ -760,7 +761,7 @@ void Dump::modify_params(int narg, char **arg) } else if (strcmp(arg[iarg],"pad") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal dump_modify command"); - padflag = atoi(arg[iarg+1]); + padflag = force->inumeric(FLERR,arg[iarg+1]); if (padflag < 0) error->all(FLERR,"Illegal dump_modify command"); iarg += 2; } else if (strcmp(arg[iarg],"sort") == 0) { @@ -772,7 +773,7 @@ void Dump::modify_params(int narg, char **arg) sortorder = ASCEND; } else { sort_flag = 1; - sortcol = atoi(arg[iarg+1]); + sortcol = force->inumeric(FLERR,arg[iarg+1]); sortorder = ASCEND; if (sortcol == 0) error->all(FLERR,"Illegal dump_modify command"); if (sortcol < 0) { diff --git a/src/dump_custom.cpp b/src/dump_custom.cpp index 114666051107c67bdfa870e6dba3a9a2dcc33222..38ea537281c5d34a764193fbdcdea00a955e0bc9 100644 --- a/src/dump_custom.cpp +++ b/src/dump_custom.cpp @@ -57,7 +57,7 @@ DumpCustom::DumpCustom(LAMMPS *lmp, int narg, char **arg) : clearstep = 1; - nevery = atoi(arg[3]); + nevery = force->inumeric(FLERR,arg[3]); // size_one may be shrunk below if additional optional args exist @@ -1565,7 +1565,7 @@ int DumpCustom::modify_param(int narg, char **arg) // set threshhold value - thresh_value[nthresh] = atof(arg[3]); + thresh_value[nthresh] = force->numeric(FLERR,arg[3]); nthresh++; return 4; diff --git a/src/dump_image.cpp b/src/dump_image.cpp index c06b35e6c2a1a637535e192185341169707b90a2..c4aa25b9c4c85ea2f3d56695aab70060be0c77a6 100644 --- a/src/dump_image.cpp +++ b/src/dump_image.cpp @@ -113,7 +113,7 @@ DumpImage::DumpImage(LAMMPS *lmp, int narg, char **arg) : if (strcmp(arg[iarg],"adiam") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal dump image command"); adiam = NUMERIC; - adiamvalue = atof(arg[iarg+1]); + adiamvalue = force->numeric(FLERR,arg[iarg+1]); if (adiamvalue <= 0.0) error->all(FLERR,"Illegal dump image command"); iarg += 2; @@ -135,7 +135,7 @@ DumpImage::DumpImage(LAMMPS *lmp, int narg, char **arg) : else error->all(FLERR,"Illegal dump image command"); if (!islower(arg[iarg+2][0])) { bdiam = NUMERIC; - bdiamvalue = atof(arg[iarg+2]); + bdiamvalue = force->numeric(FLERR,arg[iarg+2]); if (bdiamvalue <= 0.0) error->all(FLERR,"Illegal dump image command"); } else if (strcmp(arg[iarg+2],"atom") == 0) bdiam = ATOM; else if (strcmp(arg[iarg+2],"type") == 0) bdiam = TYPE; @@ -145,8 +145,8 @@ DumpImage::DumpImage(LAMMPS *lmp, int narg, char **arg) : } else if (strcmp(arg[iarg],"size") == 0) { if (iarg+3 > narg) error->all(FLERR,"Illegal dump image command"); - int width = atoi(arg[iarg+1]); - int height = atoi(arg[iarg+2]); + int width = force->inumeric(FLERR,arg[iarg+1]); + int height = force->inumeric(FLERR,arg[iarg+2]); if (width <= 0 || height <= 0) error->all(FLERR,"Illegal dump image command"); image->width = width; @@ -160,7 +160,7 @@ DumpImage::DumpImage(LAMMPS *lmp, int narg, char **arg) : thetastr = new char[n]; strcpy(thetastr,&arg[iarg+1][2]); } else { - double theta = atof(arg[iarg+1]); + double theta = force->numeric(FLERR,arg[iarg+1]); if (theta < 0.0 || theta > 180.0) error->all(FLERR,"Invalid dump image theta value"); theta *= MY_PI/180.0; @@ -171,7 +171,7 @@ DumpImage::DumpImage(LAMMPS *lmp, int narg, char **arg) : phistr = new char[n]; strcpy(phistr,&arg[iarg+2][2]); } else { - double phi = atof(arg[iarg+2]); + double phi = force->numeric(FLERR,arg[iarg+2]); phi *= MY_PI/180.0; image->phi = phi; } @@ -187,19 +187,19 @@ DumpImage::DumpImage(LAMMPS *lmp, int narg, char **arg) : cxstr = new char[n]; strcpy(cxstr,&arg[iarg+2][2]); cflag = DYNAMIC; - } else cx = atof(arg[iarg+2]); + } else cx = force->numeric(FLERR,arg[iarg+2]); if (strstr(arg[iarg+3],"v_") == arg[iarg+3]) { int n = strlen(&arg[iarg+3][2]) + 1; cystr = new char[n]; strcpy(cystr,&arg[iarg+3][2]); cflag = DYNAMIC; - } else cy = atof(arg[iarg+3]); + } else cy = force->numeric(FLERR,arg[iarg+3]); if (strstr(arg[iarg+4],"v_") == arg[iarg+4]) { int n = strlen(&arg[iarg+4][2]) + 1; czstr = new char[n]; strcpy(czstr,&arg[iarg+4][2]); cflag = DYNAMIC; - } else cz = atof(arg[iarg+4]); + } else cz = force->numeric(FLERR,arg[iarg+4]); iarg += 5; } else if (strcmp(arg[iarg],"up") == 0) { @@ -208,17 +208,17 @@ DumpImage::DumpImage(LAMMPS *lmp, int narg, char **arg) : int n = strlen(&arg[iarg+1][2]) + 1; upxstr = new char[n]; strcpy(upxstr,&arg[iarg+1][2]); - } else image->up[0] = atof(arg[iarg+1]); + } else image->up[0] = force->numeric(FLERR,arg[iarg+1]); if (strstr(arg[iarg+2],"v_") == arg[iarg+2]) { int n = strlen(&arg[iarg+2][2]) + 1; upystr = new char[n]; strcpy(upystr,&arg[iarg+2][2]); - } else image->up[1] = atof(arg[iarg+2]); + } else image->up[1] = force->numeric(FLERR,arg[iarg+2]); if (strstr(arg[iarg+3],"v_") == arg[iarg+3]) { int n = strlen(&arg[iarg+3][2]) + 1; upzstr = new char[n]; strcpy(upzstr,&arg[iarg+3][2]); - } else image->up[2] = atof(arg[iarg+3]); + } else image->up[2] = force->numeric(FLERR,arg[iarg+3]); iarg += 4; } else if (strcmp(arg[iarg],"zoom") == 0) { @@ -228,7 +228,7 @@ DumpImage::DumpImage(LAMMPS *lmp, int narg, char **arg) : zoomstr = new char[n]; strcpy(zoomstr,&arg[iarg+1][2]); } else { - double zoom = atof(arg[iarg+1]); + double zoom = force->numeric(FLERR,arg[iarg+1]); if (zoom <= 0.0) error->all(FLERR,"Illegal dump image command"); image->zoom = zoom; } @@ -242,7 +242,7 @@ DumpImage::DumpImage(LAMMPS *lmp, int narg, char **arg) : perspstr = new char[n]; strcpy(perspstr,&arg[iarg+1][2]); } else { - double persp = atof(arg[iarg+1]); + double persp = force->numeric(FLERR,arg[iarg+1]); if (persp < 0.0) error->all(FLERR,"Illegal dump image command"); image->persp = persp; } @@ -253,7 +253,7 @@ DumpImage::DumpImage(LAMMPS *lmp, int narg, char **arg) : if (strcmp(arg[iarg+1],"yes") == 0) boxflag = YES; else if (strcmp(arg[iarg+1],"no") == 0) boxflag = NO; else error->all(FLERR,"Illegal dump image command"); - boxdiam = atof(arg[iarg+2]); + boxdiam = force->numeric(FLERR,arg[iarg+2]); if (boxdiam < 0.0) error->all(FLERR,"Illegal dump image command"); iarg += 3; @@ -262,15 +262,15 @@ DumpImage::DumpImage(LAMMPS *lmp, int narg, char **arg) : if (strcmp(arg[iarg+1],"yes") == 0) axesflag = YES; else if (strcmp(arg[iarg+1],"no") == 0) axesflag = NO; else error->all(FLERR,"Illegal dump image command"); - axeslen = atof(arg[iarg+2]); - axesdiam = atof(arg[iarg+3]); + axeslen = force->numeric(FLERR,arg[iarg+2]); + axesdiam = force->numeric(FLERR,arg[iarg+3]); if (axeslen < 0.0 || axesdiam < 0.0) error->all(FLERR,"Illegal dump image command"); iarg += 4; } else if (strcmp(arg[iarg],"shiny") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal dump image command"); - double shiny = atof(arg[iarg+1]); + double shiny = force->numeric(FLERR,arg[iarg+1]); if (shiny < 0.0 || shiny > 1.0) error->all(FLERR,"Illegal dump image command"); image->shiny = shiny; @@ -281,10 +281,10 @@ DumpImage::DumpImage(LAMMPS *lmp, int narg, char **arg) : if (strcmp(arg[iarg+1],"yes") == 0) image->ssao = YES; else if (strcmp(arg[iarg+1],"no") == 0) image->ssao = NO; else error->all(FLERR,"Illegal dump image command"); - int seed = atoi(arg[iarg+2]); + int seed = force->inumeric(FLERR,arg[iarg+2]); if (seed <= 0) error->all(FLERR,"Illegal dump image command"); image->seed = seed; - double ssaoint = atof(arg[iarg+3]); + double ssaoint = force->numeric(FLERR,arg[iarg+3]); if (ssaoint < 0.0 || ssaoint > 1.0) error->all(FLERR,"Illegal dump image command"); image->ssaoint = ssaoint; @@ -929,7 +929,7 @@ int DumpImage::modify_param(int narg, char **arg) if (narg < 3) error->all(FLERR,"Illegal dump_modify command"); int nlo,nhi; force->bounds(arg[1],atom->ntypes,nlo,nhi); - double diam = atof(arg[2]); + double diam = force->numeric(FLERR,arg[2]); if (diam <= 0.0) error->all(FLERR,"Illegal dump_modify command"); for (int i = nlo; i <= nhi; i++) diamtype[i] = diam; return 3; @@ -940,7 +940,7 @@ int DumpImage::modify_param(int narg, char **arg) if (strlen(arg[3]) != 2) error->all(FLERR,"Illegal dump_modify command"); int factor = 2; if (arg[3][0] == 's') factor = 1; - int nentry = atoi(arg[5]); + int nentry = force->inumeric(FLERR,arg[5]); if (nentry < 1) error->all(FLERR,"Illegal dump_modify command"); int n = 6 + factor*nentry; if (narg < n) error->all(FLERR,"Illegal dump_modify command"); @@ -991,7 +991,7 @@ int DumpImage::modify_param(int narg, char **arg) error->all(FLERR,"Dump modify bdiam not allowed with no bond types"); int nlo,nhi; force->bounds(arg[1],atom->ntypes,nlo,nhi); - double diam = atof(arg[2]); + double diam = force->numeric(FLERR,arg[2]); if (diam <= 0.0) error->all(FLERR,"Illegal dump_modify command"); for (int i = nlo; i <= nhi; i++) bdiamtype[i] = diam; return 3; @@ -1017,7 +1017,7 @@ int DumpImage::modify_param(int narg, char **arg) if (strcmp(arg[0],"color") == 0) { if (narg < 5) error->all(FLERR,"Illegal dump_modify command"); - int flag = image->addcolor(arg[1],atof(arg[2]),atof(arg[3]),atof(arg[4])); + int flag = image->addcolor(arg[1],force->numeric(FLERR,arg[2]),force->numeric(FLERR,arg[3]),force->numeric(FLERR,arg[4])); if (flag) error->all(FLERR,"Illegal dump_modify command"); return 5; } diff --git a/src/dump_local.cpp b/src/dump_local.cpp index e865a3f70baa43406b59bf82cd7328331217a3fe..2812fb9a5cd3706a2036d5ef873bfab5bfd0ba79 100644 --- a/src/dump_local.cpp +++ b/src/dump_local.cpp @@ -23,6 +23,7 @@ #include "update.h" #include "memory.h" #include "error.h" +#include "force.h" using namespace LAMMPS_NS; @@ -39,7 +40,7 @@ DumpLocal::DumpLocal(LAMMPS *lmp, int narg, char **arg) : clearstep = 1; - nevery = atoi(arg[3]); + nevery = force->inumeric(FLERR,arg[3]); size_one = nfield = narg-5; pack_choice = new FnPtrPack[nfield]; diff --git a/src/fix_addforce.cpp b/src/fix_addforce.cpp index 8ec546bb01772ef06dc2930be79356bc43218bf6..27dc6c426a0609d790064823d665a705e80abe80 100644 --- a/src/fix_addforce.cpp +++ b/src/fix_addforce.cpp @@ -24,6 +24,7 @@ #include "variable.h" #include "memory.h" #include "error.h" +#include "force.h" using namespace LAMMPS_NS; using namespace FixConst; @@ -51,7 +52,7 @@ FixAddForce::FixAddForce(LAMMPS *lmp, int narg, char **arg) : xstr = new char[n]; strcpy(xstr,&arg[3][2]); } else { - xvalue = atof(arg[3]); + xvalue = force->numeric(FLERR,arg[3]); xstyle = CONSTANT; } if (strstr(arg[4],"v_") == arg[4]) { @@ -59,7 +60,7 @@ FixAddForce::FixAddForce(LAMMPS *lmp, int narg, char **arg) : ystr = new char[n]; strcpy(ystr,&arg[4][2]); } else { - yvalue = atof(arg[4]); + yvalue = force->numeric(FLERR,arg[4]); ystyle = CONSTANT; } if (strstr(arg[5],"v_") == arg[5]) { @@ -67,7 +68,7 @@ FixAddForce::FixAddForce(LAMMPS *lmp, int narg, char **arg) : zstr = new char[n]; strcpy(zstr,&arg[5][2]); } else { - zvalue = atof(arg[5]); + zvalue = force->numeric(FLERR,arg[5]); zstyle = CONSTANT; } diff --git a/src/fix_ave_atom.cpp b/src/fix_ave_atom.cpp index c1fc8c901c0b6a848cc018025388a197e1624139..fabf33038e984817c389d779c42b7dee7d383f5a 100644 --- a/src/fix_ave_atom.cpp +++ b/src/fix_ave_atom.cpp @@ -23,6 +23,7 @@ #include "variable.h" #include "memory.h" #include "error.h" +#include "force.h" using namespace LAMMPS_NS; using namespace FixConst; @@ -38,9 +39,9 @@ FixAveAtom::FixAveAtom(LAMMPS *lmp, int narg, char **arg) : { if (narg < 7) error->all(FLERR,"Illegal fix ave/atom command"); - nevery = atoi(arg[3]); - nrepeat = atoi(arg[4]); - peratom_freq = atoi(arg[5]); + nevery = force->inumeric(FLERR,arg[3]); + nrepeat = force->inumeric(FLERR,arg[4]); + peratom_freq = force->inumeric(FLERR,arg[5]); // parse remaining values diff --git a/src/fix_ave_correlate.cpp b/src/fix_ave_correlate.cpp index 15171abf3182c25292a466cbfa6b64d0525f813a..6002dc7f4a0315f6dfee2fc66a02894064e285c6 100644 --- a/src/fix_ave_correlate.cpp +++ b/src/fix_ave_correlate.cpp @@ -28,6 +28,7 @@ #include "variable.h" #include "memory.h" #include "error.h" +#include "force.h" using namespace LAMMPS_NS; using namespace FixConst; @@ -49,9 +50,9 @@ FixAveCorrelate::FixAveCorrelate(LAMMPS * lmp, int narg, char **arg): MPI_Comm_rank(world,&me); - nevery = atoi(arg[3]); - nrepeat = atoi(arg[4]); - nfreq = atoi(arg[5]); + nevery = force->inumeric(FLERR,arg[3]); + nrepeat = force->inumeric(FLERR,arg[4]); + nfreq = force->inumeric(FLERR,arg[5]); global_freq = nfreq; // parse values until one isn't recognized @@ -124,11 +125,11 @@ FixAveCorrelate::FixAveCorrelate(LAMMPS * lmp, int narg, char **arg): iarg += 2; } else if (strcmp(arg[iarg],"start") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal fix ave/correlate command"); - startstep = atoi(arg[iarg+1]); + startstep = force->inumeric(FLERR,arg[iarg+1]); iarg += 2; } else if (strcmp(arg[iarg],"prefactor") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal fix ave/correlate command"); - prefactor = atof(arg[iarg+1]); + prefactor = force->numeric(FLERR,arg[iarg+1]); iarg += 2; } else if (strcmp(arg[iarg],"file") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal fix ave/correlate command"); diff --git a/src/fix_ave_histo.cpp b/src/fix_ave_histo.cpp index f4ca9e0adebfd634a891df96032d081dd17e4d6b..256179a6257348b0b7e193f41d548fb081463807 100644 --- a/src/fix_ave_histo.cpp +++ b/src/fix_ave_histo.cpp @@ -23,6 +23,7 @@ #include "variable.h" #include "memory.h" #include "error.h" +#include "force.h" using namespace LAMMPS_NS; using namespace FixConst; @@ -49,9 +50,9 @@ FixAveHisto::FixAveHisto(LAMMPS *lmp, int narg, char **arg) : MPI_Comm_rank(world,&me); - nevery = atoi(arg[3]); - nrepeat = atoi(arg[4]); - nfreq = atoi(arg[5]); + nevery = force->inumeric(FLERR,arg[3]); + nrepeat = force->inumeric(FLERR,arg[4]); + nfreq = force->inumeric(FLERR,arg[5]); global_freq = nfreq; vector_flag = 1; @@ -61,9 +62,9 @@ FixAveHisto::FixAveHisto(LAMMPS *lmp, int narg, char **arg) : size_array_cols = 3; extarray = 0; - lo = atof(arg[6]); - hi = atof(arg[7]); - nbins = atoi(arg[8]); + lo = force->numeric(FLERR,arg[6]); + hi = force->numeric(FLERR,arg[7]); + nbins = force->inumeric(FLERR,arg[8]); // scan values to count them // then read options so know mode = SCALAR/VECTOR before re-reading values @@ -939,14 +940,14 @@ void FixAveHisto::options(int narg, char **arg) else error->all(FLERR,"Illegal fix ave/histo command"); if (ave == WINDOW) { if (iarg+3 > narg) error->all(FLERR,"Illegal fix ave/histo command"); - nwindow = atoi(arg[iarg+2]); + nwindow = force->inumeric(FLERR,arg[iarg+2]); if (nwindow <= 0) error->all(FLERR,"Illegal fix ave/histo command"); } iarg += 2; if (ave == WINDOW) iarg++; } else if (strcmp(arg[iarg],"start") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal fix ave/histo command"); - startstep = atoi(arg[iarg+1]); + startstep = force->inumeric(FLERR,arg[iarg+1]); iarg += 2; } else if (strcmp(arg[iarg],"mode") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal fix ave/histo command"); diff --git a/src/fix_ave_spatial.cpp b/src/fix_ave_spatial.cpp index 6cfb753ffdd117be09219fce062a0fbc32495218..a644aab3238ccf1fb5397f1527ae6fe558a3e0c1 100644 --- a/src/fix_ave_spatial.cpp +++ b/src/fix_ave_spatial.cpp @@ -52,9 +52,9 @@ FixAveSpatial::FixAveSpatial(LAMMPS *lmp, int narg, char **arg) : MPI_Comm_rank(world,&me); - nevery = atoi(arg[3]); - nrepeat = atoi(arg[4]); - nfreq = atoi(arg[5]); + nevery = force->inumeric(FLERR,arg[3]); + nrepeat = force->inumeric(FLERR,arg[4]); + nfreq = force->inumeric(FLERR,arg[5]); global_freq = nfreq; no_change_box = 1; @@ -75,9 +75,9 @@ FixAveSpatial::FixAveSpatial(LAMMPS *lmp, int narg, char **arg) : else if (strcmp(arg[iarg+1],"center") == 0) originflag[ndim] = CENTER; else if (strcmp(arg[iarg+1],"upper") == 0) originflag[ndim] = UPPER; else originflag[ndim] = COORD; - if (originflag[ndim] == COORD) origin[ndim] = atof(arg[iarg+1]); + if (originflag[ndim] == COORD) origin[ndim] = force->numeric(FLERR,arg[iarg+1]); - delta[ndim] = atof(arg[iarg+2]); + delta[ndim] = force->numeric(FLERR,arg[iarg+2]); ndim++; iarg += 3; } @@ -213,7 +213,7 @@ FixAveSpatial::FixAveSpatial(LAMMPS *lmp, int narg, char **arg) : else error->all(FLERR,"Illegal fix ave/spatial command"); if (ave == WINDOW) { if (iarg+3 > narg) error->all(FLERR,"Illegal fix ave/spatial command"); - nwindow = atoi(arg[iarg+2]); + nwindow = force->inumeric(FLERR,arg[iarg+2]); if (nwindow <= 0) error->all(FLERR,"Illegal fix ave/spatial command"); } iarg += 2; diff --git a/src/fix_ave_time.cpp b/src/fix_ave_time.cpp index 18003af66cad175bfc708e640deb10e6dc3b0641..ed6a47539e894ec401d58746ec3c9bb1433895fb 100644 --- a/src/fix_ave_time.cpp +++ b/src/fix_ave_time.cpp @@ -26,6 +26,7 @@ #include "variable.h" #include "memory.h" #include "error.h" +#include "force.h" using namespace LAMMPS_NS; using namespace FixConst; @@ -47,9 +48,9 @@ FixAveTime::FixAveTime(LAMMPS *lmp, int narg, char **arg) : MPI_Comm_rank(world,&me); - nevery = atoi(arg[3]); - nrepeat = atoi(arg[4]); - nfreq = atoi(arg[5]); + nevery = force->inumeric(FLERR,arg[3]); + nrepeat = force->inumeric(FLERR,arg[4]); + nfreq = force->inumeric(FLERR,arg[5]); global_freq = nfreq; @@ -855,14 +856,14 @@ void FixAveTime::options(int narg, char **arg) else error->all(FLERR,"Illegal fix ave/time command"); if (ave == WINDOW) { if (iarg+3 > narg) error->all(FLERR,"Illegal fix ave/time command"); - nwindow = atoi(arg[iarg+2]); + nwindow = force->inumeric(FLERR,arg[iarg+2]); if (nwindow <= 0) error->all(FLERR,"Illegal fix ave/time command"); } iarg += 2; if (ave == WINDOW) iarg++; } else if (strcmp(arg[iarg],"start") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal fix ave/time command"); - startstep = atoi(arg[iarg+1]); + startstep = force->inumeric(FLERR,arg[iarg+1]); iarg += 2; } else if (strcmp(arg[iarg],"mode") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal fix ave/time command"); @@ -873,7 +874,7 @@ void FixAveTime::options(int narg, char **arg) } else if (strcmp(arg[iarg],"off") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal fix ave/time command"); memory->grow(offlist,noff+1,"ave/time:offlist"); - offlist[noff++] = atoi(arg[iarg+1]); + offlist[noff++] = force->inumeric(FLERR,arg[iarg+1]); iarg += 2; } else if (strcmp(arg[iarg],"overwrite") == 0) { overwrite = 1; diff --git a/src/fix_aveforce.cpp b/src/fix_aveforce.cpp index e8338233572875a2384ba59e54fb6032e86a6603..6b4bf40bc8c246c4bbbb4188ed67a990c529be7f 100644 --- a/src/fix_aveforce.cpp +++ b/src/fix_aveforce.cpp @@ -24,6 +24,7 @@ #include "input.h" #include "variable.h" #include "error.h" +#include "force.h" using namespace LAMMPS_NS; using namespace FixConst; @@ -51,7 +52,7 @@ FixAveForce::FixAveForce(LAMMPS *lmp, int narg, char **arg) : } else if (strcmp(arg[3],"NULL") == 0) { xstyle = NONE; } else { - xvalue = atof(arg[3]); + xvalue = force->numeric(FLERR,arg[3]); xstyle = CONSTANT; } if (strstr(arg[4],"v_") == arg[4]) { @@ -61,7 +62,7 @@ FixAveForce::FixAveForce(LAMMPS *lmp, int narg, char **arg) : } else if (strcmp(arg[4],"NULL") == 0) { ystyle = NONE; } else { - yvalue = atof(arg[4]); + yvalue = force->numeric(FLERR,arg[4]); ystyle = CONSTANT; } if (strstr(arg[5],"v_") == arg[5]) { @@ -71,7 +72,7 @@ FixAveForce::FixAveForce(LAMMPS *lmp, int narg, char **arg) : } else if (strcmp(arg[5],"NULL") == 0) { zstyle = NONE; } else { - zvalue = atof(arg[5]); + zvalue = force->numeric(FLERR,arg[5]); zstyle = CONSTANT; } diff --git a/src/fix_balance.cpp b/src/fix_balance.cpp index f19356d57cea2ce32f10595675fa46c7a96aaf97..5ee057ab5fdbb044bc188717efc46ea4209e3c9e 100644 --- a/src/fix_balance.cpp +++ b/src/fix_balance.cpp @@ -46,11 +46,11 @@ FixBalance::FixBalance(LAMMPS *lmp, int narg, char **arg) : int dimension = domain->dimension; - nevery = atoi(arg[3]); + nevery = force->inumeric(FLERR,arg[3]); if (strlen(arg[4]) > 3) error->all(FLERR,"Illegal fix balance command"); strcpy(bstr,arg[4]); - nitermax = atoi(arg[5]); - thresh = atof(arg[6]); + nitermax = force->inumeric(FLERR,arg[5]); + thresh = force->numeric(FLERR,arg[6]); if (nevery < 0 || nitermax <= 0 || thresh < 1.0) error->all(FLERR,"Illegal fix balance command"); diff --git a/src/fix_box_relax.cpp b/src/fix_box_relax.cpp index 1660b20b1fd04c11e6543cfbcf066fa73d203454..dea4e507a32202b1d48f6d6d7ff4424c61810766 100644 --- a/src/fix_box_relax.cpp +++ b/src/fix_box_relax.cpp @@ -89,7 +89,7 @@ FixBoxRelax::FixBoxRelax(LAMMPS *lmp, int narg, char **arg) : if (strcmp(arg[iarg],"iso") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal fix box/relax command"); pcouple = XYZ; - p_target[0] = p_target[1] = p_target[2] = atof(arg[iarg+1]); + p_target[0] = p_target[1] = p_target[2] = force->numeric(FLERR,arg[iarg+1]); p_flag[0] = p_flag[1] = p_flag[2] = 1; if (dimension == 2) { p_target[2] = 0.0; @@ -99,7 +99,7 @@ FixBoxRelax::FixBoxRelax(LAMMPS *lmp, int narg, char **arg) : } else if (strcmp(arg[iarg],"aniso") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal fix box/relax command"); pcouple = NONE; - p_target[0] = p_target[1] = p_target[2] = atof(arg[iarg+1]); + p_target[0] = p_target[1] = p_target[2] = force->numeric(FLERR,arg[iarg+1]); p_flag[0] = p_flag[1] = p_flag[2] = 1; if (dimension == 2) { p_target[2] = 0.0; @@ -110,7 +110,7 @@ FixBoxRelax::FixBoxRelax(LAMMPS *lmp, int narg, char **arg) : if (iarg+2 > narg) error->all(FLERR,"Illegal fix box/relax command"); pcouple = NONE; scalexy = scalexz = scaleyz = 0; - p_target[0] = p_target[1] = p_target[2] = atof(arg[iarg+1]); + p_target[0] = p_target[1] = p_target[2] = force->numeric(FLERR,arg[iarg+1]); p_flag[0] = p_flag[1] = p_flag[2] = 1; p_target[3] = p_target[4] = p_target[5] = 0.0; p_flag[3] = p_flag[4] = p_flag[5] = 1; @@ -122,19 +122,19 @@ FixBoxRelax::FixBoxRelax(LAMMPS *lmp, int narg, char **arg) : } else if (strcmp(arg[iarg],"x") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal fix box/relax command"); - p_target[0] = atof(arg[iarg+1]); + p_target[0] = force->numeric(FLERR,arg[iarg+1]); p_flag[0] = 1; deviatoric_flag = 1; iarg += 2; } else if (strcmp(arg[iarg],"y") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal fix box/relax command"); - p_target[1] = atof(arg[iarg+1]); + p_target[1] = force->numeric(FLERR,arg[iarg+1]); p_flag[1] = 1; deviatoric_flag = 1; iarg += 2; } else if (strcmp(arg[iarg],"z") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal fix box/relax command"); - p_target[2] = atof(arg[iarg+1]); + p_target[2] = force->numeric(FLERR,arg[iarg+1]); p_flag[2] = 1; deviatoric_flag = 1; iarg += 2; @@ -143,7 +143,7 @@ FixBoxRelax::FixBoxRelax(LAMMPS *lmp, int narg, char **arg) : } else if (strcmp(arg[iarg],"yz") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal fix box/relax command"); - p_target[3] = atof(arg[iarg+1]); + p_target[3] = force->numeric(FLERR,arg[iarg+1]); p_flag[3] = 1; deviatoric_flag = 1; scaleyz = 0; @@ -152,7 +152,7 @@ FixBoxRelax::FixBoxRelax(LAMMPS *lmp, int narg, char **arg) : error->all(FLERR,"Invalid fix box/relax command for a 2d simulation"); } else if (strcmp(arg[iarg],"xz") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal fix box/relax command"); - p_target[4] = atof(arg[iarg+1]); + p_target[4] = force->numeric(FLERR,arg[iarg+1]); p_flag[4] = 1; deviatoric_flag = 1; scalexz = 0; @@ -161,7 +161,7 @@ FixBoxRelax::FixBoxRelax(LAMMPS *lmp, int narg, char **arg) : error->all(FLERR,"Invalid fix box/relax command for a 2d simulation"); } else if (strcmp(arg[iarg],"xy") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal fix box/relax command"); - p_target[5] = atof(arg[iarg+1]); + p_target[5] = force->numeric(FLERR,arg[iarg+1]); p_flag[5] = 1; deviatoric_flag = 1; scalexy = 0; @@ -185,11 +185,11 @@ FixBoxRelax::FixBoxRelax(LAMMPS *lmp, int narg, char **arg) : iarg += 2; } else if (strcmp(arg[iarg],"vmax") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal fix box/relax command"); - vmax = atof(arg[iarg+1]); + vmax = force->numeric(FLERR,arg[iarg+1]); iarg += 2; } else if (strcmp(arg[iarg],"nreset") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal fix box/relax command"); - nreset_h0 = atoi(arg[iarg+1]); + nreset_h0 = force->inumeric(FLERR,arg[iarg+1]); if (nreset_h0 < 0) error->all(FLERR,"Illegal fix box/relax command"); iarg += 2; } else if (strcmp(arg[iarg],"scalexy") == 0) { @@ -212,9 +212,9 @@ FixBoxRelax::FixBoxRelax(LAMMPS *lmp, int narg, char **arg) : iarg += 2; } else if (strcmp(arg[iarg],"fixedpoint") == 0) { if (iarg+4 > narg) error->all(FLERR,"Illegal fix box/relax command"); - fixedpoint[0] = atof(arg[iarg+1]); - fixedpoint[1] = atof(arg[iarg+2]); - fixedpoint[2] = atof(arg[iarg+3]); + fixedpoint[0] = force->numeric(FLERR,arg[iarg+1]); + fixedpoint[1] = force->numeric(FLERR,arg[iarg+2]); + fixedpoint[2] = force->numeric(FLERR,arg[iarg+3]); iarg += 4; } else error->all(FLERR,"Illegal fix box/relax command"); } diff --git a/src/fix_deform.cpp b/src/fix_deform.cpp index 78b5e993138de230065a420b26c1eaa0f0bd4dd6..74bb8fa3e9562c57e856b31e4574fc95fd6940e7 100644 --- a/src/fix_deform.cpp +++ b/src/fix_deform.cpp @@ -53,7 +53,7 @@ FixDeform::FixDeform(LAMMPS *lmp, int narg, char **arg) : Fix(lmp, narg, arg) box_change = 1; no_change_box = 1; - nevery = atoi(arg[3]); + nevery = force->inumeric(FLERR,arg[3]); if (nevery <= 0) error->all(FLERR,"Illegal fix deform command"); // set defaults @@ -85,34 +85,34 @@ FixDeform::FixDeform(LAMMPS *lmp, int narg, char **arg) : Fix(lmp, narg, arg) if (strcmp(arg[iarg+1],"final") == 0) { if (iarg+4 > narg) error->all(FLERR,"Illegal fix deform command"); set[index].style = FINAL; - set[index].flo = atof(arg[iarg+2]); - set[index].fhi = atof(arg[iarg+3]); + set[index].flo = force->numeric(FLERR,arg[iarg+2]); + set[index].fhi = force->numeric(FLERR,arg[iarg+3]); iarg += 4; } else if (strcmp(arg[iarg+1],"delta") == 0) { if (iarg+4 > narg) error->all(FLERR,"Illegal fix deform command"); set[index].style = DELTA; - set[index].dlo = atof(arg[iarg+2]); - set[index].dhi = atof(arg[iarg+3]); + set[index].dlo = force->numeric(FLERR,arg[iarg+2]); + set[index].dhi = force->numeric(FLERR,arg[iarg+3]); iarg += 4; } else if (strcmp(arg[iarg+1],"scale") == 0) { if (iarg+3 > narg) error->all(FLERR,"Illegal fix deform command"); set[index].style = SCALE; - set[index].scale = atof(arg[iarg+2]); + set[index].scale = force->numeric(FLERR,arg[iarg+2]); iarg += 3; } else if (strcmp(arg[iarg+1],"vel") == 0) { if (iarg+3 > narg) error->all(FLERR,"Illegal fix deform command"); set[index].style = VEL; - set[index].vel = atof(arg[iarg+2]); + set[index].vel = force->numeric(FLERR,arg[iarg+2]); iarg += 3; } else if (strcmp(arg[iarg+1],"erate") == 0) { if (iarg+3 > narg) error->all(FLERR,"Illegal fix deform command"); set[index].style = ERATE; - set[index].rate = atof(arg[iarg+2]); + set[index].rate = force->numeric(FLERR,arg[iarg+2]); iarg += 3; } else if (strcmp(arg[iarg+1],"trate") == 0) { if (iarg+3 > narg) error->all(FLERR,"Illegal fix deform command"); set[index].style = TRATE; - set[index].rate = atof(arg[iarg+2]); + set[index].rate = force->numeric(FLERR,arg[iarg+2]); iarg += 3; } else if (strcmp(arg[iarg+1],"volume") == 0) { set[index].style = VOLUME; @@ -120,8 +120,8 @@ FixDeform::FixDeform(LAMMPS *lmp, int narg, char **arg) : Fix(lmp, narg, arg) } else if (strcmp(arg[iarg+1],"wiggle") == 0) { if (iarg+4 > narg) error->all(FLERR,"Illegal fix deform command"); set[index].style = WIGGLE; - set[index].amplitude = atof(arg[iarg+2]); - set[index].tperiod = atof(arg[iarg+3]); + set[index].amplitude = force->numeric(FLERR,arg[iarg+2]); + set[index].tperiod = force->numeric(FLERR,arg[iarg+3]); if (set[index].tperiod <= 0.0) error->all(FLERR,"Illegal fix deform command"); iarg += 4; @@ -157,33 +157,33 @@ FixDeform::FixDeform(LAMMPS *lmp, int narg, char **arg) : Fix(lmp, narg, arg) if (strcmp(arg[iarg+1],"final") == 0) { if (iarg+3 > narg) error->all(FLERR,"Illegal fix deform command"); set[index].style = FINAL; - set[index].ftilt = atof(arg[iarg+2]); + set[index].ftilt = force->numeric(FLERR,arg[iarg+2]); iarg += 3; } else if (strcmp(arg[iarg+1],"delta") == 0) { if (iarg+3 > narg) error->all(FLERR,"Illegal fix deform command"); set[index].style = DELTA; - set[index].dtilt = atof(arg[iarg+2]); + set[index].dtilt = force->numeric(FLERR,arg[iarg+2]); iarg += 3; } else if (strcmp(arg[iarg+1],"vel") == 0) { if (iarg+3 > narg) error->all(FLERR,"Illegal fix deform command"); set[index].style = VEL; - set[index].vel = atof(arg[iarg+2]); + set[index].vel = force->numeric(FLERR,arg[iarg+2]); iarg += 3; } else if (strcmp(arg[iarg+1],"erate") == 0) { if (iarg+3 > narg) error->all(FLERR,"Illegal fix deform command"); set[index].style = ERATE; - set[index].rate = atof(arg[iarg+2]); + set[index].rate = force->numeric(FLERR,arg[iarg+2]); iarg += 3; } else if (strcmp(arg[iarg+1],"trate") == 0) { if (iarg+3 > narg) error->all(FLERR,"Illegal fix deform command"); set[index].style = TRATE; - set[index].rate = atof(arg[iarg+2]); + set[index].rate = force->numeric(FLERR,arg[iarg+2]); iarg += 3; } else if (strcmp(arg[iarg+1],"wiggle") == 0) { if (iarg+4 > narg) error->all(FLERR,"Illegal fix deform command"); set[index].style = WIGGLE; - set[index].amplitude = atof(arg[iarg+2]); - set[index].tperiod = atof(arg[iarg+3]); + set[index].amplitude = force->numeric(FLERR,arg[iarg+2]); + set[index].tperiod = force->numeric(FLERR,arg[iarg+3]); if (set[index].tperiod <= 0.0) error->all(FLERR,"Illegal fix deform command"); iarg += 4; diff --git a/src/fix_deposit.cpp b/src/fix_deposit.cpp index c708a8fdbe9e1f22fd1d280f87e98631867ffe8e..9ee902e0c29b0d6a6f8b51ac63c5aeff9ea711af 100644 --- a/src/fix_deposit.cpp +++ b/src/fix_deposit.cpp @@ -44,10 +44,10 @@ FixDeposit::FixDeposit(LAMMPS *lmp, int narg, char **arg) : // required args - ninsert = atoi(arg[3]); - ntype = atoi(arg[4]); - nfreq = atoi(arg[5]); - seed = atoi(arg[6]); + ninsert = force->inumeric(FLERR,arg[3]); + ntype = force->inumeric(FLERR,arg[4]); + nfreq = force->inumeric(FLERR,arg[5]); + seed = force->inumeric(FLERR,arg[6]); if (seed <= 0) error->all(FLERR,"Illegal fix deposit command"); @@ -414,44 +414,44 @@ void FixDeposit::options(int narg, char **arg) if (iarg+3 > narg) error->all(FLERR,"Illegal fix deposit command"); globalflag = 1; localflag = 0; - lo = atof(arg[iarg+1]); - hi = atof(arg[iarg+2]); + lo = force->numeric(FLERR,arg[iarg+1]); + hi = force->numeric(FLERR,arg[iarg+2]); iarg += 3; } else if (strcmp(arg[iarg],"local") == 0) { if (iarg+4 > narg) error->all(FLERR,"Illegal fix deposit command"); localflag = 1; globalflag = 0; - lo = atof(arg[iarg+1]); - hi = atof(arg[iarg+2]); - deltasq = atof(arg[iarg+3])*atof(arg[iarg+3]); + lo = force->numeric(FLERR,arg[iarg+1]); + hi = force->numeric(FLERR,arg[iarg+2]); + deltasq = force->numeric(FLERR,arg[iarg+3])*force->numeric(FLERR,arg[iarg+3]); iarg += 4; } else if (strcmp(arg[iarg],"near") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal fix deposit command"); - nearsq = atof(arg[iarg+1])*atof(arg[iarg+1]); + nearsq = force->numeric(FLERR,arg[iarg+1])*force->numeric(FLERR,arg[iarg+1]); iarg += 2; } else if (strcmp(arg[iarg],"attempt") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal fix deposit command"); - maxattempt = atoi(arg[iarg+1]); + maxattempt = force->inumeric(FLERR,arg[iarg+1]); iarg += 2; } else if (strcmp(arg[iarg],"rate") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal fix deposit command"); rateflag = 1; - rate = atof(arg[iarg+1]); + rate = force->numeric(FLERR,arg[iarg+1]); iarg += 2; } else if (strcmp(arg[iarg],"vx") == 0) { if (iarg+3 > narg) error->all(FLERR,"Illegal fix deposit command"); - vxlo = atof(arg[iarg+1]); - vxhi = atof(arg[iarg+2]); + vxlo = force->numeric(FLERR,arg[iarg+1]); + vxhi = force->numeric(FLERR,arg[iarg+2]); iarg += 3; } else if (strcmp(arg[iarg],"vy") == 0) { if (iarg+3 > narg) error->all(FLERR,"Illegal fix deposit command"); - vylo = atof(arg[iarg+1]); - vyhi = atof(arg[iarg+2]); + vylo = force->numeric(FLERR,arg[iarg+1]); + vyhi = force->numeric(FLERR,arg[iarg+2]); iarg += 3; } else if (strcmp(arg[iarg],"vz") == 0) { if (iarg+3 > narg) error->all(FLERR,"Illegal fix deposit command"); - vzlo = atof(arg[iarg+1]); - vzhi = atof(arg[iarg+2]); + vzlo = force->numeric(FLERR,arg[iarg+1]); + vzhi = force->numeric(FLERR,arg[iarg+2]); iarg += 3; } else if (strcmp(arg[iarg],"units") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal fix deposit command"); @@ -461,9 +461,9 @@ void FixDeposit::options(int narg, char **arg) iarg += 2; } else if (strcmp(arg[iarg],"target") == 0) { if (iarg+4 > narg) error->all(FLERR,"Illegal fix deposit command"); - tx = atof(arg[iarg+1]); - ty = atof(arg[iarg+2]); - tz = atof(arg[iarg+3]); + tx = force->numeric(FLERR,arg[iarg+1]); + ty = force->numeric(FLERR,arg[iarg+2]); + tz = force->numeric(FLERR,arg[iarg+3]); targetflag = 1; iarg += 4; } else error->all(FLERR,"Illegal fix deposit command"); diff --git a/src/fix_drag.cpp b/src/fix_drag.cpp index 0abdf0d3d2670355b1bf2e9de48868fc5758e62c..1771be42c8b94193122ef1d3c12e5253260e2125 100644 --- a/src/fix_drag.cpp +++ b/src/fix_drag.cpp @@ -20,6 +20,7 @@ #include "respa.h" #include "domain.h" #include "error.h" +#include "force.h" using namespace LAMMPS_NS; using namespace FixConst; @@ -39,14 +40,14 @@ FixDrag::FixDrag(LAMMPS *lmp, int narg, char **arg) : xflag = yflag = zflag = 1; if (strcmp(arg[3],"NULL") == 0) xflag = 0; - else xc = atof(arg[3]); + else xc = force->numeric(FLERR,arg[3]); if (strcmp(arg[4],"NULL") == 0) yflag = 0; - else yc = atof(arg[4]); + else yc = force->numeric(FLERR,arg[4]); if (strcmp(arg[5],"NULL") == 0) zflag = 0; - else zc = atof(arg[5]); + else zc = force->numeric(FLERR,arg[5]); - f_mag = atof(arg[6]); - delta = atof(arg[7]); + f_mag = force->numeric(FLERR,arg[6]); + delta = force->numeric(FLERR,arg[7]); force_flag = 0; ftotal[0] = ftotal[1] = ftotal[2] = 0.0; diff --git a/src/fix_dt_reset.cpp b/src/fix_dt_reset.cpp index 553e6ee04dacf6b4bc98013aa9226570dc6ff0fe..53fbf6e1050d2640d63dd320c72c083981f6352a 100644 --- a/src/fix_dt_reset.cpp +++ b/src/fix_dt_reset.cpp @@ -51,16 +51,16 @@ FixDtReset::FixDtReset(LAMMPS *lmp, int narg, char **arg) : extscalar = 0; extvector = 0; - nevery = atoi(arg[3]); + nevery = force->inumeric(FLERR,arg[3]); if (nevery <= 0) error->all(FLERR,"Illegal fix dt/reset command"); minbound = maxbound = 1; tmin = tmax = 0.0; if (strcmp(arg[4],"NULL") == 0) minbound = 0; - else tmin = atof(arg[4]); + else tmin = force->numeric(FLERR,arg[4]); if (strcmp(arg[5],"NULL") == 0) maxbound = 0; - else tmax = atof(arg[5]); - xmax = atof(arg[6]); + else tmax = force->numeric(FLERR,arg[5]); + xmax = force->numeric(FLERR,arg[6]); if (minbound && tmin < 0.0) error->all(FLERR,"Illegal fix dt/reset command"); if (maxbound && tmax < 0.0) error->all(FLERR,"Illegal fix dt/reset command"); diff --git a/src/fix_efield.cpp b/src/fix_efield.cpp index 7fca5850a60912780f6fb8c420314f48756f955c..f328a3f2944fa9ff172fd46d606007757f382fd5 100644 --- a/src/fix_efield.cpp +++ b/src/fix_efield.cpp @@ -59,7 +59,7 @@ FixEfield::FixEfield(LAMMPS *lmp, int narg, char **arg) : xstr = new char[n]; strcpy(xstr,&arg[3][2]); } else { - ex = qe2f * atof(arg[3]); + ex = qe2f * force->numeric(FLERR,arg[3]); xstyle = CONSTANT; } @@ -68,7 +68,7 @@ FixEfield::FixEfield(LAMMPS *lmp, int narg, char **arg) : ystr = new char[n]; strcpy(ystr,&arg[4][2]); } else { - ey = qe2f * atof(arg[4]); + ey = qe2f * force->numeric(FLERR,arg[4]); ystyle = CONSTANT; } @@ -77,7 +77,7 @@ FixEfield::FixEfield(LAMMPS *lmp, int narg, char **arg) : zstr = new char[n]; strcpy(zstr,&arg[5][2]); } else { - ez = qe2f * atof(arg[5]); + ez = qe2f * force->numeric(FLERR,arg[5]); zstyle = CONSTANT; } diff --git a/src/fix_evaporate.cpp b/src/fix_evaporate.cpp index 7eb5093d3fe5ecb005996924b87f548f53c2edde..5fe5c1412fa66b82f2b45acdfe6ea2ecd542ba2e 100644 --- a/src/fix_evaporate.cpp +++ b/src/fix_evaporate.cpp @@ -42,13 +42,13 @@ FixEvaporate::FixEvaporate(LAMMPS *lmp, int narg, char **arg) : global_freq = 1; extscalar = 0; - nevery = atoi(arg[3]); - nflux = atoi(arg[4]); + nevery = force->inumeric(FLERR,arg[3]); + nflux = force->inumeric(FLERR,arg[4]); iregion = domain->find_region(arg[5]); int n = strlen(arg[5]) + 1; idregion = new char[n]; strcpy(idregion,arg[5]); - int seed = atoi(arg[6]); + int seed = force->inumeric(FLERR,arg[6]); if (nevery <= 0 || nflux <= 0) error->all(FLERR,"Illegal fix evaporate command"); diff --git a/src/fix_external.cpp b/src/fix_external.cpp index 8cddd0dbcef83d417f797181c4481c56b67e4dfe..fffc57c72cdf21fea398435b0a7c062a7c3905ec 100644 --- a/src/fix_external.cpp +++ b/src/fix_external.cpp @@ -19,6 +19,7 @@ #include "update.h" #include "memory.h" #include "error.h" +#include "force.h" using namespace LAMMPS_NS; using namespace FixConst; @@ -35,14 +36,14 @@ FixExternal::FixExternal(LAMMPS *lmp, int narg, char **arg) : if (strcmp(arg[3],"pf/callback") == 0) { if (narg != 6) error->all(FLERR,"Illegal fix external command"); mode = PF_CALLBACK; - ncall = atoi(arg[4]); - napply = atoi(arg[5]); + ncall = force->inumeric(FLERR,arg[4]); + napply = force->inumeric(FLERR,arg[5]); if (ncall <= 0 || napply <= 0) error->all(FLERR,"Illegal fix external command"); } else if (strcmp(arg[3],"pf/array") == 0) { if (narg != 5) error->all(FLERR,"Illegal fix external command"); mode = PF_ARRAY; - napply = atoi(arg[4]); + napply = force->inumeric(FLERR,arg[4]); if (napply <= 0) error->all(FLERR,"Illegal fix external command"); } else error->all(FLERR,"Illegal fix external command"); diff --git a/src/fix_gravity.cpp b/src/fix_gravity.cpp index bc72f5b11338663d18989bd1b61a5968be6c8b70..37e605f74daa4320c04f001be6df6eb7b995785b 100644 --- a/src/fix_gravity.cpp +++ b/src/fix_gravity.cpp @@ -25,6 +25,7 @@ #include "variable.h" #include "math_const.h" #include "error.h" +#include "force.h" using namespace LAMMPS_NS; using namespace FixConst; @@ -53,7 +54,7 @@ FixGravity::FixGravity(LAMMPS *lmp, int narg, char **arg) : strcpy(mstr,&arg[3][2]); mstyle = EQUAL; } else { - magnitude = atof(arg[3]); + magnitude = force->numeric(FLERR,arg[3]); mstyle = CONSTANT; } @@ -66,7 +67,7 @@ FixGravity::FixGravity(LAMMPS *lmp, int narg, char **arg) : strcpy(vstr,&arg[5][2]); vstyle = EQUAL; } else { - vert = atof(arg[5]); + vert = force->numeric(FLERR,arg[5]); vstyle = CONSTANT; } @@ -79,7 +80,7 @@ FixGravity::FixGravity(LAMMPS *lmp, int narg, char **arg) : strcpy(pstr,&arg[5][2]); pstyle = EQUAL; } else { - phi = atof(arg[5]); + phi = force->numeric(FLERR,arg[5]); pstyle = CONSTANT; } if (strstr(arg[6],"v_") == arg[6]) { @@ -88,7 +89,7 @@ FixGravity::FixGravity(LAMMPS *lmp, int narg, char **arg) : strcpy(tstr,&arg[6][2]); tstyle = EQUAL; } else { - theta = atof(arg[6]); + theta = force->numeric(FLERR,arg[6]); tstyle = CONSTANT; } @@ -101,7 +102,7 @@ FixGravity::FixGravity(LAMMPS *lmp, int narg, char **arg) : strcpy(xstr,&arg[5][2]); xstyle = EQUAL; } else { - xdir = atof(arg[5]); + xdir = force->numeric(FLERR,arg[5]); xstyle = CONSTANT; } if (strstr(arg[6],"v_") == arg[6]) { @@ -110,7 +111,7 @@ FixGravity::FixGravity(LAMMPS *lmp, int narg, char **arg) : strcpy(ystr,&arg[6][2]); ystyle = EQUAL; } else { - ydir = atof(arg[6]); + ydir = force->numeric(FLERR,arg[6]); ystyle = CONSTANT; } if (strstr(arg[7],"v_") == arg[7]) { @@ -119,7 +120,7 @@ FixGravity::FixGravity(LAMMPS *lmp, int narg, char **arg) : strcpy(zstr,&arg[7][2]); zstyle = EQUAL; } else { - zdir = atof(arg[7]); + zdir = force->numeric(FLERR,arg[7]); zstyle = CONSTANT; } diff --git a/src/fix_heat.cpp b/src/fix_heat.cpp index 50b7a7ab81fd6a8e47d83cc2e9718217839f1e57..e4220c5557557dafc7c00d7cbfa1424738d38729 100644 --- a/src/fix_heat.cpp +++ b/src/fix_heat.cpp @@ -46,7 +46,7 @@ FixHeat::FixHeat(LAMMPS *lmp, int narg, char **arg) : Fix(lmp, narg, arg) global_freq = 1; extscalar = 0; - nevery = atoi(arg[3]); + nevery = force->inumeric(FLERR,arg[3]); if (nevery <= 0) error->all(FLERR,"Illegal fix heat command"); hstr = NULL; @@ -56,7 +56,7 @@ FixHeat::FixHeat(LAMMPS *lmp, int narg, char **arg) : Fix(lmp, narg, arg) hstr = new char[n]; strcpy(hstr,&arg[4][2]); } else { - heat_input = atof(arg[4]); + heat_input = force->numeric(FLERR,arg[4]); hstyle = CONSTANT; } diff --git a/src/fix_indent.cpp b/src/fix_indent.cpp index 558121697b6f15ea5318b22dece7b45ea4868370..9e214de7631948f8bc94287f0d6eacbd0573f344 100644 --- a/src/fix_indent.cpp +++ b/src/fix_indent.cpp @@ -29,6 +29,7 @@ #include "output.h" #include "respa.h" #include "error.h" +#include "force.h" using namespace LAMMPS_NS; using namespace FixConst; @@ -50,7 +51,7 @@ FixIndent::FixIndent(LAMMPS *lmp, int narg, char **arg) : extscalar = 1; extvector = 1; - k = atof(arg[3]); + k = force->numeric(FLERR,arg[3]); k3 = k/3.0; // read options from end of input line @@ -416,22 +417,22 @@ void FixIndent::options(int narg, char **arg) int n = strlen(&arg[iarg+1][2]) + 1; xstr = new char[n]; strcpy(xstr,&arg[iarg+1][2]); - } else xvalue = atof(arg[iarg+1]); + } else xvalue = force->numeric(FLERR,arg[iarg+1]); if (strstr(arg[iarg+2],"v_") == arg[iarg+2]) { int n = strlen(&arg[iarg+2][2]) + 1; ystr = new char[n]; strcpy(ystr,&arg[iarg+2][2]); - } else yvalue = atof(arg[iarg+2]); + } else yvalue = force->numeric(FLERR,arg[iarg+2]); if (strstr(arg[iarg+3],"v_") == arg[iarg+3]) { int n = strlen(&arg[iarg+3][2]) + 1; zstr = new char[n]; strcpy(zstr,&arg[iarg+3][2]); - } else zvalue = atof(arg[iarg+3]); + } else zvalue = force->numeric(FLERR,arg[iarg+3]); if (strstr(arg[iarg+4],"v_") == arg[iarg+4]) { int n = strlen(&arg[iarg+4][2]) + 1; rstr = new char[n]; strcpy(rstr,&arg[iarg+4][2]); - } else rvalue = atof(arg[iarg+4]); + } else rvalue = force->numeric(FLERR,arg[iarg+4]); istyle = SPHERE; iarg += 5; @@ -445,43 +446,43 @@ void FixIndent::options(int narg, char **arg) int n = strlen(&arg[iarg+2][2]) + 1; ystr = new char[n]; strcpy(ystr,&arg[iarg+2][2]); - } else yvalue = atof(arg[iarg+2]); + } else yvalue = force->numeric(FLERR,arg[iarg+2]); if (strstr(arg[iarg+3],"v_") == arg[iarg+3]) { int n = strlen(&arg[iarg+3][2]) + 1; zstr = new char[n]; strcpy(zstr,&arg[iarg+3][2]); - } else zvalue = atof(arg[iarg+3]); + } else zvalue = force->numeric(FLERR,arg[iarg+3]); } else if (strcmp(arg[iarg+1],"y") == 0) { cdim = 1; if (strstr(arg[iarg+2],"v_") == arg[iarg+2]) { int n = strlen(&arg[iarg+2][2]) + 1; xstr = new char[n]; strcpy(xstr,&arg[iarg+2][2]); - } else xvalue = atof(arg[iarg+2]); + } else xvalue = force->numeric(FLERR,arg[iarg+2]); if (strstr(arg[iarg+3],"v_") == arg[iarg+3]) { int n = strlen(&arg[iarg+3][2]) + 1; zstr = new char[n]; strcpy(zstr,&arg[iarg+3][2]); - } else zvalue = atof(arg[iarg+3]); + } else zvalue = force->numeric(FLERR,arg[iarg+3]); } else if (strcmp(arg[iarg+1],"z") == 0) { cdim = 2; if (strstr(arg[iarg+2],"v_") == arg[iarg+2]) { int n = strlen(&arg[iarg+2][2]) + 1; xstr = new char[n]; strcpy(xstr,&arg[iarg+2][2]); - } else xvalue = atof(arg[iarg+2]); + } else xvalue = force->numeric(FLERR,arg[iarg+2]); if (strstr(arg[iarg+3],"v_") == arg[iarg+3]) { int n = strlen(&arg[iarg+3][2]) + 1; ystr = new char[n]; strcpy(ystr,&arg[iarg+3][2]); - } else yvalue = atof(arg[iarg+3]); + } else yvalue = force->numeric(FLERR,arg[iarg+3]); } else error->all(FLERR,"Illegal fix indent command"); if (strstr(arg[iarg+4],"v_") == arg[iarg+4]) { int n = strlen(&arg[iarg+4][2]) + 1; rstr = new char[n]; strcpy(rstr,&arg[iarg+4][2]); - } else rvalue = atof(arg[iarg+4]); + } else rvalue = force->numeric(FLERR,arg[iarg+4]); istyle = CYLINDER; iarg += 5; @@ -497,7 +498,7 @@ void FixIndent::options(int narg, char **arg) int n = strlen(&arg[iarg+2][2]) + 1; pstr = new char[n]; strcpy(pstr,&arg[iarg+2][2]); - } else pvalue = atof(arg[iarg+2]); + } else pvalue = force->numeric(FLERR,arg[iarg+2]); if (strcmp(arg[iarg+3],"lo") == 0) planeside = -1; else if (strcmp(arg[iarg+3],"hi") == 0) planeside = 1; diff --git a/src/fix_langevin.cpp b/src/fix_langevin.cpp index 6f11342a3675199c10b21ab76b41eb3413bf001e..dd55d1c3ad4acfca0b7351da88791992b0c81b75 100644 --- a/src/fix_langevin.cpp +++ b/src/fix_langevin.cpp @@ -66,14 +66,14 @@ FixLangevin::FixLangevin(LAMMPS *lmp, int narg, char **arg) : tstr = new char[n]; strcpy(tstr,&arg[3][2]); } else { - t_start = atof(arg[3]); + t_start = force->numeric(FLERR,arg[3]); t_target = t_start; tstyle = CONSTANT; } - t_stop = atof(arg[4]); - t_period = atof(arg[5]); - int seed = atoi(arg[6]); + t_stop = force->numeric(FLERR,arg[4]); + t_period = force->numeric(FLERR,arg[5]); + int seed = force->inumeric(FLERR,arg[6]); if (t_period <= 0.0) error->all(FLERR,"Fix langevin period must be > 0.0"); if (seed <= 0) error->all(FLERR,"Illegal fix langevin command"); @@ -118,8 +118,8 @@ FixLangevin::FixLangevin(LAMMPS *lmp, int narg, char **arg) : iarg += 2; } else if (strcmp(arg[iarg],"scale") == 0) { if (iarg+3 > narg) error->all(FLERR,"Illegal fix langevin command"); - int itype = atoi(arg[iarg+1]); - double scale = atof(arg[iarg+2]); + int itype = force->inumeric(FLERR,arg[iarg+1]); + double scale = force->numeric(FLERR,arg[iarg+2]); if (itype <= 0 || itype > atom->ntypes) error->all(FLERR,"Illegal fix langevin command"); ratio[itype] = scale; diff --git a/src/fix_lineforce.cpp b/src/fix_lineforce.cpp index a778ac13c51d017e887af20ad70fade17347787f..7128d245728989236373e5653208b14aa3be69da 100644 --- a/src/fix_lineforce.cpp +++ b/src/fix_lineforce.cpp @@ -19,6 +19,7 @@ #include "update.h" #include "respa.h" #include "error.h" +#include "force.h" using namespace LAMMPS_NS; using namespace FixConst; @@ -29,9 +30,9 @@ FixLineForce::FixLineForce(LAMMPS *lmp, int narg, char **arg) : Fix(lmp, narg, arg) { if (narg != 6) error->all(FLERR,"Illegal fix lineforce command"); - xdir = atof(arg[3]); - ydir = atof(arg[4]); - zdir = atof(arg[5]); + xdir = force->numeric(FLERR,arg[3]); + ydir = force->numeric(FLERR,arg[4]); + zdir = force->numeric(FLERR,arg[5]); double len = sqrt(xdir*xdir + ydir*ydir + zdir*zdir); if (len == 0.0) error->all(FLERR,"Illegal fix lineforce command"); diff --git a/src/fix_momentum.cpp b/src/fix_momentum.cpp index 6f9da4427b9a6da3c7f862f4e4ff2a5580b9017e..ff4ea798882e454828c7d0144e595425a30ef899 100644 --- a/src/fix_momentum.cpp +++ b/src/fix_momentum.cpp @@ -18,6 +18,7 @@ #include "domain.h" #include "group.h" #include "error.h" +#include "force.h" using namespace LAMMPS_NS; using namespace FixConst; @@ -32,7 +33,7 @@ FixMomentum::FixMomentum(LAMMPS *lmp, int narg, char **arg) : Fix(lmp, narg, arg) { if (narg < 4) error->all(FLERR,"Illegal fix momentum command"); - nevery = atoi(arg[3]); + nevery = force->inumeric(FLERR,arg[3]); if (nevery <= 0) error->all(FLERR,"Illegal fix momentum command"); linear = angular = 0; @@ -42,9 +43,9 @@ FixMomentum::FixMomentum(LAMMPS *lmp, int narg, char **arg) : if (strcmp(arg[iarg],"linear") == 0) { if (iarg+4 > narg) error->all(FLERR,"Illegal fix momentum command"); linear = 1; - xflag = atoi(arg[iarg+1]); - yflag = atoi(arg[iarg+2]); - zflag = atoi(arg[iarg+3]); + xflag = force->inumeric(FLERR,arg[iarg+1]); + yflag = force->inumeric(FLERR,arg[iarg+2]); + zflag = force->inumeric(FLERR,arg[iarg+3]); iarg += 4; } else if (strcmp(arg[iarg],"angular") == 0) { angular = 1; diff --git a/src/fix_move.cpp b/src/fix_move.cpp index 7870fd85fb9ce4eca3c35b64e4eb94695c12d838..08503ccc608f11de4efd4f6e1d6dc2088dc50cf5 100644 --- a/src/fix_move.cpp +++ b/src/fix_move.cpp @@ -65,17 +65,17 @@ FixMove::FixMove(LAMMPS *lmp, int narg, char **arg) : if (strcmp(arg[4],"NULL") == 0) vxflag = 0; else { vxflag = 1; - vx = atof(arg[4]); + vx = force->numeric(FLERR,arg[4]); } if (strcmp(arg[5],"NULL") == 0) vyflag = 0; else { vyflag = 1; - vy = atof(arg[5]); + vy = force->numeric(FLERR,arg[5]); } if (strcmp(arg[6],"NULL") == 0) vzflag = 0; else { vzflag = 1; - vz = atof(arg[6]); + vz = force->numeric(FLERR,arg[6]); } } else if (strcmp(arg[3],"wiggle") == 0) { @@ -85,31 +85,31 @@ FixMove::FixMove(LAMMPS *lmp, int narg, char **arg) : if (strcmp(arg[4],"NULL") == 0) axflag = 0; else { axflag = 1; - ax = atof(arg[4]); + ax = force->numeric(FLERR,arg[4]); } if (strcmp(arg[5],"NULL") == 0) ayflag = 0; else { ayflag = 1; - ay = atof(arg[5]); + ay = force->numeric(FLERR,arg[5]); } if (strcmp(arg[6],"NULL") == 0) azflag = 0; else { azflag = 1; - az = atof(arg[6]); + az = force->numeric(FLERR,arg[6]); } - period = atof(arg[7]); + period = force->numeric(FLERR,arg[7]); } else if (strcmp(arg[3],"rotate") == 0) { if (narg < 11) error->all(FLERR,"Illegal fix move command"); iarg = 11; mstyle = ROTATE; - point[0] = atof(arg[4]); - point[1] = atof(arg[5]); - point[2] = atof(arg[6]); - axis[0] = atof(arg[7]); - axis[1] = atof(arg[8]); - axis[2] = atof(arg[9]); - period = atof(arg[10]); + point[0] = force->numeric(FLERR,arg[4]); + point[1] = force->numeric(FLERR,arg[5]); + point[2] = force->numeric(FLERR,arg[6]); + axis[0] = force->numeric(FLERR,arg[7]); + axis[1] = force->numeric(FLERR,arg[8]); + axis[2] = force->numeric(FLERR,arg[9]); + period = force->numeric(FLERR,arg[10]); } else if (strcmp(arg[3],"variable") == 0) { if (narg < 10) error->all(FLERR,"Illegal fix move command"); diff --git a/src/fix_nh.cpp b/src/fix_nh.cpp index 72c8a897e5c439defeea401efa4a76e2274e0dd3..5fc51a8e5eb51b26823c71e9a8e3e69ec4eaceb0 100644 --- a/src/fix_nh.cpp +++ b/src/fix_nh.cpp @@ -115,10 +115,10 @@ FixNH::FixNH(LAMMPS *lmp, int narg, char **arg) : Fix(lmp, narg, arg) if (strcmp(arg[iarg],"temp") == 0) { if (iarg+4 > narg) error->all(FLERR,"Illegal fix nvt/npt/nph command"); tstat_flag = 1; - t_start = atof(arg[iarg+1]); + t_start = force->numeric(FLERR,arg[iarg+1]); t_target = t_start; - t_stop = atof(arg[iarg+2]); - t_period = atof(arg[iarg+3]); + t_stop = force->numeric(FLERR,arg[iarg+2]); + t_period = force->numeric(FLERR,arg[iarg+3]); if (t_start < 0.0 || t_stop <= 0.0) error->all(FLERR, "Target temperature for fix nvt/npt/nph cannot be 0.0"); @@ -127,9 +127,9 @@ FixNH::FixNH(LAMMPS *lmp, int narg, char **arg) : Fix(lmp, narg, arg) } else if (strcmp(arg[iarg],"iso") == 0) { if (iarg+4 > narg) error->all(FLERR,"Illegal fix nvt/npt/nph command"); pcouple = XYZ; - p_start[0] = p_start[1] = p_start[2] = atof(arg[iarg+1]); - p_stop[0] = p_stop[1] = p_stop[2] = atof(arg[iarg+2]); - p_period[0] = p_period[1] = p_period[2] = atof(arg[iarg+3]); + p_start[0] = p_start[1] = p_start[2] = force->numeric(FLERR,arg[iarg+1]); + p_stop[0] = p_stop[1] = p_stop[2] = force->numeric(FLERR,arg[iarg+2]); + p_period[0] = p_period[1] = p_period[2] = force->numeric(FLERR,arg[iarg+3]); p_flag[0] = p_flag[1] = p_flag[2] = 1; if (dimension == 2) { p_start[2] = p_stop[2] = p_period[2] = 0.0; @@ -139,9 +139,9 @@ FixNH::FixNH(LAMMPS *lmp, int narg, char **arg) : Fix(lmp, narg, arg) } else if (strcmp(arg[iarg],"aniso") == 0) { if (iarg+4 > narg) error->all(FLERR,"Illegal fix nvt/npt/nph command"); pcouple = NONE; - p_start[0] = p_start[1] = p_start[2] = atof(arg[iarg+1]); - p_stop[0] = p_stop[1] = p_stop[2] = atof(arg[iarg+2]); - p_period[0] = p_period[1] = p_period[2] = atof(arg[iarg+3]); + p_start[0] = p_start[1] = p_start[2] = force->numeric(FLERR,arg[iarg+1]); + p_stop[0] = p_stop[1] = p_stop[2] = force->numeric(FLERR,arg[iarg+2]); + p_period[0] = p_period[1] = p_period[2] = force->numeric(FLERR,arg[iarg+3]); p_flag[0] = p_flag[1] = p_flag[2] = 1; if (dimension == 2) { p_start[2] = p_stop[2] = p_period[2] = 0.0; @@ -152,13 +152,13 @@ FixNH::FixNH(LAMMPS *lmp, int narg, char **arg) : Fix(lmp, narg, arg) if (iarg+4 > narg) error->all(FLERR,"Illegal fix nvt/npt/nph command"); pcouple = NONE; scalexy = scalexz = scaleyz = 0; - p_start[0] = p_start[1] = p_start[2] = atof(arg[iarg+1]); - p_stop[0] = p_stop[1] = p_stop[2] = atof(arg[iarg+2]); - p_period[0] = p_period[1] = p_period[2] = atof(arg[iarg+3]); + p_start[0] = p_start[1] = p_start[2] = force->numeric(FLERR,arg[iarg+1]); + p_stop[0] = p_stop[1] = p_stop[2] = force->numeric(FLERR,arg[iarg+2]); + p_period[0] = p_period[1] = p_period[2] = force->numeric(FLERR,arg[iarg+3]); p_flag[0] = p_flag[1] = p_flag[2] = 1; p_start[3] = p_start[4] = p_start[5] = 0.0; p_stop[3] = p_stop[4] = p_stop[5] = 0.0; - p_period[3] = p_period[4] = p_period[5] = atof(arg[iarg+3]); + p_period[3] = p_period[4] = p_period[5] = force->numeric(FLERR,arg[iarg+3]); p_flag[3] = p_flag[4] = p_flag[5] = 1; if (dimension == 2) { p_start[2] = p_stop[2] = p_period[2] = 0.0; @@ -171,25 +171,25 @@ FixNH::FixNH(LAMMPS *lmp, int narg, char **arg) : Fix(lmp, narg, arg) iarg += 4; } else if (strcmp(arg[iarg],"x") == 0) { if (iarg+4 > narg) error->all(FLERR,"Illegal fix nvt/npt/nph command"); - p_start[0] = atof(arg[iarg+1]); - p_stop[0] = atof(arg[iarg+2]); - p_period[0] = atof(arg[iarg+3]); + p_start[0] = force->numeric(FLERR,arg[iarg+1]); + p_stop[0] = force->numeric(FLERR,arg[iarg+2]); + p_period[0] = force->numeric(FLERR,arg[iarg+3]); p_flag[0] = 1; deviatoric_flag = 1; iarg += 4; } else if (strcmp(arg[iarg],"y") == 0) { if (iarg+4 > narg) error->all(FLERR,"Illegal fix nvt/npt/nph command"); - p_start[1] = atof(arg[iarg+1]); - p_stop[1] = atof(arg[iarg+2]); - p_period[1] = atof(arg[iarg+3]); + p_start[1] = force->numeric(FLERR,arg[iarg+1]); + p_stop[1] = force->numeric(FLERR,arg[iarg+2]); + p_period[1] = force->numeric(FLERR,arg[iarg+3]); p_flag[1] = 1; deviatoric_flag = 1; iarg += 4; } else if (strcmp(arg[iarg],"z") == 0) { if (iarg+4 > narg) error->all(FLERR,"Illegal fix nvt/npt/nph command"); - p_start[2] = atof(arg[iarg+1]); - p_stop[2] = atof(arg[iarg+2]); - p_period[2] = atof(arg[iarg+3]); + p_start[2] = force->numeric(FLERR,arg[iarg+1]); + p_stop[2] = force->numeric(FLERR,arg[iarg+2]); + p_period[2] = force->numeric(FLERR,arg[iarg+3]); p_flag[2] = 1; deviatoric_flag = 1; iarg += 4; @@ -198,9 +198,9 @@ FixNH::FixNH(LAMMPS *lmp, int narg, char **arg) : Fix(lmp, narg, arg) } else if (strcmp(arg[iarg],"yz") == 0) { if (iarg+4 > narg) error->all(FLERR,"Illegal fix nvt/npt/nph command"); - p_start[3] = atof(arg[iarg+1]); - p_stop[3] = atof(arg[iarg+2]); - p_period[3] = atof(arg[iarg+3]); + p_start[3] = force->numeric(FLERR,arg[iarg+1]); + p_stop[3] = force->numeric(FLERR,arg[iarg+2]); + p_period[3] = force->numeric(FLERR,arg[iarg+3]); p_flag[3] = 1; deviatoric_flag = 1; scaleyz = 0; @@ -209,9 +209,9 @@ FixNH::FixNH(LAMMPS *lmp, int narg, char **arg) : Fix(lmp, narg, arg) error->all(FLERR,"Invalid fix nvt/npt/nph command for a 2d simulation"); } else if (strcmp(arg[iarg],"xz") == 0) { if (iarg+4 > narg) error->all(FLERR,"Illegal fix nvt/npt/nph command"); - p_start[4] = atof(arg[iarg+1]); - p_stop[4] = atof(arg[iarg+2]); - p_period[4] = atof(arg[iarg+3]); + p_start[4] = force->numeric(FLERR,arg[iarg+1]); + p_stop[4] = force->numeric(FLERR,arg[iarg+2]); + p_period[4] = force->numeric(FLERR,arg[iarg+3]); p_flag[4] = 1; deviatoric_flag = 1; scalexz = 0; @@ -220,9 +220,9 @@ FixNH::FixNH(LAMMPS *lmp, int narg, char **arg) : Fix(lmp, narg, arg) error->all(FLERR,"Invalid fix nvt/npt/nph command for a 2d simulation"); } else if (strcmp(arg[iarg],"xy") == 0) { if (iarg+4 > narg) error->all(FLERR,"Illegal fix nvt/npt/nph command"); - p_start[5] = atof(arg[iarg+1]); - p_stop[5] = atof(arg[iarg+2]); - p_period[5] = atof(arg[iarg+3]); + p_start[5] = force->numeric(FLERR,arg[iarg+1]); + p_stop[5] = force->numeric(FLERR,arg[iarg+2]); + p_period[5] = force->numeric(FLERR,arg[iarg+3]); p_flag[5] = 1; deviatoric_flag = 1; scalexy = 0; @@ -240,7 +240,7 @@ FixNH::FixNH(LAMMPS *lmp, int narg, char **arg) : Fix(lmp, narg, arg) } else if (strcmp(arg[iarg],"drag") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal fix nvt/npt/nph command"); - drag = atof(arg[iarg+1]); + drag = force->numeric(FLERR,arg[iarg+1]); if (drag < 0.0) error->all(FLERR,"Illegal fix nvt/npt/nph command"); iarg += 2; } else if (strcmp(arg[iarg],"dilate") == 0) { @@ -260,14 +260,14 @@ FixNH::FixNH(LAMMPS *lmp, int narg, char **arg) : Fix(lmp, narg, arg) } else if (strcmp(arg[iarg],"tchain") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal fix nvt/npt/nph command"); - mtchain = atoi(arg[iarg+1]); + mtchain = force->inumeric(FLERR,arg[iarg+1]); // used by FixNVTSllod to preserve non-default value mtchain_default_flag = 0; if (mtchain < 1) error->all(FLERR,"Illegal fix nvt/npt/nph command"); iarg += 2; } else if (strcmp(arg[iarg],"pchain") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal fix nvt/npt/nph command"); - mpchain = atoi(arg[iarg+1]); + mpchain = force->inumeric(FLERR,arg[iarg+1]); if (mpchain < 0) error->all(FLERR,"Illegal fix nvt/npt/nph command"); iarg += 2; } else if (strcmp(arg[iarg],"mtk") == 0) { @@ -278,17 +278,17 @@ FixNH::FixNH(LAMMPS *lmp, int narg, char **arg) : Fix(lmp, narg, arg) iarg += 2; } else if (strcmp(arg[iarg],"tloop") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal fix nvt/npt/nph command"); - nc_tchain = atoi(arg[iarg+1]); + nc_tchain = force->inumeric(FLERR,arg[iarg+1]); if (nc_tchain < 0) error->all(FLERR,"Illegal fix nvt/npt/nph command"); iarg += 2; } else if (strcmp(arg[iarg],"ploop") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal fix nvt/npt/nph command"); - nc_pchain = atoi(arg[iarg+1]); + nc_pchain = force->inumeric(FLERR,arg[iarg+1]); if (nc_pchain < 0) error->all(FLERR,"Illegal fix nvt/npt/nph command"); iarg += 2; } else if (strcmp(arg[iarg],"nreset") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal fix nvt/npt/nph command"); - nreset_h0 = atoi(arg[iarg+1]); + nreset_h0 = force->inumeric(FLERR,arg[iarg+1]); if (nreset_h0 < 0) error->all(FLERR,"Illegal fix nvt/npt/nph command"); iarg += 2; } else if (strcmp(arg[iarg],"scalexy") == 0) { @@ -317,9 +317,9 @@ FixNH::FixNH(LAMMPS *lmp, int narg, char **arg) : Fix(lmp, narg, arg) iarg += 2; } else if (strcmp(arg[iarg],"fixedpoint") == 0) { if (iarg+4 > narg) error->all(FLERR,"Illegal fix nvt/npt/nph command"); - fixedpoint[0] = atof(arg[iarg+1]); - fixedpoint[1] = atof(arg[iarg+2]); - fixedpoint[2] = atof(arg[iarg+3]); + fixedpoint[0] = force->numeric(FLERR,arg[iarg+1]); + fixedpoint[1] = force->numeric(FLERR,arg[iarg+2]); + fixedpoint[2] = force->numeric(FLERR,arg[iarg+3]); iarg += 4; } else error->all(FLERR,"Illegal fix nvt/npt/nph command"); } diff --git a/src/fix_nve_limit.cpp b/src/fix_nve_limit.cpp index 13cf5580025b264e360b402f57683d023d63dc41..29d287f185e57e1a0609dd09f5e9259fe0957fe4 100644 --- a/src/fix_nve_limit.cpp +++ b/src/fix_nve_limit.cpp @@ -37,7 +37,7 @@ FixNVELimit::FixNVELimit(LAMMPS *lmp, int narg, char **arg) : global_freq = 1; extscalar = 1; - xlimit = atof(arg[3]); + xlimit = force->numeric(FLERR,arg[3]); ncount = 0; } diff --git a/src/fix_orient_fcc.cpp b/src/fix_orient_fcc.cpp index d1ba81bf87d02bfdf7f47480dd139842cf58a39c..36114783086faf00d24de4ddf5159cf256f9fcb6 100644 --- a/src/fix_orient_fcc.cpp +++ b/src/fix_orient_fcc.cpp @@ -31,6 +31,7 @@ #include "math_const.h" #include "memory.h" #include "error.h" +#include "force.h" using namespace LAMMPS_NS; using namespace FixConst; @@ -55,12 +56,12 @@ FixOrientFCC::FixOrientFCC(LAMMPS *lmp, int narg, char **arg) : size_peratom_cols = 2; peratom_freq = 1; - nstats = atoi(arg[3]); - direction_of_motion = atoi(arg[4]); - a = atof(arg[5]); - Vxi = atof(arg[6]); - uxif_low = atof(arg[7]); - uxif_high = atof(arg[8]); + nstats = force->inumeric(FLERR,arg[3]); + direction_of_motion = force->inumeric(FLERR,arg[4]); + a = force->numeric(FLERR,arg[5]); + Vxi = force->numeric(FLERR,arg[6]); + uxif_low = force->numeric(FLERR,arg[7]); + uxif_high = force->numeric(FLERR,arg[8]); if (direction_of_motion == 0) { int n = strlen(arg[9]) + 1; diff --git a/src/fix_planeforce.cpp b/src/fix_planeforce.cpp index 7f12590cf4a2a87d1efc7526943cdaa551181804..217aec9c3676393c1679851cee492ac30665247c 100644 --- a/src/fix_planeforce.cpp +++ b/src/fix_planeforce.cpp @@ -19,6 +19,7 @@ #include "update.h" #include "respa.h" #include "error.h" +#include "force.h" using namespace LAMMPS_NS; using namespace FixConst; @@ -29,9 +30,9 @@ FixPlaneForce::FixPlaneForce(LAMMPS *lmp, int narg, char **arg) : Fix(lmp, narg, arg) { if (narg != 6) error->all(FLERR,"Illegal fix planeforce command"); - xdir = atof(arg[3]); - ydir = atof(arg[4]); - zdir = atof(arg[5]); + xdir = force->numeric(FLERR,arg[3]); + ydir = force->numeric(FLERR,arg[4]); + zdir = force->numeric(FLERR,arg[5]); double len = sqrt(xdir*xdir + ydir*ydir + zdir*zdir); if (len == 0.0) error->all(FLERR,"Illegal fix planeforce command"); diff --git a/src/fix_press_berendsen.cpp b/src/fix_press_berendsen.cpp index 5015804006204a3f2f7de74fa1894cd4dbc1da45..cb6ab21542d30e2a67b3b453355992adbc0b7fec 100644 --- a/src/fix_press_berendsen.cpp +++ b/src/fix_press_berendsen.cpp @@ -71,9 +71,9 @@ FixPressBerendsen::FixPressBerendsen(LAMMPS *lmp, int narg, char **arg) : if (iarg+4 > narg) error->all(FLERR,"Illegal fix press/berendsen command"); pcouple = XYZ; - p_start[0] = p_start[1] = p_start[2] = atof(arg[iarg+1]); - p_stop[0] = p_stop[1] = p_stop[2] = atof(arg[iarg+2]); - p_period[0] = p_period[1] = p_period[2] = atof(arg[iarg+3]); + p_start[0] = p_start[1] = p_start[2] = force->numeric(FLERR,arg[iarg+1]); + p_stop[0] = p_stop[1] = p_stop[2] = force->numeric(FLERR,arg[iarg+2]); + p_period[0] = p_period[1] = p_period[2] = force->numeric(FLERR,arg[iarg+3]); p_flag[0] = p_flag[1] = p_flag[2] = 1; if (dimension == 2) { p_start[2] = p_stop[2] = p_period[2] = 0.0; @@ -84,9 +84,9 @@ FixPressBerendsen::FixPressBerendsen(LAMMPS *lmp, int narg, char **arg) : if (iarg+4 > narg) error->all(FLERR,"Illegal fix press/berendsen command"); pcouple = NONE; - p_start[0] = p_start[1] = p_start[2] = atof(arg[iarg+1]); - p_stop[0] = p_stop[1] = p_stop[2] = atof(arg[iarg+2]); - p_period[0] = p_period[1] = p_period[2] = atof(arg[iarg+3]); + p_start[0] = p_start[1] = p_start[2] = force->numeric(FLERR,arg[iarg+1]); + p_stop[0] = p_stop[1] = p_stop[2] = force->numeric(FLERR,arg[iarg+2]); + p_period[0] = p_period[1] = p_period[2] = force->numeric(FLERR,arg[iarg+3]); p_flag[0] = p_flag[1] = p_flag[2] = 1; if (dimension == 2) { p_start[2] = p_stop[2] = p_period[2] = 0.0; @@ -97,25 +97,25 @@ FixPressBerendsen::FixPressBerendsen(LAMMPS *lmp, int narg, char **arg) : } else if (strcmp(arg[iarg],"x") == 0) { if (iarg+4 > narg) error->all(FLERR,"Illegal fix press/berendsen command"); - p_start[0] = atof(arg[iarg+1]); - p_stop[0] = atof(arg[iarg+2]); - p_period[0] = atof(arg[iarg+3]); + p_start[0] = force->numeric(FLERR,arg[iarg+1]); + p_stop[0] = force->numeric(FLERR,arg[iarg+2]); + p_period[0] = force->numeric(FLERR,arg[iarg+3]); p_flag[0] = 1; iarg += 4; } else if (strcmp(arg[iarg],"y") == 0) { if (iarg+4 > narg) error->all(FLERR,"Illegal fix press/berendsen command"); - p_start[1] = atof(arg[iarg+1]); - p_stop[1] = atof(arg[iarg+2]); - p_period[1] = atof(arg[iarg+3]); + p_start[1] = force->numeric(FLERR,arg[iarg+1]); + p_stop[1] = force->numeric(FLERR,arg[iarg+2]); + p_period[1] = force->numeric(FLERR,arg[iarg+3]); p_flag[1] = 1; iarg += 4; } else if (strcmp(arg[iarg],"z") == 0) { if (iarg+4 > narg) error->all(FLERR,"Illegal fix press/berendsen command"); - p_start[2] = atof(arg[iarg+1]); - p_stop[2] = atof(arg[iarg+2]); - p_period[2] = atof(arg[iarg+3]); + p_start[2] = force->numeric(FLERR,arg[iarg+1]); + p_stop[2] = force->numeric(FLERR,arg[iarg+2]); + p_period[2] = force->numeric(FLERR,arg[iarg+3]); p_flag[2] = 1; iarg += 4; if (dimension == 2) @@ -135,7 +135,7 @@ FixPressBerendsen::FixPressBerendsen(LAMMPS *lmp, int narg, char **arg) : } else if (strcmp(arg[iarg],"modulus") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal fix press/berendsen command"); - bulkmodulus = atof(arg[iarg+1]); + bulkmodulus = force->numeric(FLERR,arg[iarg+1]); if (bulkmodulus <= 0.0) error->all(FLERR,"Illegal fix press/berendsen command"); iarg += 2; diff --git a/src/fix_print.cpp b/src/fix_print.cpp index 5db6b096da4217a61478481098b334c80a114053..f93356c0433a06b86cea7e3f2fdf0b3f0b5a116d 100644 --- a/src/fix_print.cpp +++ b/src/fix_print.cpp @@ -20,6 +20,7 @@ #include "variable.h" #include "memory.h" #include "error.h" +#include "force.h" using namespace LAMMPS_NS; using namespace FixConst; @@ -30,7 +31,7 @@ FixPrint::FixPrint(LAMMPS *lmp, int narg, char **arg) : Fix(lmp, narg, arg) { if (narg < 5) error->all(FLERR,"Illegal fix print command"); - nevery = atoi(arg[3]); + nevery = force->inumeric(FLERR,arg[3]); if (nevery <= 0) error->all(FLERR,"Illegal fix print command"); MPI_Comm_rank(world,&me); diff --git a/src/fix_read_restart.cpp b/src/fix_read_restart.cpp index fc85315720c1a99612fa4848c827aaa67b9c625b..a1d1b7c6555653db7872380236f514786e894d57 100644 --- a/src/fix_read_restart.cpp +++ b/src/fix_read_restart.cpp @@ -15,6 +15,7 @@ #include "fix_read_restart.h" #include "atom.h" #include "memory.h" +#include "force.h" using namespace LAMMPS_NS; using namespace FixConst; @@ -24,8 +25,8 @@ using namespace FixConst; FixReadRestart::FixReadRestart(LAMMPS *lmp, int narg, char **arg) : Fix(lmp, narg, arg) { - nextra = atoi(arg[3]); - int nfix = atoi(arg[4]); + nextra = force->inumeric(FLERR,arg[3]); + int nfix = force->inumeric(FLERR,arg[4]); // perform initial allocation of atom-based array // register with Atom class diff --git a/src/fix_recenter.cpp b/src/fix_recenter.cpp index 50ea9c2303ff050a12d39e3e27b0e65d29ea859c..29e77b255558616968a460199faa07a5763286ae 100644 --- a/src/fix_recenter.cpp +++ b/src/fix_recenter.cpp @@ -25,6 +25,7 @@ #include "modify.h" #include "comm.h" #include "error.h" +#include "force.h" using namespace LAMMPS_NS; using namespace FixConst; @@ -44,13 +45,13 @@ FixRecenter::FixRecenter(LAMMPS *lmp, int narg, char **arg) : if (strcmp(arg[3],"NULL") == 0) xflag = 0; else if (strcmp(arg[3],"INIT") == 0) xinitflag = 1; - else xcom = atof(arg[3]); + else xcom = force->numeric(FLERR,arg[3]); if (strcmp(arg[4],"NULL") == 0) yflag = 0; else if (strcmp(arg[4],"INIT") == 0) yinitflag = 1; - else ycom = atof(arg[4]); + else ycom = force->numeric(FLERR,arg[4]); if (strcmp(arg[5],"NULL") == 0) zflag = 0; else if (strcmp(arg[5],"INIT") == 0) zinitflag = 1; - else zcom = atof(arg[5]); + else zcom = force->numeric(FLERR,arg[5]); // optional args diff --git a/src/fix_respa.cpp b/src/fix_respa.cpp index 591440f2ed7f1a71dcae0b7bfbb429a7578cf408..d346712b9d91053941f6056167a472831c077e29 100644 --- a/src/fix_respa.cpp +++ b/src/fix_respa.cpp @@ -16,6 +16,7 @@ #include "atom.h" #include "memory.h" #include "error.h" +#include "force.h" using namespace LAMMPS_NS; using namespace FixConst; @@ -27,7 +28,7 @@ FixRespa::FixRespa(LAMMPS *lmp, int narg, char **arg) : { // nlevels = # of rRESPA levels - nlevels = atoi(arg[3]); + nlevels = force->inumeric(FLERR,arg[3]); // perform initial allocation of atom-based arrays // register with Atom class diff --git a/src/fix_restrain.cpp b/src/fix_restrain.cpp index bd1d39f471e3072e04489883ca253f4012d023e2..33f717c8967df8d9299ffabdadd7c63663ac6fba 100644 --- a/src/fix_restrain.cpp +++ b/src/fix_restrain.cpp @@ -76,8 +76,8 @@ FixRestrain::FixRestrain(LAMMPS *lmp, int narg, char **arg) : if (strcmp(arg[iarg],"bond") == 0) { if (iarg+6 > narg) error->all(FLERR,"Illegal fix restrain command"); rstyle[nrestrain] = BOND; - ids[nrestrain][0] = atoi(arg[iarg+1]); - ids[nrestrain][1] = atoi(arg[iarg+2]); + ids[nrestrain][0] = force->inumeric(FLERR,arg[iarg+1]); + ids[nrestrain][1] = force->inumeric(FLERR,arg[iarg+2]); kstart[nrestrain] = force->numeric(FLERR,arg[iarg+3]); kstop[nrestrain] = force->numeric(FLERR,arg[iarg+4]); target[nrestrain] = force->numeric(FLERR,arg[iarg+5]); @@ -85,9 +85,9 @@ FixRestrain::FixRestrain(LAMMPS *lmp, int narg, char **arg) : } else if (strcmp(arg[iarg],"angle") == 0) { if (iarg+7 > narg) error->all(FLERR,"Illegal fix restrain command"); rstyle[nrestrain] = ANGLE; - ids[nrestrain][0] = atoi(arg[iarg+1]); - ids[nrestrain][1] = atoi(arg[iarg+2]); - ids[nrestrain][2] = atoi(arg[iarg+3]); + ids[nrestrain][0] = force->inumeric(FLERR,arg[iarg+1]); + ids[nrestrain][1] = force->inumeric(FLERR,arg[iarg+2]); + ids[nrestrain][2] = force->inumeric(FLERR,arg[iarg+3]); kstart[nrestrain] = force->numeric(FLERR,arg[iarg+4]); kstop[nrestrain] = force->numeric(FLERR,arg[iarg+5]); target[nrestrain] = force->numeric(FLERR,arg[iarg+6]); @@ -96,10 +96,10 @@ FixRestrain::FixRestrain(LAMMPS *lmp, int narg, char **arg) : } else if (strcmp(arg[iarg],"dihedral") == 0) { if (iarg+8 > narg) error->all(FLERR,"Illegal fix restrain command"); rstyle[nrestrain] = DIHEDRAL; - ids[nrestrain][0] = atoi(arg[iarg+1]); - ids[nrestrain][1] = atoi(arg[iarg+2]); - ids[nrestrain][2] = atoi(arg[iarg+3]); - ids[nrestrain][3] = atoi(arg[iarg+4]); + ids[nrestrain][0] = force->inumeric(FLERR,arg[iarg+1]); + ids[nrestrain][1] = force->inumeric(FLERR,arg[iarg+2]); + ids[nrestrain][2] = force->inumeric(FLERR,arg[iarg+3]); + ids[nrestrain][3] = force->inumeric(FLERR,arg[iarg+4]); kstart[nrestrain] = force->numeric(FLERR,arg[iarg+5]); kstop[nrestrain] = force->numeric(FLERR,arg[iarg+6]); target[nrestrain] = force->numeric(FLERR,arg[iarg+7]); diff --git a/src/fix_setforce.cpp b/src/fix_setforce.cpp index 6522e595793c9b4d43b0dc8fb8dde8e86d73af9e..1759ed9e920002b103eccb72713433fbdb3ca336 100644 --- a/src/fix_setforce.cpp +++ b/src/fix_setforce.cpp @@ -24,6 +24,7 @@ #include "variable.h" #include "memory.h" #include "error.h" +#include "force.h" using namespace LAMMPS_NS; using namespace FixConst; @@ -51,7 +52,7 @@ FixSetForce::FixSetForce(LAMMPS *lmp, int narg, char **arg) : } else if (strcmp(arg[3],"NULL") == 0) { xstyle = NONE; } else { - xvalue = atof(arg[3]); + xvalue = force->numeric(FLERR,arg[3]); xstyle = CONSTANT; } if (strstr(arg[4],"v_") == arg[4]) { @@ -61,7 +62,7 @@ FixSetForce::FixSetForce(LAMMPS *lmp, int narg, char **arg) : } else if (strcmp(arg[4],"NULL") == 0) { ystyle = NONE; } else { - yvalue = atof(arg[4]); + yvalue = force->numeric(FLERR,arg[4]); ystyle = CONSTANT; } if (strstr(arg[5],"v_") == arg[5]) { @@ -71,7 +72,7 @@ FixSetForce::FixSetForce(LAMMPS *lmp, int narg, char **arg) : } else if (strcmp(arg[5],"NULL") == 0) { zstyle = NONE; } else { - zvalue = atof(arg[5]); + zvalue = force->numeric(FLERR,arg[5]); zstyle = CONSTANT; } diff --git a/src/fix_shake.cpp b/src/fix_shake.cpp index 16c137dd12abf4228c2e9a3c9f99169da42658e2..a66c8d554a46e10bfd40fba5009782d67a442eaf 100644 --- a/src/fix_shake.cpp +++ b/src/fix_shake.cpp @@ -79,9 +79,9 @@ FixShake::FixShake(LAMMPS *lmp, int narg, char **arg) : if (narg < 8) error->all(FLERR,"Illegal fix shake command"); - tolerance = atof(arg[3]); - max_iter = atoi(arg[4]); - output_every = atoi(arg[5]); + tolerance = force->numeric(FLERR,arg[3]); + max_iter = force->inumeric(FLERR,arg[4]); + output_every = force->inumeric(FLERR,arg[5]); // parse SHAKE args for bond and angle types // will be used by find_clusters @@ -110,25 +110,25 @@ FixShake::FixShake(LAMMPS *lmp, int narg, char **arg) : atom->check_mass(); } else if (mode == 'b') { - int i = atoi(arg[next]); + int i = force->inumeric(FLERR,arg[next]); if (i < 1 || i > atom->nbondtypes) error->all(FLERR,"Invalid bond type index for fix shake"); bond_flag[i] = 1; } else if (mode == 'a') { - int i = atoi(arg[next]); + int i = force->inumeric(FLERR,arg[next]); if (i < 1 || i > atom->nangletypes) error->all(FLERR,"Invalid angle type index for fix shake"); angle_flag[i] = 1; } else if (mode == 't') { - int i = atoi(arg[next]); + int i = force->inumeric(FLERR,arg[next]); if (i < 1 || i > atom->ntypes) error->all(FLERR,"Invalid atom type index for fix shake"); type_flag[i] = 1; } else if (mode == 'm') { - double massone = atof(arg[next]); + double massone = force->numeric(FLERR,arg[next]); if (massone == 0.0) error->all(FLERR,"Invalid atom mass for fix shake"); if (nmass == atom->ntypes) error->all(FLERR,"Too many masses for fix shake"); diff --git a/src/fix_spring.cpp b/src/fix_spring.cpp index 7b214074ca96a7abe9909e930b028d09924c2d09..d80d2cb170eeaec7ff709ea3f34df2a00b3e999a 100644 --- a/src/fix_spring.cpp +++ b/src/fix_spring.cpp @@ -24,6 +24,7 @@ #include "respa.h" #include "domain.h" #include "error.h" +#include "force.h" #include "group.h" using namespace LAMMPS_NS; @@ -52,15 +53,15 @@ FixSpring::FixSpring(LAMMPS *lmp, int narg, char **arg) : if (strcmp(arg[3],"tether") == 0) { if (narg != 9) error->all(FLERR,"Illegal fix spring command"); styleflag = TETHER; - k_spring = atof(arg[4]); + k_spring = force->numeric(FLERR,arg[4]); xflag = yflag = zflag = 1; if (strcmp(arg[5],"NULL") == 0) xflag = 0; - else xc = atof(arg[5]); + else xc = force->numeric(FLERR,arg[5]); if (strcmp(arg[6],"NULL") == 0) yflag = 0; - else yc = atof(arg[6]); + else yc = force->numeric(FLERR,arg[6]); if (strcmp(arg[7],"NULL") == 0) zflag = 0; - else zc = atof(arg[7]); - r0 = atof(arg[8]); + else zc = force->numeric(FLERR,arg[7]); + r0 = force->numeric(FLERR,arg[8]); if (r0 < 0) error->all(FLERR,"R0 < 0 for fix spring command"); } else if (strcmp(arg[3],"couple") == 0) { @@ -77,15 +78,15 @@ FixSpring::FixSpring(LAMMPS *lmp, int narg, char **arg) : error->all(FLERR,"Two groups cannot be the same in fix spring couple"); group2bit = group->bitmask[igroup2]; - k_spring = atof(arg[5]); + k_spring = force->numeric(FLERR,arg[5]); xflag = yflag = zflag = 1; if (strcmp(arg[6],"NULL") == 0) xflag = 0; - else xc = atof(arg[6]); + else xc = force->numeric(FLERR,arg[6]); if (strcmp(arg[7],"NULL") == 0) yflag = 0; - else yc = atof(arg[7]); + else yc = force->numeric(FLERR,arg[7]); if (strcmp(arg[8],"NULL") == 0) zflag = 0; - else zc = atof(arg[8]); - r0 = atof(arg[9]); + else zc = force->numeric(FLERR,arg[8]); + r0 = force->numeric(FLERR,arg[9]); if (r0 < 0) error->all(FLERR,"R0 < 0 for fix spring command"); } else error->all(FLERR,"Illegal fix spring command"); diff --git a/src/fix_spring_rg.cpp b/src/fix_spring_rg.cpp index 0d93c4b62807dbd2ea53f16946fde75fd23f071c..c3d65829b2db3ae8e2b466d4f03ac8ea11adf701 100644 --- a/src/fix_spring_rg.cpp +++ b/src/fix_spring_rg.cpp @@ -26,6 +26,7 @@ #include "respa.h" #include "domain.h" #include "error.h" +#include "force.h" using namespace LAMMPS_NS; using namespace FixConst; @@ -37,10 +38,10 @@ FixSpringRG::FixSpringRG(LAMMPS *lmp, int narg, char **arg) : { if (narg != 5) error->all(FLERR,"Illegal fix spring/rg command"); - k = atof(arg[3]); + k = force->numeric(FLERR,arg[3]); rg0_flag = 0; if (strcmp(arg[4],"NULL") == 0) rg0_flag = 1; - else rg0 = atof(arg[4]); + else rg0 = force->numeric(FLERR,arg[4]); } /* ---------------------------------------------------------------------- */ diff --git a/src/fix_spring_self.cpp b/src/fix_spring_self.cpp index 0026f879c6701488e6638fdb39aa95e4e59659f0..3ad5c2c72e360d45604a17ce4759e1d6d465a7a3 100644 --- a/src/fix_spring_self.cpp +++ b/src/fix_spring_self.cpp @@ -24,6 +24,7 @@ #include "respa.h" #include "memory.h" #include "error.h" +#include "force.h" using namespace LAMMPS_NS; using namespace FixConst; @@ -41,7 +42,7 @@ FixSpringSelf::FixSpringSelf(LAMMPS *lmp, int narg, char **arg) : global_freq = 1; extscalar = 1; - k = atof(arg[3]); + k = force->numeric(FLERR,arg[3]); if (k <= 0.0) error->all(FLERR,"Illegal fix spring/self command"); xflag = yflag = zflag = 1; diff --git a/src/fix_store.cpp b/src/fix_store.cpp index be80e0ebf25d463dd5b15319fcb067db194fcad2..9da5f6870d14122c0b5999708e829cde34166e6f 100644 --- a/src/fix_store.cpp +++ b/src/fix_store.cpp @@ -17,6 +17,7 @@ #include "atom.h" #include "memory.h" #include "error.h" +#include "force.h" using namespace LAMMPS_NS; using namespace FixConst; @@ -29,8 +30,8 @@ FixStore::FixStore(LAMMPS *lmp, int narg, char **arg) : Fix(lmp, narg, arg) // syntax: id group style 0/1 nvalue - restart_peratom = atoi(arg[3]); - nvalues = atoi(arg[4]); + restart_peratom = force->inumeric(FLERR,arg[3]); + nvalues = force->inumeric(FLERR,arg[4]); vecflag = 0; if (nvalues == 1) vecflag = 1; diff --git a/src/fix_store_state.cpp b/src/fix_store_state.cpp index 1fade845d7711e5006055634e838e5d1e5654378..067edd0a3d634462b4efa643ea13abacb7e20641 100644 --- a/src/fix_store_state.cpp +++ b/src/fix_store_state.cpp @@ -25,6 +25,7 @@ #include "variable.h" #include "memory.h" #include "error.h" +#include "force.h" using namespace LAMMPS_NS; using namespace FixConst; @@ -43,7 +44,7 @@ FixStoreState::FixStoreState(LAMMPS *lmp, int narg, char **arg) : restart_peratom = 1; peratom_freq = 1; - nevery = atoi(arg[3]); + nevery = force->inumeric(FLERR,arg[3]); if (nevery < 0) error->all(FLERR,"Illegal fix store/state command"); // parse values until one isn't recognized diff --git a/src/fix_temp_berendsen.cpp b/src/fix_temp_berendsen.cpp index 52bd4bc3a5a67004fdc6791a138e9649f0c50cc7..5aac69073576f5eccb91ee14988fdd52144321f7 100644 --- a/src/fix_temp_berendsen.cpp +++ b/src/fix_temp_berendsen.cpp @@ -53,13 +53,13 @@ FixTempBerendsen::FixTempBerendsen(LAMMPS *lmp, int narg, char **arg) : strcpy(tstr,&arg[3][2]); tstyle = EQUAL; } else { - t_start = atof(arg[3]); + t_start = force->numeric(FLERR,arg[3]); t_target = t_start; tstyle = CONSTANT; } - t_stop = atof(arg[4]); - t_period = atof(arg[5]); + t_stop = force->numeric(FLERR,arg[4]); + t_period = force->numeric(FLERR,arg[5]); // error checks diff --git a/src/fix_temp_rescale.cpp b/src/fix_temp_rescale.cpp index 69e74eeb02424f0ea33dcd08e3ad405e1ce120b9..38cbe8a33cf706a3424af2c9cc91d58b8eaeba9f 100644 --- a/src/fix_temp_rescale.cpp +++ b/src/fix_temp_rescale.cpp @@ -41,7 +41,7 @@ FixTempRescale::FixTempRescale(LAMMPS *lmp, int narg, char **arg) : { if (narg < 8) error->all(FLERR,"Illegal fix temp/rescale command"); - nevery = atoi(arg[3]); + nevery = force->inumeric(FLERR,arg[3]); if (nevery <= 0) error->all(FLERR,"Illegal fix temp/rescale command"); scalar_flag = 1; @@ -55,14 +55,14 @@ FixTempRescale::FixTempRescale(LAMMPS *lmp, int narg, char **arg) : strcpy(tstr,&arg[4][2]); tstyle = EQUAL; } else { - t_start = atof(arg[4]); + t_start = force->numeric(FLERR,arg[4]); t_target = t_start; tstyle = CONSTANT; } - t_stop = atof(arg[5]); - t_window = atof(arg[6]); - fraction = atof(arg[7]); + t_stop = force->numeric(FLERR,arg[5]); + t_window = force->numeric(FLERR,arg[6]); + fraction = force->numeric(FLERR,arg[7]); // create a new compute temp // id = fix-ID + temp, compute group = fix group diff --git a/src/fix_thermal_conductivity.cpp b/src/fix_thermal_conductivity.cpp index 6d077f53062926332f97922a159fb5c4db85678b..b653e348647f036e1368e007f126e2190acd6efd 100644 --- a/src/fix_thermal_conductivity.cpp +++ b/src/fix_thermal_conductivity.cpp @@ -42,7 +42,7 @@ FixThermalConductivity::FixThermalConductivity(LAMMPS *lmp, MPI_Comm_rank(world,&me); - nevery = atoi(arg[3]); + nevery = force->inumeric(FLERR,arg[3]); if (nevery <= 0) error->all(FLERR,"Illegal fix thermal/conductivity command"); scalar_flag = 1; @@ -54,7 +54,7 @@ FixThermalConductivity::FixThermalConductivity(LAMMPS *lmp, else if (strcmp(arg[4],"z") == 0) edim = 2; else error->all(FLERR,"Illegal fix thermal/conductivity command"); - nbin = atoi(arg[5]); + nbin = force->inumeric(FLERR,arg[5]); if (nbin % 2 || nbin <= 2) error->all(FLERR,"Illegal fix thermal/conductivity command"); @@ -67,7 +67,7 @@ FixThermalConductivity::FixThermalConductivity(LAMMPS *lmp, if (strcmp(arg[iarg],"swap") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal fix thermal/conductivity command"); - nswap = atoi(arg[iarg+1]); + nswap = force->inumeric(FLERR,arg[iarg+1]); if (nswap <= 0) error->all(FLERR, "Fix thermal/conductivity swap value must be positive"); diff --git a/src/fix_tmd.cpp b/src/fix_tmd.cpp index 4136f97f7d895cad303a37d29bf10ee9b3e469ab..e8ab940d6fd80b04891fde780285e541bafa1ceb 100644 --- a/src/fix_tmd.cpp +++ b/src/fix_tmd.cpp @@ -44,8 +44,8 @@ FixTMD::FixTMD(LAMMPS *lmp, int narg, char **arg) : Fix(lmp, narg, arg) { if (narg < 6) error->all(FLERR,"Illegal fix tmd command"); - rho_stop = atof(arg[3]); - nfileevery = atoi(arg[5]); + rho_stop = force->numeric(FLERR,arg[3]); + nfileevery = force->inumeric(FLERR,arg[5]); if (rho_stop < 0 || nfileevery < 0) error->all(FLERR,"Illegal fix tmd command"); if (nfileevery && narg != 7) error->all(FLERR,"Illegal fix tmd command"); diff --git a/src/fix_ttm.cpp b/src/fix_ttm.cpp index 405842d6a42a60a957440be3bb7ba1cd7096ab03..abd145a0922d6a9bb9e571cdd10b5f33ce46e3fc 100644 --- a/src/fix_ttm.cpp +++ b/src/fix_ttm.cpp @@ -53,16 +53,16 @@ FixTTM::FixTTM(LAMMPS *lmp, int narg, char **arg) : restart_peratom = 1; restart_global = 1; - seed = atoi(arg[3]); - electronic_specific_heat = atof(arg[4]); - electronic_density = atof(arg[5]); - electronic_thermal_conductivity = atof(arg[6]); - gamma_p = atof(arg[7]); - gamma_s = atof(arg[8]); - v_0 = atof(arg[9]); - nxnodes = atoi(arg[10]); - nynodes = atoi(arg[11]); - nznodes = atoi(arg[12]); + seed = force->inumeric(FLERR,arg[3]); + electronic_specific_heat = force->numeric(FLERR,arg[4]); + electronic_density = force->numeric(FLERR,arg[5]); + electronic_thermal_conductivity = force->numeric(FLERR,arg[6]); + gamma_p = force->numeric(FLERR,arg[7]); + gamma_s = force->numeric(FLERR,arg[8]); + v_0 = force->numeric(FLERR,arg[9]); + nxnodes = force->inumeric(FLERR,arg[10]); + nynodes = force->inumeric(FLERR,arg[11]); + nznodes = force->inumeric(FLERR,arg[12]); fpr = fopen(arg[13],"r"); if (fpr == NULL) { @@ -71,7 +71,7 @@ FixTTM::FixTTM(LAMMPS *lmp, int narg, char **arg) : error->one(FLERR,str); } - nfileevery = atoi(arg[14]); + nfileevery = force->inumeric(FLERR,arg[14]); if (nfileevery) { if (narg != 16) error->all(FLERR,"Illegal fix ttm command"); diff --git a/src/fix_viscosity.cpp b/src/fix_viscosity.cpp index 24f0a911c5b7ad911cfd2c84526274e42d3bafab..8006c93a7544f574ac808ddc8da7ba37dc77ff21 100644 --- a/src/fix_viscosity.cpp +++ b/src/fix_viscosity.cpp @@ -25,6 +25,7 @@ #include "domain.h" #include "modify.h" #include "error.h" +#include "force.h" using namespace LAMMPS_NS; using namespace FixConst; @@ -42,7 +43,7 @@ FixViscosity::FixViscosity(LAMMPS *lmp, int narg, char **arg) : MPI_Comm_rank(world,&me); - nevery = atoi(arg[3]); + nevery = force->inumeric(FLERR,arg[3]); if (nevery <= 0) error->all(FLERR,"Illegal fix viscosity command"); scalar_flag = 1; @@ -59,7 +60,7 @@ FixViscosity::FixViscosity(LAMMPS *lmp, int narg, char **arg) : else if (strcmp(arg[5],"z") == 0) pdim = 2; else error->all(FLERR,"Illegal fix viscosity command"); - nbin = atoi(arg[6]); + nbin = force->inumeric(FLERR,arg[6]); if (nbin % 2 || nbin <= 2) error->all(FLERR,"Illegal fix viscosity command"); // optional keywords @@ -71,13 +72,13 @@ FixViscosity::FixViscosity(LAMMPS *lmp, int narg, char **arg) : while (iarg < narg) { if (strcmp(arg[iarg],"swap") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal fix viscosity command"); - nswap = atoi(arg[iarg+1]); + nswap = force->inumeric(FLERR,arg[iarg+1]); if (nswap <= 0) error->all(FLERR,"Fix viscosity swap value must be positive"); iarg += 2; } else if (strcmp(arg[iarg],"vtarget") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal fix viscosity command"); if (strcmp(arg[iarg+1],"INF") == 0) vtarget = BIG; - else vtarget = atof(arg[iarg+1]); + else vtarget = force->numeric(FLERR,arg[iarg+1]); if (vtarget <= 0.0) error->all(FLERR,"Fix viscosity vtarget value must be positive"); iarg += 2; diff --git a/src/fix_viscous.cpp b/src/fix_viscous.cpp index f6a6f2d66ac4455fb5198d920f56b54b7a0d9b82..f1ad471404a6b2e465bc52be5782803ae4d04dac 100644 --- a/src/fix_viscous.cpp +++ b/src/fix_viscous.cpp @@ -19,6 +19,7 @@ #include "update.h" #include "respa.h" #include "error.h" +#include "force.h" using namespace LAMMPS_NS; using namespace FixConst; @@ -30,7 +31,7 @@ FixViscous::FixViscous(LAMMPS *lmp, int narg, char **arg) : { if (narg < 4) error->all(FLERR,"Illegal fix viscous command"); - double gamma_one = atof(arg[3]); + double gamma_one = force->numeric(FLERR,arg[3]); gamma = new double[atom->ntypes+1]; for (int i = 1; i <= atom->ntypes; i++) gamma[i] = gamma_one; @@ -40,8 +41,8 @@ FixViscous::FixViscous(LAMMPS *lmp, int narg, char **arg) : while (iarg < narg) { if (strcmp(arg[iarg],"scale") == 0) { if (iarg+3 > narg) error->all(FLERR,"Illegal fix viscous command"); - int itype = atoi(arg[iarg+1]); - double scale = atof(arg[iarg+2]); + int itype = force->inumeric(FLERR,arg[iarg+1]); + double scale = force->numeric(FLERR,arg[iarg+2]); if (itype <= 0 || itype > atom->ntypes) error->all(FLERR,"Illegal fix viscous command"); gamma[itype] = gamma_one * scale; diff --git a/src/fix_wall.cpp b/src/fix_wall.cpp index 07cb7255c4311528b3e6a14b8e8e1b0b28dade0d..90fca0a981930e0d0acedaa9fe06f96514b28335 100644 --- a/src/fix_wall.cpp +++ b/src/fix_wall.cpp @@ -24,12 +24,13 @@ #include "modify.h" #include "respa.h" #include "error.h" +#include "force.h" using namespace LAMMPS_NS; using namespace FixConst; -enum{XLO,XHI,YLO,YHI,ZLO,ZHI}; -enum{EDGE,CONSTANT,VARIABLE}; +enum{XLO=0,XHI=1,YLO=2,YHI=3,ZLO=4,ZHI=5}; +enum{NONE=0,EDGE,CONSTANT,VARIABLE}; /* ---------------------------------------------------------------------- */ @@ -84,7 +85,7 @@ FixWall::FixWall(LAMMPS *lmp, int narg, char **arg) : strcpy(xstr[nwall],&arg[iarg+1][2]); } else { xstyle[nwall] = CONSTANT; - coord0[nwall] = atof(arg[iarg+1]); + coord0[nwall] = force->numeric(FLERR,arg[iarg+1]); } if (strstr(arg[iarg+2],"v_") == arg[iarg+2]) { @@ -93,7 +94,7 @@ FixWall::FixWall(LAMMPS *lmp, int narg, char **arg) : strcpy(estr[nwall],&arg[iarg+2][2]); estyle[nwall] = VARIABLE; } else { - epsilon[nwall] = atof(arg[iarg+2]); + epsilon[nwall] = force->numeric(FLERR,arg[iarg+2]); estyle[nwall] = CONSTANT; } @@ -103,11 +104,11 @@ FixWall::FixWall(LAMMPS *lmp, int narg, char **arg) : strcpy(sstr[nwall],&arg[iarg+3][2]); sstyle[nwall] = VARIABLE; } else { - sigma[nwall] = atof(arg[iarg+3]); + sigma[nwall] = force->numeric(FLERR,arg[iarg+3]); sstyle[nwall] = CONSTANT; } - cutoff[nwall] = atof(arg[iarg+4]); + cutoff[nwall] = force->numeric(FLERR,arg[iarg+4]); nwall++; iarg += 5; diff --git a/src/fix_wall_reflect.cpp b/src/fix_wall_reflect.cpp index 9fc7d602641b8eae41d5b7f723959f6e08a127a3..adcb893a4e70d0bf6ea8909d176f15fae461e861 100644 --- a/src/fix_wall_reflect.cpp +++ b/src/fix_wall_reflect.cpp @@ -23,12 +23,13 @@ #include "input.h" #include "variable.h" #include "error.h" +#include "force.h" using namespace LAMMPS_NS; using namespace FixConst; -enum{XLO,XHI,YLO,YHI,ZLO,ZHI}; -enum{EDGE,CONSTANT,VARIABLE}; +enum{XLO=0,XHI=1,YLO=2,YHI=3,ZLO=4,ZHI=5}; +enum{NONE=0,EDGE,CONSTANT,VARIABLE}; /* ---------------------------------------------------------------------- */ @@ -75,7 +76,7 @@ FixWallReflect::FixWallReflect(LAMMPS *lmp, int narg, char **arg) : strcpy(varstr[nwall],&arg[iarg+1][2]); } else { wallstyle[nwall] = CONSTANT; - coord0[nwall] = atof(arg[iarg+1]); + coord0[nwall] = force->numeric(FLERR,arg[iarg+1]); } nwall++; diff --git a/src/fix_wall_region.cpp b/src/fix_wall_region.cpp index e4572e8fed42158b8534965f023ab2691baa5337..ea36893fc023268a05c49b823355f9225847b0a1 100644 --- a/src/fix_wall_region.cpp +++ b/src/fix_wall_region.cpp @@ -24,6 +24,7 @@ #include "output.h" #include "respa.h" #include "error.h" +#include "force.h" using namespace LAMMPS_NS; using namespace FixConst; @@ -59,9 +60,9 @@ FixWallRegion::FixWallRegion(LAMMPS *lmp, int narg, char **arg) : else if (strcmp(arg[4],"harmonic") == 0) style = HARMONIC; else error->all(FLERR,"Illegal fix wall/region command"); - epsilon = atof(arg[5]); - sigma = atof(arg[6]); - cutoff = atof(arg[7]); + epsilon = force->numeric(FLERR,arg[5]); + sigma = force->numeric(FLERR,arg[6]); + cutoff = force->numeric(FLERR,arg[7]); if (cutoff <= 0.0) error->all(FLERR,"Fix wall/region cutoff <= 0.0"); diff --git a/src/group.cpp b/src/group.cpp index a84b3a8beeca6e02d55e71b5e87af6f8acde4ac0..7d270b634fb1fca6aa16359f55a0fc77031e81c3 100644 --- a/src/group.cpp +++ b/src/group.cpp @@ -185,12 +185,12 @@ void Group::assign(int narg, char **arg) else if (strcmp(arg[2],"<>") == 0) condition = BETWEEN; else error->all(FLERR,"Illegal group command"); - bound1 = atoi(arg[3]); + bound1 = force->inumeric(FLERR,arg[3]); bound2 = -1; if (condition == BETWEEN) { if (narg != 5) error->all(FLERR,"Illegal group command"); - bound2 = atoi(arg[4]); + bound2 = force->inumeric(FLERR,arg[4]); } else if (narg != 4) error->all(FLERR,"Illegal group command"); int *attribute; diff --git a/src/image.cpp b/src/image.cpp index ceb5e62bf9c9cc34513608164078492d4612db94..4cbacf56c897f02c1e1aaea9e25f51d85b2fe756 100644 --- a/src/image.cpp +++ b/src/image.cpp @@ -25,6 +25,7 @@ #include "random_mars.h" #include "math_const.h" #include "error.h" +#include "force.h" #include "memory.h" #ifdef LAMMPS_JPEG @@ -132,7 +133,7 @@ Image::~Image() memory->destroy(surfacecopy); memory->destroy(rgbcopy); - delete random; + if (random) delete random; } /* ---------------------------------------------------------------------- @@ -1098,13 +1099,13 @@ int Image::colormap(int narg, char **arg) { if (!islower(arg[0][0])) { mlo = NUMERIC; - mlovalue = atof(arg[0]); + mlovalue = force->numeric(FLERR,arg[0]); } else if (strcmp(arg[0],"min") == 0) mlo = MINVALUE; else return 1; if (!islower(arg[1][0])) { mhi = NUMERIC; - mhivalue = atof(arg[1]); + mhivalue = force->numeric(FLERR,arg[1]); } else if (strcmp(arg[1],"max") == 0) mhi = MAXVALUE; else return 1; @@ -1120,12 +1121,12 @@ int Image::colormap(int narg, char **arg) else return 1; if (mstyle == SEQUENTIAL) { - mbinsize = atof(arg[3]); + mbinsize = force->numeric(FLERR,arg[3]); if (mbinsize <= 0.0) return 1; mbinsizeinv = 1.0/mbinsize; } - nentry = atoi(arg[4]); + nentry = force->inumeric(FLERR,arg[4]); if (nentry < 1) return 1; mentry = new MapEntry[nentry]; @@ -1135,7 +1136,7 @@ int Image::colormap(int narg, char **arg) if (n+2 > narg) return 1; if (!islower(arg[n][0])) { mentry[i].single = NUMERIC; - mentry[i].svalue = atof(arg[n]); + mentry[i].svalue = force->numeric(FLERR,arg[n]); } else if (strcmp(arg[n],"min") == 0) mentry[i].single = MINVALUE; else if (strcmp(arg[n],"max") == 0) mentry[i].single = MAXVALUE; else return 1; @@ -1145,13 +1146,13 @@ int Image::colormap(int narg, char **arg) if (n+3 > narg) return 1; if (!islower(arg[n][0])) { mentry[i].lo = NUMERIC; - mentry[i].lvalue = atof(arg[n]); + mentry[i].lvalue = force->numeric(FLERR,arg[n]); } else if (strcmp(arg[n],"min") == 0) mentry[i].single = MINVALUE; else if (strcmp(arg[n],"max") == 0) mentry[i].single = MAXVALUE; else return 1; if (!islower(arg[n+1][0])) { mentry[i].hi = NUMERIC; - mentry[i].hvalue = atof(arg[n+1]); + mentry[i].hvalue = force->numeric(FLERR,arg[n+1]); } else if (strcmp(arg[n+1],"min") == 0) mentry[i].single = MINVALUE; else if (strcmp(arg[n+1],"max") == 0) mentry[i].single = MAXVALUE; else return 1; diff --git a/src/input.cpp b/src/input.cpp index 5e5f1d89c9189193344bcf5c8ce3f93e58240085..0a5be3a9a6e8a845f0b83a1065da00f166f98dde 100644 --- a/src/input.cpp +++ b/src/input.cpp @@ -925,7 +925,7 @@ void Input::shell() } else if (strcmp(arg[0],"mkdir") == 0) { if (narg < 2) error->all(FLERR,"Illegal shell command"); -#if !defined(WINDOWS) && !defined(__MINGW32_VERSION) +#if !defined(WINDOWS) && !defined(__MINGW32__) if (me == 0) for (int i = 1; i < narg; i++) mkdir(arg[i], S_IRWXU | S_IRGRP | S_IXGRP); @@ -1087,7 +1087,7 @@ void Input::compute_modify() void Input::dielectric() { if (narg != 1) error->all(FLERR,"Illegal dielectric command"); - force->dielectric = atof(arg[0]); + force->dielectric = force->numeric(FLERR,arg[0]); } /* ---------------------------------------------------------------------- */ @@ -1121,7 +1121,7 @@ void Input::dimension() if (narg != 1) error->all(FLERR,"Illegal dimension command"); if (domain->box_exist) error->all(FLERR,"Dimension command after simulation box is defined"); - domain->dimension = atoi(arg[0]); + domain->dimension = force->inumeric(FLERR,arg[0]); if (domain->dimension != 2 && domain->dimension != 3) error->all(FLERR,"Illegal dimension command"); @@ -1482,7 +1482,7 @@ void Input::thermo_style() void Input::timestep() { if (narg != 1) error->all(FLERR,"Illegal timestep command"); - update->dt = atof(arg[0]); + update->dt = force->numeric(FLERR,arg[0]); } /* ---------------------------------------------------------------------- */ diff --git a/src/neighbor.cpp b/src/neighbor.cpp index 4c8f2006057f4f51321acd44859b11c6fd11face..2afb7de38fcdc48891a4ba9b0d6f26f36ba7599d 100644 --- a/src/neighbor.cpp +++ b/src/neighbor.cpp @@ -1635,7 +1635,7 @@ void Neighbor::set(int narg, char **arg) { if (narg != 2) error->all(FLERR,"Illegal neighbor command"); - skin = atof(arg[0]); + skin = force->numeric(FLERR,arg[0]); if (skin < 0.0) error->all(FLERR,"Illegal neighbor command"); if (strcmp(arg[1],"nsq") == 0) style = NSQ; @@ -1654,12 +1654,12 @@ void Neighbor::modify_params(int narg, char **arg) while (iarg < narg) { if (strcmp(arg[iarg],"every") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal neigh_modify command"); - every = atoi(arg[iarg+1]); + every = force->inumeric(FLERR,arg[iarg+1]); if (every <= 0) error->all(FLERR,"Illegal neigh_modify command"); iarg += 2; } else if (strcmp(arg[iarg],"delay") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal neigh_modify command"); - delay = atoi(arg[iarg+1]); + delay = force->inumeric(FLERR,arg[iarg+1]); if (delay < 0) error->all(FLERR,"Illegal neigh_modify command"); iarg += 2; } else if (strcmp(arg[iarg],"check") == 0) { @@ -1676,15 +1676,15 @@ void Neighbor::modify_params(int narg, char **arg) iarg += 2; } else if (strcmp(arg[iarg],"page") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal neigh_modify command"); - pgsize = atoi(arg[iarg+1]); + pgsize = force->inumeric(FLERR,arg[iarg+1]); iarg += 2; } else if (strcmp(arg[iarg],"one") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal neigh_modify command"); - oneatom = atoi(arg[iarg+1]); + oneatom = force->inumeric(FLERR,arg[iarg+1]); iarg += 2; } else if (strcmp(arg[iarg],"binsize") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal neigh_modify command"); - binsize_user = atof(arg[iarg+1]); + binsize_user = force->numeric(FLERR,arg[iarg+1]); if (binsize_user <= 0.0) binsizeflag = 0; else binsizeflag = 1; iarg += 2; @@ -1716,8 +1716,8 @@ void Neighbor::modify_params(int narg, char **arg) memory->grow(ex1_type,maxex_type,"neigh:ex1_type"); memory->grow(ex2_type,maxex_type,"neigh:ex2_type"); } - ex1_type[nex_type] = atoi(arg[iarg+2]); - ex2_type[nex_type] = atoi(arg[iarg+3]); + ex1_type[nex_type] = force->inumeric(FLERR,arg[iarg+2]); + ex2_type[nex_type] = force->inumeric(FLERR,arg[iarg+3]); nex_type++; iarg += 4; diff --git a/src/output.cpp b/src/output.cpp index 8237ab87933dd755c7bb84f1fa717db8105f6f2b..d988d07e1a75c3acf2f53649319357735f17bea8 100644 --- a/src/output.cpp +++ b/src/output.cpp @@ -449,6 +449,7 @@ void Output::write_restart(bigint ntimestep) void Output::reset_timestep(bigint ntimestep) { + next_dump_any = MAXBIGINT; for (int idump = 0; idump < ndump; idump++) { if (every_dump[idump]) { next_dump[idump] = (ntimestep/every_dump[idump])*every_dump[idump]; @@ -464,8 +465,7 @@ void Output::reset_timestep(bigint ntimestep) next_dump[idump] = nextdump; modify->addstep_compute(next_dump[idump]); } - if (idump) next_dump_any = MIN(next_dump_any,next_dump[idump]); - else next_dump_any = next_dump[0]; + next_dump_any = MIN(next_dump_any,next_dump[idump]); } if (restart_flag_single) { @@ -543,7 +543,7 @@ void Output::add_dump(int narg, char **arg) error->all(FLERR,"Reuse of dump ID"); int igroup = group->find(arg[1]); if (igroup == -1) error->all(FLERR,"Could not find dump group ID"); - if (atoi(arg[3]) <= 0) error->all(FLERR,"Invalid dump frequency"); + if (force->inumeric(FLERR,arg[3]) <= 0) error->all(FLERR,"Invalid dump frequency"); // extend Dump list if necessary @@ -571,7 +571,7 @@ void Output::add_dump(int narg, char **arg) else error->all(FLERR,"Invalid dump style"); - every_dump[ndump] = atoi(arg[3]); + every_dump[ndump] = force->inumeric(FLERR,arg[3]); if (every_dump[ndump] <= 0) error->all(FLERR,"Illegal dump command"); last_dump[ndump] = -1; var_dump[ndump] = NULL; @@ -639,7 +639,7 @@ void Output::set_thermo(int narg, char **arg) var_thermo = new char[n]; strcpy(var_thermo,&arg[0][2]); } else { - thermo_every = atoi(arg[0]); + thermo_every = force->inumeric(FLERR,arg[0]); if (thermo_every < 0) error->all(FLERR,"Illegal thermo command"); } } @@ -683,7 +683,7 @@ void Output::create_restart(int narg, char **arg) int varflag = 0; if (strstr(arg[0],"v_") == arg[0]) varflag = 1; - else every = atoi(arg[0]); + else every = force->inumeric(FLERR,arg[0]); if (!varflag && every == 0) { if (narg != 1) error->all(FLERR,"Illegal restart command"); diff --git a/src/pair_beck.cpp b/src/pair_beck.cpp index d41b7e6931e6bde19d334acac6c1188c565329a3..986a6c74ff244d1c0fbe6dd00374833825582cdf 100644 --- a/src/pair_beck.cpp +++ b/src/pair_beck.cpp @@ -174,7 +174,7 @@ void PairBeck::settings(int narg, char **arg) { if (narg != 1) error->all(FLERR,"Illegal pair_style command"); - cut_global = atof(arg[0]); + cut_global = force->numeric(FLERR,arg[0]); // reset cutoffs that have been explicitly set @@ -202,14 +202,14 @@ void PairBeck::coeff(int narg, char **arg) force->bounds(arg[0],atom->ntypes,ilo,ihi); force->bounds(arg[1],atom->ntypes,jlo,jhi); - double AA_one = atof(arg[2]); - double BB_one = atof(arg[3]); - double aa_one = atof(arg[4]); - double alpha_one = atof(arg[5]); - double beta_one = atof(arg[6]); + double AA_one = force->numeric(FLERR,arg[2]); + double BB_one = force->numeric(FLERR,arg[3]); + double aa_one = force->numeric(FLERR,arg[4]); + double alpha_one = force->numeric(FLERR,arg[5]); + double beta_one = force->numeric(FLERR,arg[6]); double cut_one = cut_global; - if (narg == 8) cut_one = atof(arg[7]); + if (narg == 8) cut_one = force->numeric(FLERR,arg[7]); int count = 0; for (int i = ilo; i <= ihi; i++) { diff --git a/src/pair_born.cpp b/src/pair_born.cpp index 289661e0321b6dbcf940d6f484cdb25563572418..043a7404b2a36960d000d568747ea1911ebdb1c8 100644 --- a/src/pair_born.cpp +++ b/src/pair_born.cpp @@ -175,7 +175,7 @@ void PairBorn::settings(int narg, char **arg) { if (narg != 1) error->all(FLERR,"Illegal pair_style command"); - cut_global = atof(arg[0]); + cut_global = force->numeric(FLERR,arg[0]); // reset cutoffs that have been explicitly set diff --git a/src/pair_gauss.cpp b/src/pair_gauss.cpp index 45eb77da37a752806237bc1f2355e711124402b0..94d74d3c67d8cc242e58a981ab7218b5ea901c0e 100644 --- a/src/pair_gauss.cpp +++ b/src/pair_gauss.cpp @@ -165,7 +165,7 @@ void PairGauss::settings(int narg, char **arg) { if (narg != 1) error->all(FLERR,"Illegal pair_style command"); - cut_global = atof(arg[0]); + cut_global = force->numeric(FLERR,arg[0]); // reset cutoffs that have been explicity set @@ -191,11 +191,11 @@ void PairGauss::coeff(int narg, char **arg) force->bounds(arg[0],atom->ntypes,ilo,ihi); force->bounds(arg[1],atom->ntypes,jlo,jhi); - double a_one = atof(arg[2]); - double b_one = atof(arg[3]); + double a_one = force->numeric(FLERR,arg[2]); + double b_one = force->numeric(FLERR,arg[3]); double cut_one = cut_global; - if (narg == 5) cut_one = atof(arg[4]); + if (narg == 5) cut_one = force->numeric(FLERR,arg[4]); int count = 0; for (int i = ilo; i <= ihi; i++) { diff --git a/src/pair_hybrid.cpp b/src/pair_hybrid.cpp index f40345dfb71f23d7ca3aa1b66203b5156d697e4c..3bba282843c6997d12139ca43dcc776809e99cea 100644 --- a/src/pair_hybrid.cpp +++ b/src/pair_hybrid.cpp @@ -346,7 +346,7 @@ void PairHybrid::coeff(int narg, char **arg) if (narg < 4) error->all(FLERR,"Incorrect args for pair coefficients"); if (!isdigit(arg[3][0])) error->all(FLERR,"Incorrect args for pair coefficients"); - int index = atoi(arg[3]); + int index = force->inumeric(FLERR,arg[3]); if (index == multiple[m]) break; else continue; } else break; diff --git a/src/pair_hybrid_overlay.cpp b/src/pair_hybrid_overlay.cpp index 327c395b228312696c26ffef990faf0950ca2af4..cf48dc14a01e6c91b1a7728af1941af47e2ed772 100644 --- a/src/pair_hybrid_overlay.cpp +++ b/src/pair_hybrid_overlay.cpp @@ -55,7 +55,7 @@ void PairHybridOverlay::coeff(int narg, char **arg) if (narg < 4) error->all(FLERR,"Incorrect args for pair coefficients"); if (!isdigit(arg[3][0])) error->all(FLERR,"Incorrect args for pair coefficients"); - int index = atoi(arg[3]); + int index = force->inumeric(FLERR,arg[3]); if (index == multiple[m]) break; else continue; } else break; diff --git a/src/pair_lj96_cut.cpp b/src/pair_lj96_cut.cpp index 907a74efc5dc006c3408ad4babc8eb94ae8545c0..0e3026b593f71c7c29c0847a6d2e199cfa9756f6 100644 --- a/src/pair_lj96_cut.cpp +++ b/src/pair_lj96_cut.cpp @@ -460,11 +460,11 @@ void PairLJ96Cut::coeff(int narg, char **arg) force->bounds(arg[0],atom->ntypes,ilo,ihi); force->bounds(arg[1],atom->ntypes,jlo,jhi); - double epsilon_one = atof(arg[2]); - double sigma_one = atof(arg[3]); + double epsilon_one = force->numeric(FLERR,arg[2]); + double sigma_one = force->numeric(FLERR,arg[3]); double cut_one = cut_global; - if (narg == 5) cut_one = atof(arg[4]); + if (narg == 5) cut_one = force->numeric(FLERR,arg[4]); int count = 0; for (int i = ilo; i <= ihi; i++) { diff --git a/src/pair_lj_smooth_linear.cpp b/src/pair_lj_smooth_linear.cpp index eea1642e4b17528cf153bcc3ee43380bc6e0ebe0..ed0eeeb6bc0d67def40018a152e09042c4dc9d20 100644 --- a/src/pair_lj_smooth_linear.cpp +++ b/src/pair_lj_smooth_linear.cpp @@ -169,7 +169,7 @@ void PairLJSmoothLinear::settings(int narg, char **arg) { if (narg != 1) error->all(FLERR,"Illegal pair_style command"); - cut_global = atof(arg[0]); + cut_global = force->numeric(FLERR,arg[0]); // reset cutoffs that have been explicitly set @@ -196,12 +196,12 @@ void PairLJSmoothLinear::coeff(int narg, char **arg) force->bounds(arg[0],atom->ntypes,ilo,ihi); force->bounds(arg[1],atom->ntypes,jlo,jhi); - double epsilon_one = atof(arg[2]); - double sigma_one = atof(arg[3]); + double epsilon_one = force->numeric(FLERR,arg[2]); + double sigma_one = force->numeric(FLERR,arg[3]); double cut_one = cut_global; if (narg == 5) { - cut_one = atof(arg[4]); + cut_one = force->numeric(FLERR,arg[4]); } int count = 0; @@ -245,6 +245,7 @@ double PairLJSmoothLinear::init_one(int i, int j) lj2[j][i] = lj2[i][j]; lj3[j][i] = lj3[i][j]; lj4[j][i] = lj4[i][j]; + cut[j][i] = cut[i][j]; ljcut[j][i] = ljcut[i][j]; dljcut[j][i] = dljcut[i][j]; diff --git a/src/region.cpp b/src/region.cpp index a6b5022ca84843681d11c2399a04493111fcddf0..2d2636998007cb095435e1163eaba38a8be9ed92 100644 --- a/src/region.cpp +++ b/src/region.cpp @@ -21,6 +21,7 @@ #include "input.h" #include "variable.h" #include "error.h" +#include "force.h" using namespace LAMMPS_NS; @@ -349,12 +350,12 @@ void Region::options(int narg, char **arg) int n = strlen(&arg[iarg+1][2]) + 1; tstr = new char[n]; strcpy(tstr,&arg[iarg+1][2]); - point[0] = atof(arg[iarg+2]); - point[1] = atof(arg[iarg+3]); - point[2] = atof(arg[iarg+4]); - axis[0] = atof(arg[iarg+5]); - axis[1] = atof(arg[iarg+6]); - axis[2] = atof(arg[iarg+7]); + point[0] = force->numeric(FLERR,arg[iarg+2]); + point[1] = force->numeric(FLERR,arg[iarg+3]); + point[2] = force->numeric(FLERR,arg[iarg+4]); + axis[0] = force->numeric(FLERR,arg[iarg+5]); + axis[1] = force->numeric(FLERR,arg[iarg+6]); + axis[2] = force->numeric(FLERR,arg[iarg+7]); rotateflag = 1; iarg += 8; } else error->all(FLERR,"Illegal region command"); diff --git a/src/region_block.cpp b/src/region_block.cpp index 3a295472f95086b1abecf33f9f3f906ec4e47fdc..0325ae4b1ca9558c4dcec20f6c99af53cbbe7721 100644 --- a/src/region_block.cpp +++ b/src/region_block.cpp @@ -16,6 +16,7 @@ #include "region_block.h" #include "domain.h" #include "error.h" +#include "force.h" using namespace LAMMPS_NS; @@ -33,7 +34,7 @@ RegBlock::RegBlock(LAMMPS *lmp, int narg, char **arg) : Region(lmp, narg, arg) if (strcmp(arg[2],"INF") == 0) xlo = -BIG; else if (domain->triclinic == 0) xlo = domain->boxlo[0]; else xlo = domain->boxlo_bound[0]; - } else xlo = xscale*atof(arg[2]); + } else xlo = xscale*force->numeric(FLERR,arg[2]); if (strcmp(arg[3],"INF") == 0 || strcmp(arg[3],"EDGE") == 0) { if (domain->box_exist == 0) @@ -41,7 +42,7 @@ RegBlock::RegBlock(LAMMPS *lmp, int narg, char **arg) : Region(lmp, narg, arg) if (strcmp(arg[3],"INF") == 0) xhi = BIG; else if (domain->triclinic == 0) xhi = domain->boxhi[0]; else xhi = domain->boxhi_bound[0]; - } else xhi = xscale*atof(arg[3]); + } else xhi = xscale*force->numeric(FLERR,arg[3]); if (strcmp(arg[4],"INF") == 0 || strcmp(arg[4],"EDGE") == 0) { if (domain->box_exist == 0) @@ -49,7 +50,7 @@ RegBlock::RegBlock(LAMMPS *lmp, int narg, char **arg) : Region(lmp, narg, arg) if (strcmp(arg[4],"INF") == 0) ylo = -BIG; else if (domain->triclinic == 0) ylo = domain->boxlo[1]; else ylo = domain->boxlo_bound[1]; - } else ylo = yscale*atof(arg[4]); + } else ylo = yscale*force->numeric(FLERR,arg[4]); if (strcmp(arg[5],"INF") == 0 || strcmp(arg[5],"EDGE") == 0) { if (domain->box_exist == 0) @@ -57,7 +58,7 @@ RegBlock::RegBlock(LAMMPS *lmp, int narg, char **arg) : Region(lmp, narg, arg) if (strcmp(arg[5],"INF") == 0) yhi = BIG; else if (domain->triclinic == 0) yhi = domain->boxhi[1]; else yhi = domain->boxhi_bound[1]; - } else yhi = yscale*atof(arg[5]); + } else yhi = yscale*force->numeric(FLERR,arg[5]); if (strcmp(arg[6],"INF") == 0 || strcmp(arg[6],"EDGE") == 0) { if (domain->box_exist == 0) @@ -65,7 +66,7 @@ RegBlock::RegBlock(LAMMPS *lmp, int narg, char **arg) : Region(lmp, narg, arg) if (strcmp(arg[6],"INF") == 0) zlo = -BIG; else if (domain->triclinic == 0) zlo = domain->boxlo[2]; else zlo = domain->boxlo_bound[2]; - } else zlo = zscale*atof(arg[6]); + } else zlo = zscale*force->numeric(FLERR,arg[6]); if (strcmp(arg[7],"INF") == 0 || strcmp(arg[7],"EDGE") == 0) { if (domain->box_exist == 0) @@ -73,7 +74,7 @@ RegBlock::RegBlock(LAMMPS *lmp, int narg, char **arg) : Region(lmp, narg, arg) if (strcmp(arg[7],"INF") == 0) zhi = BIG; else if (domain->triclinic == 0) zhi = domain->boxhi[2]; else zhi = domain->boxhi_bound[2]; - } else zhi = zscale*atof(arg[7]); + } else zhi = zscale*force->numeric(FLERR,arg[7]); // error check diff --git a/src/region_cone.cpp b/src/region_cone.cpp index f692839c8faab08a560dfba4689ed58f19509c04..09408c8d93f4e233cb6a4f1a38ed3436895399c5 100644 --- a/src/region_cone.cpp +++ b/src/region_cone.cpp @@ -21,6 +21,7 @@ #include "region_cone.h" #include "domain.h" #include "error.h" +#include "force.h" using namespace LAMMPS_NS; @@ -38,20 +39,20 @@ RegCone::RegCone(LAMMPS *lmp, int narg, char **arg) : axis = arg[2][0]; if (axis == 'x') { - c1 = yscale*atof(arg[3]); - c2 = zscale*atof(arg[4]); - radiuslo = yscale*atof(arg[5]); - radiushi = yscale*atof(arg[6]); + c1 = yscale*force->numeric(FLERR,arg[3]); + c2 = zscale*force->numeric(FLERR,arg[4]); + radiuslo = yscale*force->numeric(FLERR,arg[5]); + radiushi = yscale*force->numeric(FLERR,arg[6]); } else if (axis == 'y') { - c1 = xscale*atof(arg[3]); - c2 = zscale*atof(arg[4]); - radiuslo = xscale*atof(arg[5]); - radiushi = xscale*atof(arg[6]); + c1 = xscale*force->numeric(FLERR,arg[3]); + c2 = zscale*force->numeric(FLERR,arg[4]); + radiuslo = xscale*force->numeric(FLERR,arg[5]); + radiushi = xscale*force->numeric(FLERR,arg[6]); } else if (axis == 'z') { - c1 = xscale*atof(arg[3]); - c2 = yscale*atof(arg[4]); - radiuslo = xscale*atof(arg[5]); - radiushi = xscale*atof(arg[6]); + c1 = xscale*force->numeric(FLERR,arg[3]); + c2 = yscale*force->numeric(FLERR,arg[4]); + radiuslo = xscale*force->numeric(FLERR,arg[5]); + radiushi = xscale*force->numeric(FLERR,arg[6]); } if (strcmp(arg[7],"INF") == 0 || strcmp(arg[7],"EDGE") == 0) { @@ -73,9 +74,9 @@ RegCone::RegCone(LAMMPS *lmp, int narg, char **arg) : else lo = domain->boxlo_bound[2]; } } else { - if (axis == 'x') lo = xscale*atof(arg[7]); - if (axis == 'y') lo = yscale*atof(arg[7]); - if (axis == 'z') lo = zscale*atof(arg[7]); + if (axis == 'x') lo = xscale*force->numeric(FLERR,arg[7]); + if (axis == 'y') lo = yscale*force->numeric(FLERR,arg[7]); + if (axis == 'z') lo = zscale*force->numeric(FLERR,arg[7]); } if (strcmp(arg[8],"INF") == 0 || strcmp(arg[7],"EDGE") == 0) { @@ -97,9 +98,9 @@ RegCone::RegCone(LAMMPS *lmp, int narg, char **arg) : else hi = domain->boxhi_bound[2]; } } else { - if (axis == 'x') hi = xscale*atof(arg[8]); - if (axis == 'y') hi = yscale*atof(arg[8]); - if (axis == 'z') hi = zscale*atof(arg[8]); + if (axis == 'x') hi = xscale*force->numeric(FLERR,arg[8]); + if (axis == 'y') hi = yscale*force->numeric(FLERR,arg[8]); + if (axis == 'z') hi = zscale*force->numeric(FLERR,arg[8]); } // error check diff --git a/src/region_cylinder.cpp b/src/region_cylinder.cpp index b806ea07ea56fd4bdb27e147eadce7b004cb0d60..de8baa26179033f82e27f30e911e62b32bf77408 100644 --- a/src/region_cylinder.cpp +++ b/src/region_cylinder.cpp @@ -20,6 +20,7 @@ #include "input.h" #include "variable.h" #include "error.h" +#include "force.h" using namespace LAMMPS_NS; @@ -38,14 +39,14 @@ RegCylinder::RegCylinder(LAMMPS *lmp, int narg, char **arg) : axis = arg[2][0]; if (axis == 'x') { - c1 = yscale*atof(arg[3]); - c2 = zscale*atof(arg[4]); + c1 = yscale*force->numeric(FLERR,arg[3]); + c2 = zscale*force->numeric(FLERR,arg[4]); } else if (axis == 'y') { - c1 = xscale*atof(arg[3]); - c2 = zscale*atof(arg[4]); + c1 = xscale*force->numeric(FLERR,arg[3]); + c2 = zscale*force->numeric(FLERR,arg[4]); } else if (axis == 'z') { - c1 = xscale*atof(arg[3]); - c2 = yscale*atof(arg[4]); + c1 = xscale*force->numeric(FLERR,arg[3]); + c2 = yscale*force->numeric(FLERR,arg[4]); } rstr = NULL; @@ -59,7 +60,7 @@ RegCylinder::RegCylinder(LAMMPS *lmp, int narg, char **arg) : variable_check(); shape_update(); } else { - radius = atof(arg[5]); + radius = force->numeric(FLERR,arg[5]); if (axis == 'x') radius *= xscale; else radius *= xscale; rstyle = CONSTANT; @@ -84,9 +85,9 @@ RegCylinder::RegCylinder(LAMMPS *lmp, int narg, char **arg) : else lo = domain->boxlo_bound[2]; } } else { - if (axis == 'x') lo = xscale*atof(arg[6]); - if (axis == 'y') lo = yscale*atof(arg[6]); - if (axis == 'z') lo = zscale*atof(arg[6]); + if (axis == 'x') lo = xscale*force->numeric(FLERR,arg[6]); + if (axis == 'y') lo = yscale*force->numeric(FLERR,arg[6]); + if (axis == 'z') lo = zscale*force->numeric(FLERR,arg[6]); } if (strcmp(arg[7],"INF") == 0 || strcmp(arg[6],"EDGE") == 0) { @@ -108,9 +109,9 @@ RegCylinder::RegCylinder(LAMMPS *lmp, int narg, char **arg) : else hi = domain->boxhi_bound[2]; } } else { - if (axis == 'x') hi = xscale*atof(arg[7]); - if (axis == 'y') hi = yscale*atof(arg[7]); - if (axis == 'z') hi = zscale*atof(arg[7]); + if (axis == 'x') hi = xscale*force->numeric(FLERR,arg[7]); + if (axis == 'y') hi = yscale*force->numeric(FLERR,arg[7]); + if (axis == 'z') hi = zscale*force->numeric(FLERR,arg[7]); } // error check diff --git a/src/region_intersect.cpp b/src/region_intersect.cpp index bae73952d3123b75af376361b2d28cd9a5f654fa..1da6d63be70167ba795ab438efcef24d8c1a5b30 100644 --- a/src/region_intersect.cpp +++ b/src/region_intersect.cpp @@ -16,6 +16,7 @@ #include "region_intersect.h" #include "domain.h" #include "error.h" +#include "force.h" using namespace LAMMPS_NS; @@ -25,7 +26,7 @@ RegIntersect::RegIntersect(LAMMPS *lmp, int narg, char **arg) : Region(lmp, narg, arg) { if (narg < 5) error->all(FLERR,"Illegal region command"); - int n = atoi(arg[2]); + int n = force->inumeric(FLERR,arg[2]); if (n < 2) error->all(FLERR,"Illegal region command"); options(narg-(n+3),&arg[n+3]); diff --git a/src/region_plane.cpp b/src/region_plane.cpp index 4c588423fc43d017ac3050a1f6b02a33bae28250..9a0d47c1fe2121134b68c28bbc8bb4d0b1fec6e7 100644 --- a/src/region_plane.cpp +++ b/src/region_plane.cpp @@ -16,6 +16,7 @@ #include "string.h" #include "region_plane.h" #include "error.h" +#include "force.h" using namespace LAMMPS_NS; @@ -26,12 +27,12 @@ RegPlane::RegPlane(LAMMPS *lmp, int narg, char **arg) : { options(narg-8,&arg[8]); - xp = xscale*atof(arg[2]); - yp = yscale*atof(arg[3]); - zp = zscale*atof(arg[4]); - normal[0] = xscale*atof(arg[5]); - normal[1] = yscale*atof(arg[6]); - normal[2] = zscale*atof(arg[7]); + xp = xscale*force->numeric(FLERR,arg[2]); + yp = yscale*force->numeric(FLERR,arg[3]); + zp = zscale*force->numeric(FLERR,arg[4]); + normal[0] = xscale*force->numeric(FLERR,arg[5]); + normal[1] = yscale*force->numeric(FLERR,arg[6]); + normal[2] = zscale*force->numeric(FLERR,arg[7]); // enforce unit normal diff --git a/src/region_prism.cpp b/src/region_prism.cpp index 041865c632a027541b122d4d15135517d6ad3f81..01e6f60c8a744cc803e51d369e71ae3cfc0afe32 100644 --- a/src/region_prism.cpp +++ b/src/region_prism.cpp @@ -38,46 +38,46 @@ RegPrism::RegPrism(LAMMPS *lmp, int narg, char **arg) : Region(lmp, narg, arg) error->all(FLERR,"Cannot use region INF or EDGE when box does not exist"); if (strcmp(arg[2],"INF") == 0) xlo = -BIG; else xlo = domain->boxlo[0]; - } else xlo = xscale*atof(arg[2]); + } else xlo = xscale*force->numeric(FLERR,arg[2]); if (strcmp(arg[3],"INF") == 0 || strcmp(arg[3],"EDGE") == 0) { if (domain->box_exist == 0) error->all(FLERR,"Cannot use region INF or EDGE when box does not exist"); if (strcmp(arg[3],"INF") == 0) xhi = BIG; else xhi = domain->boxhi[0]; - } else xhi = xscale*atof(arg[3]); + } else xhi = xscale*force->numeric(FLERR,arg[3]); if (strcmp(arg[4],"INF") == 0 || strcmp(arg[4],"EDGE") == 0) { if (domain->box_exist == 0) error->all(FLERR,"Cannot use region INF or EDGE when box does not exist"); if (strcmp(arg[4],"INF") == 0) ylo = -BIG; else ylo = domain->boxlo[1]; - } else ylo = yscale*atof(arg[4]); + } else ylo = yscale*force->numeric(FLERR,arg[4]); if (strcmp(arg[5],"INF") == 0 || strcmp(arg[5],"EDGE") == 0) { if (domain->box_exist == 0) error->all(FLERR,"Cannot use region INF or EDGE when box does not exist"); if (strcmp(arg[5],"INF") == 0) yhi = BIG; else yhi = domain->boxhi[1]; - } else yhi = yscale*atof(arg[5]); + } else yhi = yscale*force->numeric(FLERR,arg[5]); if (strcmp(arg[6],"INF") == 0 || strcmp(arg[6],"EDGE") == 0) { if (domain->box_exist == 0) error->all(FLERR,"Cannot use region INF or EDGE when box does not exist"); if (strcmp(arg[6],"INF") == 0) zlo = -BIG; else zlo = domain->boxlo[2]; - } else zlo = zscale*atof(arg[6]); + } else zlo = zscale*force->numeric(FLERR,arg[6]); if (strcmp(arg[7],"INF") == 0 || strcmp(arg[7],"EDGE") == 0) { if (domain->box_exist == 0) error->all(FLERR,"Cannot use region INF or EDGE when box does not exist"); if (strcmp(arg[7],"INF") == 0) zhi = BIG; else zhi = domain->boxhi[2]; - } else zhi = zscale*atof(arg[7]); + } else zhi = zscale*force->numeric(FLERR,arg[7]); - xy = xscale*atof(arg[8]); - xz = xscale*atof(arg[9]); - yz = yscale*atof(arg[10]); + xy = xscale*force->numeric(FLERR,arg[8]); + xz = xscale*force->numeric(FLERR,arg[9]); + yz = yscale*force->numeric(FLERR,arg[10]); // error check // prism cannot be 0 thickness in any dim, else inverse blows up diff --git a/src/region_sphere.cpp b/src/region_sphere.cpp index 28436cc1717641dc16f1705599f87519656ce399..709080866d2ba21d7107ee7092256383de07633e 100644 --- a/src/region_sphere.cpp +++ b/src/region_sphere.cpp @@ -19,6 +19,7 @@ #include "input.h" #include "variable.h" #include "error.h" +#include "force.h" using namespace LAMMPS_NS; @@ -31,9 +32,9 @@ RegSphere::RegSphere(LAMMPS *lmp, int narg, char **arg) : { options(narg-6,&arg[6]); - xc = xscale*atof(arg[2]); - yc = yscale*atof(arg[3]); - zc = zscale*atof(arg[4]); + xc = xscale*force->numeric(FLERR,arg[2]); + yc = yscale*force->numeric(FLERR,arg[3]); + zc = zscale*force->numeric(FLERR,arg[4]); rstr = NULL; if (strstr(arg[5],"v_") == arg[5]) { @@ -46,7 +47,7 @@ RegSphere::RegSphere(LAMMPS *lmp, int narg, char **arg) : variable_check(); shape_update(); } else { - radius = xscale*atof(arg[5]); + radius = xscale*force->numeric(FLERR,arg[5]); rstyle = CONSTANT; } diff --git a/src/region_union.cpp b/src/region_union.cpp index 3741e8fdd1066b9080dd76b448a2714081ffb229..e9fc4ef6803427999d1b271f3968f0f94278e8e4 100644 --- a/src/region_union.cpp +++ b/src/region_union.cpp @@ -16,6 +16,7 @@ #include "region_union.h" #include "domain.h" #include "error.h" +#include "force.h" using namespace LAMMPS_NS; @@ -26,7 +27,7 @@ using namespace LAMMPS_NS; RegUnion::RegUnion(LAMMPS *lmp, int narg, char **arg) : Region(lmp, narg, arg) { if (narg < 5) error->all(FLERR,"Illegal region command"); - int n = atoi(arg[2]); + int n = force->inumeric(FLERR,arg[2]); if (n < 2) error->all(FLERR,"Illegal region command"); options(narg-(n+3),&arg[n+3]); diff --git a/src/replicate.cpp b/src/replicate.cpp index ba5f3902115b0221ac257e249abe554f5ffa7b21..c56af6a69377f00281c17a6c270d9a9d9c752ce0 100644 --- a/src/replicate.cpp +++ b/src/replicate.cpp @@ -50,9 +50,9 @@ void Replicate::command(int narg, char **arg) // nrep = total # of replications - int nx = atoi(arg[0]); - int ny = atoi(arg[1]); - int nz = atoi(arg[2]); + int nx = force->inumeric(FLERR,arg[0]); + int ny = force->inumeric(FLERR,arg[1]); + int nz = force->inumeric(FLERR,arg[2]); int nrep = nx*ny*nz; // error and warning checks diff --git a/src/set.cpp b/src/set.cpp index d7d6c69d88ee9b0698b248b34fb8d0ee8cf5ea89..7a7e7f74640944dfaff28a86bc235b02e1794635 100644 --- a/src/set.cpp +++ b/src/set.cpp @@ -82,16 +82,16 @@ void Set::command(int narg, char **arg) if (strcmp(arg[iarg],"type") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal set command"); - ivalue = atoi(arg[iarg+1]); + ivalue = force->inumeric(FLERR,arg[iarg+1]); if (ivalue <= 0 || ivalue > atom->ntypes) error->all(FLERR,"Invalid value in set command"); set(TYPE); iarg += 2; } else if (strcmp(arg[iarg],"type/fraction") == 0) { if (iarg+4 > narg) error->all(FLERR,"Illegal set command"); - newtype = atoi(arg[iarg+1]); - fraction = atof(arg[iarg+2]); - ivalue = atoi(arg[iarg+3]); + newtype = force->inumeric(FLERR,arg[iarg+1]); + fraction = force->numeric(FLERR,arg[iarg+2]); + ivalue = force->inumeric(FLERR,arg[iarg+3]); if (newtype <= 0 || newtype > atom->ntypes) error->all(FLERR,"Invalid value in set command"); if (fraction < 0.0 || fraction > 1.0) @@ -102,36 +102,36 @@ void Set::command(int narg, char **arg) iarg += 4; } else if (strcmp(arg[iarg],"mol") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal set command"); - ivalue = atoi(arg[iarg+1]); + ivalue = force->inumeric(FLERR,arg[iarg+1]); if (!atom->molecule_flag) error->all(FLERR,"Cannot set this attribute for this atom style"); set(MOLECULE); iarg += 2; } else if (strcmp(arg[iarg],"x") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal set command"); - dvalue = atof(arg[iarg+1]); + dvalue = force->numeric(FLERR,arg[iarg+1]); set(X); iarg += 2; } else if (strcmp(arg[iarg],"y") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal set command"); - dvalue = atof(arg[iarg+1]); + dvalue = force->numeric(FLERR,arg[iarg+1]); set(Y); iarg += 2; } else if (strcmp(arg[iarg],"z") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal set command"); - dvalue = atof(arg[iarg+1]); + dvalue = force->numeric(FLERR,arg[iarg+1]); set(Z); iarg += 2; } else if (strcmp(arg[iarg],"charge") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal set command"); - dvalue = atof(arg[iarg+1]); + dvalue = force->numeric(FLERR,arg[iarg+1]); if (!atom->q_flag) error->all(FLERR,"Cannot set this attribute for this atom style"); set(CHARGE); iarg += 2; } else if (strcmp(arg[iarg],"mass") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal set command"); - dvalue = atof(arg[iarg+1]); + dvalue = force->numeric(FLERR,arg[iarg+1]); if (!atom->rmass_flag) error->all(FLERR,"Cannot set this attribute for this atom style"); if (dvalue <= 0.0) error->all(FLERR,"Invalid mass in set command"); @@ -139,9 +139,9 @@ void Set::command(int narg, char **arg) iarg += 2; } else if (strcmp(arg[iarg],"shape") == 0) { if (iarg+4 > narg) error->all(FLERR,"Illegal set command"); - xvalue = atof(arg[iarg+1]); - yvalue = atof(arg[iarg+2]); - zvalue = atof(arg[iarg+3]); + xvalue = force->numeric(FLERR,arg[iarg+1]); + yvalue = force->numeric(FLERR,arg[iarg+2]); + zvalue = force->numeric(FLERR,arg[iarg+3]); if (!atom->ellipsoid_flag) error->all(FLERR,"Cannot set this attribute for this atom style"); if (xvalue < 0.0 || yvalue < 0.0 || zvalue < 0.0) @@ -154,7 +154,7 @@ void Set::command(int narg, char **arg) iarg += 4; } else if (strcmp(arg[iarg],"length") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal set command"); - dvalue = atof(arg[iarg+1]); + dvalue = force->numeric(FLERR,arg[iarg+1]); if (!atom->line_flag) error->all(FLERR,"Cannot set this attribute for this atom style"); if (dvalue < 0.0) error->all(FLERR,"Invalid length in set command"); @@ -162,7 +162,7 @@ void Set::command(int narg, char **arg) iarg += 2; } else if (strcmp(arg[iarg],"tri") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal set command"); - dvalue = atof(arg[iarg+1]); + dvalue = force->numeric(FLERR,arg[iarg+1]); if (!atom->tri_flag) error->all(FLERR,"Cannot set this attribute for this atom style"); if (dvalue < 0.0) error->all(FLERR,"Invalid length in set command"); @@ -170,17 +170,17 @@ void Set::command(int narg, char **arg) iarg += 2; } else if (strcmp(arg[iarg],"dipole") == 0) { if (iarg+4 > narg) error->all(FLERR,"Illegal set command"); - xvalue = atof(arg[iarg+1]); - yvalue = atof(arg[iarg+2]); - zvalue = atof(arg[iarg+3]); + xvalue = force->numeric(FLERR,arg[iarg+1]); + yvalue = force->numeric(FLERR,arg[iarg+2]); + zvalue = force->numeric(FLERR,arg[iarg+3]); if (!atom->mu_flag) error->all(FLERR,"Cannot set this attribute for this atom style"); set(DIPOLE); iarg += 4; } else if (strcmp(arg[iarg],"dipole/random") == 0) { if (iarg+3 > narg) error->all(FLERR,"Illegal set command"); - ivalue = atoi(arg[iarg+1]); - dvalue = atof(arg[iarg+2]); + ivalue = force->inumeric(FLERR,arg[iarg+1]); + dvalue = force->numeric(FLERR,arg[iarg+2]); if (!atom->mu_flag) error->all(FLERR,"Cannot set this attribute for this atom style"); if (ivalue <= 0) @@ -191,17 +191,17 @@ void Set::command(int narg, char **arg) iarg += 3; } else if (strcmp(arg[iarg],"quat") == 0) { if (iarg+5 > narg) error->all(FLERR,"Illegal set command"); - xvalue = atof(arg[iarg+1]); - yvalue = atof(arg[iarg+2]); - zvalue = atof(arg[iarg+3]); - wvalue = atof(arg[iarg+4]); + xvalue = force->numeric(FLERR,arg[iarg+1]); + yvalue = force->numeric(FLERR,arg[iarg+2]); + zvalue = force->numeric(FLERR,arg[iarg+3]); + wvalue = force->numeric(FLERR,arg[iarg+4]); if (!atom->ellipsoid_flag && !atom->tri_flag) error->all(FLERR,"Cannot set this attribute for this atom style"); set(QUAT); iarg += 5; } else if (strcmp(arg[iarg],"quat/random") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal set command"); - ivalue = atoi(arg[iarg+1]); + ivalue = force->inumeric(FLERR,arg[iarg+1]); if (!atom->ellipsoid_flag && !atom->tri_flag) error->all(FLERR,"Cannot set this attribute for this atom style"); if (ivalue <= 0) @@ -210,7 +210,7 @@ void Set::command(int narg, char **arg) iarg += 2; } else if (strcmp(arg[iarg],"theta") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal set command"); - dvalue = atof(arg[iarg+1]); + dvalue = force->numeric(FLERR,arg[iarg+1]); dvalue *= MY_PI/180.0; if (!atom->line_flag) error->all(FLERR,"Cannot set this attribute for this atom style"); @@ -218,16 +218,16 @@ void Set::command(int narg, char **arg) iarg += 2; } else if (strcmp(arg[iarg],"angmom") == 0) { if (iarg+4 > narg) error->all(FLERR,"Illegal set command"); - xvalue = atof(arg[iarg+1]); - yvalue = atof(arg[iarg+2]); - zvalue = atof(arg[iarg+3]); + xvalue = force->numeric(FLERR,arg[iarg+1]); + yvalue = force->numeric(FLERR,arg[iarg+2]); + zvalue = force->numeric(FLERR,arg[iarg+3]); if (!atom->ellipsoid_flag && !atom->tri_flag) error->all(FLERR,"Cannot set this attribute for this atom style"); set(ANGMOM); iarg += 4; } else if (strcmp(arg[iarg],"diameter") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal set command"); - dvalue = atof(arg[iarg+1]); + dvalue = force->numeric(FLERR,arg[iarg+1]); if (!atom->radius_flag) error->all(FLERR,"Cannot set this attribute for this atom style"); if (dvalue < 0.0) error->all(FLERR,"Invalid diameter in set command"); @@ -235,14 +235,14 @@ void Set::command(int narg, char **arg) iarg += 2; } else if (strcmp(arg[iarg],"density") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal set command"); - dvalue = atof(arg[iarg+1]); + dvalue = force->numeric(FLERR,arg[iarg+1]); if (!atom->rmass_flag) error->all(FLERR,"Cannot set this attribute for this atom style"); set(DENSITY); iarg += 2; } else if (strcmp(arg[iarg],"volume") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal set command"); - dvalue = atof(arg[iarg+1]); + dvalue = force->numeric(FLERR,arg[iarg+1]); if (!atom->vfrac_flag) error->all(FLERR,"Cannot set this attribute for this atom style"); set(VOLUME); @@ -252,15 +252,15 @@ void Set::command(int narg, char **arg) ximageflag = yimageflag = zimageflag = 0; if (strcmp(arg[iarg+1],"NULL") != 0) { ximageflag = 1; - ximage = atoi(arg[iarg+1]); + ximage = force->inumeric(FLERR,arg[iarg+1]); } if (strcmp(arg[iarg+2],"NULL") != 0) { yimageflag = 1; - yimage = atoi(arg[iarg+2]); + yimage = force->inumeric(FLERR,arg[iarg+2]); } if (strcmp(arg[iarg+3],"NULL") != 0) { zimageflag = 1; - zimage = atoi(arg[iarg+3]); + zimage = force->inumeric(FLERR,arg[iarg+3]); } if (ximageflag && ximage && !domain->xperiodic) error->all(FLERR, @@ -275,7 +275,7 @@ void Set::command(int narg, char **arg) iarg += 4; } else if (strcmp(arg[iarg],"bond") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal set command"); - ivalue = atoi(arg[iarg+1]); + ivalue = force->inumeric(FLERR,arg[iarg+1]); if (atom->avec->bonds_allow == 0) error->all(FLERR,"Cannot set this attribute for this atom style"); if (ivalue <= 0 || ivalue > atom->nbondtypes) @@ -284,7 +284,7 @@ void Set::command(int narg, char **arg) iarg += 2; } else if (strcmp(arg[iarg],"angle") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal set command"); - ivalue = atoi(arg[iarg+1]); + ivalue = force->inumeric(FLERR,arg[iarg+1]); if (atom->avec->angles_allow == 0) error->all(FLERR,"Cannot set this attribute for this atom style"); if (ivalue <= 0 || ivalue > atom->nangletypes) @@ -293,7 +293,7 @@ void Set::command(int narg, char **arg) iarg += 2; } else if (strcmp(arg[iarg],"dihedral") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal set command"); - ivalue = atoi(arg[iarg+1]); + ivalue = force->inumeric(FLERR,arg[iarg+1]); if (atom->avec->dihedrals_allow == 0) error->all(FLERR,"Cannot set this attribute for this atom style"); if (ivalue <= 0 || ivalue > atom->ndihedraltypes) @@ -302,7 +302,7 @@ void Set::command(int narg, char **arg) iarg += 2; } else if (strcmp(arg[iarg],"improper") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal set command"); - ivalue = atoi(arg[iarg+1]); + ivalue = force->inumeric(FLERR,arg[iarg+1]); if (atom->avec->impropers_allow == 0) error->all(FLERR,"Cannot set this attribute for this atom style"); if (ivalue <= 0 || ivalue > atom->nimpropertypes) @@ -311,21 +311,21 @@ void Set::command(int narg, char **arg) iarg += 2; } else if (strcmp(arg[iarg],"meso_e") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal set command"); - dvalue = atof(arg[iarg+1]); + dvalue = force->numeric(FLERR,arg[iarg+1]); if (!atom->e_flag) error->all(FLERR,"Cannot set this attribute for this atom style"); set(MESO_E); iarg += 2; } else if (strcmp(arg[iarg],"meso_cv") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal set command"); - dvalue = atof(arg[iarg+1]); + dvalue = force->numeric(FLERR,arg[iarg+1]); if (!atom->cv_flag) error->all(FLERR,"Cannot set this attribute for this atom style"); set(MESO_CV); iarg += 2; } else if (strcmp(arg[iarg],"meso_rho") == 0) { if (iarg+2 > narg) error->all(FLERR,"Illegal set command"); - dvalue = atof(arg[iarg+1]); + dvalue = force->numeric(FLERR,arg[iarg+1]); if (!atom->rho_flag) error->all(FLERR,"Cannot set meso_rho for this atom style"); set(MESO_RHO); diff --git a/src/variable.cpp b/src/variable.cpp index 4e09fd1f36a69d1b9fd943ffb944779ea70d737a..3c7e335acbe8a3a2831cbe7d9dbac1be2107941b 100644 --- a/src/variable.cpp +++ b/src/variable.cpp @@ -33,6 +33,7 @@ #include "atom_masks.h" #include "memory.h" #include "error.h" +#include "force.h" using namespace LAMMPS_NS; using namespace MathConst; @@ -166,7 +167,7 @@ void Variable::set(int narg, char **arg) int nfirst,nlast; if (narg == 3 || (narg == 4 && strcmp(arg[3],"pad") == 0)) { nfirst = 1; - nlast = atoi(arg[2]); + nlast = force->inumeric(FLERR,arg[2]); if (nlast <= 0) error->all(FLERR,"Illegal variable command"); if (narg == 4 && strcmp(arg[3],"pad") == 0) { char digits[12]; @@ -174,8 +175,8 @@ void Variable::set(int narg, char **arg) pad[nvar] = strlen(digits); } else pad[nvar] = 0; } else if (narg == 4 || (narg == 5 && strcmp(arg[4],"pad") == 0)) { - nfirst = atoi(arg[2]); - nlast = atoi(arg[3]); + nfirst = force->inumeric(FLERR,arg[2]); + nlast = force->inumeric(FLERR,arg[3]); if (nfirst > nlast || nlast < 0) error->all(FLERR,"Illegal variable command"); if (narg == 5 && strcmp(arg[4],"pad") == 0) { @@ -229,7 +230,7 @@ void Variable::set(int narg, char **arg) if (find(arg[0]) >= 0) return; if (nvar == maxvar) grow(); style[nvar] = ULOOP; - num[nvar] = atoi(arg[2]); + num[nvar] = force->inumeric(FLERR,arg[2]); data[nvar] = new char*[1]; data[nvar][0] = NULL; if (narg == 4) { diff --git a/src/velocity.cpp b/src/velocity.cpp index b0c203b25db20567a4d3aa1d897f1dd984b9f9a4..a5c6a8673e693ce7791ee702844f25b2b180c585 100644 --- a/src/velocity.cpp +++ b/src/velocity.cpp @@ -100,8 +100,8 @@ void Velocity::command(int narg, char **arg) // create() invoked differently, so can be called externally if (style == CREATE) { - double t_desired = atof(arg[2]); - int seed = atoi(arg[3]); + double t_desired = force->numeric(FLERR,arg[2]); + int seed = force->inumeric(FLERR,arg[3]); create(t_desired,seed); } else if (style == SET) set(narg-2,&arg[2]); @@ -357,21 +357,21 @@ void Velocity::set(int narg, char **arg) xstr = new char[n]; strcpy(xstr,&arg[0][2]); } else if (strcmp(arg[0],"NULL") == 0) xstyle = NONE; - else vx = atof(arg[0]); + else vx = force->numeric(FLERR,arg[0]); if (strstr(arg[1],"v_") == arg[1]) { int n = strlen(&arg[1][2]) + 1; ystr = new char[n]; strcpy(ystr,&arg[1][2]); } else if (strcmp(arg[1],"NULL") == 0) ystyle = NONE; - else vy = atof(arg[1]); + else vy = force->numeric(FLERR,arg[1]); if (strstr(arg[2],"v_") == arg[2]) { int n = strlen(&arg[2][2]) + 1; zstr = new char[n]; strcpy(zstr,&arg[2][2]); } else if (strcmp(arg[2],"NULL") == 0) zstyle = NONE; - else vz = atof(arg[2]); + else vz = force->numeric(FLERR,arg[2]); // set and apply scale factors @@ -505,7 +505,7 @@ void Velocity::set(int narg, char **arg) void Velocity::scale(int narg, char **arg) { - double t_desired = atof(arg[0]); + double t_desired = force->numeric(FLERR,arg[0]); // if temperature = NULL, create a new ComputeTemp with the velocity group @@ -566,14 +566,14 @@ void Velocity::ramp(int narg, char **arg) double v_lo,v_hi; if (v_dim == 0) { - v_lo = xscale*atof(arg[1]); - v_hi = xscale*atof(arg[2]); + v_lo = xscale*force->numeric(FLERR,arg[1]); + v_hi = xscale*force->numeric(FLERR,arg[2]); } else if (v_dim == 1) { - v_lo = yscale*atof(arg[1]); - v_hi = yscale*atof(arg[2]); + v_lo = yscale*force->numeric(FLERR,arg[1]); + v_hi = yscale*force->numeric(FLERR,arg[2]); } else if (v_dim == 2) { - v_lo = zscale*atof(arg[1]); - v_hi = zscale*atof(arg[2]); + v_lo = zscale*force->numeric(FLERR,arg[1]); + v_hi = zscale*force->numeric(FLERR,arg[2]); } int coord_dim; @@ -584,14 +584,14 @@ void Velocity::ramp(int narg, char **arg) double coord_lo,coord_hi; if (coord_dim == 0) { - coord_lo = xscale*atof(arg[4]); - coord_hi = xscale*atof(arg[5]); + coord_lo = xscale*force->numeric(FLERR,arg[4]); + coord_hi = xscale*force->numeric(FLERR,arg[5]); } else if (coord_dim == 1) { - coord_lo = yscale*atof(arg[4]); - coord_hi = yscale*atof(arg[5]); + coord_lo = yscale*force->numeric(FLERR,arg[4]); + coord_hi = yscale*force->numeric(FLERR,arg[5]); } else if (coord_dim == 2) { - coord_lo = zscale*atof(arg[4]); - coord_hi = zscale*atof(arg[5]); + coord_lo = zscale*force->numeric(FLERR,arg[4]); + coord_hi = zscale*force->numeric(FLERR,arg[5]); } // vramp = ramped velocity component for v_dim