常州大学MATLAB实习报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
序号:
学号: 11461101
C H A N G
Z H
O U U N I V
E
R S I T Y
实 习 报 告
实习课程名称: Matlab 应用软件实习 实 习 题 目: Matlab 综合应用 学 生 姓 名: 学 院(系): 数理学院 专 业 班 级: 校内指导教师: 张燕新 专业技术职务: 讲师
实习时间: 2013 年 12 月 30 日 2014 年 1 月 10 日
目录
摘要 (3)
背景 (3)
详细求解 (3)
实习感想 (19)
参考文献 (19)
摘要
MATLAB和Mathematica、Maple并称为三大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指,它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言的编辑模式,代表了当今国际科学计算软件的先进水平。
背景
MATLAB是一种面向科学与工程的高级语言,由于其集成了许多领域的工具箱,因此又被称为“巨人肩上的工具”。
MATLAB 语言是当今国际上科学界 (尤其是自动控制领域) 最具影响力、也是最有活力的软件。它起源于矩阵运算,并已经发展成一种高度集成的计算机语言。它提供了强大的科学运算、灵活的程序设计流程、高质量的图形可视化与界面设计、便捷的与其他程序和语言接口的功能。MATLAB 语言在各国高校与研究单位起着重大的作用。 MATLAB由一系列工具组成。这些工具方便用户使用MATLAB 的函数和文件,其中许多工具采用的是图形用户界面。包括MATLAB桌面和命令窗口、历史命令窗口、编辑器和调试器、路径搜索和用于用户浏览帮助、工作空间、文件的浏览器。随着MATLAB的商业化以及软件本身的不断升级,MATLAB的用户界面也越来越精致,更加接近Windows的标准界面,人机交互性更强,操作更简单。而且新版本的MATLAB提供了完整的联机查询、帮助系统,极大的方便了用户的使用。简单的编程环境提供了比较完备的调试系统,程序不必经过编译就可以直接运行,而且能够及时地报告出现的错误及进行出错原因分析。Matlab是一个高级的矩阵/阵列语言,它包含控制语句、函数、数据结构、输入和输出和面向对象编程特点。用户可以在命令窗口中将输入语句与执行命令同步,也可以先编写好一个较大的复杂的应用程序(M文件)后再一起运行。新版本的MATLAB语言是基于最为流行的C++语言基础上的,因此语法特征与C++语言极为相似,而且更加简单,更加符合科技人员对数学表达式的书写格式。使之更利于非计算机专业的科技人员使用。而且这种语言可移植性好、可拓展性极强,这也是MATLAB能够深入到科学研究及工程计算各个领域的重要原因。
详细求解
3.已知t=an2+bn,测得对应数据如下:(多项式插值interp1)t=[0,20,40,60,80,100,120,140,160,183.5];
n=[0,1153,2045,2800,3466,4068,4621,5135,5619,6152];
试求a 和b 的值。
t=[0,20,40,60,80,100,120,140,160,183.5];
n=[0,1153,2045,2800,3466,4068,4621,5135,5619,6152]; t0=[0,20,40,60,80,100,120,140,160,183.5];
n0=[0,1153,2045,2800,3466,4068,4621,5135,5619,6152]; n=0:0.001:6152;
t=interp1(n0,t0,n,'spline'); % interp1函数进行多项式插直 p=polyfit(n,t,2) %polyfit 函数进行多项拟合 p =
0.0000 0.0144 0.0631
4.请用梯形法、辛普森法分别计算积分值⎰++102
1dx x x (trapz 、quad ) f=inline('sqrt(x.^2+x+1)','x'); % inline 定以内置函数
>> quad(f,0,1) % 辛普森法 ans =
1.3369
>> x=0:0.01:1;y=sqrt(x.^2+x+1);
trapz(x,y) % trapz 为梯形法 ans =
1.3369
5计算二重积分
⎰⎰+++++102
2
2
)12(dxdy
y x xy y x
(使用函数dblquad )
dblquad('x.^2+y.^2+x*y+2*x+y+1', 0, 1, 0, 2) %函数求解二重积分 ans =
10.3333
8 用两种方法求解Ax=b 的解。(A 为四阶随机矩阵,b 为四阶向量,自己创建)。
方法1.A=rand(4) A =
0.8147 0.6324 0.9575 0.9572 0.9058 0.0975 0.9649 0.4854 0.1270 0.2785 0.1576 0.8003 0.9134 0.5469 0.9706 0.1419 >> B=[1;2;3;4];x=inv(A)*B %求矩阵的逆 x =
73.6009
6.6966 -69.4126 3.4100
方法2. A(:,5)=B;rref(A) %将A 化为阶梯状 ans =
1.0000 0 0 0 73.6009
0 1.0000 0 0 6.6966 0 0 1.0000 0 -69.4126 0 0 0 1.0000 3.4100
9.)1(5)25.1/()8.0()(323x
x x x x x f +-+-+=,用两种方法求函数的根,并求其极
值与零点。 求根.
solve('x^3+(x-4/5)^2/(x+5/4)^3-5*x-5/x');
x=double(ans); >> for i=1:length(x) xx(i)=isreal(x(i)); end >> x=x(xx) x =
2.4156
零点 fzero('x.^3+(x-0.8).^2/(x+1.25).^3-5*(x+1/x)',3) ans = 2.4156 极值: >> syms x y
>> y=x.^3+(x-0.8).^2/(x+1.25).^3-5*(x+1/x); >> dydx=diff(y);
>> solve(dydx);x=double(ans);
>> for i=1:length(x)
xx(i)=isreal(x(i)); end >> t=x(xx) t =
-0.4694 -2.4039 >> x=t(1);y1=subs(y)