文档库 最新最全的文档下载
当前位置:文档库 › 西邮matlab实验课后答案第二章

西邮matlab实验课后答案第二章

西邮matlab实验课后答案第二章
西邮matlab实验课后答案第二章

1、程序:

clear;

M=[4,5,7,10]

N=12;

n=0:2*N-1;

for i=1:length(M)

y=sin(2*pi*M(i)*n/N);

subplot(length(M),1,i);plot(n,y);

hold on

stem(n,y,'r');

s=int2str(M(i))

title(['M=' s]);

End

图:

2、程序:

clear all;

N=20;

T=1;

fs=1/T;

N_sample=128;

dt=1/N_sample;

t=0:dt:10*T-dt;

n=-N:N;

Fn=(1/2)*sinc(n/2).*exp(-j*pi*n/2); Fn(N+1)=1/2;

ft=zeros(1,length(t));

for m=-N:N;

ft=ft+Fn(m+N+1)*exp(j*2*pi*m*fs*t); end

plot(t,ft)

图:

3、主程序:

clear all;

T=1;

N_sample=128;

dt=1/N_sample;

t=0:dt:T-dt;

st=[ones(1,N_sample/2),zeros(1,N_sample/2)]; subplot(311);

plot(t,st);

axis([0 1 -2 2]);

xlabel('t');

ylabel('s(t)');

subplot(312)

[f,sf]=T2F(t,st);

plot(f,abs(sf));

hold on;

axis([-10 10 0 1]);

xlabel('f');

ylabel('S|f|');

sff=(exp(-j*pi*f*T)-1)./(-j*2*pi*f); plot(f,abs(sff),'o')

[t,st]=F2T(f,sf);

subplot(313);

axis([0 1 -2 2]);

xlabel('t');

ylabel('恢复的s(t)');

plot(t,st);

图:

00.20.4

0.60.81

-20

2

t

s (t )

-10

-5051000.5

1f S |f

|00.20.4

0.60.81-20

2

t 恢复的s (t )

MATLAB数学实验第二版答案(胡良剑)

数学实验答案 Chapter 1 Page20,ex1 (5) 等于[exp(1),exp(2);exp(3),exp(4)] (7) 3=1*3, 8=2*4 (8) a为各列最小值,b为最小值所在的行号 (10) 1>=4,false, 2>=3,false, 3>=2, ture, 4>=1,ture (11) 答案表明:编址第2元素满足不等式(30>=20)和编址第4元素满足不等式(40>=10) (12) 答案表明:编址第2行第1列元素满足不等式(30>=20)和编址第2行第2列元素满足不等式(40>=10) Page20, ex2 (1)a, b, c的值尽管都是1,但数据类型分别为数值,字符,逻辑,注意a与c相等,但他们不等于b (2)double(fun)输出的分别是字符a,b,s,(,x,)的ASCII码 Page20,ex3 >> r=2;p=0.5;n=12; >> T=log(r)/n/log(1+0.01*p) Page20,ex4 >> x=-2:0.05:2;f=x.^4-2.^x; >> [fmin,min_index]=min(f) 最小值最小值点编址 >> x(min_index) ans = 0.6500 最小值点 >> [f1,x1_index]=min(abs(f)) 求近似根--绝对值最小的点 f1 = 0.0328 x1_index = 24 >> x(x1_index) ans = -0.8500 >> x(x1_index)=[];f=x.^4-2.^x; 删去绝对值最小的点以求函数绝对值次小的点 >> [f2,x2_index]=min(abs(f)) 求另一近似根--函数绝对值次小的点 f2 = 0.0630 x2_index = 65 >> x(x2_index) ans = 1.2500

数学实验练习题(MATLAB)

注意:在下面的题目中m 为你的学号的后3位(1-9班)或4位(10班以上). 第一次练习题 1.求解下列各题: 1)30sin lim x mx mx x ->- 2)(4)cos ,1000.0=x mx y e y 求 3)21/2 0mx e dx ?(求近似值,可以先用inline 定义被积函数,然后用quad 命令) 4)4 224x dx m x +? 5 0x =展开(最高次幂为8). 2.对矩阵21102041A m -?? ?= ? ?-?? ,分别求逆矩阵,特征值,特征向量,行列式,并求矩阵,P D (D 是对角矩阵),使得1A PDP -=。 3. 已知2 1(),()2f x e x μσ=--分别在下列条件下画出)(x f 的图形: (1)/600m σ=,μ分别为0,1,1-(在同一坐标系上作图); (2)0μ=,σ分别为1,2,4,/100m (在同一坐标系上作图). 4.画 (1)sin 020cos 02100x u t t y u t u t z m ??=≤≤?=?≤≤??=?

(2) sin()03,03z mxy x y =≤≤≤≤ (3)sin()(/100cos )02cos()(/100cos )02sin x t m u t y t m u u z u π π=+?≤≤?=+?≤≤?=? 的图(第4题只要写出程序). 5.对于方程50.10200 m x x --=,先画出左边的函数在合适的区间上的图形,借助于软件中的方程求根的命令求出所有的实根,找出函数的单调区间,结合高等数学的知识说明函数为什么在这些区间上是单调的,以及该方程确实只有你求出的这些实根。最后写出你做此题的体会. 第二次练习题 判断迭代收敛速度的程序 x0=1;stopc=1;eps=10^(-8);a=1;c=1;b=2*c;d=a;k=0; f=inline('(a*x+b)/(c*x+d)'); kmax=100; while stopc>eps&k

Matlab上机实验答案

Matlab上机实验答案 实验一 MATLAB运算基础 1. 先求下列表达式的值,然后显示MATLAB工作空间的使用情况并保存全部变量。 >> z1=2*sin(85*pi/180)/(1+exp(2)) z1 = >> x=[2 1+2i; 5]; >> z2=1/2*log(x+sqrt(1+x^2)) z2 = - + + -

>> a=::; >> z3=(exp.*a)-exp.*a))./2.*sin(a++log(+a)./2) (>> z33=(exp*a)-exp*a))/2.*sin(a++log(+a)/2)可以验证z3==z33,是否都为1) z3 = Columns 1 through 5 + + + + + Columns 6 through 10 + + + + + Columns 11 through 15 + + + + + Columns 16 through 20 + + + + +

