52 if (l<0 || m<-l || m>l)
return 0.0;
56 if ((l+m) > 512 || (l-m) > 512 || (2*m) > 512)
return 0.0;
67 case -1 :
return 0.5 * sqrt(1.-x2);
69 case 1 :
return -sqrt(1.-x2);
74 case -2 :
return 0.125 * (1.0 - x2);
75 case -1 :
return 0.5 * x * sqrt(1.0 - x2);
76 case 0 :
return 0.5*(3.*x2 - 1.);
77 case 1 :
return -3.*x*sqrt(1.-x2);
78 case 2 :
return 3.*(1.-x2);
83 case -3 :
return (1.0/48.0) * (1.0 - x2) * sqrt(1.0 - x2);
84 case -2 :
return 0.125 * x * (1.0 - x2);
85 case -1 :
return 0.125 * (5.0 * x2 - 1.0) * sqrt(1.0 - x2);
86 case 0 :
return 0.5*(5.*x*x2 - 3.*x);
87 case 1 :
return -1.5*(5.*x2-1.)*sqrt(1.-x2);
88 case 2 :
return 15.*x*(1.-x2);
89 case 3 :
return -15.*(1.-x2)*sqrt(1.-x2);
94 case -4 :
return (105.0/40320.0)*(1. - 2.*x2 + x2*x2);
95 case -3 :
return (105.0/5040.0)*x*(1.-x2)*sqrt(1.-x2);
96 case -2 :
return (15.0/720.0)*(7.*x2-1.)*(1.-x2);
97 case -1 :
return 0.125*(7.*x*x2-3.*x)*sqrt(1.-x2);
98 case 0 :
return 0.125*(35.*x2*x2 - 30.*x2 + 3.);
99 case 1 :
return -2.5*(7.*x*x2-3.*x)*sqrt(1.-x2);
100 case 2 :
return 7.5*(7.*x2-1.)*(1.-x2);
101 case 3 :
return -105.*x*(1.-x2)*sqrt(1.-x2);
102 case 4 :
return 105.*(1. - 2.*x2 + x2*x2);
111 return complementary_value * (m%2==0 ? 1.0 : -1.0) * g4pow->
factorial(l+m)/g4pow->
factorial(l-m);
121 if (m == 0) current = 1.0;
122 else if (m == 1) current = -sqrt((1.0 - (x2)));
124 current = (m%2==0 ? 1.0 : -1.0) *
130 for(
G4int i=m+1; i<=l; i++)