Курсовая работа: Минимизация функций нескольких переменных. Метод спуска
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
int ii=0,n=0,s=0;
AnsiString Formula[3]={"U=A*x1^3+B*x2^2-C*x1-D*x2","U=x1^2+x1*x2+x2^2","U=X1^2+X2^2"};
int KolPer[3]={2,2,2};// массив в котором хранится кол-во перемен. для каждой ф-ии
bool DD=true,Diapozon=true; // если true то точка входит в диапозон иначе нет
double PeremenN[5]={0};//double *PeremenN =new double[n]; //нул.приб
double InterN[5]={0};//double *InterN =new double[n]; //нач
double InterK[5]={0};//double *InterK =new double[n]; //кон
double Param[4]={0}; //параметры
double T1[5]={0};//double *T1 =new double[n]; //tochka i -я
double T2[5]={0};//double *T2 =new double[n]; //tochka i+1 -я
double TempT[5]={0};//double *TempT =new double[n]; // временная tochka i+1 -я
double BB[5]={0};//double *BB= new double [n]; // BB - массивсизмененой i-ойточкойX[i]+g
double B[5]={0};//double *B= new double [n]; //B - массивсизмененой i-ойточкойX[i]-g
int g=0;
double ModG =0; //модульградиента
int ss=0,ind=0;
double **Tochki; // указатель на массив с точками приближения
//---------------------------------------------------------------------------
double TForm1::F1( double T[]) //Formula1 U=A*x1^3+B*x2^2-C*x1-D*x2
{ double U = 0;