Merge branch 'develop' into rheo
This commit is contained in:
28
src/atom.cpp
28
src/atom.cpp
@ -125,6 +125,8 @@ Atom::Atom(LAMMPS *_lmp) : Pointers(_lmp)
|
||||
radius = rmass = nullptr;
|
||||
ellipsoid = line = tri = body = nullptr;
|
||||
quat = nullptr;
|
||||
temperature = nullptr;
|
||||
heatflow = nullptr;
|
||||
|
||||
// molecular systems
|
||||
|
||||
@ -425,6 +427,9 @@ void Atom::peratom_create()
|
||||
add_peratom("tri",&tri,INT,0);
|
||||
add_peratom("body",&body,INT,0);
|
||||
|
||||
add_peratom("temperature",&temperature,DOUBLE,0);
|
||||
add_peratom("heatflow",&heatflow,DOUBLE,0);
|
||||
|
||||
// BPM package
|
||||
|
||||
add_peratom("quat",&quat,DOUBLE,4);
|
||||
@ -631,6 +636,7 @@ void Atom::set_atomflag_defaults()
|
||||
molecule_flag = molindex_flag = molatom_flag = 0;
|
||||
q_flag = mu_flag = 0;
|
||||
rmass_flag = radius_flag = omega_flag = torque_flag = angmom_flag = 0;
|
||||
temperature_flag = heatflow_flag = 0;
|
||||
vfrac_flag = spin_flag = eradius_flag = ervel_flag = erforce_flag = 0;
|
||||
cs_flag = csforce_flag = vforce_flag = ervelforce_flag = etag_flag = 0;
|
||||
status_flag = 0;
|
||||
@ -1923,11 +1929,15 @@ void Atom::set_mass(const char *file, int line, const char *str, int type_offset
|
||||
|
||||
void Atom::set_mass(const char *file, int line, int itype, double value)
|
||||
{
|
||||
if (mass == nullptr) error->all(file,line, "Cannot set mass for atom style {}", atom_style);
|
||||
if (mass == nullptr)
|
||||
error->all(file,line, "Cannot set per-type mass for atom style {}", atom_style);
|
||||
if (itype < 1 || itype > ntypes)
|
||||
error->all(file,line,"Invalid type {} for atom mass {}", itype, value);
|
||||
if (value <= 0.0) error->all(file,line,"Invalid atom mass value {}", value);
|
||||
|
||||
if (value <= 0.0) {
|
||||
if (comm->me == 0)
|
||||
error->warning(file,line,"Ignoring invalid mass value {} for atom type {}", value, itype);
|
||||
return;
|
||||
}
|
||||
mass[itype] = value;
|
||||
mass_setflag[itype] = 1;
|
||||
}
|
||||
@ -2840,6 +2850,14 @@ length of the data area, and a short description.
|
||||
- double
|
||||
- 4
|
||||
- four quaternion components of the particles
|
||||
* - temperature
|
||||
- double
|
||||
- 1
|
||||
- temperature of the particles
|
||||
* - heatflow
|
||||
- double
|
||||
- 1
|
||||
- heatflow of the particles
|
||||
* - i_name
|
||||
- int
|
||||
- 1
|
||||
@ -2896,6 +2914,8 @@ void *Atom::extract(const char *name)
|
||||
if (strcmp(name,"tri") == 0) return (void *) tri;
|
||||
if (strcmp(name,"body") == 0) return (void *) body;
|
||||
if (strcmp(name,"quat") == 0) return (void *) quat;
|
||||
if (strcmp(name,"temperature") == 0) return (void *) temperature;
|
||||
if (strcmp(name,"heatflow") == 0) return (void *) heatflow;
|
||||
|
||||
// PERI PACKAGE
|
||||
|
||||
@ -3028,6 +3048,8 @@ int Atom::extract_datatype(const char *name)
|
||||
if (strcmp(name,"tri") == 0) return LAMMPS_INT;
|
||||
if (strcmp(name,"body") == 0) return LAMMPS_INT;
|
||||
if (strcmp(name,"quat") == 0) return LAMMPS_DOUBLE_2D;
|
||||
if (strcmp(name,"temperature") == 0) return LAMMPS_DOUBLE;
|
||||
if (strcmp(name,"heatflow") == 0) return LAMMPS_DOUBLE;
|
||||
|
||||
if (strcmp(name,"vfrac") == 0) return LAMMPS_DOUBLE;
|
||||
if (strcmp(name,"s0") == 0) return LAMMPS_DOUBLE;
|
||||
|
||||
Reference in New Issue
Block a user