namespace steinhardt {
// global functions
void minImage(double& dx, double& dy, double& dz, double bx, double by, double bz);
double normLM(int orderL, int absM);
double legendreAmp(int orderL, int absM, const double* s, const double* c);
void ylmAll(int orderL, double theta, double phi, double* out);
void qlmOneAtom(int iatom, int orderL, const double* xyz, const int* offsets, const int* cols, double bx, double by, double bz, double* qlmInterleaved);
void qlOneAtom(int iatom, int orderL, const double* qlmInterleaved, const int* offsets, const int* cols, double* ql, double* qlBar);
} // namespace steinhardt