extern void e04abf_( void (*funct)(double *xc, double *fc), double *e1, double *e2, double *a, double *b, long int *maxc, double *x, double *fx, long int *ifail); /* Minimalizuje funkci jedne promenne (funct) v intervalu [a,b]. Parametry: xc argument funkce, fc funkcni hodnota (tj. fc == funct(xc)), e1 pozadovana relativni presnost reseni, e2 absolutni presnost reseni, pokud e1=e2=0.0, plati default hodnoty, a,b krajni body intervalu, ve kterem se hleda reseni, procedura v nich pak vraci upresneny interval (zpravidla velice uzky), ve kterem se nachazi reseni, maxc maximalni pocet volani funkce v prubehu minimalizace (obvyhle neni treba vice nez 30), x odhad reseni (vystupni parametr), fx funkcni hodnota v x, tj. fx == funct(x), ifail chybovy kod (=0, pokud je vse v poradku). */ extern void e04dgf_(long int *n, void (*objfun)(long int *mode, long int *n, double x[], double *objf, double objgrd[], long int *nstate, long int iuser[], double user[]), long int *iter, double *objf, double objgrd[], double x[], long int iwork[], double work[], long int iuser[], double user[], long int *ifail); /* Minimalizace funkce vice promennych pomoci metody sdruzenych gradientu. Parametry: n pocet promennych, objfun procedura pocitajici funkcni hodnotu a gradient minimalizovane funkce, iter pocet provedenych iteraci (vystupni parametr), objf funkcni hodnota minimalizovane funkce v posledni iteraci, objgrd gradient minimalizovane funkce v posledni iteraci, x na vstupu: pocatecni odhad minima; na vystupu: odhad minima v posledni iteraci, iwork celociselne pracovni pole delky n+1, work realne pracovni pole delky 13*n, iuser celociselne pracovni pole pro interni potrebu procedury objfun, user realne pracovni pole pro interni potrebu procedury objfun, ifail chybovy kod (=0, pokud je vse v poradku). Parametry procedury objfun: mode pokud mode=0, staci v danem volani objfun vypocitat pouze funkcni hodnotu, n pocet promennych, x argument funkce, objf vysledna funkcni hodnota v x, objgrd gradient v bode x, nstate vstupni parametr: pri prvni iteraci roven 1, jinak roven 0, iuser,user pole urcena pro prenos informaci mezi iteracemi v ramci procedury objfun. */