git-svn-id: svn://svn.icms.temple.edu/lammps-ro/trunk@3414 f3b2605a-c512-4ea7-a41b-209d697bcdaa
This commit is contained in:
@ -87,6 +87,18 @@ void AtomVecEllipsoid::grow(int n)
|
|||||||
modify->fix[atom->extra_grow[iextra]]->grow_arrays(nmax);
|
modify->fix[atom->extra_grow[iextra]]->grow_arrays(nmax);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* ----------------------------------------------------------------------
|
||||||
|
reset local array ptrs
|
||||||
|
------------------------------------------------------------------------- */
|
||||||
|
|
||||||
|
void AtomVecEllipsoid::grow_reset()
|
||||||
|
{
|
||||||
|
tag = atom->tag; type = atom->type;
|
||||||
|
mask = atom->mask; image = atom->image;
|
||||||
|
x = atom->x; v = atom->v; f = atom->f;
|
||||||
|
quat = atom->quat; angmom = atom->angmom; torque = atom->torque;
|
||||||
|
}
|
||||||
|
|
||||||
/* ---------------------------------------------------------------------- */
|
/* ---------------------------------------------------------------------- */
|
||||||
|
|
||||||
void AtomVecEllipsoid::copy(int i, int j)
|
void AtomVecEllipsoid::copy(int i, int j)
|
||||||
|
|||||||
@ -23,6 +23,7 @@ class AtomVecEllipsoid : public AtomVec {
|
|||||||
AtomVecEllipsoid(class LAMMPS *, int, char **);
|
AtomVecEllipsoid(class LAMMPS *, int, char **);
|
||||||
virtual ~AtomVecEllipsoid() {}
|
virtual ~AtomVecEllipsoid() {}
|
||||||
void grow(int);
|
void grow(int);
|
||||||
|
void grow_reset();
|
||||||
void copy(int, int);
|
void copy(int, int);
|
||||||
int pack_comm(int, int *, double *, int, int *);
|
int pack_comm(int, int *, double *, int, int *);
|
||||||
int pack_comm_vel(int, int *, double *, int, int *);
|
int pack_comm_vel(int, int *, double *, int, int *);
|
||||||
|
|||||||
@ -81,6 +81,18 @@ void AtomVecColloid::grow(int n)
|
|||||||
modify->fix[atom->extra_grow[iextra]]->grow_arrays(nmax);
|
modify->fix[atom->extra_grow[iextra]]->grow_arrays(nmax);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* ----------------------------------------------------------------------
|
||||||
|
reset local array ptrs
|
||||||
|
------------------------------------------------------------------------- */
|
||||||
|
|
||||||
|
void AtomVecColloid::grow_reset()
|
||||||
|
{
|
||||||
|
tag = atom->tag; type = atom->type;
|
||||||
|
mask = atom->mask; image = atom->image;
|
||||||
|
x = atom->x; v = atom->v; f = atom->f;
|
||||||
|
omega = atom->omega; torque = atom->torque;
|
||||||
|
}
|
||||||
|
|
||||||
/* ---------------------------------------------------------------------- */
|
/* ---------------------------------------------------------------------- */
|
||||||
|
|
||||||
void AtomVecColloid::copy(int i, int j)
|
void AtomVecColloid::copy(int i, int j)
|
||||||
|
|||||||
@ -23,6 +23,7 @@ class AtomVecColloid : public AtomVec {
|
|||||||
AtomVecColloid(class LAMMPS *, int, char **);
|
AtomVecColloid(class LAMMPS *, int, char **);
|
||||||
virtual ~AtomVecColloid() {}
|
virtual ~AtomVecColloid() {}
|
||||||
void grow(int);
|
void grow(int);
|
||||||
|
void grow_reset();
|
||||||
void copy(int, int);
|
void copy(int, int);
|
||||||
int pack_comm(int, int *, double *, int, int *);
|
int pack_comm(int, int *, double *, int, int *);
|
||||||
int pack_comm_vel(int, int *, double *, int, int *);
|
int pack_comm_vel(int, int *, double *, int, int *);
|
||||||
|
|||||||
@ -84,6 +84,19 @@ void AtomVecDipole::grow(int n)
|
|||||||
modify->fix[atom->extra_grow[iextra]]->grow_arrays(nmax);
|
modify->fix[atom->extra_grow[iextra]]->grow_arrays(nmax);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* ----------------------------------------------------------------------
|
||||||
|
reset local array ptrs
|
||||||
|
------------------------------------------------------------------------- */
|
||||||
|
|
||||||
|
void AtomVecDipole::grow_reset()
|
||||||
|
{
|
||||||
|
tag = atom->tag; type = atom->type;
|
||||||
|
mask = atom->mask; image = atom->image;
|
||||||
|
x = atom->x; v = atom->v; f = atom->f;
|
||||||
|
q = atom->q; mu = atom->mu;
|
||||||
|
omega = atom->omega; torque = atom->torque;
|
||||||
|
}
|
||||||
|
|
||||||
/* ---------------------------------------------------------------------- */
|
/* ---------------------------------------------------------------------- */
|
||||||
|
|
||||||
void AtomVecDipole::copy(int i, int j)
|
void AtomVecDipole::copy(int i, int j)
|
||||||
|
|||||||
@ -22,6 +22,7 @@ class AtomVecDipole : public AtomVec {
|
|||||||
public:
|
public:
|
||||||
AtomVecDipole(class LAMMPS *, int, char **);
|
AtomVecDipole(class LAMMPS *, int, char **);
|
||||||
void grow(int);
|
void grow(int);
|
||||||
|
void grow_reset();
|
||||||
void copy(int, int);
|
void copy(int, int);
|
||||||
int pack_comm(int, int *, double *, int, int *);
|
int pack_comm(int, int *, double *, int, int *);
|
||||||
int pack_comm_vel(int, int *, double *, int, int *);
|
int pack_comm_vel(int, int *, double *, int, int *);
|
||||||
|
|||||||
@ -90,6 +90,19 @@ void AtomVecGranular::grow(int n)
|
|||||||
modify->fix[atom->extra_grow[iextra]]->grow_arrays(nmax);
|
modify->fix[atom->extra_grow[iextra]]->grow_arrays(nmax);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* ----------------------------------------------------------------------
|
||||||
|
reset local array ptrs
|
||||||
|
------------------------------------------------------------------------- */
|
||||||
|
|
||||||
|
void AtomVecGranular::grow_reset()
|
||||||
|
{
|
||||||
|
tag = atom->tag; type = atom->type;
|
||||||
|
mask = atom->mask; image = atom->image;
|
||||||
|
x = atom->x; v = atom->v; f = atom->f;
|
||||||
|
radius = atom->radius; density = atom->density; rmass = atom->rmass;
|
||||||
|
omega = atom->omega; torque = atom->torque;
|
||||||
|
}
|
||||||
|
|
||||||
/* ---------------------------------------------------------------------- */
|
/* ---------------------------------------------------------------------- */
|
||||||
|
|
||||||
void AtomVecGranular::copy(int i, int j)
|
void AtomVecGranular::copy(int i, int j)
|
||||||
|
|||||||
@ -23,6 +23,7 @@ class AtomVecGranular : public AtomVec {
|
|||||||
AtomVecGranular(class LAMMPS *, int, char **);
|
AtomVecGranular(class LAMMPS *, int, char **);
|
||||||
~AtomVecGranular() {}
|
~AtomVecGranular() {}
|
||||||
void grow(int);
|
void grow(int);
|
||||||
|
void grow_reset();
|
||||||
void copy(int, int);
|
void copy(int, int);
|
||||||
int pack_comm(int, int *, double *, int, int *);
|
int pack_comm(int, int *, double *, int, int *);
|
||||||
int pack_comm_vel(int, int *, double *, int, int *);
|
int pack_comm_vel(int, int *, double *, int, int *);
|
||||||
|
|||||||
@ -110,11 +110,22 @@ void AtomVecAngle::grow(int n)
|
|||||||
modify->fix[atom->extra_grow[iextra]]->grow_arrays(nmax);
|
modify->fix[atom->extra_grow[iextra]]->grow_arrays(nmax);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* ---------------------------------------------------------------------- */
|
/* ----------------------------------------------------------------------
|
||||||
|
reset local array ptrs
|
||||||
|
------------------------------------------------------------------------- */
|
||||||
|
|
||||||
void AtomVecAngle::reset_special()
|
void AtomVecAngle::grow_reset()
|
||||||
{
|
{
|
||||||
special = atom->special;
|
tag = atom->tag; type = atom->type;
|
||||||
|
mask = atom->mask; image = atom->image;
|
||||||
|
x = atom->x; v = atom->v; f = atom->f;
|
||||||
|
molecule = atom->molecule;
|
||||||
|
nspecial = atom->nspecial; special = atom->special;
|
||||||
|
num_bond = atom->num_bond; bond_type = atom->bond_type;
|
||||||
|
bond_atom = atom->bond_atom;
|
||||||
|
num_angle = atom->num_angle; angle_type = atom->angle_type;
|
||||||
|
angle_atom1 = atom->angle_atom1; angle_atom2 = atom->angle_atom2;
|
||||||
|
angle_atom3 = atom->angle_atom3;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* ---------------------------------------------------------------------- */
|
/* ---------------------------------------------------------------------- */
|
||||||
|
|||||||
@ -22,7 +22,7 @@ class AtomVecAngle : public AtomVec {
|
|||||||
public:
|
public:
|
||||||
AtomVecAngle(class LAMMPS *, int, char **);
|
AtomVecAngle(class LAMMPS *, int, char **);
|
||||||
void grow(int);
|
void grow(int);
|
||||||
void reset_special();
|
void grow_reset();
|
||||||
void copy(int, int);
|
void copy(int, int);
|
||||||
int pack_comm(int, int *, double *, int, int *);
|
int pack_comm(int, int *, double *, int, int *);
|
||||||
int pack_comm_vel(int, int *, double *, int, int *);
|
int pack_comm_vel(int, int *, double *, int, int *);
|
||||||
|
|||||||
@ -95,11 +95,19 @@ void AtomVecBond::grow(int n)
|
|||||||
modify->fix[atom->extra_grow[iextra]]->grow_arrays(nmax);
|
modify->fix[atom->extra_grow[iextra]]->grow_arrays(nmax);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* ---------------------------------------------------------------------- */
|
/* ----------------------------------------------------------------------
|
||||||
|
reset local array ptrs
|
||||||
|
------------------------------------------------------------------------- */
|
||||||
|
|
||||||
void AtomVecBond::reset_special()
|
void AtomVecBond::grow_reset()
|
||||||
{
|
{
|
||||||
special = atom->special;
|
tag = atom->tag; type = atom->type;
|
||||||
|
mask = atom->mask; image = atom->image;
|
||||||
|
x = atom->x; v = atom->v; f = atom->f;
|
||||||
|
molecule = atom->molecule;
|
||||||
|
nspecial = atom->nspecial; special = atom->special;
|
||||||
|
num_bond = atom->num_bond; bond_type = atom->bond_type;
|
||||||
|
bond_atom = atom->bond_atom;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* ---------------------------------------------------------------------- */
|
/* ---------------------------------------------------------------------- */
|
||||||
|
|||||||
@ -22,7 +22,7 @@ class AtomVecBond : public AtomVec {
|
|||||||
public:
|
public:
|
||||||
AtomVecBond(class LAMMPS *, int, char **);
|
AtomVecBond(class LAMMPS *, int, char **);
|
||||||
void grow(int);
|
void grow(int);
|
||||||
void reset_special();
|
void grow_reset();
|
||||||
void copy(int, int);
|
void copy(int, int);
|
||||||
int pack_comm(int, int *, double *, int, int *);
|
int pack_comm(int, int *, double *, int, int *);
|
||||||
int pack_comm_vel(int, int *, double *, int, int *);
|
int pack_comm_vel(int, int *, double *, int, int *);
|
||||||
|
|||||||
@ -148,11 +148,28 @@ void AtomVecFull::grow(int n)
|
|||||||
modify->fix[atom->extra_grow[iextra]]->grow_arrays(nmax);
|
modify->fix[atom->extra_grow[iextra]]->grow_arrays(nmax);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* ---------------------------------------------------------------------- */
|
/* ----------------------------------------------------------------------
|
||||||
|
reset local array ptrs
|
||||||
|
------------------------------------------------------------------------- */
|
||||||
|
|
||||||
void AtomVecFull::reset_special()
|
void AtomVecFull::grow_reset()
|
||||||
{
|
{
|
||||||
special = atom->special;
|
tag = atom->tag; type = atom->type;
|
||||||
|
mask = atom->mask; image = atom->image;
|
||||||
|
x = atom->x; v = atom->v; f = atom->f;
|
||||||
|
q = atom->q; molecule = atom->molecule;
|
||||||
|
nspecial = atom->nspecial; special = atom->special;
|
||||||
|
num_bond = atom->num_bond; bond_type = atom->bond_type;
|
||||||
|
bond_atom = atom->bond_atom;
|
||||||
|
num_angle = atom->num_angle; angle_type = atom->angle_type;
|
||||||
|
angle_atom1 = atom->angle_atom1; angle_atom2 = atom->angle_atom2;
|
||||||
|
angle_atom3 = atom->angle_atom3;
|
||||||
|
num_dihedral = atom->num_dihedral; dihedral_type = atom->dihedral_type;
|
||||||
|
dihedral_atom1 = atom->dihedral_atom1; dihedral_atom2 = atom->dihedral_atom2;
|
||||||
|
dihedral_atom3 = atom->dihedral_atom3; dihedral_atom4 = atom->dihedral_atom4;
|
||||||
|
num_improper = atom->num_improper; improper_type = atom->improper_type;
|
||||||
|
improper_atom1 = atom->improper_atom1; improper_atom2 = atom->improper_atom2;
|
||||||
|
improper_atom3 = atom->improper_atom3; improper_atom4 = atom->improper_atom4;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* ---------------------------------------------------------------------- */
|
/* ---------------------------------------------------------------------- */
|
||||||
|
|||||||
@ -22,7 +22,7 @@ class AtomVecFull : public AtomVec {
|
|||||||
public:
|
public:
|
||||||
AtomVecFull(class LAMMPS *, int, char **);
|
AtomVecFull(class LAMMPS *, int, char **);
|
||||||
void grow(int);
|
void grow(int);
|
||||||
void reset_special();
|
void grow_reset();
|
||||||
void copy(int, int);
|
void copy(int, int);
|
||||||
int pack_comm(int, int *, double *, int, int *);
|
int pack_comm(int, int *, double *, int, int *);
|
||||||
int pack_comm_vel(int, int *, double *, int, int *);
|
int pack_comm_vel(int, int *, double *, int, int *);
|
||||||
|
|||||||
@ -146,11 +146,28 @@ void AtomVecMolecular::grow(int n)
|
|||||||
modify->fix[atom->extra_grow[iextra]]->grow_arrays(nmax);
|
modify->fix[atom->extra_grow[iextra]]->grow_arrays(nmax);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* ---------------------------------------------------------------------- */
|
/* ----------------------------------------------------------------------
|
||||||
|
reset local array ptrs
|
||||||
|
------------------------------------------------------------------------- */
|
||||||
|
|
||||||
void AtomVecMolecular::reset_special()
|
void AtomVecMolecular::grow_reset()
|
||||||
{
|
{
|
||||||
special = atom->special;
|
tag = atom->tag; type = atom->type;
|
||||||
|
mask = atom->mask; image = atom->image;
|
||||||
|
x = atom->x; v = atom->v; f = atom->f;
|
||||||
|
molecule = atom->molecule;
|
||||||
|
nspecial = atom->nspecial; special = atom->special;
|
||||||
|
num_bond = atom->num_bond; bond_type = atom->bond_type;
|
||||||
|
bond_atom = atom->bond_atom;
|
||||||
|
num_angle = atom->num_angle; angle_type = atom->angle_type;
|
||||||
|
angle_atom1 = atom->angle_atom1; angle_atom2 = atom->angle_atom2;
|
||||||
|
angle_atom3 = atom->angle_atom3;
|
||||||
|
num_dihedral = atom->num_dihedral; dihedral_type = atom->dihedral_type;
|
||||||
|
dihedral_atom1 = atom->dihedral_atom1; dihedral_atom2 = atom->dihedral_atom2;
|
||||||
|
dihedral_atom3 = atom->dihedral_atom3; dihedral_atom4 = atom->dihedral_atom4;
|
||||||
|
num_improper = atom->num_improper; improper_type = atom->improper_type;
|
||||||
|
improper_atom1 = atom->improper_atom1; improper_atom2 = atom->improper_atom2;
|
||||||
|
improper_atom3 = atom->improper_atom3; improper_atom4 = atom->improper_atom4;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* ---------------------------------------------------------------------- */
|
/* ---------------------------------------------------------------------- */
|
||||||
|
|||||||
@ -22,7 +22,7 @@ class AtomVecMolecular : public AtomVec {
|
|||||||
public:
|
public:
|
||||||
AtomVecMolecular(class LAMMPS *, int, char **);
|
AtomVecMolecular(class LAMMPS *, int, char **);
|
||||||
void grow(int);
|
void grow(int);
|
||||||
void reset_special();
|
void grow_reset();
|
||||||
void copy(int, int);
|
void copy(int, int);
|
||||||
int pack_comm(int, int *, double *, int, int *);
|
int pack_comm(int, int *, double *, int, int *);
|
||||||
int pack_comm_vel(int, int *, double *, int, int *);
|
int pack_comm_vel(int, int *, double *, int, int *);
|
||||||
|
|||||||
@ -88,6 +88,19 @@ void AtomVecPeri::grow(int n)
|
|||||||
modify->fix[atom->extra_grow[iextra]]->grow_arrays(nmax);
|
modify->fix[atom->extra_grow[iextra]]->grow_arrays(nmax);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* ----------------------------------------------------------------------
|
||||||
|
reset local array ptrs
|
||||||
|
------------------------------------------------------------------------- */
|
||||||
|
|
||||||
|
void AtomVecPeri::grow_reset()
|
||||||
|
{
|
||||||
|
tag = atom->tag; type = atom->type;
|
||||||
|
mask = atom->mask; image = atom->image;
|
||||||
|
x = atom->x; v = atom->v; f = atom->f;
|
||||||
|
vfrac = atom->vfrac; density = atom->density; rmass = atom->rmass;
|
||||||
|
s0 = atom->s0; x0 = atom->x0;
|
||||||
|
}
|
||||||
|
|
||||||
/* ---------------------------------------------------------------------- */
|
/* ---------------------------------------------------------------------- */
|
||||||
|
|
||||||
void AtomVecPeri::copy(int i, int j)
|
void AtomVecPeri::copy(int i, int j)
|
||||||
|
|||||||
@ -22,6 +22,7 @@ class AtomVecPeri : public AtomVec {
|
|||||||
public:
|
public:
|
||||||
AtomVecPeri(class LAMMPS *, int, char **);
|
AtomVecPeri(class LAMMPS *, int, char **);
|
||||||
void grow(int);
|
void grow(int);
|
||||||
|
void grow_reset();
|
||||||
void copy(int, int);
|
void copy(int, int);
|
||||||
int pack_comm(int, int *, double *, int, int *);
|
int pack_comm(int, int *, double *, int, int *);
|
||||||
int pack_comm_vel(int, int *, double *, int, int *);
|
int pack_comm_vel(int, int *, double *, int, int *);
|
||||||
|
|||||||
@ -43,7 +43,7 @@ class AtomVec : protected Pointers {
|
|||||||
virtual void init() {}
|
virtual void init() {}
|
||||||
|
|
||||||
virtual void grow(int) = 0;
|
virtual void grow(int) = 0;
|
||||||
virtual void reset_special() {}
|
virtual void grow_reset() = 0;
|
||||||
virtual void copy(int, int) = 0;
|
virtual void copy(int, int) = 0;
|
||||||
|
|
||||||
virtual int pack_comm(int, int *, double *, int, int *) = 0;
|
virtual int pack_comm(int, int *, double *, int, int *) = 0;
|
||||||
|
|||||||
@ -71,6 +71,17 @@ void AtomVecAtomic::grow(int n)
|
|||||||
modify->fix[atom->extra_grow[iextra]]->grow_arrays(nmax);
|
modify->fix[atom->extra_grow[iextra]]->grow_arrays(nmax);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* ----------------------------------------------------------------------
|
||||||
|
reset local array ptrs
|
||||||
|
------------------------------------------------------------------------- */
|
||||||
|
|
||||||
|
void AtomVecAtomic::grow_reset()
|
||||||
|
{
|
||||||
|
tag = atom->tag; type = atom->type;
|
||||||
|
mask = atom->mask; image = atom->image;
|
||||||
|
x = atom->x; v = atom->v; f = atom->f;
|
||||||
|
}
|
||||||
|
|
||||||
/* ---------------------------------------------------------------------- */
|
/* ---------------------------------------------------------------------- */
|
||||||
|
|
||||||
void AtomVecAtomic::copy(int i, int j)
|
void AtomVecAtomic::copy(int i, int j)
|
||||||
|
|||||||
@ -23,6 +23,7 @@ class AtomVecAtomic : public AtomVec {
|
|||||||
AtomVecAtomic(class LAMMPS *, int, char **);
|
AtomVecAtomic(class LAMMPS *, int, char **);
|
||||||
~AtomVecAtomic() {}
|
~AtomVecAtomic() {}
|
||||||
void grow(int);
|
void grow(int);
|
||||||
|
void grow_reset();
|
||||||
void copy(int, int);
|
void copy(int, int);
|
||||||
int pack_comm(int, int *, double *, int, int *);
|
int pack_comm(int, int *, double *, int, int *);
|
||||||
int pack_comm_vel(int, int *, double *, int, int *);
|
int pack_comm_vel(int, int *, double *, int, int *);
|
||||||
|
|||||||
@ -76,6 +76,18 @@ void AtomVecCharge::grow(int n)
|
|||||||
modify->fix[atom->extra_grow[iextra]]->grow_arrays(nmax);
|
modify->fix[atom->extra_grow[iextra]]->grow_arrays(nmax);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* ----------------------------------------------------------------------
|
||||||
|
reset local array ptrs
|
||||||
|
------------------------------------------------------------------------- */
|
||||||
|
|
||||||
|
void AtomVecCharge::grow_reset()
|
||||||
|
{
|
||||||
|
tag = atom->tag; type = atom->type;
|
||||||
|
mask = atom->mask; image = atom->image;
|
||||||
|
x = atom->x; v = atom->v; f = atom->f;
|
||||||
|
q = atom->q;
|
||||||
|
}
|
||||||
|
|
||||||
/* ---------------------------------------------------------------------- */
|
/* ---------------------------------------------------------------------- */
|
||||||
|
|
||||||
void AtomVecCharge::copy(int i, int j)
|
void AtomVecCharge::copy(int i, int j)
|
||||||
|
|||||||
@ -22,6 +22,7 @@ class AtomVecCharge : public AtomVec {
|
|||||||
public:
|
public:
|
||||||
AtomVecCharge(class LAMMPS *, int, char **);
|
AtomVecCharge(class LAMMPS *, int, char **);
|
||||||
void grow(int);
|
void grow(int);
|
||||||
|
void grow_reset();
|
||||||
void copy(int, int);
|
void copy(int, int);
|
||||||
int pack_comm(int, int *, double *, int, int *);
|
int pack_comm(int, int *, double *, int, int *);
|
||||||
int pack_comm_vel(int, int *, double *, int, int *);
|
int pack_comm_vel(int, int *, double *, int, int *);
|
||||||
|
|||||||
@ -118,29 +118,27 @@ void AtomVecHybrid::grow(int n)
|
|||||||
for (int k = 0; k < nstyles; k++) styles[k]->grow(nmax);
|
for (int k = 0; k < nstyles; k++) styles[k]->grow(nmax);
|
||||||
atom->nextra_grow = tmp;
|
atom->nextra_grow = tmp;
|
||||||
|
|
||||||
// pointers for arrays used directly by hybrid style
|
// insure sub-style ptrs and hybrid local ptrs are up to date
|
||||||
|
// for sub-styles, is in case sub-style reallocs actually realloced
|
||||||
|
|
||||||
tag = atom->tag;
|
for (int k = 0; k < nstyles; k++) styles[k]->grow_reset();
|
||||||
type = atom->type;
|
grow_reset();
|
||||||
mask = atom->mask;
|
|
||||||
image = atom->image;
|
|
||||||
x = atom->x;
|
|
||||||
v = atom->v;
|
|
||||||
f = atom->f;
|
|
||||||
|
|
||||||
omega = atom->omega;
|
|
||||||
angmom = atom->angmom;
|
|
||||||
|
|
||||||
if (atom->nextra_grow)
|
if (atom->nextra_grow)
|
||||||
for (int iextra = 0; iextra < atom->nextra_grow; iextra++)
|
for (int iextra = 0; iextra < atom->nextra_grow; iextra++)
|
||||||
modify->fix[atom->extra_grow[iextra]]->grow_arrays(nmax);
|
modify->fix[atom->extra_grow[iextra]]->grow_arrays(nmax);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* ---------------------------------------------------------------------- */
|
/* ----------------------------------------------------------------------
|
||||||
|
reset local array ptrs
|
||||||
|
------------------------------------------------------------------------- */
|
||||||
|
|
||||||
void AtomVecHybrid::reset_special()
|
void AtomVecHybrid::grow_reset()
|
||||||
{
|
{
|
||||||
for (int k = 0; k < nstyles; k++) styles[k]->reset_special();
|
tag = atom->tag; type = atom->type;
|
||||||
|
mask = atom->mask; image = atom->image;
|
||||||
|
x = atom->x; v = atom->v; f = atom->f;
|
||||||
|
omega = atom->omega; angmom = atom->angmom;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* ----------------------------------------------------------------------
|
/* ----------------------------------------------------------------------
|
||||||
|
|||||||
@ -27,7 +27,7 @@ class AtomVecHybrid : public AtomVec {
|
|||||||
AtomVecHybrid(class LAMMPS *, int, char **);
|
AtomVecHybrid(class LAMMPS *, int, char **);
|
||||||
~AtomVecHybrid();
|
~AtomVecHybrid();
|
||||||
void grow(int);
|
void grow(int);
|
||||||
void reset_special();
|
void grow_reset();
|
||||||
void copy(int, int);
|
void copy(int, int);
|
||||||
int pack_comm(int, int *, double *, int, int *);
|
int pack_comm(int, int *, double *, int, int *);
|
||||||
int pack_comm_vel(int, int *, double *, int, int *);
|
int pack_comm_vel(int, int *, double *, int, int *);
|
||||||
|
|||||||
@ -639,7 +639,7 @@ void Special::combine()
|
|||||||
|
|
||||||
atom->special =
|
atom->special =
|
||||||
memory->create_2d_int_array(atom->nmax,atom->maxspecial,"atom:special");
|
memory->create_2d_int_array(atom->nmax,atom->maxspecial,"atom:special");
|
||||||
atom->avec->reset_special();
|
atom->avec->grow_reset();
|
||||||
int **special = atom->special;
|
int **special = atom->special;
|
||||||
|
|
||||||
// ----------------------------------------------------
|
// ----------------------------------------------------
|
||||||
|
|||||||
Reference in New Issue
Block a user