/* nome.c CCMATH mathematics library source code.
*
* Copyright (C) 2000 Daniel A. Atkinson All rights reserved.
* This code may be redistributed under the terms of the GNU library
* public license (LGPL). ( See the lgpl.license file for details.)
* ------------------------------------------------------------------------
*/
#include <math.h>
double nome(double k,double *pk,double *pkp)
{ double a,b,s,r,pi2=1.57079632679490;
a=s=1.; b=sqrt(1.-k*k);
while(a-b>4.e-15 || s-k>4.e-15){
r=a+b; b=sqrt(a*b); a=r/2.;
r=s+k; k=sqrt(s*k); s=r/2.;
}
*pk=pi2/a; a*=(*pkp=pi2/s);
return exp(-2.*a);
}
syntax highlighted by Code2HTML, v. 0.9.1