Скачиваний:
14
Добавлен:
01.05.2014
Размер:
760 б
Скачать
void newton (double x01, double x02)
{
double p1=0, p2=0, x1, x2, h11, h12, h21, h22, alfa_r=0;
int m=2000, k=1;
x1=x01;
x2=x02;
agrad(x1,x2,p1,p2);
H (x1, x2, p1, p2, h11,h12,h21,h22);
p1=h11*p1+h12*p2;
p2=h21*p1+h22*p2;
while ((sqrt(p1*p1+p2*p2)>0.01)&&(k<=m))
{
p1=p1/(sqrt(pow(p1,2)+pow(p2,2)));
p2=p2/(sqrt(pow(p1,2)+pow(p2,2)));
lab3(x1,x2,p1,p2,alfa_r);
x1=x1+alfa_r*p1;
x2=x2+alfa_r*p2;
alfa_r=0;
agrad(x1,x2,p1,p2);
H(x1, x2, p1, p2, h11,h12,h21,h22);
p1=h11*p1+h12*p2;
p2=h21*p1+h22*p2;
k++;
}
// cout<<"sqrt(p1*p1+p2*p2)="<<fabs(p1*p1+p2*p2)<<endl;
// cout<<"x1="<<x1<<endl;
// cout<<"x2="<<x2<<endl;
// cout<<"Y="<<Y(0, x1, x2, p1, p2)<<endl;
cout<<"k="<<k-1<<endl;
}
Соседние файлы в папке all