27 #pragma package(smart_init)
57 for (
int i=0;i<nb_point;i++)
68 double deltaen=0.25*
eni;
74 for (
int i=0;i<10;i++)
79 BOITE_3D boite(x-dist,y-dist,z-dist,x+dist,y+dist,z+dist);
96 double f(
double x,
long nb,
double *xfonc,
double *fonc,
double eng,
double eni,
double lambda,
double nor,
double *fonc2)
100 double y=carte.
get_y();
102 for (
int i=0;i<nb;i++)
104 double val=carte.
estimer(xfonc[i],0.,0.);
105 if (fonc2!=NULL) fonc2[i]=val;
108 val=carte.
estimer(xfonc[i],y,0.);
109 if (fonc2!=NULL) fonc2[i+nb]=val;
117 double calibre_courbure(
long nb,
double *xfonc,
double *fonc,
double binf,
double bsup,
double nor,
double dx,
double *fonc2)
119 double eng=fonc[nb-1];
121 double lambda=(xfonc[nb-1]-xfonc[0])/(eng-eni);
131 while (
fibo(n)<(b-
a)/lon);
134 double tetai=
f(l,nb,xfonc,fonc,eng,eni,lambda,nor);
135 double tetaii=
f(u,nb,xfonc,fonc,eng,eni,lambda,nor);
151 tetai=
f(l,nb,xfonc,fonc,eng,eni,lambda,nor);
152 tetaii=
f(u,nb,xfonc,fonc,eng,eni,lambda,nor);
157 tetai=
f(l,nb,xfonc,fonc,eng,eni,lambda,nor);
158 tetaii=
f(u,nb,xfonc,fonc,eng,eni,lambda,nor);
159 if (tetai>tetaii)
a=l;
161 double res=0.5*(
a+b);
163 f(
res,nb,xfonc,fonc,eng,eni,lambda,nor,fonc2);