Hello,

I wondered, how I can remove the charge q from the atom_vec_dipole.cpp and
.h, because I only need orienational degrees of freedom but no charge.

Is it ok to set
atom->q_flag = 0;

and to erase every:

q = atom->q = (double *)
memory->srealloc(atom->q,nmax*sizeof(double),"atom:q");
q = atom->q;

q[j] = q[i];

Then it should be fine to get rid of "buf[m++] = q[j];" in blocks like:

buf[m++] = x[j];
buf[m++] = x[j];
buf[m++] = x[j];
buf[m++] = tag[j];
buf[m++] = type[j];
buf[m++] = q[j];
buf[m++] = mu[j];
buf[m++] = mu[j];
buf[m++] = mu[j];

In the following block I would erase "buf = q[i];" and change the end
to "return 3;":

int AtomVecDipole::pack_border_one(int i, double *buf)
{
buf = q[i];
buf = mu[i];
buf = mu[i];
buf = mu[i];
return 4;
}

atof(values);" I would erase it, but I am unsure what I should do with
the

mu[nlocal] = atof(values);
mu[nlocal] = atof(values);
mu[nlocal] = atof(values);

should bei change them to:

mu[nlocal] = atof(values);
mu[nlocal] = atof(values);
mu[nlocal] = atof(values);

void AtomVecDipole::data_atom(double *coord, int imagetmp, char **values)
{
int nlocal = atom->nlocal;
if (nlocal == nmax) grow(0);

tag[nlocal] = atoi(values);
if (tag[nlocal] <= 0)
error->one("Invalid atom ID in Atoms section of data file");

type[nlocal] = atoi(values);
if (type[nlocal] <= 0 || type[nlocal] > atom->ntypes)
error->one("Invalid atom type in Atoms section of data file");

q[nlocal] = atof(values);

x[nlocal] = coord;
x[nlocal] = coord;
x[nlocal] = coord;

mu[nlocal] = atof(values);
mu[nlocal] = atof(values);
mu[nlocal] = atof(values);

image[nlocal] = imagetmp;

v[nlocal] = 0.0;
v[nlocal] = 0.0;
v[nlocal] = 0.0;
omega[nlocal] = 0.0;
omega[nlocal] = 0.0;
omega[nlocal] = 0.0;

atom->nlocal++;
}