================================================================
| 84 | }} |
| 85 | //================================================================ |
| 86 | void getAlphaBetaD(double* aOa, double* bOa, double* alphas, double* betas, int Ns, int lMax, double oOeta, double oOeta3O2) { |
| 87 | |
| 88 | int NsNs = Ns*Ns; |
| 89 | double oneO1alpha; |
| 90 | double oneO1alpha2; |
| 91 | double oneO1alphaSqrt; |
| 92 | double oneO1alphaSqrtX; |
| 93 | |
| 94 | for (int myL = 0; myL < lMax + 1 ;myL++) { |
| 95 | for (int k = 0; k < Ns; k++) { |
| 96 | oneO1alpha = 1.0/(1.0 + oOeta*alphas[myL*Ns + k]); |
| 97 | oneO1alphaSqrt = sqrt(oneO1alpha); |
| 98 | aOa[myL*Ns + k] = -alphas[myL*Ns + k]*oneO1alpha; |
| 99 | oneO1alpha2 = pow(oneO1alpha, myL+1); |
| 100 | oneO1alphaSqrtX = oneO1alphaSqrt*oneO1alpha2; |
| 101 | for (int n = 0; n < Ns; n++) { |
| 102 | bOa[myL*NsNs + n*Ns + k] = oOeta3O2*betas[myL*NsNs + n*Ns + k]*oneO1alphaSqrtX; |
| 103 | } |
| 104 | } |
| 105 | } |
| 106 | } |
| 107 | //================================================================ |
| 108 | void getCfactorsD(double* preCoef, double* prCofDX, double* prCofDY, double* prCofDZ, int Asize, double* x,double* x2, double* x4, double* x6, double* x8, double* x10,double* x12,double* x14,double* x16,double* x18, double* y,double* y2, double* y4, double* y6, double* y8, double* y10,double* y12,double* y14,double* y16,double* y18, double* z, double* z2, double* z4, double* z6, double* z8, double* z10,double* z12,double* z14,double* z16,double* z18, double* r2, double* r4, double* r6, double* r8,double* r10,double* r12,double* r14,double* r16,double* r18, double* r20, double* x20, double* y20, double* z20, int totalAN, int lMax, bool return_derivatives){ |
| 109 |