Columns 21 through 25 + + + + + Columns 26 through 30 + + + + + Columns 31 through 35 + + + + + Columns 36 through 40 + + + + + Columns 41 through 45 + + + + + Columns 46 through 50

+ + + + + Columns 51 through 55 + + + + + Columns 56 through 60 + + + + + Column 61 + (4) 2 2 4 2 01 112 2123 t t z t t t t t ?≤< ? =-≤< ? ?-+≤< ? ,其中t=0:: >> t=0::; >> z4=(t>=0&t<1).*(t.^2)+(t>=1&t<2).*(t.^2-1)+(t>=2&t<3).*(t.^ 2-2.*t+1) z4 =

MATLAB全部实验及答案

MATLAB全部实验及答案 实验一、MATLAB基本操作 实验内容及步骤 4、有关向量、矩阵或数组的一些运算 (1)设A=15;B=20;求C=A+B与c=a+b? (2)设A=[1 2 3;4 5 6;7 8 9],B=[9 8 7;6 5 4;3 2 1];求A*B与 A.*B? A*B就是线代里面的矩阵相乘 A.*B是对应位置的元素相乘(3)设a=10,b=20;求i=a/b=0.5与j=a\b=2? (4)设a=[1 -2 3;4 5 -4;5 -6 7] 请设计出程序,分别找出小于0的矩阵元素及其位置(单下标、全 下标的形式),并将其单下标转换成全下标。 clear,clc a=[1 -2 3;4 5 -4;5 -6 7]; [x,y]=find(a<0); c=[]; for i=1:length(x) c(i,1)=a(x(i),y(i)); c(i,2)=x(i); c(i,3)=y(i); c(i,4)=(y(i)-1)*size(a,2)+x(i); end c

(5)在MATLAB命令行窗口运行A=[1,2;3,4]+i*[5,6;7,8];看结果如何?如果改成运行A=[1,2;3,4]+i[5,6;7,8],结果又如何?前面那 个是虚数矩阵,后面那个出错 (6)请写出完成下列计算的指令: a=[1 2 3;3 4 2;5 2 3],求a^2=?,a.^2=? a^2= 22 16 16 25 26 23 26 24 28 a.^2= 1 4 9 9 16 4 25 4 9 (7)有一段指令如下,请思考并说明运行结果及其原因 clear X=[1 2;8 9;3 6]; X( : ) 转化为列向量 (8)使用三元组方法,创建下列稀疏矩阵 2 0 8 0 0 0 0 1 0 4 0 0 6 0 0 0 方法一: clear,clc

MATLAB学习报告

