MATLAB论文文档格式.docx
- 文档编号:19142805
- 上传时间:2023-01-04
- 格式:DOCX
- 页数:11
- 大小:549.96KB
MATLAB论文文档格式.docx
《MATLAB论文文档格式.docx》由会员分享,可在线阅读,更多相关《MATLAB论文文档格式.docx(11页珍藏版)》请在冰豆网上搜索。
2.
连续系统仿真--有解析表达式或系统结构图。
因子试验法--在系统上作局部试验,再根据试验结果进行不断分析修改,求得
所需的模型结构。
人工现实法--基于对系统过去行为的了解和对未来希望达到的目标,并考虑
到系统有关因素的可能变化,人为地组成一个系统。
4.应用MATLAB进行数学建模研究
数学是在实际应用的需求中产生的,
我们把遇到的实际问题进行分析,发现其中的可以用数学语言来描述的关系或规律,把这个实际问题转化成一个数学问题,建立了数学模型!
。
但数学模型迫切需要一个方便、快捷且功能强大的工具去实现并解决,特别是随着科技的进步,人们在解决问题的时候常常要用到许多比较复杂的数学知识和大量的数据计算,
这无疑加大了人们解决问题的难度,也要耗费更长的时间。
而MATLBA
正是在数学计算和大量数据处理方面具备其它软件所不具备的优势,且操作简单,运算速度快,所以应用MATLBA
进行数学建模也就大大提高了人们的效率。
而且MATLBA还有很强的绘图功能,这就可以使得模型图象化,使得研究人员对建模成果的优劣一目了然,容易进行修正与改进。
5.简单数模问题中MATLAB的应用
例1:
某公司2000年各月生产总值(单位:
万元)分别为:
22
60
88
95
56
23
9
10
14
81
23,试显示折线图表示该厂生产总值的变化情况。
在MATLAB命令窗口中键入:
>
p=[22,60,88,95,56,23,9,10,14,81,56,23];
plot(p);
可得:
如图:
问2:
根据表1数据作一个多子图。
要求:
第一个图各类网井产油量与年份曲线图,第二个图为01~05年各类网井产油量的对比直方图,第三个图为03年各类网井产油量的饼图,第四个图为七五井和十五井产油量年份的双座标图。
给如下数据:
各类井网在近几年的产油量(万吨)
年份:
199719981999200020012002200320042005
MATLAB语言来对此例题做以下解析:
figure('
position'
[50,50,800,650])
%在图形窗口左下角建立横纵坐标都为50的,宽度
800,高度650的窗
t1=1997:
2005;
%产生行向量t1
t2=2001:
%产生行向量t2
y1=[
500.6
442.4
428.6
370.1
343.1];
%一个行矩阵y1
y2=[
354.7
318.0
280.7
246.6
229.0];
%建立一个行矩阵y2
y3=[197.4
297
412.8
547.0
579.8
547.5
527.0
492.3
437.0];
%y3
y4=[
72.3
218.2
297.1
416.1
508.7]%建立一个行矩阵y4
subplot(2,2,1)%2*2个区中的1号区
plot(t2,y1,t2,y2,t1,y3,t2,y4);
%绘制二维图像
title('
各类网井产油量与年份曲线图'
);
%标题为各类网井产油量与年份曲线图
legend('
七五井'
'
八五井'
九五井'
十五井'
1);
%列出图标
y2=[500.6
437.0
343.1
229.0
508.4];
subplot(2,2,2)%2*2个区中的2号区
bar(t2,y2)
01~05年各类网井产油量的对比直方图'
%标题为01~05年各类网井产油量的对比直方图
t3=[343.1
508.7];
%产生行向量t3
subplot(2,2,3))%2*2个区中的3号区
pie(t3);
03年各类网井产油量的饼图'
%标题'
03年各类网井产油量的饼图
t4=2001:
1:
%产生行向量t4
y1=[354.7
y2=[72.3
%建立一个行矩阵y1
subplot(2,2,4);
%2*2个区中的4号区
plotyy(t4,y1,t4,y2);
七五井和十五井产油量与年份的双座标图'
%标题七五井和十五井产油量与年份的双座标图
得如下:
例3:
利用MATLAB建立线性系统的数学模型
传递函数表示
1.线性系统的模型建立
G(s)=Y(s)/U(s)=(6s^3+12s^2+6+10)/(s^4+2s^3+3s^2+s+1)
可以将其用下列MATLAB语句来实现:
num=[6
12
6
10];
den=[1
2
3
1
1];
printsys(num,den)
执行结果为
num/den
=
s^3
+
s^2
s
----------------------------
s^4
2.若给定的系统的传递函数为:
G(s)=4(s+2)(s^2+6s+6)/(s(s+1)^3(s^3+3s^2+2s+5))
解:
num=4*conv([1
2],[1
6])
num
4
32
72
48
den=conv([1
0],conv([1
1],conv([1
1],[1
5])))
den
5
0
关于从状态空间形式到零极点形式的转换
MATLAB函数ss2zp()的调用格式为:
[Z,P,K]=ss2zp(A,B.C,D,iu)
其中,A,B,C,D为状态空间形式的个系数矩阵;
iu为输入的代号。
对于单变量系统iu=1,对于多变量系统iu表示要求的输入序号;
返回量矩阵P
储存传递函数的极点;
而零点储存在矩阵Z中,
Z的列数等于输出y的维数,每列对应一个输出;
对应增益则在列向量K中。
如下示例:
对于以给出状态空间表达式,是根据以上函数求取系统的传递函数矩阵。
X(t)=[0
1;
-3/2
-2
-1/2;
-3
-4]x(t)+[1
-1
-1;
-3]u(t)
Y(t)=[1
0;
0]x(t)
此系统可由以下MATLAB语句唯一地表示出来
A=[0
-4]
B=[1
-3]
C=[1
0],D=zeros(2,2)
实验过程如下
A
1.0000
-1.5000
-2.0000
-0.5000
-3.0000
-4.0000
B
C
D
再运行:
[Z1,P1,K1]=ss2zp(A,B,C,D,1),[Z2,P2,K2]=ss2zp(A,B,C,D,2)
窗口中出现
Z1
P1
K1
=1
Z2
-1.0000
P2
K2
再看一个将此多变量系统求其传递函数矩阵的例子
还是上一个例子的系统
解
利用以下MATLAB语句
[num1,den1]=ss2tf(A,B,C,D,1),[num2,den2]=ss2tf(A,B,C,D,2)
结果显示:
num1
5.0000
6.0000
-5.0000
-6.0000
den1
11
num2
3.0000
2.0000
den2
从而可得系统的传递函数矩阵为:
1
1^256^2321
13()=(^256)(^243)1
1^36^21161
2ssssssGssssssssss
通过MATLAB进行最优控制系统设计:
4,已知系统的状态空间表达式为:
010000100231100xxuyx试求使得性能指标:
(^^)0
JxTQxuTRudt
为最小的最优控制u=-Kx的反馈增益矩阵K。
其中:
10000010,1001QR
MATLAB程序为:
%ex8_15.m
];
B=[0;
C=[1;
0];
D=0;
Q
=diag([100;
1]);
R=1;
[K,P,r]=lqr(A,B,Q,R)
t=0:
0.1:
10;
figure
(1);
step(A-B*K,B,C,D,1,t);
figure
(2);
[y,x,t]=
plot(t,x,’y’)
执行后得如下结果和如图8—15所示的阶跃响应曲线。
K
10.0000
8.3632
2.1697
P
103.6316
51.6975
37.5749
r
-2.7055
-1.2321
1.4758i
-
1.4758i
再次如图
例4:
多目标规划模型
问题一.某钢铁厂准备用5000万用于A、B两个项目的技术改造投资。
设x1、x2分别表示分配给项目A、B的投资。
据专家预估计,投资项目A、B的年收益分别为70%和66%。
同时,投资后总的风险损失将随着总投资和单项投资的增加而增加,已知总的风险损失为0.02x12+0.01x22+0.04(x1+x2)2,问应如何分配资金才能使期望的收益最大,同时使风险损失为最小
建立数学模型
max
f1(x)=70x1+66x2
min
f2(x)=
0.02x12+0.01x22+0.04(x1+x2)2
x1+x2≤5000
0≤x1,
0≤x2
线性加权构造目标函数:
f=0.5f1(x)
–0.5f2(x)
化最小值问题:
(-f)=-
0.5f1(x)
+0.5f2(x)
首先编辑目标函数M文件ff11.m
function
f=ff11(x)
%建立函数
f=-0.5*(70*x
(1)+66*x
(2))+0.5*(0.02*x
(1)^2+0.01*x
(2)^2+0.04*(x
(1)+x
(2))^2);
%建立函数关系调用单目标规划求最小值问题的函数
x0=[1000,1000]
%建立矩阵
A=[1
b=5000;
lb=zeros(2,1);
[x,fval,
exitflag]=fmincon(@ff11,x0,
A,b,[],[],lb,[])
%使用函数来求值
f1=70*x
(1)+66*x
(2)
%建立函数关系
f2=0.02*x
(1)^2+0.01*x
(2)^2+0.04*(x
(1)+x
(2))^2%建立函数关系
结果:
x
307.1428
414.2857
fval
-1.2211e+004
exitflag
f1
4.8843e+004
f2
2.4421e+004
六、总结
通过以上对“MATLAB在简单数学建模中的应用”
的分析。
我们可以认识到MATLAB
中强大的绘图功能以及可靠的数值计算和符号计算功能,它的应用几乎涉及各个领域。
因为它的存在很多的问题也变得十分简单了。
Matlab软件能将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案。
七、体会
经过对MATLAB语言这门课程的学习,我了解并体会到了MATLAB语言相对于其它程序语言的强大功能和优越性,它更加的方便和简洁易懂。
总体来说通过对上述内容的分析讨论,使我对MATLAB中的某些函数的应用更加的熟练,相信对我在以后的学习中会有很大的帮助。
[参考文献]
[1]
赵静.数学建模与数学实验[M].北京:
高等教育出版社,
2000.
[2]
蔡常丰.数学模型建模分析[M].北京:
科学出版社
1995.
[3]
王沫然.
MATLBA与科学计算[M].北京:
电子工业出版社,2001
.
[4]
陈怀琛.MATLBA
及其在理工课程中的应用指南[M].北京:
西北电子科技大学出2001.
[5]
谢兆鸿.数学建模技术[M].北京:
中国水利水电出版社,2003
.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MATLAB 论文