📄 ex_7sqp2.c
字号:
#include <stdio.h>#include <stdlib.h>#include <math.h>#include "math_util.h"int n_fun;main(){ long double tol, *x; int n, m, p; void ex7_fun( long double *, long double *, long double * ); void sqp_2( void(*)(long double *, long double *, long double *), long double *, int, int, int, long double ); n_fun = 0; n = 2; m = 0; p = 4; x = a1d_allo_dbl( n ); x[0] = -1; x[1] = 1; tol = 1.0e-4; sqp_2( ex7_fun, x, n, m, p, tol ); printf("\nSolution x: "); print_vec_dbl( x, n ); printf("\n"); printf(" # of function evaluations: %d\n",n_fun);}/* */void ex7_fun( f, g, x )long double *f, *g, *x;{ n_fun++; f[0] = exp(x[0])*(4.0*x[0]*x[0]+ 2.0*x[1]*x[1]+4.0*x[0]*x[1]+2.0*x[1]+1.0); g[0]= 1.5+x[0]*x[1]-x[0]-x[1]; g[1]= -x[0]*x[1]-10.0; g[2]= -x[0]; g[3]= -x[1]; return;}/*itt = 5, f = 8.500e+00, |g| = 0.000e+00, |dx| = 9.732e-02, |dL| = 1.357e+00norm( dL ) = 6.471e-12Solution x: -8.696329e-21 1.500000e+00 # of function evaluations: 23*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -