48 const G4int maxNumber = 12 ;
51 temp1=0.0, temp2=0.0, temp3=0.0, temp=0.0, cofi=0.0 ;
61 newton0 = (1.0 +
alpha)*(3.0 + 0.92*alpha)
66 newton0 += (15.0 + 6.25*
alpha)/(1.0 + 0.9*alpha + 2.5*
fNumber) ;
71 newton0 += ((1.0+2.55*cofi)/(1.9*cofi)
72 + 1.26*cofi*alpha/(1.0+3.5*cofi))
73 * (newton0 -
fAbscissa[i-3])/(1.0 + 0.3*alpha) ;
75 for(k=1;k<=maxNumber;k++)
83 temp1 = ((2*j - 1 + alpha - newton0)*temp2
84 - (j - 1 + alpha)*temp3)/j ;
88 newton0 = newton1 - temp1/temp ;
89 if(std::fabs(newton0 - newton1) <=
tolerance)
98 "Too many iterations in Gauss-Laguerre constructor") ;
G4GaussLaguerreQ(function pFunction, G4double alpha, G4int nLaguerre)
static const G4double tolerance
G4double GammaLogarithm(G4double xx)
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *comments)
static const G4double alpha
G4double Integral() const