MATLAB学习报告 在上大学之前,计算机在我的印象和生活中都是一种用于娱乐的机器, 玩游戏、上网、看电影、听音乐和偶尔搜索资料。来到大学以后,我对计算机 的用途有了新的认识。大一的一年里我们接触了很多不同类型的软件有作图的,有做视频的等等。我们还学习了c语言,虽然只是学习的一些皮毛,但是我觉 得这一点皮毛足以改变我对计算机的使用和看法了。 首先我们来介绍一下MATLAB,全称是MATrix LABoratory,即矩阵实验室,是Math work公司推出的一套高效率的数值计算和可视化软件。它是当今 科学界最具影响力、也是最具活力的软件,它起源于矩阵运算,并高速发展成 计算机语言。它的优点是强大的科学运算、灵活的程序设计流程、高质量的图 形可视化与界面、便捷的与其他程序和语言接口。Matlab软件的功能。它提供 了强大的科学运算、灵活的程序设计流程、高质量的图形可视化与界面设计、 便捷的与其他程序和语言接口的功能。在国际学术界,Matlab已经被确认为准确、可靠的科学计算标准软件。在国际一流的学术刊物上,尤其是信息科学刊 物上,都可以看到Matlab的应用。 一种语言之所以能如此迅速地普及,显示出如此旺盛的生命力,是由于 它有着不同于其他语言的特点。正如同FORTRAN和C等高级语言使人们摆脱了 需要直接对计算机硬件资源进行操作一样,被称作为第四代计算机语言的MATLAB,利用其丰富的函数资源,使编程人员从繁琐的程序代码中解放出来。MATLAB的最突出的特点就是简洁。MATLAB用更直观的、符合人们思维习惯的代码,代替了C和FORTRAN语言的冗长代码。MATLAB给用户带来的是最直观、最 简洁的程序开发环境。以下简单介绍一下MATLAB的主要特点: 1、Matlab一个高级的距阵/阵列语言,它包含控制语句、函数、数据结构、输入和输出和面向对象编程特点。用户可以在命令窗口中将输入语句与执 行命令同步,也可以先编写好一个较大的复杂的应用程序(M文件)后再一起运行。新版本的MATLAB语言是基于最为流行的C++语言基础上的,因此语法特 征与C++语言极为相似,而且更加简单,更加符合科技人员对数学表达式的 书写格式。使之更利于非计算机专业的科技人员使用。而且这种语言可移植性好、可拓展性极强,这也是MATLAB能够深入到科学研究及工程计算各个领域的重要原因。 2、Matlab的数据库的可覆盖性,可调用性。我记得C语言中,假如你得 调用一个数值,必须是局部函数中赋值,否则就定义为全局变量。还有在C语 言中数据的变量储存是一个问题,自动的有auto,静态变量有static和register。我们有时候很难记忆,所以数据储存容易出现问题。而Matlab软件的数据是由于MATLAB 语言库函数与用户文件的形式相同所以用户文件可以像 数据库函数一样随意调用。所以用户可根据自己的需要任意扩充函数库。 3、Matlab软件编程的简便性,清晰性。用Matlab软件设计程序,它更 加方便快捷。MATLAB 的基本数据单元是既不需要指定维数、也不需要说明数据类型的矩阵,而且数学表达式和运算规则与通常的习惯相同。因此,在MATLAB 环境下,数组的操作与数的操作一样简单。对比C语言,Matlab确实简单不少。我们在编写程序时简便了许多。例如,求1 1 2 3 5 8 13?这个算法。C语言得用许多的语句去循环算这个算法。而Matlab软件可以首先数据初始化,然后用while去循环,做出循环体,就可以你要多少数据,它会给你多少数据。还有

MATLAB)课后实验答案

实验一 MATLAB 运算基础 1. 先求下列表达式的值,然后显示MATLAB 工作空间的使用情况并保存全部变量。 (1) 012 2sin 851z e =+ (2) 21ln(2 z x =,其中2 120.45 5i x +??=? ?-?? (3) 0.30.330.3sin(0.3)ln , 3.0, 2.9,,2.9,3.022 a a e e a z a a --+= ++=--L (4) 22 42011 122123t t z t t t t t ?≤

4. 完成下列操作: (1) 求[100,999]之间能被21整除的数的个数。 (2) 建立一个字符串向量,删除其中的大写字母。解:(1) 结果: (2). 建立一个字符串向量例如: ch='ABC123d4e56Fg9';则要求结果是:

实验二 MATLAB 矩阵分析与处理 1. 设有分块矩阵33322322E R A O S ?????? =? ??? ,其中E 、R 、O 、S 分别为单位矩阵、随机矩阵、零矩阵和对角阵,试通过数值计算验证22 E R RS A O S +?? =???? 。 解: M 文件如下; 5. 下面是一个线性方程组: 1 231 1 12340.951110.673450.5211145 6x x x ?? ??????????????=??? ?????????????????? ? ch = 123d4e56g9

(1) 求方程的解。 (2) 将方程右边向量元素b 3改为0.53再求解,并比较b 3的变化和解的相对变化。 (3) 计算系数矩阵A 的条件数并分析结论。 解: M 文件如下: 实验三 选择结构程序设计 1. 求分段函数的值。 2226035605231x x x x y x x x x x x x ?+-<≠-? =-+≤<≠≠??--? 且且及其他 用if 语句实现,分别输出x=-5.0,-3.0,1.0,2.0,2.5,3.0,5.0时的y 值。 解:M 文件如下:

浅析Matlab数学实验报告

数学实验报告 姓名: 班级: 学号: 第一次实验任务 过程: a=1+3i; b=2-i; 结果: a+b =3.0000 + 2.0000i a-b =-1.0000 + 4.0000i a*b = 5.0000 + 5.0000i a/b = -0.2000 + 1.4000i 过程: x=-4.5*pi/180; y=7.6*pi/180; 结果: sin(abs(x)+y)/sqrt(cos(abs(x+y))) =0.2098 心得:对于matlab 中的角度计算应转为弧度。 (1)过程: x=0:0.01:2*pi; y1=sin(x); y2=cos(x); y3=exp(x); y4=log(x); plot(x,y1,x,y2,x,y3,x,y4) plot(x,y1,x,y2,x,y3,x,y4) 结果: (2)过程:>> subplot(2,2,1) >> plot(x,y1) >> subplot(2,2,2) >> plot(x,y2) ./,,,,2,311b a b a b a b a i b i a ?-+-=+=计算、设有两个复数 6,7,5.4)

