Small doc changes, renaming status variable

This commit is contained in:
jtclemm
2024-07-15 17:19:51 -06:00
parent 8f6cf085e8
commit a9a896c677
22 changed files with 97 additions and 114 deletions

View File

@ -2,25 +2,26 @@ Reproducing hydrodynamics and elastic objects (RHEO)
==================================================== ====================================================
The RHEO package is a hybrid implementation of smoothed particle The RHEO package is a hybrid implementation of smoothed particle
hydrodynamics (SPH) for fluid flow, coupled to the :doc:`BPM package <Howto_bpm>` hydrodynamics (SPH) for fluid flow, which can couple to the :doc:`BPM package
to model solid elements. RHEO combines these methods to enable mesh-free modeling <Howto_bpm>` to model solid elements. RHEO combines these methods to enable
of multi-phase material systems. The SPH solver supports many advanced options mesh-free modeling of multi-phase material systems. Its SPH solver supports
including reproducing kernels, particle shifting, free surface identification, many advanced options including reproducing kernels, particle shifting, free
and solid surface reconstruction. To model fluid-solid systems, the status of surface identification, and solid surface reconstruction. To model fluid-solid
particles can dynamically change between a fluid and solid state, e.g. during systems, the status of particles can dynamically change between a fluid and
melting/solidification, which determines how they interact and their physical solid state, e.g. during melting/solidification, which determines how they
behavior. The package is designed with modularity in mind, so one can easily interact and their physical behavior. The package is designed with modularity
turn various features on/off, adjust physical details of the system, or in mind, so one can easily turn various features on/off, adjust physical
develop new capabilities. For instance, the numerics associated with details of the system, or develop new capabilities. For instance, the numerics
calculating gradients, reproducing kernels, etc. are separated into distinct associated with calculating gradients, reproducing kernels, etc. are separated
classes to simplify the development of new integration schemes which can call into distinctclasses to simplify the development of new integration schemes
these calculations. Additional numerical details can be found in which can call these calculations. Additional numerical details can be found in
:ref:`(Palermo) <howto_rheo_palermo>` and :ref:`(Palermo) <howto_rheo_palermo>` and
:ref:`(Clemmer) <howto_rheo_clemmer>`. :ref:`(Clemmer) <howto_rheo_clemmer>`.
Note, if you simply want to run a traditional SPH simulation, the SPH package Note, if you simply want to run a traditional SPH simulation, the :ref:`SPH package
is likely better suited for your application. It has fewer advanced features <PKG-SPH>` package is likely better suited for your application. It has fewer advanced
and therefore benefits from improved performance. features and therefore benefits from improved performance. The :ref:`MACHDYN
<PKG-MACHDYN>` package for solids may also be relevant for fluid-solid problems.
---------- ----------

View File

@ -87,7 +87,6 @@ fix 11 all enforce2d
compute surf all rheo/property/atom surface compute surf all rheo/property/atom surface
compute rho all rheo/property/atom rho compute rho all rheo/property/atom rho
compute phase all rheo/property/atom phase compute phase all rheo/property/atom phase
compute status all rheo/property/atom status
compute temp all rheo/property/atom temperature compute temp all rheo/property/atom temperature
compute eng all rheo/property/atom energy compute eng all rheo/property/atom energy
compute nbond_shell all rheo/property/atom nbond/shell compute nbond_shell all rheo/property/atom nbond/shell
@ -98,6 +97,6 @@ compute nbond_solid all nbond/atom bond/type 1
thermo 200 thermo 200
thermo_style custom step time ke press atoms thermo_style custom step time ke press atoms
#dump 1 all custom 200 atomDump id type x y vx vy fx fy c_phase c_temp c_eng c_nbond_solid c_nbond_shell c_rho c_surf c_status #dump 1 all custom 200 atomDump id type x y vx vy fx fy c_phase c_temp c_eng c_nbond_solid c_nbond_shell c_rho c_surf
run 40000 run 40000

View File

