⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ex_1sqp2.c

📁 an modern SQP method to make the original matrix more concise
💻 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 ex1_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; /* Number of parameters */	m = 0; /* Number of equality constraints */	p = 1; /* Number of inequality constraints */		x = a1d_allo_dbl( n ); /* Allocate storage for x */		x[0] = 2.9; /* Initial guess */	x[1] = 2.0;		tol = 1.0e-4; /* Error tolerance */	    sqp_2( ex1_fun, x, n, m, p, tol );        printf("\nSolution x: ");    print_vec_dbl( x, n );    printf("\n");    printf(" # of function evaluations: %d\n",n_fun);}/*	Rosenbrock's function*/void ex1_fun( f, g, x )long double *f, *g, *x;{   n_fun++;         *f = 100.0*(x[1]-x[0]*x[0])*(x[1]-x[0]*x[0]) + (1.0-x[0])*(1.0-x[0]);      g[0] = x[0]*x[0] + x[1]*x[1] - 1.5;      return;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -