数学建模实验报告1 下载本文

桂林电子科技大学2017-2018学年第1学期

数学建模

实验名称 院系 学号 同作者 实验日期 掌握Matlab基本的编程与作图功能 计算机与信息安全学院 专业 计算机科学与技术 姓名 2017 年 12 月 17 日 检查情况: 成绩教师签名: 一、实验目的

1. 熟悉MATLAB软件的用户环境; 2. 了解MATLAB软件的一般命令;

3. 掌握MATLAB向量、数组、矩阵操作与运算函数; 4. 掌握MATLAB软件的基本绘图命令;

5. 掌握MATLAB语言的几种循环、条件和开关选择结构及其编程规范。 二、实验内容

1. MATLAB软件的矩阵输入和操作

2. 用MATLAB语言编写命令M文件和函数M文件 3. 直接使用MATLAB软件进行作图练习; 三、实验任务

1. 有一个4×5的矩阵,编程求出其元素最大值及其所在的位置。

Jm.m文件代码: clear;

a=input('请输入一个4*5矩阵'); max=a(1,1); maxi=0; maxj=0; for i=1:4 for j=1:5

if a(i,j)>max max=a(i,j); maxi=i; maxj=j;

end end end

fprintf('最大值为:%d位置:o%d %d \\n',max,maxi,maxj); 实验结果:

2. 有一函数f(x,y)=x2+sin xy+2y,写一程序,输入自变量的值,输出函数值。

Jm_5.m文件代码: function f=Jm_5(x,y) f=x.^2+sin(x*y)+2*y;

实验结果:

3. 用surf,mesh绘制曲面z=2x2+y2。

Jm5.m代码: x=-3:0.1:3; y=1:0.1:5;

[X,Y]=meshgrid(x,y); Z=2*X.^2+Y.^2;

subplot(1,2,1);surf(X,Y,Z);title('surf(x,y)'); subplot(1,2,2);mesh(X,Y,Z);title('mesh(x,y)'); 实验结果:

4. 在同一平面的两个窗口中分别画出心形线和马鞍面。要求: (1) 在图形上加格栅、图例和标注 (2) 定制坐标

(3) 以不同的角度观察马鞍面 Jm7.m文件代码:

ax1=subplot(1,2,1);

t=linspace(0,2*pi,400);

f1=polar(t,1+cos(t)); title('心形线');

legend(f1,'r=1+cost')

ax2=subplot(1,2,2); x1=linspace(-40,20,40); y1=linspace(-40,20,40); [X,Y]=meshgrid(x1,y1); Z=X.^2-Y.^2; f2=surf(X,Y,Z); title('马鞍面');

legend(f2,'z=x^2-y^2','Location','Northeast') xlabel('x轴') ylabel('y轴') zlabel('z轴')

axis([-40 20 -40 20 -1000 1500])

setAllowAxesRotate(rotate3d,ax1,false); grid on 实验结果:

四、实验总结

通过本次实验基本掌握了MATLAB软件的基本操作、矩阵的操作、函数的创建、.m文件的创建及使用、MATLAB软件的画图功能。