亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? qp.c

?? This toolbox was designed as a teaching aid, which matlab is particularly good for since source cod
?? C
字號:
// Filename: qp.c// // Description: MATLAB interface for LOQO Optimiser// // Comments: Quadratic and Linear Programming// // Author: Steve Gunn (S.R.Gunn@ecs.soton.ac.uk)//         Modified from code by R. Vanderbei.#include <math.h>#include <stdio.h>#include "mex.h"#include "pr_loqo.h"#define Inf 1e30void mexFunction(int nlhs, mxArray *plhs[],int nrhs, const mxArray *prhs[]){    double *c=NULL, *b=NULL, *A=NULL, *Q=NULL, *H=NULL, *l=NULL, *u=NULL, *x=NULL, *lambda=NULL, *x0=NULL, *primal=NULL, *dual=NULL;    double *tmpdp=NULL;    double big=Inf;    unsigned int neq=0;    long nmat=0, mmat=0;    long how=0;    int i;    unsigned int verb = 0;    double sigfig_max = 8;    int counter_max = 100000;    double margin = 0.95;    double bound = 10;     int restart = 0;    static char *str[] = {		"STILL_RUNNING",		"OPTIMAL_SOLUTION",		"SUBOPTIMAL_SOLUTION",		"ITERATION_LIMIT",		"PRIMAL_INFEASIBLE",		"DUAL_INFEASIBLE",		"PRIMAL_AND_DUAL_INFEASIBLE",		"INCONSISTENT",		"PRIMAL_UNBOUNDED",		"DUAL_UNBOUNDED",		"TIME_LIMIT"};    if (nrhs > 9 || nrhs < 1) {	    mexErrMsgTxt("Usage: [x,lambda,how] = qp(H,c,A,b,l,u,x0,neqcstr,verbosity)");	    return;    }    switch (nrhs) {    case 9:		if (mxGetM(prhs[8]) != 0 || mxGetN(prhs[8]) != 0) {		    if (!mxIsNumeric(prhs[8]) || mxIsComplex(prhs[8]) 		     ||  mxIsSparse(prhs[8])		     || !(mxGetM(prhs[8])==1 && mxGetN(prhs[8])==1)) {			 mexErrMsgTxt("Ninth argument (display) must be "				      "an integer scalar.");			 return;		    }		    verb = (unsigned int)*mxGetPr(prhs[8]);	    }    case 8:		if (mxGetM(prhs[7]) != 0 || mxGetN(prhs[7]) != 0) {		    if (!mxIsNumeric(prhs[7]) || mxIsComplex(prhs[7]) 		     ||  mxIsSparse(prhs[7])		     || !(mxGetM(prhs[7])==1 && mxGetN(prhs[7])==1)) {			 mexErrMsgTxt("Eighth argument (neqcstr) must be "				      "an integer scalar.");			 return;		    }		    neq = (unsigned int)*mxGetPr(prhs[7]);	    }    case 7:		if (mxGetM(prhs[6]) != 0 || mxGetN(prhs[6]) != 0) {			if (!mxIsNumeric(prhs[6]) || mxIsComplex(prhs[6]) 			 ||  mxIsSparse(prhs[6])			 || !mxIsDouble(prhs[6]) 			 ||  mxGetN(prhs[6])!=1 ) {			 mexErrMsgTxt("Seventh argument (x0) must be "					  "a column vector.");			 return;			}			x0 = mxGetPr(prhs[6]);			nmat = mxGetM(prhs[6]);        }    case 6:	    if (mxGetM(prhs[5]) != 0 || mxGetN(prhs[5]) != 0) {		    if (!mxIsNumeric(prhs[5]) || mxIsComplex(prhs[5]) 		     ||  mxIsSparse(prhs[5])		     || !mxIsDouble(prhs[5]) 		     ||  mxGetN(prhs[5])!=1 ) {			 mexErrMsgTxt("Sixth argument (u) must be "				      "a column vector.");			 return;		    }		    if (nmat != 0 && nmat != mxGetM(prhs[5])) {			 mexErrMsgTxt("Dimension error (arg 6 and later).");			 return;		    }		    u = mxGetPr(prhs[5]);			nmat = mxGetM(prhs[5]);	    }    case 5:	    if (mxGetM(prhs[4]) != 0 || mxGetN(prhs[4]) != 0) {		    if (!mxIsNumeric(prhs[4]) || mxIsComplex(prhs[4]) 		     ||  mxIsSparse(prhs[4])		     || !mxIsDouble(prhs[4]) 		     ||  mxGetN(prhs[4])!=1 ) {			 mexErrMsgTxt("Fifth argument (l) must be "				      "a column vector.");			 return;		    }		    if (nmat != 0 && nmat != mxGetM(prhs[4])) {			 mexErrMsgTxt("Dimension error (arg 5 and later).");			 return;		    }		    l = mxGetPr(prhs[4]);			nmat = mxGetM(prhs[4]);	    }    case 4:		if (mxIsEmpty(prhs[3]))		{ // No Constraints			mmat = 0;		}		else		{ // Constraints			if (mxGetM(prhs[3]) != 0 || mxGetN(prhs[3]) != 0) {				if (!mxIsNumeric(prhs[3]) || mxIsComplex(prhs[3]) 				 ||  mxIsSparse(prhs[3])				 || !mxIsDouble(prhs[3]) 				 ||  mxGetN(prhs[3])!=1 ) {				 mexErrMsgTxt("Fourth argument (b) must be "						  "a column vector.");				 return;				}				if (mmat != 0 && mmat != mxGetM(prhs[3])) {				 mexErrMsgTxt("Dimension error (arg 4 and later).");				 return;				}				b = mxGetPr(prhs[3]);			}		}    case 3:		if (mxIsEmpty(prhs[2]))		{ // No Constraints			if (mmat != 0) {				mexErrMsgTxt("Dimension error (arg 3 and later).");				return;			}		}		else		{ // Constraints			if (mxGetM(prhs[2]) != 0 || mxGetN(prhs[2]) != 0) {				if (!mxIsNumeric(prhs[2]) || mxIsComplex(prhs[2]) 				 || mxIsSparse(prhs[2]) ) {				 mexErrMsgTxt("Third argument (A) must be "						  "a matrix.");				 return;				}				if (mmat != 0 && mmat != mxGetM(prhs[2])) {				 mexErrMsgTxt("Dimension error (arg 3 and later).");				 return;				}				if (nmat != 0 && nmat != mxGetN(prhs[2])) {				 mexErrMsgTxt("Dimension error (arg 3 and later).");				 return;				}				mmat = mxGetM(prhs[2]);				nmat = mxGetN(prhs[2]);				A = mxGetPr(prhs[2]);			}		}		tmpdp = (double *)malloc((nmat+mmat)*sizeof(double));		for(i=0;i<nmat;i++) tmpdp[i] = (l[i] < -Inf ? -Inf : l[i]);		l = tmpdp;		tmpdp = (double *)malloc((nmat+mmat)*sizeof(double));		for(i=0;i<nmat;i++) tmpdp[i] = (u[i] > Inf ? Inf : u[i]);		u = tmpdp;		/* Equality constraints */		for(i=nmat;i<(int)(nmat+neq);i++) { l[i] = u[i] = 0; }		/* InEquality constraints */		for(i=nmat + neq;i<nmat+mmat;i++) { l[i] = -Inf; u[i] = 0; }    case 2:	    if (mxGetM(prhs[1]) != 0 || mxGetN(prhs[1]) != 0) {		    if (!mxIsNumeric(prhs[1]) || mxIsComplex(prhs[1]) 		     ||  mxIsSparse(prhs[1])		     || !mxIsDouble(prhs[1]) 		     ||  mxGetN(prhs[1])!=1 ) {			 mexErrMsgTxt("Second argument (c) must be "				      "a column vector.");			 return;		    }		    if (nmat != 0 && nmat != mxGetM(prhs[1])) {			 mexErrMsgTxt("Dimension error (arg 2 and later).");			 return;		    }		    c = mxGetPr(prhs[1]);		    nmat = mxGetM(prhs[1]);	    }    case 1:		if (mxIsEmpty(prhs[0]))		{ // Linear Program			H = (double *)calloc(nmat*nmat,sizeof(double));		}		else		{ // Quadratic Program	        if (mxGetM(prhs[0]) != 0 || mxGetN(prhs[0]) != 0) {				if (!mxIsNumeric(prhs[0]) || mxIsComplex(prhs[0]) 				 || mxIsSparse(prhs[0]) ) {				 mexErrMsgTxt("First argument (H) must be "						  "a matrix.");				 return;				}				if (nmat != 0 && nmat != mxGetM(prhs[0])) {				 mexErrMsgTxt("Dimension error (arg 1 and later).");				 return;				}				if (nmat != 0 && nmat != mxGetN(prhs[0])) {				 mexErrMsgTxt("Dimension error (arg 1 and later).");				 return;				}				nmat = mxGetN(prhs[0]);				Q = mxGetPr(prhs[0]);				H = (double *)calloc(nmat*nmat,sizeof(double));				for(i=0;i<nmat*nmat;i++) H[i] = Q[i];			}		}	    break;    }    if (nlhs > 3 || nlhs < 1) {	    mexErrMsgTxt("Usage: [x,lambda,how] = qp(H,c,A,b,l,u,x0,neqcstr,verbosity)");	    return;    }	primal = (double *)calloc((3*nmat),sizeof(double));		dual = (double *)calloc((mmat+2*nmat),sizeof(double));	    how = pr_loqo(nmat, mmat, c, H, A, b, l, u, primal, dual, verb, sigfig_max, counter_max, margin, bound, restart);    switch (nlhs) {    case 3:	    plhs[2] = mxCreateString(str[how]);    case 2:	    plhs[1] = mxCreateDoubleMatrix(mmat, 1, mxREAL);	    lambda = mxGetPr(plhs[1]);		for(i=0; i<mmat; i++) lambda[i] = dual[i];    case 1:	    plhs[0] = mxCreateDoubleMatrix(nmat, 1, mxREAL);	    x = mxGetPr(plhs[0]);		for(i=0; i<nmat; i++) x[i] = primal[i];	    break;    }	/* Free up memory */	free(l);	free(u);	free(primal);	free(dual);	free(H);}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
蜜桃91丨九色丨蝌蚪91桃色| 在线中文字幕一区| 色狠狠色噜噜噜综合网| 日韩一区二区免费电影| 亚洲视频香蕉人妖| 国产一区激情在线| 欧美日本韩国一区二区三区视频| 国产亚洲欧美一级| 青青草原综合久久大伊人精品| proumb性欧美在线观看| 日韩欧美一区二区视频| 亚洲一区二区三区中文字幕 | 国产精品99久久久| 欧美人与z0zoxxxx视频| 有码一区二区三区| 成人黄页毛片网站| 久久精品一区八戒影视| 奇米亚洲午夜久久精品| 欧洲人成人精品| 自拍偷拍国产精品| 99在线精品观看| 国产精品二三区| 成熟亚洲日本毛茸茸凸凹| 精品国一区二区三区| 青青国产91久久久久久| 欧美日韩国产一级二级| 日本伊人精品一区二区三区观看方式| 91久久精品一区二区| 日韩一区在线播放| 99re66热这里只有精品3直播 | 亚洲日本va午夜在线电影| 国产999精品久久| 久久久国产精品不卡| 国产一区三区三区| 久久久精品欧美丰满| 国产揄拍国内精品对白| 久久综合九色综合97婷婷| 韩日精品视频一区| 久久久电影一区二区三区| 国产精品一二三| 国产农村妇女毛片精品久久麻豆| 国产成人精品免费| 国产精品理论在线观看| caoporen国产精品视频| 亚洲乱码中文字幕| 欧美剧情电影在线观看完整版免费励志电影 | 亚洲欧美国产高清| 欧美亚洲国产一区在线观看网站 | 国产精品女主播av| 色欧美日韩亚洲| 日日欢夜夜爽一区| 欧美成人a视频| 东方aⅴ免费观看久久av| 日本不卡的三区四区五区| 91精品中文字幕一区二区三区| 奇米色一区二区三区四区| 精品欧美一区二区在线观看| 国产成+人+日韩+欧美+亚洲| 亚洲日穴在线视频| 欧美三级三级三级| 精品亚洲aⅴ乱码一区二区三区| 久久久久9999亚洲精品| 色婷婷狠狠综合| 看电影不卡的网站| 自拍偷自拍亚洲精品播放| 91麻豆精品国产自产在线观看一区| 蜜桃传媒麻豆第一区在线观看| 欧美激情一区二区三区四区| 欧美性感一类影片在线播放| 久草中文综合在线| 亚洲乱码日产精品bd| 日韩视频免费观看高清完整版在线观看| 国产传媒日韩欧美成人| 亚洲国产视频一区| 欧美国产日韩精品免费观看| 欧美日韩精品系列| 国产精品一卡二卡在线观看| 亚洲电影中文字幕在线观看| 国产色91在线| 日韩一区二区三区在线观看| 93久久精品日日躁夜夜躁欧美| 久久福利视频一区二区| 亚洲免费在线观看| 久久精品视频一区| 欧美一级高清片| 在线欧美一区二区| 成人精品免费网站| 国内精品伊人久久久久av影院| 亚洲v日本v欧美v久久精品| 国产精品三级av| 欧美一级黄色大片| 欧美日韩一区中文字幕| 99国产欧美另类久久久精品| 极品少妇xxxx精品少妇| 日韩国产高清在线| 亚洲国产日韩av| 亚洲日本在线观看| 国产精品白丝在线| 国产肉丝袜一区二区| 日韩一区二区高清| 制服丝袜激情欧洲亚洲| 欧美色图片你懂的| 91福利视频久久久久| 99re这里都是精品| 成人av网站在线观看免费| 国产精品中文字幕欧美| 九九国产精品视频| 精品伊人久久久久7777人| 日本亚洲电影天堂| 婷婷久久综合九色综合绿巨人| 亚洲综合免费观看高清完整版 | 欧美mv日韩mv国产网站app| 欧美精品在线一区二区| 欧美色偷偷大香| 欧美体内she精高潮| 欧美日韩成人综合天天影院| 日本电影亚洲天堂一区| 在线观看亚洲精品视频| 欧美性受xxxx黑人xyx| 欧美视频第二页| 欧美日韩在线播放三区四区| 欧美日韩精品系列| 日韩精品中文字幕一区二区三区| 欧美一区二区视频在线观看 | 欧美自拍偷拍午夜视频| 在线观看av不卡| 欧美男人的天堂一二区| 91精品国产综合久久国产大片| 日韩美一区二区三区| 久久你懂得1024| 最新热久久免费视频| 一级日本不卡的影视| 日日夜夜免费精品视频| 久久国产精品第一页| 成人性生交大片| 欧洲一区二区av| 日韩女优av电影| 欧美激情艳妇裸体舞| 一区二区三区在线观看视频| 亚洲超碰97人人做人人爱| 久久电影网电视剧免费观看| 国产成人高清视频| 在线一区二区视频| 欧美大尺度电影在线| 国产精品高潮久久久久无| 亚洲午夜免费福利视频| 捆绑调教美女网站视频一区| av在线一区二区三区| 欧美日韩免费观看一区三区| 精品国产乱码久久久久久免费| 国产精品不卡在线观看| 午夜精品久久久久久久蜜桃app| 久草精品在线观看| 91在线视频观看| 精品乱码亚洲一区二区不卡| 《视频一区视频二区| 日本亚洲免费观看| 91丨porny丨首页| 欧美一级日韩不卡播放免费| 国产精品免费观看视频| 日本特黄久久久高潮 | 成人aa视频在线观看| 欧美精品色综合| 国产精品黄色在线观看| 蜜臀久久99精品久久久久久9 | 国产精品嫩草久久久久| 性欧美大战久久久久久久久| 国产成人精品免费一区二区| 欧美一区二区在线播放| 亚洲免费看黄网站| 国产一区二区美女| 3d动漫精品啪啪1区2区免费| 亚洲人快播电影网| 国产成人在线视频播放| 欧美一区二区三区爱爱| 一区二区三区四区精品在线视频| 国产美女精品一区二区三区| 欧美喷潮久久久xxxxx| 亚洲日韩欧美一区二区在线| 国产一区二区福利| 欧美一级久久久久久久大片| 亚洲自拍与偷拍| 一道本成人在线| 国产精品日产欧美久久久久| 国产在线一区二区综合免费视频| 91精品国产麻豆国产自产在线| 一个色综合网站| 色欧美片视频在线观看在线视频| 中文字幕的久久| 国产成人综合亚洲网站| 精品精品国产高清一毛片一天堂| 亚洲成人激情综合网| 欧美日韩中文字幕精品| 亚洲一区免费观看| 欧美艳星brazzers| 亚洲h在线观看| 欧美理论在线播放| 日韩1区2区日韩1区2区| 欧美高清你懂得| 奇米精品一区二区三区在线观看一 |