In order to calculate more complex charge densities, the optional function rocalc may be present in the module file *.so. If present, it will be used by programs chrgplt, charges:
extern "C" double ro_calc(double & teta,double & fi,double &R,Vector &aLlm, double *gJ,Vector &MODPAR,char **sipffilename);
Note for windows users with MINGW the declaration should be extern "C" __declspec(dllexport) double ro_calc(...).
The meaning of the symbols is as follows:
on input teta, fi, R(Angsgtroem) .... spatial position in spherical coordinates gJ Lande factor MODPAR Vector with Parameters read in single ion property file sipffilename file name of the single ion parameter file aLlm single ion moments =expectation values of coefficients of Zlm F(r) at a given temperature T and effective field H on output double ro_rocalc ... the charge density
The module function must perform the following tasks: