1 ////////////////////////////////////////////////////////////////////////////////
3 // AliFemtoYlm - the class to calculate varous components of spherical //
6 // Authors: Adam Kisiel kisiel@mps.ohio-state.edu //
8 ////////////////////////////////////////////////////////////////////////////////
22 AliFemtoYlm(const AliFemtoYlm& aYlm);
23 AliFemtoYlm& operator=(const AliFemtoYlm& aYlm);
25 static double Legendre(int ell, int emm, double ctheta);
26 static void LegendreUpToYlm(int lmax, double ctheta, double *lbuf);
28 static std::complex<double> Ylm(int ell,int m,double theta,double phi);
29 static std::complex<double> Ylm(int ell, int m, double x, double y, double z);
31 static void YlmUpToL(int lmax, double x, double y, double z, std::complex<double> *ylms);
32 static void YlmUpToL(int lmax, double ctheta, double phi, std::complex<double> *ylms);
34 static double ReYlm(int ell, int m, double theta, double phi);
35 static double ReYlm(int ell, int m, double x, double y, double z);
36 static double ImYlm(int ell, int m, double theta, double phi);
37 static double ImYlm(int ell, int m, double x, double y, double z);
39 static void InitializeYlms();
42 static std::complex<double> Ceiphi(double phi);
44 static double *fgPrefactors;
45 static int *fgPrefshift;
46 static int *fgPlmshift;