您好,欢迎访问三七文档
当前位置:首页 > 财经/贸易 > 资产评估/会计 > matlab第一次优化上机
预备知识:具体见pptmatlab的函数调用!方式一:可见函数mylfg(t)的自变量是t,算出来的函数值赋值给y那么y的形式是什么呢请重新写一个mylfg.m的文件,可以看到函数名mylfg与文件名mylfg.m一致定义functiony=myflg(x)为函数名,其形式为y=x^(1/3)方式二、用到的主要函数功能:matlab基本语句1.循环语句forfori=s1:s3:s2即初始值,步长,结束值,步长为1时s3可省略循环语句组end解释:首先给i赋值s1;然后,判断i是否介于s1与s2之间;如果是,则执行循环语句组,i=i+s3(否则,退出循环.);执行完毕后,继续下一次循环。例:求1到100的和,可以编程如下:sum=0fori=1:1:100sum=sum+i%命令/函数文件:myfile1.mclearfort=1:10;y=mylfg(t);fprintf('%4d^(1/3)=%6.4f\n',t,y);end%函数文件:mylfg.mfunctiony=mylfg(x)y=x^(1/3);%函数文件:funtry2.mfunction[]=funtry2()fort=1:10y=lfg2(t);fprintf('%4d^(1/3)=%6.4f\n',t,y);endfunctiony=lfg2(x)%%子函数y=x^(1/3);end这个程序也可以用while语句编程。注:for循环可以通过break语句结束整个for循环.2.循环语句while例:sum=0;i=1;while(i=100)sum=sum+i;i=i+1;end3.3.if语句分为以下三种:3.1if(条件)语句end3.2if(条件)语句else语句end3.3if(条件)语句elseif语句else语句endMATLAB提供了另一个函数syms,一次可以定义多个符号变量。syms函数的一般调用格式为:syms符号变量名1符号变量名2…符号变量名n用这种格式定义符号变量时不要在变量名上加字符串分界符(‘),变量间用空格而不要用逗号分隔。进退法在MATLAB中编程实现的进退函数为:minJT功能:用进退法求解一维函数的极值区间。调用格式:[min,max]min(,0,0,)xxJTfxheps其中,f:目标函数;0x:初始点;0h:初始步长;eps:精度;minx:目标函数取包含极值的区间左端点;maxx:目标函数取包含极值的区间右端点。实验题目:取初始点为0,步长为0.1,用进退法求函数22242()(1)(1)325ftttttt的极值区间。在MATLAB命令窗口中输入:symst;f=t^4-t^2-2*t+5;[x1,x2]=minJT(f,0,0.1)所得结果为:x1=0.3000x2=1.5000黄金分割法22242()(1)(1)325ftttttt求其最小值
本文标题:matlab第一次优化上机
链接地址:https://www.777doc.com/doc-2888089 .html