git-svn-id: svn://svn.icms.temple.edu/lammps-ro/trunk@7185 f3b2605a-c512-4ea7-a41b-209d697bcdaa

This commit is contained in:
sjplimp
2011-10-25 15:05:23 +00:00
parent c6bbdcfbf2
commit 424fd114d7
5 changed files with 115 additions and 6 deletions

View File

@ -4237,6 +4237,52 @@ void PairAIREBO::spline_init()
for (i = 2; i < 10; i++) Tf[2][2][i] = -0.0040480;
}
/* ----------------------------------------------------------------------
proc 0 writes to restart file
------------------------------------------------------------------------- */
void PairAIREBO::write_restart(FILE *fp)
{
write_restart_settings(fp);
}
/* ----------------------------------------------------------------------
proc 0 reads from restart file, bcasts
------------------------------------------------------------------------- */
void PairAIREBO::read_restart(FILE *fp)
{
read_restart_settings(fp);
allocate();
}
/* ----------------------------------------------------------------------
proc 0 writes to restart file
------------------------------------------------------------------------- */
void PairAIREBO::write_restart_settings(FILE *fp)
{
fwrite(&cutlj,sizeof(double),1,fp);
fwrite(&ljflag,sizeof(int),1,fp);
fwrite(&torflag,sizeof(int),1,fp);
}
/* ----------------------------------------------------------------------
proc 0 reads from restart file, bcasts
------------------------------------------------------------------------- */
void PairAIREBO::read_restart_settings(FILE *fp)
{
if (comm->me == 0) {
fread(&cutlj,sizeof(double),1,fp);
fread(&ljflag,sizeof(int),1,fp);
fread(&torflag,sizeof(int),1,fp);
}
MPI_Bcast(&cutlj,1,MPI_DOUBLE,0,world);
MPI_Bcast(&ljflag,1,MPI_INT,0,world);
MPI_Bcast(&torflag,1,MPI_INT,0,world);
}
/* ----------------------------------------------------------------------
memory usage of local atom-based arrays
------------------------------------------------------------------------- */

View File

@ -33,6 +33,10 @@ class PairAIREBO : public Pair {
void coeff(int, char **);
void init_style();
double init_one(int, int);
void write_restart(FILE *);
void read_restart(FILE *);
void write_restart_settings(FILE *);
void read_restart_settings(FILE *);
double memory_usage();
protected:

View File

@ -1050,6 +1050,55 @@ void PairREAX::sparse_product(const int &n, const int &nlocal,
}
}
/* ----------------------------------------------------------------------
proc 0 writes to restart file
------------------------------------------------------------------------- */
void PairREAX::write_restart(FILE *fp)
{
write_restart_settings(fp);
}
/* ----------------------------------------------------------------------
proc 0 reads from restart file, bcasts
------------------------------------------------------------------------- */
void PairREAX::read_restart(FILE *fp)
{
read_restart_settings(fp);
allocate();
}
/* ----------------------------------------------------------------------
proc 0 writes to restart file
------------------------------------------------------------------------- */
void PairREAX::write_restart_settings(FILE *fp)
{
fwrite(&hbcut,sizeof(double),1,fp);
fwrite(&ihbnew,sizeof(int),1,fp);
fwrite(&itripstaball,sizeof(int),1,fp);
fwrite(&precision,sizeof(double),1,fp);
}
/* ----------------------------------------------------------------------
proc 0 reads from restart file, bcasts
------------------------------------------------------------------------- */
void PairREAX::read_restart_settings(FILE *fp)
{
if (comm->me == 0) {
fread(&hbcut,sizeof(double),1,fp);
fread(&ihbnew,sizeof(int),1,fp);
fread(&itripstaball,sizeof(int),1,fp);
fread(&precision,sizeof(double),1,fp);
}
MPI_Bcast(&hbcut,1,MPI_DOUBLE,0,world);
MPI_Bcast(&ihbnew,1,MPI_INT,0,world);
MPI_Bcast(&itripstaball,1,MPI_INT,0,world);
MPI_Bcast(&precision,1,MPI_DOUBLE,0,world);
}
/* ----------------------------------------------------------------------
memory usage of local atom-based arrays
------------------------------------------------------------------------- */

View File

@ -34,6 +34,10 @@ class PairREAX : public Pair {
void coeff(int, char **);
void init_style();
double init_one(int, int);
void write_restart(FILE *);
void read_restart(FILE *);
void write_restart_settings(FILE *);
void read_restart_settings(FILE *);
double memory_usage();
int pack_comm(int, int *, double *, int, int *);

View File

@ -307,7 +307,8 @@ void ReadRestart::command(int narg, char **arg)
if (logfile) fprintf(logfile," " BIGINT_FORMAT " atoms\n",natoms);
}
if (natoms != atom->natoms) error->all(FLERR,"Did not assign all atoms correctly");
if (natoms != atom->natoms)
error->all(FLERR,"Did not assign all atoms correctly");
if (me == 0) {
if (atom->nbonds) {
@ -501,7 +502,8 @@ void ReadRestart::header()
int dimension = read_int();
domain->dimension = dimension;
if (domain->dimension == 2 && domain->zperiodic == 0)
error->all(FLERR,"Cannot run 2d simulation with nonperiodic Z dimension");
error->all(FLERR,
"Cannot run 2d simulation with nonperiodic Z dimension");
// read nprocs from restart file, warn if different
@ -531,14 +533,16 @@ void ReadRestart::header()
int newton_pair_file = read_int();
if (force->newton_pair != 1) {
if (newton_pair_file != force->newton_pair && me == 0)
error->warning(FLERR,"Restart file used different newton pair setting, "
error->warning(FLERR,
"Restart file used different newton pair setting, "
"using input script value");
}
} else if (flag == NEWTON_BOND) {
int newton_bond_file = read_int();
if (force->newton_bond != 1) {
if (newton_bond_file != force->newton_bond && me == 0)
error->warning(FLERR,"Restart file used different newton bond setting, "
error->warning(FLERR,
"Restart file used different newton bond setting, "
"using restart file value");
}
force->newton_bond = newton_bond_file;
@ -707,7 +711,8 @@ void ReadRestart::type_arrays()
atom->set_mass(mass);
delete [] mass;
} else error->all(FLERR,"Invalid flag in type arrays section of restart file");
} else error->all(FLERR,
"Invalid flag in type arrays section of restart file");
flag = read_int();
}
@ -778,7 +783,8 @@ void ReadRestart::force_fields()
delete [] style;
force->improper->read_restart(fp);
} else error->all(FLERR,"Invalid flag in force field section of restart file");
} else error->all(FLERR,
"Invalid flag in force field section of restart file");
flag = read_int();
}