@ -33,7 +33,7 @@ AtomVecRHEO::AtomVecRHEO(LAMMPS *lmp) : AtomVec(lmp)
mass_type = PER_TYPE; mass_type = PER_TYPE;
forceclearflag = 1; forceclearflag = 1;
atom->status_flag = 1; atom->rheo_status_flag = 1;
atom->pressure_flag = 1; atom->pressure_flag = 1;
atom->rho_flag = 1; atom->rho_flag = 1;
atom->viscosity_flag = 1; atom->viscosity_flag = 1;
@ -43,17 +43,17 @@ AtomVecRHEO::AtomVecRHEO(LAMMPS *lmp) : AtomVec(lmp)
// order of fields in a string does not matter // order of fields in a string does not matter
// except: fields_data_atom & fields_data_vel must match data file // except: fields_data_atom & fields_data_vel must match data file
fields_grow = {"status", "rho", "drho", "pressure", "viscosity"}; fields_grow = {"rheo_status", "rho", "drho", "pressure", "viscosity"};
fields_copy = {"status", "rho", "drho", "pressure", "viscosity"}; fields_copy = {"rheo_status", "rho", "drho", "pressure", "viscosity"};
fields_comm = {"status", "rho"}; fields_comm = {"rheo_status", "rho"};
fields_comm_vel = {"status", "rho"}; fields_comm_vel = {"rheo_status", "rho"};
fields_reverse = {"drho"}; fields_reverse = {"drho"};
fields_border = {"status", "rho"}; fields_border = {"rheo_status", "rho"};
fields_border_vel = {"status", "rho"}; fields_border_vel = {"rheo_status", "rho"};
fields_exchange = {"status", "rho"}; fields_exchange = {"rheo_status", "rho"};
fields_restart = {"status", "rho"}; fields_restart = {"rheo_status", "rho"};
fields_create = {"status", "rho", "drho", "pressure", "viscosity"}; fields_create = {"rheo_status", "rho", "drho", "pressure", "viscosity"};
fields_data_atom = {"id", "type", "status", "rho", "x"}; fields_data_atom = {"id", "type", "rheo_status", "rho", "x"};
fields_data_vel = {"id", "v"}; fields_data_vel = {"id", "v"};
setup_fields(); setup_fields();
@ -66,7 +66,7 @@ AtomVecRHEO::AtomVecRHEO(LAMMPS *lmp) : AtomVec(lmp)
void AtomVecRHEO::grow_pointers() void AtomVecRHEO::grow_pointers()
{ {
status = atom->status; rheo_status = atom->rheo_status;
pressure = atom->pressure; pressure = atom->pressure;
rho = atom->rho; rho = atom->rho;
drho = atom->drho; drho = atom->drho;
@ -111,7 +111,7 @@ void AtomVecRHEO::data_atom_post(int ilocal)
int AtomVecRHEO::property_atom(const std::string &name) int AtomVecRHEO::property_atom(const std::string &name)
{ {
if (name == "status") return 0; if (name == "rheo_status") return 0;
if (name == "pressure") return 1; if (name == "pressure") return 1;
if (name == "rho") return 2; if (name == "rho") return 2;
if (name == "drho") return 3; if (name == "drho") return 3;
@ -133,7 +133,7 @@ void AtomVecRHEO::pack_property_atom(int index, double *buf, int nvalues, int gr
if (index == 0) { if (index == 0) {
for (int i = 0; i < nlocal; i++) { for (int i = 0; i < nlocal; i++) {
if (mask[i] & groupbit) if (mask[i] & groupbit)
buf[n] = status[i]; buf[n] = rheo_status[i];
else else
buf[n] = 0.0; buf[n] = 0.0;
n += nvalues; n += nvalues;

View File

@ -36,7 +36,7 @@ class AtomVecRHEO : virtual public AtomVec {
void pack_property_atom(int, double *, int, int) override; void pack_property_atom(int, double *, int, int) override;
private: private:
int *status; int *rheo_status;
double *pressure, *rho, *drho, *viscosity; double *pressure, *rho, *drho, *viscosity;
}; };

View File

@ -33,7 +33,7 @@ AtomVecRHEOThermal::AtomVecRHEOThermal(LAMMPS *lmp) : AtomVec(lmp)
mass_type = PER_TYPE; mass_type = PER_TYPE;
forceclearflag = 1; forceclearflag = 1;
atom->status_flag = 1; atom->rheo_status_flag = 1;
atom->conductivity_flag = 1; atom->conductivity_flag = 1;
atom->temperature_flag = 1; atom->temperature_flag = 1;
atom->esph_flag = 1; atom->esph_flag = 1;
@ -47,17 +47,17 @@ AtomVecRHEOThermal::AtomVecRHEOThermal(LAMMPS *lmp) : AtomVec(lmp)
// order of fields in a string does not matter // order of fields in a string does not matter
// except: fields_data_atom & fields_data_vel must match data file // except: fields_data_atom & fields_data_vel must match data file
fields_grow = {"status", "rho", "drho", "temperature", "esph", "heatflow", "conductivity", "pressure", "viscosity"}; fields_grow = {"rheo_status", "rho", "drho", "temperature", "esph", "heatflow", "conductivity", "pressure", "viscosity"};
fields_copy = {"status", "rho", "drho", "temperature", "esph", "heatflow", "conductivity", "pressure", "viscosity"}; fields_copy = {"rheo_status", "rho", "drho", "temperature", "esph", "heatflow", "conductivity", "pressure", "viscosity"};
fields_comm = {"status", "rho", "esph"}; fields_comm = {"rheo_status", "rho", "esph"};
fields_comm_vel = {"status", "rho", "esph"}; fields_comm_vel = {"rheo_status", "rho", "esph"};
fields_reverse = {"drho", "heatflow"}; fields_reverse = {"drho", "heatflow"};
fields_border = {"status", "rho", "esph"}; fields_border = {"rheo_status", "rho", "esph"};
fields_border_vel = {"status", "rho", "esph"}; fields_border_vel = {"rheo_status", "rho", "esph"};
fields_exchange = {"status", "rho", "esph"}; fields_exchange = {"rheo_status", "rho", "esph"};
fields_restart = {"status", "rho", "esph"}; fields_restart = {"rheo_status", "rho", "esph"};
fields_create = {"status", "rho", "drho", "temperature", "esph", "heatflow", "conductivity", "pressure", "viscosity"}; fields_create = {"rheo_status", "rho", "drho", "temperature", "esph", "heatflow", "conductivity", "pressure", "viscosity"};
fields_data_atom = {"id", "type", "status", "rho", "esph", "x"}; fields_data_atom = {"id", "type", "rheo_status", "rho", "esph", "x"};
fields_data_vel = {"id", "v"}; fields_data_vel = {"id", "v"};
setup_fields(); setup_fields();
@ -70,7 +70,7 @@ AtomVecRHEOThermal::AtomVecRHEOThermal(LAMMPS *lmp) : AtomVec(lmp)
void AtomVecRHEOThermal::grow_pointers() void AtomVecRHEOThermal::grow_pointers()
{ {
status = atom->status; rheo_status = atom->rheo_status;
conductivity = atom->conductivity; conductivity = atom->conductivity;
temperature = atom->temperature; temperature = atom->temperature;
esph = atom->esph; esph = atom->esph;
@ -123,7 +123,7 @@ void AtomVecRHEOThermal::data_atom_post(int ilocal)
int AtomVecRHEOThermal::property_atom(const std::string &name) int AtomVecRHEOThermal::property_atom(const std::string &name)
{ {
if (name == "status") return 0; if (name == "rheo_status") return 0;
if (name == "rho") return 1; if (name == "rho") return 1;
if (name == "drho") return 2; if (name == "drho") return 2;
if (name == "temperature") return 3; if (name == "temperature") return 3;
@ -149,7 +149,7 @@ void AtomVecRHEOThermal::pack_property_atom(int index, double *buf, int nvalues,
if (index == 0) { if (index == 0) {
for (int i = 0; i < nlocal; i++) { for (int i = 0; i < nlocal; i++) {
if (mask[i] & groupbit) if (mask[i] & groupbit)
buf[n] = status[i]; buf[n] = rheo_status[i];
else else
buf[n] = 0.0; buf[n] = 0.0;
n += nvalues; n += nvalues;

View File

@ -36,7 +36,7 @@ class AtomVecRHEOThermal : virtual public AtomVec {
void pack_property_atom(int, double *, int, int) override; void pack_property_atom(int, double *, int, int) override;
private: private:
int *status; int *rheo_status;
double *conductivity, *temperature, *heatflow, *esph; double *conductivity, *temperature, *heatflow, *esph;
double *pressure, *rho, *drho, *viscosity; double *pressure, *rho, *drho, *viscosity;
}; };

View File

@ -182,7 +182,7 @@ void BondRHEOShell::compute(int eflag, int vflag)
double **v = atom->v; double **v = atom->v;
double **f = atom->f; double **f = atom->f;
tagint *tag = atom->tag; tagint *tag = atom->tag;
int *status = atom->status; int *status = atom->rheo_status;
int **bondlist = neighbor->bondlist; int **bondlist = neighbor->bondlist;
int nbondlist = neighbor->nbondlist; int nbondlist = neighbor->nbondlist;
int nlocal = atom->nlocal; int nlocal = atom->nlocal;

View File

@ -144,7 +144,7 @@ void ComputeRHEOGrad::compute_peratom()
double *rho = atom->rho; double *rho = atom->rho;
double *energy = atom->esph; double *energy = atom->esph;
double *viscosity = atom->viscosity; double *viscosity = atom->viscosity;
int *status = atom->status; int *status = atom->rheo_status;
int *type = atom->type; int *type = atom->type;
double *mass = atom->mass; double *mass = atom->mass;
int newton = force->newton; int newton = force->newton;

View File

@ -120,7 +120,7 @@ void ComputeRHEOInterface::compute_peratom()
double **x = atom->x; double **x = atom->x;
int *type = atom->type; int *type = atom->type;
int newton = force->newton; int newton = force->newton;
int *status = atom->status; int *status = atom->rheo_status;
double *rho = atom->rho; double *rho = atom->rho;
inum = list->inum; inum = list->inum;
@ -290,7 +290,7 @@ void ComputeRHEOInterface::unpack_reverse_comm(int n, int *list, double *buf)
{ {
int i, k, j, m; int i, k, j, m;
double *rho = atom->rho; double *rho = atom->rho;
int *status = atom->status; int *status = atom->rheo_status;
m = 0; m = 0;
for (i = 0; i < n; i++) { for (i = 0; i < n; i++) {
j = list[i]; j = list[i];

View File

@ -586,7 +586,7 @@ void ComputeRHEOKernel::compute_peratom()
int *type = atom->type; int *type = atom->type;
double *mass = atom->mass; double *mass = atom->mass;
double *rho = atom->rho; double *rho = atom->rho;
int *status = atom->status; int *status = atom->rheo_status;
tagint *tag = atom->tag; tagint *tag = atom->tag;
int *ilist, *jlist, *numneigh, **firstneigh; int *ilist, *jlist, *numneigh, **firstneigh;

View File

@ -92,8 +92,9 @@ ComputeRHEOPropertyAtom::ComputeRHEOPropertyAtom(LAMMPS *lmp, int narg, char **a
for (int iarg = 3; iarg < narg; iarg++) { for (int iarg = 3; iarg < narg; iarg++) {
if (strcmp(arg[iarg], "phase") == 0) { if (strcmp(arg[iarg], "phase") == 0) {
pack_choice[i] = &ComputeRHEOPropertyAtom::pack_phase; pack_choice[i] = &ComputeRHEOPropertyAtom::pack_phase;
} else if (strcmp(arg[iarg], "rho") == 0) { } else if (strcmp(arg[iarg], "status") == 0) {
pack_choice[i] = &ComputeRHEOPropertyAtom::pack_rho; // Short hand for "rheo_status"
pack_choice[i] = &ComputeRHEOPropertyAtom::pack_status;
} else if (strcmp(arg[iarg], "chi") == 0) { } else if (strcmp(arg[iarg], "chi") == 0) {
interface_flag = 1; interface_flag = 1;
pack_choice[i] = &ComputeRHEOPropertyAtom::pack_chi; pack_choice[i] = &ComputeRHEOPropertyAtom::pack_chi;
@ -111,8 +112,6 @@ ComputeRHEOPropertyAtom::ComputeRHEOPropertyAtom(LAMMPS *lmp, int narg, char **a
} else if (strcmp(arg[iarg], "pressure") == 0) { } else if (strcmp(arg[iarg], "pressure") == 0) {
pressure_flag = 1; pressure_flag = 1;
pack_choice[i] = &ComputeRHEOPropertyAtom::pack_pressure; pack_choice[i] = &ComputeRHEOPropertyAtom::pack_pressure;
} else if (strcmp(arg[iarg], "viscosity") == 0) {
pack_choice[i] = &ComputeRHEOPropertyAtom::pack_viscosity;
} else if (strcmp(arg[iarg], "cv") == 0) { } else if (strcmp(arg[iarg], "cv") == 0) {
thermal_flag = 1; thermal_flag = 1;
pack_choice[i] = &ComputeRHEOPropertyAtom::pack_cv; pack_choice[i] = &ComputeRHEOPropertyAtom::pack_cv;
@ -265,7 +264,7 @@ double ComputeRHEOPropertyAtom::memory_usage()
void ComputeRHEOPropertyAtom::pack_phase(int n) void ComputeRHEOPropertyAtom::pack_phase(int n)
{ {
int *status = atom->status; int *status = atom->rheo_status;
int *mask = atom->mask; int *mask = atom->mask;
int nlocal = atom->nlocal; int nlocal = atom->nlocal;
@ -278,14 +277,14 @@ void ComputeRHEOPropertyAtom::pack_phase(int n)
/* ---------------------------------------------------------------------- */ /* ---------------------------------------------------------------------- */
void ComputeRHEOPropertyAtom::pack_rho(int n) void ComputeRHEOPropertyAtom::pack_status(int n)
{ {
double *rho = atom->rho; int *status = atom->rheo_status;
int *mask = atom->mask; int *mask = atom->mask;
int nlocal = atom->nlocal; int nlocal = atom->nlocal;
for (int i = 0; i < nlocal; i++) { for (int i = 0; i < nlocal; i++) {
if (mask[i] & groupbit) buf[n] = rho[i]; if (mask[i] & groupbit) buf[n] = status[i];
else buf[n] = 0.0; else buf[n] = 0.0;
n += nvalues; n += nvalues;
} }
@ -310,7 +309,7 @@ void ComputeRHEOPropertyAtom::pack_chi(int n)
void ComputeRHEOPropertyAtom::pack_surface(int n) void ComputeRHEOPropertyAtom::pack_surface(int n)
{ {
int *status = atom->status; int *status = atom->rheo_status;
int *mask = atom->mask; int *mask = atom->mask;
int nlocal = atom->nlocal; int nlocal = atom->nlocal;
@ -420,21 +419,6 @@ void ComputeRHEOPropertyAtom::pack_pressure(int n)
/* ---------------------------------------------------------------------- */ /* ---------------------------------------------------------------------- */
void ComputeRHEOPropertyAtom::pack_viscosity(int n)
{
int *mask = atom->mask;
double *viscosity = atom->viscosity;
int nlocal = atom->nlocal;
for (int i = 0; i < nlocal; i++) {
if (mask[i] & groupbit) buf[n] = viscosity[i];
else buf[n] = 0.0;
n += nvalues;
}
}
/* ---------------------------------------------------------------------- */
void ComputeRHEOPropertyAtom::pack_viscous_stress(int n) void ComputeRHEOPropertyAtom::pack_viscous_stress(int n)
{ {
double **gradv = compute_grad->gradv; double **gradv = compute_grad->gradv;

View File

@ -45,7 +45,7 @@ class ComputeRHEOPropertyAtom : public Compute {
FnPtrPack *pack_choice; // ptrs to pack functions FnPtrPack *pack_choice; // ptrs to pack functions
void pack_phase(int); void pack_phase(int);
void pack_rho(int); void pack_status(int);
void pack_chi(int); void pack_chi(int);
void pack_surface(int); void pack_surface(int);
void pack_surface_r(int); void pack_surface_r(int);
@ -56,7 +56,6 @@ class ComputeRHEOPropertyAtom : public Compute {
void pack_shift_v(int); void pack_shift_v(int);
void pack_gradv(int); void pack_gradv(int);
void pack_pressure(int); void pack_pressure(int);
void pack_viscosity(int);
void pack_viscous_stress(int); void pack_viscous_stress(int);
void pack_total_stress(int); void pack_total_stress(int);
void pack_nbond_shell(int); void pack_nbond_shell(int);

View File

@ -106,7 +106,7 @@ void ComputeRHEOSurface::compute_peratom()
int nlocal = atom->nlocal; int nlocal = atom->nlocal;
double **x = atom->x; double **x = atom->x;
int *status = atom->status; int *status = atom->rheo_status;
int newton = force->newton; int newton = force->newton;
int dim = domain->dimension; int dim = domain->dimension;
int *mask = atom->mask; int *mask = atom->mask;
@ -312,7 +312,7 @@ int ComputeRHEOSurface::pack_reverse_comm(int n, int first, double *buf)
{ {
int i,a,b,k,m,last; int i,a,b,k,m,last;
int dim = domain->dimension; int dim = domain->dimension;
int *status = atom->status; int *status = atom->rheo_status;
m = 0; m = 0;
last = first + n; last = first + n;
@ -336,7 +336,7 @@ void ComputeRHEOSurface::unpack_reverse_comm(int n, int *list, double *buf)
{ {
int i,a,b,k,j,m; int i,a,b,k,j,m;
int dim = domain->dimension; int dim = domain->dimension;
int *status = atom->status; int *status = atom->rheo_status;
int tmp1; int tmp1;
double tmp2; double tmp2;
@ -367,7 +367,7 @@ int ComputeRHEOSurface::pack_forward_comm(int n, int *list, double *buf,
int /*pbc_flag*/, int * /*pbc*/) int /*pbc_flag*/, int * /*pbc*/)
{ {
int i,j,a,b,k,m; int i,j,a,b,k,m;
int *status = atom->status; int *status = atom->rheo_status;
m = 0; m = 0;
for (i = 0; i < n; i++) { for (i = 0; i < n; i++) {
@ -387,7 +387,7 @@ int ComputeRHEOSurface::pack_forward_comm(int n, int *list, double *buf,
void ComputeRHEOSurface::unpack_forward_comm(int n, int first, double *buf) void ComputeRHEOSurface::unpack_forward_comm(int n, int first, double *buf)
{ {
int i, k, a, b, m, last; int i, k, a, b, m, last;
int *status = atom->status; int *status = atom->rheo_status;
m = 0; m = 0;
last = first + n; last = first + n;

View File

@ -102,7 +102,7 @@ void ComputeRHEOVShift::compute_peratom()
int inum, *ilist, *numneigh, **firstneigh; int inum, *ilist, *numneigh, **firstneigh;
int *type = atom->type; int *type = atom->type;
int *status = atom->status; int *status = atom->rheo_status;
int *mask = atom->mask; int *mask = atom->mask;
double **x = atom->x; double **x = atom->x;
double **v = atom->v; double **v = atom->v;
@ -231,7 +231,7 @@ void ComputeRHEOVShift::correct_surfaces()
int i, a, b; int i, a, b;
int *status = atom->status; int *status = atom->rheo_status;
int *mask = atom->mask; int *mask = atom->mask;
double **nsurface = compute_surface->nsurface; double **nsurface = compute_surface->nsurface;

View File

@ -86,7 +86,7 @@ FixRHEO::FixRHEO(LAMMPS *lmp, int narg, char **arg) :
error->all(FLERR, "fix rheo command requires atom_style with density"); error->all(FLERR, "fix rheo command requires atom_style with density");
if (atom->viscosity_flag != 1) if (atom->viscosity_flag != 1)
error->all(FLERR, "fix rheo command requires atom_style with viscosity"); error->all(FLERR, "fix rheo command requires atom_style with viscosity");
if (atom->status_flag != 1) if (atom->rheo_status_flag != 1)
error->all(FLERR, "fix rheo command requires atom_style with status"); error->all(FLERR, "fix rheo command requires atom_style with status");
if (narg < 5) if (narg < 5)
@ -235,7 +235,7 @@ void FixRHEO::init()
if (modify->get_fix_by_style("^rheo$").size() > 1) if (modify->get_fix_by_style("^rheo$").size() > 1)
error->all(FLERR, "Can only specify one instance of fix rheo"); error->all(FLERR, "Can only specify one instance of fix rheo");
if (atom->status_flag != 1) if (atom->rheo_status_flag != 1)
error->all(FLERR,"fix rheo command requires atom property status"); error->all(FLERR,"fix rheo command requires atom property status");
if (atom->rho_flag != 1) if (atom->rho_flag != 1)
error->all(FLERR,"fix rheo command requires atom property rho"); error->all(FLERR,"fix rheo command requires atom property rho");
@ -309,7 +309,7 @@ void FixRHEO::initial_integrate(int /*vflag*/)
int *type = atom->type; int *type = atom->type;
int *mask = atom->mask; int *mask = atom->mask;
int *status = atom->status; int *status = atom->rheo_status;
double **x = atom->x; double **x = atom->x;
double **v = atom->v; double **v = atom->v;
double **f = atom->f; double **f = atom->f;
@ -432,7 +432,7 @@ void FixRHEO::pre_force(int /*vflag*/)
// Remove temporary options // Remove temporary options
int *mask = atom->mask; int *mask = atom->mask;
int *status = atom->status; int *status = atom->rheo_status;
int nall = atom->nlocal + atom->nghost; int nall = atom->nlocal + atom->nghost;
for (int i = 0; i < nall; i++) for (int i = 0; i < nall; i++)
if (mask[i] & groupbit) if (mask[i] & groupbit)
@ -467,7 +467,7 @@ void FixRHEO::final_integrate()
double *rmass = atom->rmass; double *rmass = atom->rmass;
int *type = atom->type; int *type = atom->type;
int *mask = atom->mask; int *mask = atom->mask;
int *status = atom->status; int *status = atom->rheo_status;
int rmass_flag = atom->rmass_flag; int rmass_flag = atom->rmass_flag;
int dim = domain->dimension; int dim = domain->dimension;

View File

@ -163,7 +163,7 @@ void FixRHEOOxidation::post_integrate()
int **bond_type = atom->bond_type; int **bond_type = atom->bond_type;
int *num_bond = atom->num_bond; int *num_bond = atom->num_bond;
int *mask = atom->mask; int *mask = atom->mask;
int *status = atom->status; int *status = atom->rheo_status;
double *rsurface = compute_surface->rsurface; double *rsurface = compute_surface->rsurface;
double **x = atom->x; double **x = atom->x;
@ -255,7 +255,7 @@ void FixRHEOOxidation::post_integrate()
void FixRHEOOxidation::post_force(int /*vflag*/) void FixRHEOOxidation::post_force(int /*vflag*/)
{ {
int *status = atom->status; int *status = atom->rheo_status;
int *num_bond = atom->num_bond; int *num_bond = atom->num_bond;
for (int i = 0; i < atom->nlocal; i++) for (int i = 0; i < atom->nlocal; i++)
if (num_bond[i] != 0) if (num_bond[i] != 0)

View File

@ -326,7 +326,7 @@ void FixRHEOThermal::initial_integrate(int /*vflag*/)
if (!fix_rheo->shift_flag) return; if (!fix_rheo->shift_flag) return;
int i, a; int i, a;
int *status = atom->status; int *status = atom->rheo_status;
double *energy = atom->esph; double *energy = atom->esph;
double **grade = compute_grad->grade; double **grade = compute_grad->grade;
double **vshift = compute_vshift->vshift; double **vshift = compute_vshift->vshift;
@ -351,7 +351,7 @@ void FixRHEOThermal::post_integrate()
int i, itype; int i, itype;
double cvi, Tci, Ti, Li; double cvi, Tci, Ti, Li;
int *status = atom->status; int *status = atom->rheo_status;
double *energy = atom->esph; double *energy = atom->esph;
double *temperature = atom->temperature; double *temperature = atom->temperature;
double *heatflow = atom->heatflow; double *heatflow = atom->heatflow;
@ -466,7 +466,7 @@ void FixRHEOThermal::pre_force(int /*vflag*/)
double *energy = atom->esph; double *energy = atom->esph;
double *temperature = atom->temperature; double *temperature = atom->temperature;
int *type = atom->type; int *type = atom->type;
int *status = atom->status; int *status = atom->rheo_status;
int nlocal = atom->nlocal; int nlocal = atom->nlocal;
int nall = nlocal + atom->nghost; int nall = nlocal + atom->nghost;
@ -494,7 +494,7 @@ void FixRHEOThermal::pre_force(int /*vflag*/)
void FixRHEOThermal::final_integrate() void FixRHEOThermal::final_integrate()
{ {
int *status = atom->status; int *status = atom->rheo_status;
double *energy = atom->esph; double *energy = atom->esph;
double *heatflow = atom->heatflow; double *heatflow = atom->heatflow;
@ -520,7 +520,7 @@ void FixRHEOThermal::break_bonds()
int m, n, nmax, i, j, melti, meltj; int m, n, nmax, i, j, melti, meltj;
tagint *tag = atom->tag; tagint *tag = atom->tag;
int *status = atom->status; int *status = atom->rheo_status;
int **bond_type = atom->bond_type; int **bond_type = atom->bond_type;
tagint **bond_atom = atom->bond_atom; tagint **bond_atom = atom->bond_atom;
int *num_bond = atom->num_bond; int *num_bond = atom->num_bond;
@ -649,7 +649,7 @@ void FixRHEOThermal::create_bonds()
tagint *tag = atom->tag; tagint *tag = atom->tag;
tagint **bond_atom = atom->bond_atom; tagint **bond_atom = atom->bond_atom;
int *status = atom->status; int *status = atom->rheo_status;
int **bond_type = atom->bond_type; int **bond_type = atom->bond_type;
int *num_bond = atom->num_bond; int *num_bond = atom->num_bond;
double **x = atom->x; double **x = atom->x;
@ -754,7 +754,7 @@ int FixRHEOThermal::pack_forward_comm(int n, int *list, double *buf,
int /*pbc_flag*/, int * /*pbc*/) int /*pbc_flag*/, int * /*pbc*/)
{ {
int i, j, k, m; int i, j, k, m;
int *status = atom->status; int *status = atom->rheo_status;
double **x = atom->x; double **x = atom->x;
m = 0; m = 0;
@ -773,7 +773,7 @@ int FixRHEOThermal::pack_forward_comm(int n, int *list, double *buf,
void FixRHEOThermal::unpack_forward_comm(int n, int first, double *buf) void FixRHEOThermal::unpack_forward_comm(int n, int first, double *buf)
{ {
int i, k, m, last; int i, k, m, last;
int *status = atom->status; int *status = atom->rheo_status;
double **x = atom->x; double **x = atom->x;
m = 0; m = 0;
last = first + n; last = first + n;

View File

@ -110,7 +110,7 @@ void PairRHEO::compute(int eflag, int vflag)
double *heatflow = atom->heatflow; double *heatflow = atom->heatflow;
double *special_lj = force->special_lj; double *special_lj = force->special_lj;
int *type = atom->type; int *type = atom->type;
int *status = atom->status; int *status = atom->rheo_status;
tagint *tag = atom->tag; tagint *tag = atom->tag;
double **fp_store, *chi; double **fp_store, *chi;

View File

@ -74,7 +74,7 @@ void PairRHEOSolid::compute(int eflag, int vflag)
double **v = atom->v; double **v = atom->v;
double **f = atom->f; double **f = atom->f;
int *type = atom->type; int *type = atom->type;
int *status = atom->status; int *status = atom->rheo_status;
int nlocal = atom->nlocal; int nlocal = atom->nlocal;
int newton_pair = force->newton_pair; int newton_pair = force->newton_pair;
double *special_lj = force->special_lj; double *special_lj = force->special_lj;
@ -223,7 +223,7 @@ void PairRHEOSolid::init_style()
if (comm->ghost_velocity == 0) if (comm->ghost_velocity == 0)
error->all(FLERR,"Pair rheo/solid requires ghost atoms store velocity"); error->all(FLERR,"Pair rheo/solid requires ghost atoms store velocity");
if (!atom->status_flag) if (!atom->rheo_status_flag)
error->all(FLERR,"Pair rheo/solid requires atom_style rheo"); error->all(FLERR,"Pair rheo/solid requires atom_style rheo");
neighbor->add_request(this); neighbor->add_request(this);
@ -328,7 +328,7 @@ double PairRHEOSolid::single(int i, int j, int itype, int jtype, double rsq, dou
if (rsq > cutsq[itype][jtype]) return 0.0; if (rsq > cutsq[itype][jtype]) return 0.0;
int *status = atom->status; int *status = atom->rheo_status;
if (!(status[i] & STATUS_SOLID)) return 0.0; if (!(status[i] & STATUS_SOLID)) return 0.0;
if (!(status[j] & STATUS_SOLID)) return 0.0; if (!(status[j] & STATUS_SOLID)) return 0.0;

View File

@ -200,7 +200,7 @@ Atom::Atom(LAMMPS *_lmp) : Pointers(_lmp), atom_style(nullptr), avec(nullptr), a
// RHEO package // RHEO package
status = nullptr; rheo_status = nullptr;
conductivity = nullptr; conductivity = nullptr;
pressure = nullptr; pressure = nullptr;
viscosity = nullptr; viscosity = nullptr;
@ -538,7 +538,7 @@ void Atom::peratom_create()
// RHEO package // RHEO package
add_peratom("status",&status,INT,0); add_peratom("rheo_status",&rheo_status,INT,0);
add_peratom("conductivity",&conductivity,DOUBLE,0); add_peratom("conductivity",&conductivity,DOUBLE,0);
add_peratom("pressure",&pressure,DOUBLE,0); add_peratom("pressure",&pressure,DOUBLE,0);
add_peratom("viscosity",&viscosity,DOUBLE,0); add_peratom("viscosity",&viscosity,DOUBLE,0);
@ -648,7 +648,7 @@ void Atom::set_atomflag_defaults()
temperature_flag = heatflow_flag = 0; temperature_flag = heatflow_flag = 0;
vfrac_flag = spin_flag = eradius_flag = ervel_flag = erforce_flag = 0; vfrac_flag = spin_flag = eradius_flag = ervel_flag = erforce_flag = 0;
cs_flag = csforce_flag = vforce_flag = ervelforce_flag = etag_flag = 0; cs_flag = csforce_flag = vforce_flag = ervelforce_flag = etag_flag = 0;
status_flag = conductivity_flag = pressure_flag = viscosity_flag = 0; rheo_status_flag = conductivity_flag = pressure_flag = viscosity_flag = 0;
rho_flag = esph_flag = cv_flag = vest_flag = 0; rho_flag = esph_flag = cv_flag = vest_flag = 0;
dpd_flag = edpd_flag = tdpd_flag = 0; dpd_flag = edpd_flag = tdpd_flag = 0;
sp_flag = 0; sp_flag = 0;
@ -3065,7 +3065,7 @@ void *Atom::extract(const char *name)
// RHEO package // RHEO package
if (strcmp(name,"status") == 0) return (void *) status; if (strcmp(name,"rheo_status") == 0) return (void *) rheo_status;
if (strcmp(name,"conductivity") == 0) return (void *) conductivity; if (strcmp(name,"conductivity") == 0) return (void *) conductivity;
if (strcmp(name,"pressure") == 0) return (void *) pressure; if (strcmp(name,"pressure") == 0) return (void *) pressure;
if (strcmp(name,"viscosity") == 0) return (void *) viscosity; if (strcmp(name,"viscosity") == 0) return (void *) viscosity;
@ -3194,7 +3194,7 @@ int Atom::extract_datatype(const char *name)
// RHEO package // RHEO package
if (strcmp(name,"status") == 0) return LAMMPS_INT; if (strcmp(name,"rheo_status") == 0) return LAMMPS_INT;
if (strcmp(name,"conductivity") == 0) return LAMMPS_DOUBLE; if (strcmp(name,"conductivity") == 0) return LAMMPS_DOUBLE;
if (strcmp(name,"pressure") == 0) return LAMMPS_DOUBLE; if (strcmp(name,"pressure") == 0) return LAMMPS_DOUBLE;
if (strcmp(name,"viscosity") == 0) return LAMMPS_DOUBLE; if (strcmp(name,"viscosity") == 0) return LAMMPS_DOUBLE;

View File

@ -157,7 +157,7 @@ class Atom : protected Pointers {
// RHEO package // RHEO package
int *status; int *rheo_status;
double *conductivity; double *conductivity;
double *pressure; double *pressure;
double *viscosity; double *viscosity;
@ -197,7 +197,7 @@ class Atom : protected Pointers {
int temperature_flag, heatflow_flag; int temperature_flag, heatflow_flag;
int vfrac_flag, spin_flag, eradius_flag, ervel_flag, erforce_flag; int vfrac_flag, spin_flag, eradius_flag, ervel_flag, erforce_flag;
int cs_flag, csforce_flag, vforce_flag, ervelforce_flag, etag_flag; int cs_flag, csforce_flag, vforce_flag, ervelforce_flag, etag_flag;
int status_flag, conductivity_flag, pressure_flag, viscosity_flag; int rheo_status_flag, conductivity_flag, pressure_flag, viscosity_flag;
int rho_flag, esph_flag, cv_flag, vest_flag; int rho_flag, esph_flag, cv_flag, vest_flag;
int dpd_flag, edpd_flag, tdpd_flag; int dpd_flag, edpd_flag, tdpd_flag;
int mesont_flag; int mesont_flag;

View File

@ -526,7 +526,7 @@ void Set::command(int narg, char **arg)
if (iarg+2 > narg) utils::missing_cmd_args(FLERR, "set rheo/status", error); if (iarg+2 > narg) utils::missing_cmd_args(FLERR, "set rheo/status", error);
if (utils::strmatch(arg[iarg+1],"^v_")) varparse(arg[iarg+1],1); if (utils::strmatch(arg[iarg+1],"^v_")) varparse(arg[iarg+1],1);
else ivalue = utils::inumeric(FLERR,arg[iarg+1],false,lmp); else ivalue = utils::inumeric(FLERR,arg[iarg+1],false,lmp);
if (!atom->status_flag) if (!atom->rheo_status_flag)
error->all(FLERR,"Cannot set attribute {} for atom style {}", arg[iarg], atom->get_style()); error->all(FLERR,"Cannot set attribute {} for atom style {}", arg[iarg], atom->get_style());
set(RHEO_STATUS); set(RHEO_STATUS);
iarg += 2; iarg += 2;
@ -901,7 +901,7 @@ void Set::set(int keyword)
else if (keyword == RHEO_STATUS) { else if (keyword == RHEO_STATUS) {
if (ivalue != 0 && ivalue != 1) if (ivalue != 0 && ivalue != 1)
error->one(FLERR,"Invalid value {} in set command for rheo/status", ivalue); error->one(FLERR,"Invalid value {} in set command for rheo/status", ivalue);
atom->status[i] = ivalue; atom->rheo_status[i] = ivalue;
} }
else if (keyword == SPH_E) atom->esph[i] = dvalue; else if (keyword == SPH_E) atom->esph[i] = dvalue;