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

📄 hifi_f16_aerodata.c

📁 基于Matlab2007的美军F16战斗机的非线性模型
💻 C
📖 第 1 页 / 共 4 页
字号:
		}	x[0] = alpha_in;    return (interpn(X,DATA,x,ndinfo));}/* End of function(...) */double _delta_CYr_lef(double alpha_in){	static int flag = 0;	static double *DATA = (double*) NULL;	static double **X;	static ND_INFO ndinfo ;		FILE *fp;	double data;	int i,FILESIZE;	int nDimension = 1; 	double x[1];		FILESIZE = 14;		/* Initialise everything when this function is called for the first time */	if(flag==0){		flag = 1;	/* Set to FILE_READ_TAG */		DATA = (double*) malloc(FILESIZE*sizeof(double)); 		ndinfo.nDimension = nDimension;		ndinfo.nPoints = intVector(nDimension);		ndinfo.nPoints[0] = 14;			X = (double **) malloc(nDimension*sizeof(double*));		X[0] = getALPHA2();		fp = fopen("aerodata/f16dCYr_lef.dat","r");		if(fp==(FILE*) NULL)			mexErrMsgTxt("Cannot find file f16dCYr_lef.dat in current directory");		for(i=0;i<FILESIZE;i++){			fscanf(fp,"%lf",&data);			DATA[i] = data;			}		fclose(fp);		}	x[0] = alpha_in;    return (interpn(X,DATA,x,ndinfo));}/* End of function(...) */double _delta_CYp_lef(double alpha_in){	static int flag = 0;	static double *DATA = (double*) NULL;	static double **X;	static ND_INFO ndinfo ;		FILE *fp;	double data;	int i,FILESIZE;	int nDimension = 1; 	double x[1];		FILESIZE = 14;		/* Initialise everything when this function is called for the first time */	if(flag==0){		flag = 1;	/* Set to FILE_READ_TAG */		DATA = (double*) malloc(FILESIZE*sizeof(double)); 		ndinfo.nDimension = nDimension;		ndinfo.nPoints = intVector(nDimension);		ndinfo.nPoints[0] = 14;			X = (double **) malloc(nDimension*sizeof(double*));		X[0] = getALPHA2();		fp = fopen("aerodata/f16dCYp_lef.dat","r");		if(fp==(FILE*) NULL)			mexErrMsgTxt("Cannot find file f16dCYp_lef.dat in current directory");		for(i=0;i<FILESIZE;i++){			fscanf(fp,"%lf",&data);			DATA[i] = data;			}		fclose(fp);		}	x[0] = alpha_in;    return (interpn(X,DATA,x,ndinfo));}/* End of function(...) */double _delta_CZq_lef(double alpha_in){	static int flag = 0;	static double *DATA = (double*) NULL;	static double **X;	static ND_INFO ndinfo ;		FILE *fp;	double data;	int i,FILESIZE;	int nDimension = 1; 	double x[1];		FILESIZE = 14;		/* Initialise everything when this function is called for the first time */	if(flag==0){		flag = 1;	/* Set to FILE_READ_TAG */		DATA = (double*) malloc(FILESIZE*sizeof(double)); 		ndinfo.nDimension = nDimension;		ndinfo.nPoints = intVector(nDimension);		ndinfo.nPoints[0] = 14;			X = (double **) malloc(nDimension*sizeof(double*));		X[0] = getALPHA2();		fp = fopen("aerodata/f16dCZq_lef.dat","r");		if(fp==(FILE*) NULL)			mexErrMsgTxt("Cannot find file f16dCZq_lef.dat in current directory");		for(i=0;i<FILESIZE;i++){			fscanf(fp,"%lf",&data);			DATA[i] = data;			}		fclose(fp);		}	x[0] = alpha_in;    return (interpn(X,DATA,x,ndinfo));}/* End of function(...) */double _delta_CLr_lef(double alpha_in){	static int flag = 0;	static double *DATA = (double*) NULL;	static double **X;	static ND_INFO ndinfo ;		FILE *fp;	double data;	int i,FILESIZE;	int nDimension = 1; 	double x[1];		FILESIZE = 14;		/* Initialise everything when this function is called for the first time */	if(flag==0){		flag = 1;	/* Set to FILE_READ_TAG */		DATA = (double*) malloc(FILESIZE*sizeof(double)); 		ndinfo.nDimension = nDimension;		ndinfo.nPoints = intVector(nDimension);		ndinfo.nPoints[0] = 14;			X = (double **) malloc(nDimension*sizeof(double*));		X[0] = getALPHA2();		fp = fopen("aerodata/f16dClr_lef.dat","r");		if(fp==(FILE*) NULL)			mexErrMsgTxt("Cannot find file f16dClr_lef.dat in current directory");		for(i=0;i<FILESIZE;i++){			fscanf(fp,"%lf",&data);			DATA[i] = data;			}		fclose(fp);		}	x[0] = alpha_in;    return (interpn(X,DATA,x,ndinfo));}/* End of function(...) */double _delta_CLp_lef(double alpha_in){	static int flag = 0;	static double *DATA = (double*) NULL;	static double **X;	static ND_INFO ndinfo ;		FILE *fp;	double data;	int i,FILESIZE;	int nDimension = 1; 	double x[1];		FILESIZE = 14;		/* Initialise everything when this function is called for the first time */	if(flag==0){		flag = 1;	/* Set to FILE_READ_TAG */		DATA = (double*) malloc(FILESIZE*sizeof(double)); 		ndinfo.nDimension = nDimension;		ndinfo.nPoints = intVector(nDimension);		ndinfo.nPoints[0] = 14;			X = (double **) malloc(nDimension*sizeof(double*));		X[0] = getALPHA2();		fp = fopen("aerodata/f16dClp_lef.dat","r");		if(fp==(FILE*) NULL)			mexErrMsgTxt("Cannot find file f16dClp_lef.dat in current directory");		for(i=0;i<FILESIZE;i++){			fscanf(fp,"%lf",&data);			DATA[i] = data;			}		fclose(fp);		}	x[0] = alpha_in;    return (interpn(X,DATA,x,ndinfo));}/* End of function(...) */double _delta_CMq_lef(double alpha_in){	static int flag = 0;	static double *DATA = (double*) NULL;	static double **X;	static ND_INFO ndinfo ;		FILE *fp;	double data;	int i,FILESIZE;	int nDimension = 1; 	double x[1];		FILESIZE = 14;		/* Initialise everything when this function is called for the first time */	if(flag==0){		flag = 1;	/* Set to FILE_READ_TAG */		DATA = (double*) malloc(FILESIZE*sizeof(double)); 		ndinfo.nDimension = nDimension;		ndinfo.nPoints = intVector(nDimension);		ndinfo.nPoints[0] = 14;			X = (double **) malloc(nDimension*sizeof(double*));		X[0] = getALPHA2();		fp = fopen("aerodata/f16dCmq_lef.dat","r");		if(fp==(FILE*) NULL)			mexErrMsgTxt("Cannot find file f16dCmq_lef.dat in current directory");		for(i=0;i<FILESIZE;i++){			fscanf(fp,"%lf",&data);			DATA[i] = data;			}		fclose(fp);		}	x[0] = alpha_in;    return (interpn(X,DATA,x,ndinfo));}/* End of function(...) */double _delta_CNr_lef(double alpha_in){	static int flag = 0;	static double *DATA = (double*) NULL;	static double **X;	static ND_INFO ndinfo ;		FILE *fp;	double data;	int i,FILESIZE;	int nDimension = 1; 	double x[1];		FILESIZE = 14;		/* Initialise everything when this function is called for the first time */	if(flag==0){		flag = 1;	/* Set to FILE_READ_TAG */		DATA = (double*) malloc(FILESIZE*sizeof(double)); 		ndinfo.nDimension = nDimension;		ndinfo.nPoints = intVector(nDimension);		ndinfo.nPoints[0] = 14;			X = (double **) malloc(nDimension*sizeof(double*));		X[0] = getALPHA2();		fp = fopen("aerodata/f16dCnr_lef.dat","r");		if(fp==(FILE*) NULL)			mexErrMsgTxt("Cannot find file f16dCnr_lef.dat in current directory");		for(i=0;i<FILESIZE;i++){			fscanf(fp,"%lf",&data);			DATA[i] = data;			}		fclose(fp);		}	x[0] = alpha_in;    return (interpn(X,DATA,x,ndinfo));}/* End of function(...) */double _delta_CNp_lef(double alpha_in){	static int flag = 0;	static double *DATA = (double*) NULL;	static double **X;	static ND_INFO ndinfo ;		FILE *fp;	double data;	int i,FILESIZE;	int nDimension = 1; 	double x[1];		FILESIZE = 14;		/* Initialise everything when this function is called for the first time */	if(flag==0){		flag = 1;	/* Set to FILE_READ_TAG */		DATA = (double*) malloc(FILESIZE*sizeof(double)); 		ndinfo.nDimension = nDimension;		ndinfo.nPoints = intVector(nDimension);		ndinfo.nPoints[0] = 14;			X = (double **) malloc(nDimension*sizeof(double*));		X[0] = getALPHA2();		fp = fopen("aerodata/f16dCnp_lef.dat","r");		if(fp==(FILE*) NULL)			mexErrMsgTxt("Cannot find file f16dCnp_lef.dat in current directory");		for(i=0;i<FILESIZE;i++){			fscanf(fp,"%lf",&data);			DATA[i] = data;			}		fclose(fp);		}	x[0] = alpha_in;    return (interpn(X,DATA,x,ndinfo));}/* End of function(...) */double _Cy_r30(double alpha_in, double beta_in){	static int flag = 0;	static double *DATA = (double*) NULL;	static double **X;	static ND_INFO ndinfo ;		FILE *fp;	double data;	int i,FILESIZE;	int nDimension = 2; 	double x[2];		FILESIZE = 380;		/* Initialise everything when this function is called for the first time */	if(flag==0){		flag = 1;	/* Set to FILE_READ_TAG */		DATA = (double*) malloc(FILESIZE*sizeof(double)); 		ndinfo.nDimension = nDimension;		ndinfo.nPoints = intVector(nDimension);		ndinfo.nPoints[0] = 20;			ndinfo.nPoints[1] = 19;			X = (double **) malloc(nDimension*sizeof(double*));		X[0] = getALPHA1();		X[1] = getBETA1();		fp = fopen("aerodata/f16CY_dr30.dat","r");		if(fp==(FILE*) NULL)			mexErrMsgTxt("Cannot find file f16CY_dr30.dat in current directory");		for(i=0;i<FILESIZE;i++){			fscanf(fp,"%lf",&data);			DATA[i] = data;			}		fclose(fp);		}	x[0] = alpha_in;	x[1] = beta_in;    return (interpn(X,DATA,x,ndinfo));}/* End of function(...) */double _Cn_r30(double alpha_in, double beta_in){	static int flag = 0;	static double *DATA = (double*) NULL;	static double **X;	static ND_INFO ndinfo ;		FILE *fp;	double data;	int i,FILESIZE;	int nDimension = 2; 	double x[2];		FILESIZE = 380;		/* Initialise everything when this function is called for the first time */	if(flag==0){		flag = 1;	/* Set to FILE_READ_TAG */		DATA = (double*) malloc(FILESIZE*sizeof(double)); 		ndinfo.nDimension = nDimension;		ndinfo.nPoints = intVector(nDimension);		ndinfo.nPoints[0] = 20;			ndinfo.nPoints[1] = 19;			X = (double **) malloc(nDimension*sizeof(double*));		X[0] = getALPHA1();		X[1] = getBETA1();		fp = fopen("aerodata/f16Cn_dr30.dat","r");		if(fp==(FILE*) NULL)			mexErrMsgTxt("Cannot find file f16Cn_dr30.dat in current directory");		for(i=0;i<FILESIZE;i++){			fscanf(fp,"%lf",&data);			DATA[i] = data;			}		fclose(fp);		}	x[0] = alpha_in;	x[1] = beta_in;    return (interpn(X,DATA,x,ndinfo));}/* End of function(...) */double _Cl_r30(double alpha_in, double beta_in){	static int flag = 0;	static double *DATA = (double*) NULL;	static double **X;	static ND_INFO ndinfo ;		FILE *fp;	double data;	int i,FILESIZE;	int nDimension = 2; 	double x[2];		FILESIZE = 380;		/* Initialise everything when this function is called for the first time */	if(flag==0){		flag = 1;	/* Set to FILE_READ_TAG */		DATA = (double*) malloc(FILESIZE*sizeof(double)); 		ndinfo.nDimension = nDimension;		ndinfo.nPoints = intVector(nDimension);		ndinfo.nPoints[0] = 20;			ndinfo.nPoints[1] = 19;			X = (double **) malloc(nDimension*sizeof(double*));		X[0] = getALPHA1();		X[1] = getBETA1();		fp = fopen("aerodata/f16Cl_dr30.dat","r");		if(fp==(FILE*) NULL)			mexErrMsgTxt("Cannot find file f16Cl_dr30.dat in current directory");		for(i=0;i<FILESIZE;i++){			fscanf(fp,"%lf",&data);			DATA[i] = data;			}		fclose(fp);		}	x[0] = alpha_in;	x[1] = beta_in;    return (interpn(X,DATA,x,ndinfo));}/* End of function(...) */double _Cy_a20(double alpha_in, double beta_in){	static int flag = 0;	static double *DATA = (double*) NULL;	static double **X;	static ND_INFO ndinfo ;		FILE *fp;	double data;	int i,FILESIZE;	int nDimension = 2; 	double x[2];		FILESIZE = 380;		/* Initialise everything when this function is called for the first time */	if(flag==0){		flag = 1;	/* Set to FILE_READ_TAG */		DATA = (double*) malloc(FILESIZE*sizeof(double)); 		ndinfo.nDimension = nDimension;		ndinfo.nPoints = intVector(nDimension);		ndinfo.nPoints[0] = 20;			ndinfo.nPoints[1] = 19;			X = (double **) malloc(nDimension*sizeof(double*));		X[0] = getALPHA1();		X[1] = getBETA1();		fp = fopen("aerodata/f16CY_da20.dat","r");		if(fp==(FILE*) NULL)			mexErrMsgTxt("Cannot find file f16CY_da20.dat in current directory");		for(i=0;i<FILESIZE;i++){			fscanf(fp,"%lf",&data);			DATA[i] = data;			}		fclose(fp);		}	x[0] = alpha_in;	x[1] = beta_in;    return (interpn(X,DATA,x,ndinfo));}/* End of function(...) */double _Cy_a20_lef(double alpha_in, double beta_in){	static int flag = 0;	static double *DATA = (double*) NULL;	static double **X;	static ND_INFO ndinfo ;		FILE *fp;	double data;	int i,FILESIZE;	int nDimension = 2; 	double x[2];		FILESIZE = 266;		/* Initialise everything when this function is called for the first time */	if(flag==0){		flag = 1;	/* Set to FILE_READ_TAG */		DATA = (double*) malloc(FILESIZE*sizeof(double)); 		ndinfo.nDimension = nDimension;		ndinfo.nPoints = intVector(nDimension);		ndinfo.nPoints[0] = 14;			ndinfo.nPoints[1] = 19;			X = (double **) malloc(nDimension*sizeof(double*));

⌨️ 快捷键说明

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