cos()sin(2=-=++y x y x y x ,其中、计算的图形。 下分别绘制)同一页面四个坐标系)同一坐标系下(、在( x y e y x y x y x ln ,,cos ,sin 213==== >> subplot(2,2,3) >> plot(x,y3) >> subplot(2.2.4) >> subplot(2,2,4) >> plot(x,y4) 结果: 心得:在matlab中,用subplot能够实现在同一页面输出多个坐标系的图像,应注意将它与hold on进行区别,后者为在同一坐标系中划出多条曲线。 5、随机生成一个3x3矩阵A及3x2矩阵B,计算(1)AB,(2)对B中每个元素平方后得到的矩阵C,(3)sinB,(4)A的行列式,(5)判断A是否可逆,若可逆,计算A的逆矩阵,(6)解矩阵方程AX=B,(7)矩阵A中第二行元素加1,其余元素不变,得到矩阵D,计算D。 过程:A=fix(rand(3,3).*10) ; B=fix(rand(3,3).*10);

南邮MATLAB数学实验答案(全)

第一次练习 教学要求:熟练掌握Matlab 软件的基本命令和操作,会作二维、三维几何图形,能够用Matlab 软件解决微积分、线性代数与解析几何中的计算问题。 补充命令 vpa(x,n) 显示x 的n 位有效数字,教材102页 fplot(‘f(x)’,[a,b]) 函数作图命令,画出f(x)在区间[a,b]上的图形 在下面的题目中m 为你的学号的后3位(1-9班)或4位(10班以上) 1.1 计算30sin lim x mx mx x →-与3 sin lim x mx mx x →∞- syms x limit((902*x-sin(902*x))/x^3) ans = 366935404/3 limit((902*x-sin(902*x))/x^3,inf) ans = 0 1.2 cos 1000 x mx y e =,求''y syms x diff(exp(x)*cos(902*x/1000),2) ans = (46599*cos((451*x)/500)*exp(x))/250000 - (451*sin((451*x)/500)*exp(x))/250 1.3 计算 22 11 00 x y e dxdy +?? dblquad(@(x,y) exp(x.^2+y.^2),0,1,0,1) ans = 2.1394 1.4 计算4 2 2 4x dx m x +? syms x int(x^4/(902^2+4*x^2)) ans = (91733851*atan(x/451))/4 - (203401*x)/4 + x^3/12 1.5 (10)cos ,x y e mx y =求 syms x diff(exp(x)*cos(902*x),10) ans = -356485076957717053044344387763*cos(902*x)*exp(x)-3952323024277642494822005884*sin(902*x)*exp(x) 1.6 0x =的泰勒展式(最高次幂为4).

MATLAB实验题答案

1、求以下变量的值,并在MATLAB中验证。( 1 ) a = 1 : 2 : 5 a = 1 3 5 ( 2 ) b = [ a' , a' , a' ;a ] b = 1 1 1 3 3 3 5 5 5 1 3 5 ( 3 ) c = a + b ( 2 , : ) c = 4 6 8 2、下列运算是否合法,为什么?如合法, 结果是多少? >> result2=a*b Error using * Inner matrix dimensions must agree. >> result3=a+b result3 = 3 6 2 5 8 11 >> result4=b*d result4 = 31 22 22 40 49 13 >> result5=[b;c']*d result5 = 31 22 22 40 49 13 -5 -8 7 >> result6=a.*b result6 = 2 8 -3 4 1 5 30 >> result7=a./b result7 = 0.5000 0.5000 -3.0000 4.0000 1.6667 1.2000>> result8=a.c Attempt to reference field of non-structure array. >> result9=a.\b result9 = 2.0000 2.0000 -0.3333 0.2500 0.6000 0.8333 >> result10=a.^2 result10 = 1 4 9 16 25 36 >> result11=2.^a result11 = 2 4 8 16 32 64 3、用MATLAB求解下面的的方程组。 (1) ? ? ? ? ? ? ? ? ? ? ? ? - = ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? - - - - 1 7 4 13 2 3 1 5 11 2 2 2 3 15 9 2 1 2 7 4 3 2 1 x x x x >> A=[7 2 1 -2;9 15 3 -2;-2 -2 11 5;1 3 2 13] >> B=[4 7 -1 0] >> B=B' >> x=inv(A)*B (2) ? ? ? ? ? ? ? = - + + = - - = - + + = + + 5 6 5 3 3 3 3 2 8 2 1 w z y x w y x w z y x z y x >> A1=[1 1 1 0;1 2 1 -1;2 -1 0 -3;3 3 5 -6] >> B2=[1;8;3;5] >> x2=inv(A1)*B2 4、已知 ? ? ? ? ? ? ? ? ? ? ? ? - - - - = 13 2 3 1 5 11 2 2 2 3 15 9 2 1 2 7 A

matlab学习心得体会(精选3篇)

matlab学习心得体会(精选3篇) matlab学习心得体会一:matlab学习心得matlab中有丰富的图形处理能力,提供了绘制各种图形、图像数据的函数。他提供了一组绘制二维和三维曲线的函数,他们还可以对图形进行旋转、缩放等操作。matlab内部还包含丰富的数学函数和数据类型,使用方便且功能非常强大。 本学期通过对matlab的系统环境,数据的各种运算,矩阵的分析和处理,程序设计,绘图,数值计算及符号运算的学习,初步掌握了matlab的实用方法。通过理论课的讲解与实验课的操作,使我在短时间内学会使用matlab,同时,通过上机实验,对理论知识的复习巩固实践,可以自己根据例题编写设计简单的程序来实现不同的功能,绘制出比较满意的二维三维图形,在实践中找到乐趣。 matlab是一个实用性很强,操作相对容易,比较完善的工具软件,使用起来比较方便,通过操作可以很快看到结果,能够清晰的感觉到成功与失败,虽然课程中也会出现一些小问题,但是很喜欢这门课程。 matlab学习心得体会二:matlab学习心得(463字) 学习matlab是听说它是一个功能强大的数学软件,但是正被微积分的计算缠身,听说有一个高级的计算器当然高兴,以后可以偷懒了,当然现在不能偷懒。听说关于自动化的计算特别复杂,如果有一种软件能帮忙解题,那是一种极大的解脱,有益于缩短研究时间。目前我只知道有三种数学软件,都是国外的,没有国内的,差距挺大的。matlab学起来挺顺手的,比c语言简单。但是深入学习的时候却困难重重,因为很多知识都没有学习,就算知道那些函数,也没有什么用处。老师布置的作业难度大,写一篇实验,大一什么都不会,写一篇这种论文谈何容易。最多也就会一些数值计算、符号计算、简单绘图,根本不会什么实验。 学习matlab体会最多的是这个软件的功能强大,好多数学题都被轻易的解出。但是有一点遗憾,不知是我不会用,还是它没个功能,已知空间的电荷分布,求空间的电场分布。其中电场分布是无法用函数表达式表示。我知道计算机肯定可以实现,但是这个软件能不能实现就不知道了,我看过许多资料,但是在这方面没有提到相关信息。 总之,这个软件功能强大,不知什么时候国内才有类似的软件。 matlab学习心得体会三:学习matlab的心得(817字) 这是我在学习的过程中的一些技巧,或许对你有帮助,可能字数不你能满足你的要求,但是绝对是精华。

matlab 数学实验 迭代 _ 蛛网图(免积分)

数学实验—实验报告(免积分) 一、实验项目:Matlab实验三—迭代 二、实验目的和要求 a.熟悉MATLAB软件的用户环境,掌握其一般目的命令和MATLAB数组操作与 运算函数; b.掌握MATLAB软件的绘图命令,能够熟练应用循环和选择结构实现各种循环 选择功能; c.借助MATLAB软件的绘图功能,对函数的特性进行探讨,广泛联想,大胆猜 想,发现进而证实其中的规律。 三、实验内容 问题一:将方程53 x x x +-+=改写成各种等价的形式进行迭代 5210 观察迭代是否收敛,并给出解释。 问题二:迭代以下函数,分析其收敛性。 4 f(x)=x-a 使用线性连接图、蛛网图或费根鲍姆图对参数a进行讨论和观察,会得到什么结论? 问题一: (1)画图 x1=-6:0.01:6; x2=-3:0.01:3; x3=-1:0.01:1; x4=-0.8:0.01:-0.75; y1=x1.^5 +5*x1.^3-2*x1+1; y2=x2.^5 +5*x2.^3-2*x2+1; y3=x3.^5 +5*x3.^3-2*x3+1; y4=x4.^5 +5*x4.^3-2*x4+1; subplot(2,2,1),plot(x1,y1) ,title('图(1)') ,grid on, subplot(2,2,2),plot(x2,y2) ,title('图(2)'),grid on, subplot(2,2,3),plot(x3,y3) ,title('图(3)'),grid on, subplot(2,2,4),plot(x4,y4) ,title('图(4)') ,grid on,

MATLAB实训小结

实训小结 为期一周的MATLAB实训在学习与忙碌中度过了,时间虽短,但我们却真真切切的学到了知识,在现实工作中可以运用的知识。 在第一节课,我们便了解到MATLAB是世界上最流行的、应用最广泛的工程计算和仿真软件,它将计算、可视化和编程等功能同时集于一个易于开发的环境。MATLAB主要应用于数学计算、系统建模与仿真、数学分析与可视化、科学与工程绘图和用户界面设计等。对MATLAB的系统结构和特点等,老师也向我们做出了大致的讲解,同时,我们知道了MATLAB程序的一些最基本的应用和运算,并能够进行一些简单的编程。就这样,实训的第一天大家都在期待和兴奋中度过。 接下来的时间,主要是以大家自学和练习为主,老师进行辅导和考察。在学习过程中,不懂的可以相互之间小声的讨论,也可向老师请教,但必须确保自己真正学到了知识,认真的看书并进行编程练习。一天的学习接近尾声时,就是老师考察大家一天的收获的时候了,老师总会出一些小题目让大家编出它的程序,虽然有的题目对我们来说还是有些难度的,但是在老师的指点下我们还是编出程序的,当我们看到自己编的程序运行正确时,总是会万分的兴奋,充满成就感。 就这样,仅仅一个星期的实训就结束了,虽然不能十分熟悉和运用MATLAB的所有程序,但是我们却打下了一定的基础,

在以后,当我们真正开始深入学习这门学问时,我们对它将不会再那么陌生,学起来也将轻松许多。这次实训为我们提供了一个很好的学习机会,唯一不足的就是时间有点短,我们不能在这段时间里学到更多的知识,因此,在这一周打下的基础上,我们需要用自己的努力去自学,以获取更多的知识。 知识是无穷无尽的,知识的获取需要一颗上进的心,老师将我们领进了门,下面的路就应该我们自己去走,即是充满荆棘,也要努力奋斗往前冲。

matlab实习总结

MATLAB和Mathematica、Maple并称为三大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连 matlab开发工作界面 接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完成相同的事情简捷得多,并且MATLAB也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。在新的版本中也加入了对C,FORTRAN,C++,JAVA的支持。可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用,此外许多的MATLAB爱好者都编写了一些经典的程序,用户可以直接进行下载就可以用 Matlab是一个强大的数学工具,它的应用广泛,涉及到各个领域.它使用起来十分方便,不用麻烦去定义变量.它的绘图能力很强,甚至可以模拟出三维视图.矩阵是它应用的核心,许多工程繁琐的运算都需要靠矩阵来化简,这正是它的生命力所在.但是,他的函数很多,开始学时记的比较痛苦,我已经深深感觉到了.不过看多了也就熟了,感觉和学五笔差不多.它的语法简单,像我学过C语言的学起来还是蛮容易的.它的数组定义十分符合自然,是从1开始的,数组元素的调用也很

接近数学的表达.此外,函数的名字也很符合英文规则,反正我用得很开心就是了. 通过学习matlab,我又一次锻炼了自己的思维.它学起来得心应手也让我明白了学习一门语言(c语言)对学习其他语言的帮助指导作用.同时,它也加强了我理论联系实际的能力.这是一个专业课的基础工具,学好它是必要的. 在第一章中,讲的是一些matlab的入门技术,除了一些基本操作与介绍之外,还初步认识了简单指令的编制,认识了一些matlab 的特殊符号,例如运算用到的加减乘除。(+—*/)对我来说还是比较容易上手的。 但在第二章开始,开始有点难度了,在第二章我接触到两种数据类型,一个是double,还有就是char,另外还介绍了赋值语句,数学计算,常用函数,输入输出语句和数据文件。其中让我最容易混淆的就是运算的优先等级,当所需要运算的公式较长时,常常因没有弄好运算优先级而把程序编错,这一章也接触了更多的特殊符号,在多次看书之后,还是顺利把老师所布置的作业完成了。 在第三章中,我接触到基本的matlab选择结构,还有控制这个结构的关系运算符和逻辑运算符。也就是if结构。这个结构对运算起到很大作用,跟elseif配合使用的话,就可以将很图方法。还有,我们学习如何控制画图的附加功能,例如线的宽度和符号的颜色。这些属性可由指定的“propertyname”和值Value决定,“propertyname”和值Value将出现在plot命令的数据后。

MATLAB数学实验报告

Matlab 数学实验报告

一、实验目的 通过以下四组实验,熟悉MATLAB的编程技巧,学会运用MATLAB的一些主要功能、命令,通过建立数学模型解决理论或实际问题。了解诸如分岔、混沌等概念、学会建立Malthu模型和Logistic 模型、懂得最小二乘法、线性规划等基本思想。 二、实验内容 2.1实验题目一 2.1.1实验问题 Feigenbaum曾对超越函数y=λsin(πx)(λ为非负实数)进行了分岔与混沌的研究,试进行迭代格式x k+1=λsin(πx k),做出相应的Feigenbaum图 2.1.2程序设计 clear;clf; axis([0,4,0,4]); hold on for r=0:0.3:3.9 x=[0.1]; for i=2:150 x(i)=r*sin(3.14*x(i-1)); end pause(0.5) for i=101:150

plot(r,x(i),'k.'); end text(r-0.1,max(x(101:150))+0.05,['\it{r}=',num2str(r)]) end 加密迭代后 clear;clf; axis([0,4,0,4]); hold on for r=0:0.005:3.9 x=[0.1];

for i=2:150 x(i)=r*sin(3.14*x(i-1)); end pause(0.1) for i=101:150 plot(r,x(i),'k.'); end end 运行后得到Feigenbaum图

2.2实验题目二 2.2.1实验问题 某农夫有一个半径10米的圆形牛栏,长满了草。他要将一头牛拴在牛栏边界的桩栏上,但只让牛吃到一半草,问拴牛鼻子的绳子应为多长? 2.2.2问题分析 如图所示,E为圆ABD的圆心,AB为拴牛的绳子,圆ABD为草场,区域ABCD为牛能到达的区域。问题要求区域ABCD等于圆ABC 的一半,可以设BC等于x,只要求出∠a和∠b就能求出所求面积。先计算扇形ABCD的面积,2a÷π×πx2=2aπ2,再求AB的面积,用扇形ABE的面积减去三角形ABE的面积即可。

matlab心得及学习方法(不断更新)

竭诚为您提供优质文档/双击可除matlab心得及学习方法(不断更新) 篇一:matlab心得及学习方法 matlab心得及学习方法(不断更新) 发现现在很多人(找工作的或者读博的)都想要学习或者正在学习matlab,问我要怎么学习。其实我虽然写matlab 代码的经验还算丰富,但是还不能说是一个很好的matlab 编程人员,这里有一些心得,分享给大家希望对大家有所帮助。 关于如何学习matlab 我的学习方法很简单:matlab是练出来的,而不是看出来的。很多人问我有没有比较好的matlab教材,我说随便 找一本吧,都可以。只要书里面有最基本的语法和命令,对于一个有编程基础的人,matlab可以在一个下午的时间内学会。当然,仅仅是学会。如果想要对matlab比较得心应手,那么最好的办法就是练习。练习的素材很多,比如对于学经济学的,可以做一些simulation之类的,也可以试着把计 量或者宏观教材里面的一些算法写写出来。一开始可能很慢,

但是当你完成了一个比较大的project的时候,你的matlab 的功力将会有巨大的提升。 当然,在你写程序之前,多读一些别人写的好的code 是非常有帮助的。 一些matlab的经验 1、适当了解一些数值计算、数值分析以及最优化的理论 用matlab的无非是做数值计算或者最优化,这也是matlab的强项,matlab有足够多的工具箱解决这些问题。但是在使用这些工具箱之前,应该首先了解一些数值计算以及最优化的理论。这一点在程序碰到问题或者计算结果不理想的时候尤为重要。很多时候结果不理想并不是自己的理论出了问题,而是盲目或者错误使用matlab的工具箱而导致的。比如我曾经做过一个单纯形法的优化程序,但是结果总是不理想,这个时候就要返回到单纯形法具体是一种什么样的算法来考虑这个问题,最后发现是由于目标函数的某一部分十分平缓导致的。当然更重要的是如果你不理解理论,很多问题根本不知道如何处理。有个学化学同学就曾问我一个程序怎么写,说matlab肯定可以完成的。了解清楚之后才明白原来他想做的就是一个受限最小二乘。但是他不懂得什么是最小二乘(因为没怎么学过数学),当然面对这个问题无从下手。

Matlab数学实验一2015(标准答案版)

Matlab数学实验一——matlab初体验 一、实验目的及意义 [1] 熟悉MATLAB软件的用户环境; [2] 了解MATLAB软件的一般目的命令; [3] 掌握MATLAB数组操作与运算函数; 通过该实验的学习,使学生能熟悉matlab的基础应用,初步应用MATLAB软件解决一些简单问题。 二、实验内容 1.认识matlab的界面和基本操作 2.了解matlab的数据输出方式(format) 3. MATLAB软件的数组(矩阵)操作及运算练习; 三、实验任务 根据实验内容和步骤,完成以下具体实验,要求写出实验报告(实验目的→问题→原理→算法与编程→计算结果或图形→心得体会) 完成如下题目,并按照实验报告格式和要求填写实验报告 1.在commandwindow中分别输入如下值,看它们的值等于多少,并用matlab的help中查询这些缺省预定义变量的含义,用中文写出它们的意义。 ijeps inf nan pi realmaxrealmin 2.分别输入一个分数、整数、小数等,(如:a=1/9),观察显示结果,并使用format函数控制数据的显示格式,如:分别输入format short、format long、format short e、format long g、format bank、format hex等,然后再在命令窗口中输入a,显示a的值的不同形式,并理解这些格式的含义。 3.测试函数clear、clc的含义及所带参数的含义(利用matlab的help功能)。 4. 写出在命令窗口中的计算步骤和运行结果。 (1)计算 1.22 10 (ln log) 81 e ππ +- ; >>(log(pi)+log(pi)/log(10)-exp(1.2))^2/81 >>ans = 0.0348 (2) >> x=2;y=4; >> z=x^2+exp(x+y)-y*log(x)-3 z = 401.6562 (3)输入变量 13 5.3, 25 a b ?? ==?? ?? ,在工作空间中使用who,whos,并用save命令将变量存入”D:\exe0 1.mat”文件。测试clear命令,然后用load命令将保存的”D:\exe01.mat”文件载入>> a=5.3 a=

matlab所有实验及答案

实验二 习题 1、 矩阵Y= ???? ? ???? ???3472123100451150425 ,给出元素1的全下标和单下标,并用函数练习全下标和单下标的转换,求出元素100的存储位置。取出子矩阵?? ? ? ??21301,并求该矩阵的维数。 解:命令为: Y=[5,2,4;0,15,1;45,100,23;21,47,3] Y(2,3) Y(10) sub2ind([4 3],2,3) [i,j]=ind2sub([4 3],10) find(Y==100) sub2ind([4 3],3,2) B=Y(2:2:4,3:-2:1) 或 B=Y([2 4],[3 1]) [m n]=size(Y) 2、 建立一个数值范围为0—100内4*5的整数随机矩阵。 求出大于50的元素的位置。 解:命令为: G=int8(100*rand(4,5)) find(G>50) 3、 已知矩阵A=[1 0 -1 ;2 4 1; -2 0 5],B=[0 -1 0;2 1 3;1 1 2] 求2A+B 、A 2-3B 、A*B 、B*A 、A .*B ,A/B 、A\B 解:命令为: A=[1 0 -1 ;2 4 1; -2 0 5] B=[0 -1 0;2 1 3;1 1 2] E=2*A+B F=A^2-3*B G=A*B H=B*A I=A.*B J=A/B K=A\B 4、 利用函数产生3*4阶单位矩阵和全部元素都为8的 4*4阶矩阵,并计算两者的乘积。 解:命令为: A=eye(3,4) B=8*ones(4) C=A*B 5、 创建矩阵a=????? ???????------7023021.5003.120498601 ,取出其前两列构成的矩阵b ,取出前两行构成矩阵c ,转置矩阵b 构成矩阵d ,计算a*b 、c

MATLAB数学实验A

clear; clc; a=1;b=1; ezplot(sprintf('x^2/%f-y^2/%f',a^2,b^2)); hold on; ezplot(sprintf('x^2/%f-y^2/%f-1',a^2,b^2)); ezsurf('sin(a)*cos(b)','sin(a)*sin(b)','cos(a)',[0,pi,0,2*pi],60); hold on; ezsurf('x^2+y^2',[-1,1,-1,1],60);

clear all; x=-8:0.1:8; y=-8:0.1:8; [X,Y]=meshgrid(x,y); Z=sin(sqrt(X.^2+Y.^2))./sqrt(X.^2+Y.^2+2); [X,Y,Z]=peaks(50); surf(X,Y,Z)

syms x y; y=2*x^3-6*x^2-18*x+7; solve(diff(y,x),x) x=-1;eval(y) x=3;eval(y)

syms x y; z='x*y'; dblquad(z,1,4,-1,2) 结果 ans = 11.2500 求函数1+x -exp(2*x)+5的原函数clear all syms x C; f=int(1+x -exp(2*x)+5,'x')+C syms x y; >> x=0:0.01:1; >> y=sin(sin(x)); >> trapz(x,y)

x=0:0.05:1; y=[1.97687 2.17002 2.34158 2.46389 2.71512 3.06045 3.27829 3.51992 3.8215 4.2435 4.55188 4.88753 5.15594 5.698 6.04606 6.42701 7.00342 7.50192 7.89178 8.49315 9.0938] cftool 解常微分方程y’=-0.9y/(1+2x)的数值解y(0)=1 从0到0. 1的数值解,取步长0.02 clear all x1=0; x2=0.1; h=0.02; y(1,1)=1;

matlab实验四及其答案

实验四GUI 设计专业 学号姓名成绩电气工程及其自 动化201409140305 杨诚1.创建GUI 绘制方程c bx ax y ++=2图形,需要显示绘图结果的坐标系窗口,还能够输入 a , b , c 的值和x 取值范围(最大值和最小值)。 回调函数的编写: a=str2num(get(handles.edit1,'String'));b=str2num(get(handles.edit2,'String'));c=str2num(get(handles.edit3,'String'));xmin=str2num(get(handles.edit4,'String'));xmax=str2num(get(handles.edit5,'String'));x=xmin:0.1:xmax;y=a*x.^2+b*x+c;plot(x,y); 设计的运行界面截图:

2.设计一个GUI,完成画出y=sin(x)、y=cos(x)和y=x 3.的波形图。回调函数的编写: x=-5:0.1:5 plot(x,sin(x)) x=-5:0.1:5 plot(x,cos(x))

x=-5:0.1:5 y=x.^3 plot(x,y)

设计的运行界面截图: 3.创建一个GUI,含有下拉菜单,下拉菜单中有背景颜色选择。回调函数的编写: yanse=get(handles.popupmenu1,'value'); switch yanse case1 set(gcf,'color','r'); case2 set(gcf,'color','y'); case3 set(gcf,'color','g'); end 设计的运行界面截图:

相关文档