1、在电脑桌面上打开MATLAB。
2、当你没有把你编辑好的子函数放入正确的文件夹时,不管你输入的程序是否有错,当你执行时,系统都会提示“没有定义”,这个时候就是没有子函数文件放到主函数库文件夹中。
3、首先,输入“edit conv”这个“conv”是我准备编辑的子函数的主函数名,每个人所需的主函数名都不一样,这里可以不要那么在意。然后就可以打开相应的主函数,这是可以看到主函数所在文件夹位置。如图所示,※记住这个位置。
4、然后进行子函数的编辑,首先新建一个新的m文件,然后在编辑框中输入所要的子函数,例如我就是输入了convnem的函数,这是conv的子函数。然后点击保存。
5、接下来,在“conv”所在文件位置,将位置记录下来,将子函数的文件保存到主函数所在的文件夹即可,然后在重新的将你所需的程序(含有子函数的)输入并且执行,这时你会发现原来提示的错误没有了,那么这时调用自己添加的子函数成功了。以后有相应的子函数都可以通过这样的方法进行添加子函数。
一、 实验内容:
(1)若国民平均收入x与人口平均资金积累y成正比,说明仅当总资金积累的相对增长率k大于人口的相对增长率r时,国民平均收入才是增长的.
(2)作出k(x)和r(x)的示意图,分析人口激增会导致什么后果.
二、实验步骤:
1.建模分析:
(1).(X(t),Y(t))与(x(t),y(t))之间的距离总是硬棒的长度,于是
(1)
(2).玩具总是在硬棒的方向上运动,因此,两个位置的差向量是玩具的速度方向的倍数, :
(2)
(3)玩具的速度依赖于小孩的速度向量Vc的方向。小孩的速度 在硬棒上的投影是玩具的速度 的模。
特例:假设小孩在半径为a(硬棒的长)的圆上行走。在此特殊情况下,玩具停留在此圆的圆心,根本不运动。
将式(2)代入式(1)可得,
(3)
于是
(4)
(4)如何利用 ?
标准化差向量 ,可得单位向量 ;
确定 在 生成的子空间上的投影: ;
(5)数值解法
(6)数值解Matlab程序:
2x1(t)---t时刻总资金积累量,x2(t)---t时刻人口数量,x3(t)---t时刻国民平均收入量,k---总资金的相对增长率,r---人口的相对增长率
假设:
(1)总资金增长和人口增长均满足指数增长,由题知:国民平均收入与按人口平均资金积累成正比,并设此比例系数为a。
(2)根据网上获得的数据,自2007年起,我国人口总数为1321851188,总资金积累量(国内生产总值)为246637亿元,人口增长率为107%,总资金(国内生产总值)增长率为115%。a的值约为1。
求解的Matlab程序代码:
先建立M文件fundPopulationm如下示:
function dx=fundPopulation(t,x)
dx=zeros(3,1);
k=0115;r=00117;a=1;x(3)=ax(1)/x(2);
dx(1)=kx(1);dx(2)=rx(2);dx(3)=a(k-r)x(3);
主程序weifengfangchengm 如下:
[t,x]=ode45('fundPopulation',[2007 2050],[246637 1321851188 1865845]);
figure(1),plot(t,x(:,1),'k') %作出总资产积累量与时间的图像
xlabel('时间[年]'),ylabel('总资金积累[亿元]')
figure(2),plot(t,x(:,2),'m-') %作出人口数与时间的图像
hold on
xlabel('时间[年]'),ylabel('人口数')
figure(3),plot(t,x(:,3),'r+') %作出国民平均收入与时间的图像
hold on
xlabel('时间[年]'),ylabel('国民平均收入[亿元]')
三、实验结果分析
答: 1运行结果:
2由上面推理知:国民平均收入量满足指数增长,其增长率为(k-r),故仅当总资金积累的相对增长率k大于人口的相对率r时,国民平均收入才是增长的。
上图(1)是总资金积累量与时间的图像。
上图(2)是人口数与时间的关系。
上图(3)是国民平均收入与时间的关系。
所以综上,当人口激增时,在一定程度上,人口平均资金积累和国民平均收入都会减少,人们的生活水平将会下降。国家应该实施宏观调控来控制人口增长,以保证人们的生活水平进一步提高。
clear
a=input('give me a number\n');
y=1;
for s=2:ceil(sqrt(a))
if mod(a,s)==0
y=0;
end
end
b=input('do you want to know if it is prime ','s');
if b=='y'
if y
disp('yes, it is');
else
disp('no, it is not ');
end
end
如何用matlab实现程序调用GUI图形界面实现人机交互
[filename,pathname]=uigetfile(
{'txt;dat','数据文件(txt,dat)';
',','所有文件()'},
'请选择一个数据文件');
if isequal(filename,0)||isequal(pathname,0)
return;
end
fpathload=[pathname filename];
set(handlesgetsignal_editbox,'String',fpathload);%在editbox中实现路径显示
这一个可以实现前两个功能 但是具体的参数你要自己设定。
1、如下图所示,打开MATLAB软件后点击File/New/Script后,会出现文件编辑窗口:
2、在文件编辑窗口输入代码(以plot函数代码为例),如下图所示:
3、检查代码,确保没有错误后点击窗口中运行(Run)按钮,运行程序(如下图红色箭头所示按钮):
4、查看运行结果,由于利用plot函数绘制曲线,所以运行后出现如下红色箭头所指的二次曲线:
以上就是关于怎么实现matlab子程序的放置以及调用全部的内容,包括:怎么实现matlab子程序的放置以及调用、求解几个Matlab的程序、哪位好心人能帮忙写个简单的matlab程序 很着急 多谢!!等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)