// order n function SHEval(fX, fY, fZ, order) { return SHEvalFct[order - 3](fX, fY, fZ); } SHEvalFct = [ SHEval3, SHEval4, SHEval5, SHEval6, SHEval7, SHEval8, SHEval9, SHEval10 ]; // order 3 function SHEval3(fX, fY, fZ) { var fC0,fC1,fS0,fS1,fTmpA,fTmpB,fTmpC; var fZ2 = fZ*fZ; var pSH = new Array(9); pSH[0] = 0.2820947917738781; pSH[2] = 0.4886025119029199*fZ; pSH[6] = 0.9461746957575601*fZ2 + -0.3153915652525201; fC0 = fX; fS0 = fY; fTmpA = -0.48860251190292; pSH[3] = fTmpA*fC0; pSH[1] = fTmpA*fS0; fTmpB = -1.092548430592079*fZ; pSH[7] = fTmpB*fC0; pSH[5] = fTmpB*fS0; fC1 = fX*fC0 - fY*fS0; fS1 = fX*fS0 + fY*fC0; fTmpC = 0.5462742152960395; pSH[8] = fTmpC*fC1; pSH[4] = fTmpC*fS1; return pSH; } // order 4 function SHEval4(fX, fY, fZ) { var fC0,fC1,fS0,fS1,fTmpA,fTmpB,fTmpC; var fZ2 = fZ*fZ; var pSH = new Array(16); pSH[0] = 0.2820947917738781; pSH[2] = 0.4886025119029199*fZ; pSH[6] = 0.9461746957575601*fZ2 + -0.3153915652525201; pSH[12] = fZ*(1.865881662950577*fZ2 + -1.119528997770346); fC0 = fX; fS0 = fY; fTmpA = -0.48860251190292; pSH[3] = fTmpA*fC0; pSH[1] = fTmpA*fS0; fTmpB = -1.092548430592079*fZ; pSH[7] = fTmpB*fC0; pSH[5] = fTmpB*fS0; fTmpC = -2.285228997322329*fZ2 + 0.4570457994644658; pSH[13] = fTmpC*fC0; pSH[11] = fTmpC*fS0; fC1 = fX*fC0 - fY*fS0; fS1 = fX*fS0 + fY*fC0; fTmpA = 0.5462742152960395; pSH[8] = fTmpA*fC1; pSH[4] = fTmpA*fS1; fTmpB = 1.445305721320277*fZ; pSH[14] = fTmpB*fC1; pSH[10] = fTmpB*fS1; fC0 = fX*fC1 - fY*fS1; fS0 = fX*fS1 + fY*fC1; fTmpC = -0.5900435899266435; pSH[15] = fTmpC*fC0; pSH[9] = fTmpC*fS0; return pSH; } // order 5 function SHEval5(fX, fY, fZ) { var fC0,fC1,fS0,fS1,fTmpA,fTmpB,fTmpC; var fZ2 = fZ*fZ; var pSH = new Array(25); pSH[0] = 0.2820947917738781; pSH[2] = 0.4886025119029199*fZ; pSH[6] = 0.9461746957575601*fZ2 + -0.3153915652525201; pSH[12] = fZ*(1.865881662950577*fZ2 + -1.119528997770346); pSH[20] = 1.984313483298443*fZ*pSH[12] + -1.006230589874905*pSH[6]; fC0 = fX; fS0 = fY; fTmpA = -0.48860251190292; pSH[3] = fTmpA*fC0; pSH[1] = fTmpA*fS0; fTmpB = -1.092548430592079*fZ; pSH[7] = fTmpB*fC0; pSH[5] = fTmpB*fS0; fTmpC = -2.285228997322329*fZ2 + 0.4570457994644658; pSH[13] = fTmpC*fC0; pSH[11] = fTmpC*fS0; fTmpA = fZ*(-4.683325804901025*fZ2 + 2.007139630671868); pSH[21] = fTmpA*fC0; pSH[19] = fTmpA*fS0; fC1 = fX*fC0 - fY*fS0; fS1 = fX*fS0 + fY*fC0; fTmpA = 0.5462742152960395; pSH[8] = fTmpA*fC1; pSH[4] = fTmpA*fS1; fTmpB = 1.445305721320277*fZ; pSH[14] = fTmpB*fC1; pSH[10] = fTmpB*fS1; fTmpC = 3.31161143515146*fZ2 + -0.47308734787878; pSH[22] = fTmpC*fC1; pSH[18] = fTmpC*fS1; fC0 = fX*fC1 - fY*fS1; fS0 = fX*fS1 + fY*fC1; fTmpA = -0.5900435899266435; pSH[15] = fTmpA*fC0; pSH[9] = fTmpA*fS0; fTmpB = -1.770130769779931*fZ; pSH[23] = fTmpB*fC0; pSH[17] = fTmpB*fS0; fC1 = fX*fC0 - fY*fS0; fS1 = fX*fS0 + fY*fC0; fTmpC = 0.6258357354491763; pSH[24] = fTmpC*fC1; pSH[16] = fTmpC*fS1; return pSH; } // order 6 function SHEval6(fX, fY, fZ) { var fC0,fC1,fS0,fS1,fTmpA,fTmpB,fTmpC; var fZ2 = fZ*fZ; var pSH = new Array(36); pSH[0] = 0.2820947917738781; pSH[2] = 0.4886025119029199*fZ; pSH[6] = 0.9461746957575601*fZ2 + -0.3153915652525201; pSH[12] = fZ*(1.865881662950577*fZ2 + -1.119528997770346); pSH[20] = 1.984313483298443*fZ*pSH[12] + -1.006230589874905*pSH[6]; pSH[30] = 1.98997487421324*fZ*pSH[20] + -1.002853072844814*pSH[12]; fC0 = fX; fS0 = fY; fTmpA = -0.48860251190292; pSH[3] = fTmpA*fC0; pSH[1] = fTmpA*fS0; fTmpB = -1.092548430592079*fZ; pSH[7] = fTmpB*fC0; pSH[5] = fTmpB*fS0; fTmpC = -2.285228997322329*fZ2 + 0.4570457994644658; pSH[13] = fTmpC*fC0; pSH[11] = fTmpC*fS0; fTmpA = fZ*(-4.683325804901025*fZ2 + 2.007139630671868); pSH[21] = fTmpA*fC0; pSH[19] = fTmpA*fS0; fTmpB = 2.03100960115899*fZ*fTmpA + -0.991031208965115*fTmpC; pSH[31] = fTmpB*fC0; pSH[29] = fTmpB*fS0; fC1 = fX*fC0 - fY*fS0; fS1 = fX*fS0 + fY*fC0; fTmpA = 0.5462742152960395; pSH[8] = fTmpA*fC1; pSH[4] = fTmpA*fS1; fTmpB = 1.445305721320277*fZ; pSH[14] = fTmpB*fC1; pSH[10] = fTmpB*fS1; fTmpC = 3.31161143515146*fZ2 + -0.47308734787878; pSH[22] = fTmpC*fC1; pSH[18] = fTmpC*fS1; fTmpA = fZ*(7.190305177459987*fZ2 + -2.396768392486662); pSH[32] = fTmpA*fC1; pSH[28] = fTmpA*fS1; fC0 = fX*fC1 - fY*fS1; fS0 = fX*fS1 + fY*fC1; fTmpA = -0.5900435899266435; pSH[15] = fTmpA*fC0; pSH[9] = fTmpA*fS0; fTmpB = -1.770130769779931*fZ; pSH[23] = fTmpB*fC0; pSH[17] = fTmpB*fS0; fTmpC = -4.403144694917254*fZ2 + 0.4892382994352505; pSH[33] = fTmpC*fC0; pSH[27] = fTmpC*fS0; fC1 = fX*fC0 - fY*fS0; fS1 = fX*fS0 + fY*fC0; fTmpA = 0.6258357354491763; pSH[24] = fTmpA*fC1; pSH[16] = fTmpA*fS1; fTmpB = 2.075662314881041*fZ; pSH[34] = fTmpB*fC1; pSH[26] = fTmpB*fS1; fC0 = fX*fC1 - fY*fS1; fS0 = fX*fS1 + fY*fC1; fTmpC = -0.6563820568401703; pSH[35] = fTmpC*fC0; pSH[25] = fTmpC*fS0; return pSH; } // order 7 function SHEval7(fX, fY, fZ) { var fC0,fC1,fS0,fS1,fTmpA,fTmpB,fTmpC; var fZ2 = fZ*fZ; var pSH = new Array(49); pSH[0] = 0.2820947917738781; pSH[2] = 0.4886025119029199*fZ; pSH[6] = 0.9461746957575601*fZ2 + -0.3153915652525201; pSH[12] = fZ*(1.865881662950577*fZ2 + -1.119528997770346); pSH[20] = 1.984313483298443*fZ*pSH[12] + -1.006230589874905*pSH[6]; pSH[30] = 1.98997487421324*fZ*pSH[20] + -1.002853072844814*pSH[12]; pSH[42] = 1.993043457183567*fZ*pSH[30] + -1.001542020962219*pSH[20]; fC0 = fX; fS0 = fY; fTmpA = -0.48860251190292; pSH[3] = fTmpA*fC0; pSH[1] = fTmpA*fS0; fTmpB = -1.092548430592079*fZ; pSH[7] = fTmpB*fC0; pSH[5] = fTmpB*fS0; fTmpC = -2.285228997322329*fZ2 + 0.4570457994644658; pSH[13] = fTmpC*fC0; pSH[11] = fTmpC*fS0; fTmpA = fZ*(-4.683325804901025*fZ2 + 2.007139630671868); pSH[21] = fTmpA*fC0; pSH[19] = fTmpA*fS0; fTmpB = 2.03100960115899*fZ*fTmpA + -0.991031208965115*fTmpC; pSH[31] = fTmpB*fC0; pSH[29] = fTmpB*fS0; fTmpC = 2.021314989237028*fZ*fTmpB + -0.9952267030562385*fTmpA; pSH[43] = fTmpC*fC0; pSH[41] = fTmpC*fS0; fC1 = fX*fC0 - fY*fS0; fS1 = fX*fS0 + fY*fC0; fTmpA = 0.5462742152960395; pSH[8] = fTmpA*fC1; pSH[4] = fTmpA*fS1; fTmpB = 1.445305721320277*fZ; pSH[14] = fTmpB*fC1; pSH[10] = fTmpB*fS1; fTmpC = 3.31161143515146*fZ2 + -0.47308734787878; pSH[22] = fTmpC*fC1; pSH[18] = fTmpC*fS1; fTmpA = fZ*(7.190305177459987*fZ2 + -2.396768392486662); pSH[32] = fTmpA*fC1; pSH[28] = fTmpA*fS1; fTmpB = 2.11394181566097*fZ*fTmpA + -0.9736101204623268*fTmpC; pSH[44] = fTmpB*fC1; pSH[40] = fTmpB*fS1; fC0 = fX*fC1 - fY*fS1; fS0 = fX*fS1 + fY*fC1; fTmpA = -0.5900435899266435; pSH[15] = fTmpA*fC0; pSH[9] = fTmpA*fS0; fTmpB = -1.770130769779931*fZ; pSH[23] = fTmpB*fC0; pSH[17] = fTmpB*fS0; fTmpC = -4.403144694917254*fZ2 + 0.4892382994352505; pSH[33] = fTmpC*fC0; pSH[27] = fTmpC*fS0; fTmpA = fZ*(-10.13325785466416*fZ2 + 2.763615778544771); pSH[45] = fTmpA*fC0; pSH[39] = fTmpA*fS0; fC1 = fX*fC0 - fY*fS0; fS1 = fX*fS0 + fY*fC0; fTmpA = 0.6258357354491763; pSH[24] = fTmpA*fC1; pSH[16] = fTmpA*fS1; fTmpB = 2.075662314881041*fZ; pSH[34] = fTmpB*fC1; pSH[26] = fTmpB*fS1; fTmpC = 5.550213908015966*fZ2 + -0.5045649007287241; pSH[46] = fTmpC*fC1; pSH[38] = fTmpC*fS1; fC0 = fX*fC1 - fY*fS1; fS0 = fX*fS1 + fY*fC1; fTmpA = -0.6563820568401703; pSH[35] = fTmpA*fC0; pSH[25] = fTmpA*fS0; fTmpB = -2.366619162231753*fZ; pSH[47] = fTmpB*fC0; pSH[37] = fTmpB*fS0; fC1 = fX*fC0 - fY*fS0; fS1 = fX*fS0 + fY*fC0; fTmpC = 0.6831841051919144; pSH[48] = fTmpC*fC1; pSH[36] = fTmpC*fS1; return pSH; } // order 8 function SHEval8(fX, fY, fZ) { var fC0,fC1,fS0,fS1,fTmpA,fTmpB,fTmpC; var fZ2 = fZ*fZ; var pSH = new Array(64); pSH[0] = 0.2820947917738781; pSH[2] = 0.4886025119029199*fZ; pSH[6] = 0.9461746957575601*fZ2 + -0.3153915652525201; pSH[12] = fZ*(1.865881662950577*fZ2 + -1.119528997770346); pSH[20] = 1.984313483298443*fZ*pSH[12] + -1.006230589874905*pSH[6]; pSH[30] = 1.98997487421324*fZ*pSH[20] + -1.002853072844814*pSH[12]; pSH[42] = 1.993043457183567*fZ*pSH[30] + -1.001542020962219*pSH[20]; pSH[56] = 1.994891434824135*fZ*pSH[42] + -1.000927213921958*pSH[30]; fC0 = fX; fS0 = fY; fTmpA = -0.48860251190292; pSH[3] = fTmpA*fC0; pSH[1] = fTmpA*fS0; fTmpB = -1.092548430592079*fZ; pSH[7] = fTmpB*fC0; pSH[5] = fTmpB*fS0; fTmpC = -2.285228997322329*fZ2 + 0.4570457994644658; pSH[13] = fTmpC*fC0; pSH[11] = fTmpC*fS0; fTmpA = fZ*(-4.683325804901025*fZ2 + 2.007139630671868); pSH[21] = fTmpA*fC0; pSH[19] = fTmpA*fS0; fTmpB = 2.03100960115899*fZ*fTmpA + -0.991031208965115*fTmpC; pSH[31] = fTmpB*fC0; pSH[29] = fTmpB*fS0; fTmpC = 2.021314989237028*fZ*fTmpB + -0.9952267030562385*fTmpA; pSH[43] = fTmpC*fC0; pSH[41] = fTmpC*fS0; fTmpA = 2.015564437074638*fZ*fTmpC + -0.9971550440218319*fTmpB; pSH[57] = fTmpA*fC0; pSH[55] = fTmpA*fS0; fC1 = fX*fC0 - fY*fS0; fS1 = fX*fS0 + fY*fC0; fTmpA = 0.5462742152960395; pSH[8] = fTmpA*fC1; pSH[4] = fTmpA*fS1; fTmpB = 1.445305721320277*fZ; pSH[14] = fTmpB*fC1; pSH[10] = fTmpB*fS1; fTmpC = 3.31161143515146*fZ2 + -0.47308734787878; pSH[22] = fTmpC*fC1; pSH[18] = fTmpC*fS1; fTmpA = fZ*(7.190305177459987*fZ2 + -2.396768392486662); pSH[32] = fTmpA*fC1; pSH[28] = fTmpA*fS1; fTmpB = 2.11394181566097*fZ*fTmpA + -0.9736101204623268*fTmpC; pSH[44] = fTmpB*fC1; pSH[40] = fTmpB*fS1; fTmpC = 2.081665999466133*fZ*fTmpB + -0.9847319278346618*fTmpA; pSH[58] = fTmpC*fC1; pSH[54] = fTmpC*fS1; fC0 = fX*fC1 - fY*fS1; fS0 = fX*fS1 + fY*fC1; fTmpA = -0.5900435899266435; pSH[15] = fTmpA*fC0; pSH[9] = fTmpA*fS0; fTmpB = -1.770130769779931*fZ; pSH[23] = fTmpB*fC0; pSH[17] = fTmpB*fS0; fTmpC = -4.403144694917254*fZ2 + 0.4892382994352505; pSH[33] = fTmpC*fC0; pSH[27] = fTmpC*fS0; fTmpA = fZ*(-10.13325785466416*fZ2 + 2.763615778544771); pSH[45] = fTmpA*fC0; pSH[39] = fTmpA*fS0; fTmpB = 2.207940216581962*fZ*fTmpA + -0.959403223600247*fTmpC; pSH[59] = fTmpB*fC0; pSH[53] = fTmpB*fS0; fC1 = fX*fC0 - fY*fS0; fS1 = fX*fS0 + fY*fC0; fTmpA = 0.6258357354491763; pSH[24] = fTmpA*fC1; pSH[16] = fTmpA*fS1; fTmpB = 2.075662314881041*fZ; pSH[34] = fTmpB*fC1; pSH[26] = fTmpB*fS1; fTmpC = 5.550213908015966*fZ2 + -0.5045649007287241; pSH[46] = fTmpC*fC1; pSH[38] = fTmpC*fS1; fTmpA = fZ*(13.49180504672677*fZ2 + -3.113493472321562); pSH[60] = fTmpA*fC1; pSH[52] = fTmpA*fS1; fC0 = fX*fC1 - fY*fS1; fS0 = fX*fS1 + fY*fC1; fTmpA = -0.6563820568401703; pSH[35] = fTmpA*fC0; pSH[25] = fTmpA*fS0; fTmpB = -2.366619162231753*fZ; pSH[47] = fTmpB*fC0; pSH[37] = fTmpB*fS0; fTmpC = -6.745902523363385*fZ2 + 0.5189155787202604; pSH[61] = fTmpC*fC0; pSH[51] = fTmpC*fS0; fC1 = fX*fC0 - fY*fS0; fS1 = fX*fS0 + fY*fC0; fTmpA = 0.6831841051919144; pSH[48] = fTmpA*fC1; pSH[36] = fTmpA*fS1; fTmpB = 2.645960661801901*fZ; pSH[62] = fTmpB*fC1; pSH[50] = fTmpB*fS1; fC0 = fX*fC1 - fY*fS1; fS0 = fX*fS1 + fY*fC1; fTmpC = -0.7071627325245963; pSH[63] = fTmpC*fC0; pSH[49] = fTmpC*fS0; return pSH; } // order 9 function SHEval9(fX, fY, fZ) { var fC0,fC1,fS0,fS1,fTmpA,fTmpB,fTmpC; var fZ2 = fZ*fZ; var pSH = new Array(81); pSH[0] = 0.2820947917738781; pSH[2] = 0.4886025119029199*fZ; pSH[6] = 0.9461746957575601*fZ2 + -0.3153915652525201; pSH[12] = fZ*(1.865881662950577*fZ2 + -1.119528997770346); pSH[20] = 1.984313483298443*fZ*pSH[12] + -1.006230589874905*pSH[6]; pSH[30] = 1.98997487421324*fZ*pSH[20] + -1.002853072844814*pSH[12]; pSH[42] = 1.993043457183567*fZ*pSH[30] + -1.001542020962219*pSH[20]; pSH[56] = 1.994891434824135*fZ*pSH[42] + -1.000927213921958*pSH[30]; pSH[72] = 1.996089927833914*fZ*pSH[56] + -1.000600781069515*pSH[42]; fC0 = fX; fS0 = fY; fTmpA = -0.48860251190292; pSH[3] = fTmpA*fC0; pSH[1] = fTmpA*fS0; fTmpB = -1.092548430592079*fZ; pSH[7] = fTmpB*fC0; pSH[5] = fTmpB*fS0; fTmpC = -2.285228997322329*fZ2 + 0.4570457994644658; pSH[13] = fTmpC*fC0; pSH[11] = fTmpC*fS0; fTmpA = fZ*(-4.683325804901025*fZ2 + 2.007139630671868); pSH[21] = fTmpA*fC0; pSH[19] = fTmpA*fS0; fTmpB = 2.03100960115899*fZ*fTmpA + -0.991031208965115*fTmpC; pSH[31] = fTmpB*fC0; pSH[29] = fTmpB*fS0; fTmpC = 2.021314989237028*fZ*fTmpB + -0.9952267030562385*fTmpA; pSH[43] = fTmpC*fC0; pSH[41] = fTmpC*fS0; fTmpA = 2.015564437074638*fZ*fTmpC + -0.9971550440218319*fTmpB; pSH[57] = fTmpA*fC0; pSH[55] = fTmpA*fS0; fTmpB = 2.011869540407391*fZ*fTmpA + -0.9981668178901745*fTmpC; pSH[73] = fTmpB*fC0; pSH[71] = fTmpB*fS0; fC1 = fX*fC0 - fY*fS0; fS1 = fX*fS0 + fY*fC0; fTmpA = 0.5462742152960395; pSH[8] = fTmpA*fC1; pSH[4] = fTmpA*fS1; fTmpB = 1.445305721320277*fZ; pSH[14] = fTmpB*fC1; pSH[10] = fTmpB*fS1; fTmpC = 3.31161143515146*fZ2 + -0.47308734787878; pSH[22] = fTmpC*fC1; pSH[18] = fTmpC*fS1; fTmpA = fZ*(7.190305177459987*fZ2 + -2.396768392486662); pSH[32] = fTmpA*fC1; pSH[28] = fTmpA*fS1; fTmpB = 2.11394181566097*fZ*fTmpA + -0.9736101204623268*fTmpC; pSH[44] = fTmpB*fC1; pSH[40] = fTmpB*fS1; fTmpC = 2.081665999466133*fZ*fTmpB + -0.9847319278346618*fTmpA; pSH[58] = fTmpC*fC1; pSH[54] = fTmpC*fS1; fTmpA = 2.06155281280883*fZ*fTmpC + -0.9903379376602873*fTmpB; pSH[74] = fTmpA*fC1; pSH[70] = fTmpA*fS1; fC0 = fX*fC1 - fY*fS1; fS0 = fX*fS1 + fY*fC1; fTmpA = -0.5900435899266435; pSH[15] = fTmpA*fC0; pSH[9] = fTmpA*fS0; fTmpB = -1.770130769779931*fZ; pSH[23] = fTmpB*fC0; pSH[17] = fTmpB*fS0; fTmpC = -4.403144694917254*fZ2 + 0.4892382994352505; pSH[33] = fTmpC*fC0; pSH[27] = fTmpC*fS0; fTmpA = fZ*(-10.13325785466416*fZ2 + 2.763615778544771); pSH[45] = fTmpA*fC0; pSH[39] = fTmpA*fS0; fTmpB = 2.207940216581962*fZ*fTmpA + -0.959403223600247*fTmpC; pSH[59] = fTmpB*fC0; pSH[53] = fTmpB*fS0; fTmpC = 2.15322168769582*fZ*fTmpB + -0.9752173865600178*fTmpA; pSH[75] = fTmpC*fC0; pSH[69] = fTmpC*fS0; fC1 = fX*fC0 - fY*fS0; fS1 = fX*fS0 + fY*fC0; fTmpA = 0.6258357354491763; pSH[24] = fTmpA*fC1; pSH[16] = fTmpA*fS1; fTmpB = 2.075662314881041*fZ; pSH[34] = fTmpB*fC1; pSH[26] = fTmpB*fS1; fTmpC = 5.550213908015966*fZ2 + -0.5045649007287241; pSH[46] = fTmpC*fC1; pSH[38] = fTmpC*fS1; fTmpA = fZ*(13.49180504672677*fZ2 + -3.113493472321562); pSH[60] = fTmpA*fC1; pSH[52] = fTmpA*fS1; fTmpB = 2.304886114323221*fZ*fTmpA + -0.9481763873554654*fTmpC; pSH[76] = fTmpB*fC1; pSH[68] = fTmpB*fS1; fC0 = fX*fC1 - fY*fS1; fS0 = fX*fS1 + fY*fC1; fTmpA = -0.6563820568401703; pSH[35] = fTmpA*fC0; pSH[25] = fTmpA*fS0; fTmpB = -2.366619162231753*fZ; pSH[47] = fTmpB*fC0; pSH[37] = fTmpB*fS0; fTmpC = -6.745902523363385*fZ2 + 0.5189155787202604; pSH[61] = fTmpC*fC0; pSH[51] = fTmpC*fS0; fTmpA = fZ*(-17.24955311049054*fZ2 + 3.449910622098108); pSH[77] = fTmpA*fC0; pSH[67] = fTmpA*fS0; fC1 = fX*fC0 - fY*fS0; fS1 = fX*fS0 + fY*fC0; fTmpA = 0.6831841051919144; pSH[48] = fTmpA*fC1; pSH[36] = fTmpA*fS1; fTmpB = 2.645960661801901*fZ; pSH[62] = fTmpB*fC1; pSH[50] = fTmpB*fS1; fTmpC = 7.984991490893139*fZ2 + -0.5323327660595426; pSH[78] = fTmpC*fC1; pSH[66] = fTmpC*fS1; fC0 = fX*fC1 - fY*fS1; fS0 = fX*fS1 + fY*fC1; fTmpA = -0.7071627325245963; pSH[63] = fTmpA*fC0; pSH[49] = fTmpA*fS0; fTmpB = -2.91570664069932*fZ; pSH[79] = fTmpB*fC0; pSH[65] = fTmpB*fS0; fC1 = fX*fC0 - fY*fS0; fS1 = fX*fS0 + fY*fC0; fTmpC = 0.72892666017483; pSH[80] = fTmpC*fC1; pSH[64] = fTmpC*fS1; return pSH; } // order 10 function SHEval10(fX, fY, fZ) { var fC0,fC1,fS0,fS1,fTmpA,fTmpB,fTmpC; var fZ2 = fZ*fZ; var pSH = new Array(100); pSH[0] = 0.2820947917738781; pSH[2] = 0.4886025119029199*fZ; pSH[6] = 0.9461746957575601*fZ2 + -0.3153915652525201; pSH[12] = fZ*(1.865881662950577*fZ2 + -1.119528997770346); pSH[20] = 1.984313483298443*fZ*pSH[12] + -1.006230589874905*pSH[6]; pSH[30] = 1.98997487421324*fZ*pSH[20] + -1.002853072844814*pSH[12]; pSH[42] = 1.993043457183567*fZ*pSH[30] + -1.001542020962219*pSH[20]; pSH[56] = 1.994891434824135*fZ*pSH[42] + -1.000927213921958*pSH[30]; pSH[72] = 1.996089927833914*fZ*pSH[56] + -1.000600781069515*pSH[42]; pSH[90] = 1.996911195067937*fZ*pSH[72] + -1.000411437993134*pSH[56]; fC0 = fX; fS0 = fY; fTmpA = -0.48860251190292; pSH[3] = fTmpA*fC0; pSH[1] = fTmpA*fS0; fTmpB = -1.092548430592079*fZ; pSH[7] = fTmpB*fC0; pSH[5] = fTmpB*fS0; fTmpC = -2.285228997322329*fZ2 + 0.4570457994644658; pSH[13] = fTmpC*fC0; pSH[11] = fTmpC*fS0; fTmpA = fZ*(-4.683325804901025*fZ2 + 2.007139630671868); pSH[21] = fTmpA*fC0; pSH[19] = fTmpA*fS0; fTmpB = 2.03100960115899*fZ*fTmpA + -0.991031208965115*fTmpC; pSH[31] = fTmpB*fC0; pSH[29] = fTmpB*fS0; fTmpC = 2.021314989237028*fZ*fTmpB + -0.9952267030562385*fTmpA; pSH[43] = fTmpC*fC0; pSH[41] = fTmpC*fS0; fTmpA = 2.015564437074638*fZ*fTmpC + -0.9971550440218319*fTmpB; pSH[57] = fTmpA*fC0; pSH[55] = fTmpA*fS0; fTmpB = 2.011869540407391*fZ*fTmpA + -0.9981668178901745*fTmpC; pSH[73] = fTmpB*fC0; pSH[71] = fTmpB*fS0; fTmpC = 2.009353129741012*fZ*fTmpB + -0.9987492177719088*fTmpA; pSH[91] = fTmpC*fC0; pSH[89] = fTmpC*fS0; fC1 = fX*fC0 - fY*fS0; fS1 = fX*fS0 + fY*fC0; fTmpA = 0.5462742152960395; pSH[8] = fTmpA*fC1; pSH[4] = fTmpA*fS1; fTmpB = 1.445305721320277*fZ; pSH[14] = fTmpB*fC1; pSH[10] = fTmpB*fS1; fTmpC = 3.31161143515146*fZ2 + -0.47308734787878; pSH[22] = fTmpC*fC1; pSH[18] = fTmpC*fS1; fTmpA = fZ*(7.190305177459987*fZ2 + -2.396768392486662); pSH[32] = fTmpA*fC1; pSH[28] = fTmpA*fS1; fTmpB = 2.11394181566097*fZ*fTmpA + -0.9736101204623268*fTmpC; pSH[44] = fTmpB*fC1; pSH[40] = fTmpB*fS1; fTmpC = 2.081665999466133*fZ*fTmpB + -0.9847319278346618*fTmpA; pSH[58] = fTmpC*fC1; pSH[54] = fTmpC*fS1; fTmpA = 2.06155281280883*fZ*fTmpC + -0.9903379376602873*fTmpB; pSH[74] = fTmpA*fC1; pSH[70] = fTmpA*fS1; fTmpB = 2.048122358357819*fZ*fTmpA + -0.9934852726704042*fTmpC; pSH[92] = fTmpB*fC1; pSH[88] = fTmpB*fS1; fC0 = fX*fC1 - fY*fS1; fS0 = fX*fS1 + fY*fC1; fTmpA = -0.5900435899266435; pSH[15] = fTmpA*fC0; pSH[9] = fTmpA*fS0; fTmpB = -1.770130769779931*fZ; pSH[23] = fTmpB*fC0; pSH[17] = fTmpB*fS0; fTmpC = -4.403144694917254*fZ2 + 0.4892382994352505; pSH[33] = fTmpC*fC0; pSH[27] = fTmpC*fS0; fTmpA = fZ*(-10.13325785466416*fZ2 + 2.763615778544771); pSH[45] = fTmpA*fC0; pSH[39] = fTmpA*fS0; fTmpB = 2.207940216581962*fZ*fTmpA + -0.959403223600247*fTmpC; pSH[59] = fTmpB*fC0; pSH[53] = fTmpB*fS0; fTmpC = 2.15322168769582*fZ*fTmpB + -0.9752173865600178*fTmpA; pSH[75] = fTmpC*fC0; pSH[69] = fTmpC*fS0; fTmpA = 2.118044171189805*fZ*fTmpC + -0.9836628449792094*fTmpB; pSH[93] = fTmpA*fC0; pSH[87] = fTmpA*fS0; fC1 = fX*fC0 - fY*fS0; fS1 = fX*fS0 + fY*fC0; fTmpA = 0.6258357354491763; pSH[24] = fTmpA*fC1; pSH[16] = fTmpA*fS1; fTmpB = 2.075662314881041*fZ; pSH[34] = fTmpB*fC1; pSH[26] = fTmpB*fS1; fTmpC = 5.550213908015966*fZ2 + -0.5045649007287241; pSH[46] = fTmpC*fC1; pSH[38] = fTmpC*fS1; fTmpA = fZ*(13.49180504672677*fZ2 + -3.113493472321562); pSH[60] = fTmpA*fC1; pSH[52] = fTmpA*fS1; fTmpB = 2.304886114323221*fZ*fTmpA + -0.9481763873554654*fTmpC; pSH[76] = fTmpB*fC1; pSH[68] = fTmpB*fS1; fTmpC = 2.229177150706235*fZ*fTmpB + -0.9671528397231821*fTmpA; pSH[94] = fTmpC*fC1; pSH[86] = fTmpC*fS1; fC0 = fX*fC1 - fY*fS1; fS0 = fX*fS1 + fY*fC1; fTmpA = -0.6563820568401703; pSH[35] = fTmpA*fC0; pSH[25] = fTmpA*fS0; fTmpB = -2.366619162231753*fZ; pSH[47] = fTmpB*fC0; pSH[37] = fTmpB*fS0; fTmpC = -6.745902523363385*fZ2 + 0.5189155787202604; pSH[61] = fTmpC*fC0; pSH[51] = fTmpC*fS0; fTmpA = fZ*(-17.24955311049054*fZ2 + 3.449910622098108); pSH[77] = fTmpA*fC0; pSH[67] = fTmpA*fS0; fTmpB = 2.401636346922062*fZ*fTmpA + -0.9392246042043708*fTmpC; pSH[95] = fTmpB*fC0; pSH[85] = fTmpB*fS0; fC1 = fX*fC0 - fY*fS0; fS1 = fX*fS0 + fY*fC0; fTmpA = 0.6831841051919144; pSH[48] = fTmpA*fC1; pSH[36] = fTmpA*fS1; fTmpB = 2.645960661801901*fZ; pSH[62] = fTmpB*fC1; pSH[50] = fTmpB*fS1; fTmpC = 7.984991490893139*fZ2 + -0.5323327660595426; pSH[78] = fTmpC*fC1; pSH[66] = fTmpC*fS1; fTmpA = fZ*(21.39289019090864*fZ2 + -3.775215916042701); pSH[96] = fTmpA*fC1; pSH[84] = fTmpA*fS1; fC0 = fX*fC1 - fY*fS1; fS0 = fX*fS1 + fY*fC1; fTmpA = -0.7071627325245963; pSH[63] = fTmpA*fC0; pSH[49] = fTmpA*fS0; fTmpB = -2.91570664069932*fZ; pSH[79] = fTmpB*fC0; pSH[65] = fTmpB*fS0; fTmpC = -9.263393182848905*fZ2 + 0.5449054813440533; pSH[97] = fTmpC*fC0; pSH[83] = fTmpC*fS0; fC1 = fX*fC0 - fY*fS0; fS1 = fX*fS0 + fY*fC0; fTmpA = 0.72892666017483; pSH[80] = fTmpA*fC1; pSH[64] = fTmpA*fS1; fTmpB = 3.177317648954698*fZ; pSH[98] = fTmpB*fC1; pSH[82] = fTmpB*fS1; fC0 = fX*fC1 - fY*fS1; fS0 = fX*fS1 + fY*fC1; fTmpC = -0.7489009518531884; pSH[99] = fTmpC*fC0; pSH[81] = fTmpC*fS0; return pSH; }