move deleting all array data associated with an atom style to AtomVec base class destructor

This commit is contained in:
Axel Kohlmeyer
2020-06-19 12:31:31 -04:00
parent 4d630904b4
commit 4a447f1809
2 changed files with 8 additions and 109 deletions

View File

@ -249,115 +249,6 @@ Atom::~Atom()
delete [] peratom[i].name;
memory->sfree(peratom);
// --------------------------------------------------------------------
// 2nd customization section: customize by adding new per-atom variables
// delete atom arrays
memory->destroy(tag);
memory->destroy(type);
memory->destroy(mask);
memory->destroy(image);
memory->destroy(x);
memory->destroy(v);
memory->destroy(f);
memory->destroy(molecule);
memory->destroy(molindex);
memory->destroy(molatom);
memory->destroy(q);
memory->destroy(mu);
memory->destroy(omega);
memory->destroy(angmom);
memory->destroy(torque);
memory->destroy(radius);
memory->destroy(rmass);
memory->destroy(ellipsoid);
memory->destroy(line);
memory->destroy(tri);
memory->destroy(body);
memory->destroy(sp);
memory->destroy(fm);
memory->destroy(fm_long);
memory->destroy(vfrac);
memory->destroy(s0);
memory->destroy(x0);
memory->destroy(spin);
memory->destroy(eradius);
memory->destroy(ervel);
memory->destroy(erforce);
memory->destroy(ervelforce);
memory->destroy(cs);
memory->destroy(csforce);
memory->destroy(vforce);
memory->destroy(etag);
memory->destroy(rho);
memory->destroy(drho);
memory->destroy(esph);
memory->destroy(desph);
memory->destroy(cv);
memory->destroy(vest);
// USER-MESONT package
memory->destroy(length);
memory->destroy(buckling);
memory->destroy(bond_nt);
memory->destroy(contact_radius);
memory->destroy(smd_data_9);
memory->destroy(smd_stress);
memory->destroy(eff_plastic_strain);
memory->destroy(eff_plastic_strain_rate);
memory->destroy(damage);
memory->destroy(dpdTheta);
memory->destroy(uCond);
memory->destroy(uMech);
memory->destroy(uChem);
memory->destroy(uCG);
memory->destroy(uCGnew);
memory->destroy(duChem);
memory->destroy(cc);
memory->destroy(cc_flux);
memory->destroy(edpd_temp);
memory->destroy(edpd_flux);
memory->destroy(edpd_cv);
memory->destroy(nspecial);
memory->destroy(special);
memory->destroy(num_bond);
memory->destroy(bond_type);
memory->destroy(bond_atom);
memory->destroy(num_angle);
memory->destroy(angle_type);
memory->destroy(angle_atom1);
memory->destroy(angle_atom2);
memory->destroy(angle_atom3);
memory->destroy(num_dihedral);
memory->destroy(dihedral_type);
memory->destroy(dihedral_atom1);
memory->destroy(dihedral_atom2);
memory->destroy(dihedral_atom3);
memory->destroy(dihedral_atom4);
memory->destroy(num_improper);
memory->destroy(improper_type);
memory->destroy(improper_atom1);
memory->destroy(improper_atom2);
memory->destroy(improper_atom3);
memory->destroy(improper_atom4);
// end of customization section
// --------------------------------------------------------------------
// delete custom atom arrays
for (int i = 0; i < nivector; i++) {

View File

@ -96,6 +96,14 @@ AtomVec::~AtomVec()
for (int i = 0; i < nargcopy; i++) delete [] argcopy[i];
delete [] argcopy;
memory->destroy(atom->tag);
memory->destroy(atom->type);
memory->destroy(atom->mask);
memory->destroy(atom->image);
memory->destroy(atom->x);
memory->destroy(atom->v);
memory->destroy(atom->f);
for (int i = 0; i < ngrow; i++) {
pdata = mgrow.pdata[i];
datatype = mgrow.datatype[i];