第一篇:数学建模常用的Matlab绘图总结
饼状图
Expenses = [20 10 40 12 20 19 5 15];
ExpenseCategories = {'Food','Medical','Lodging','Incidentals',...'Transport','Utilities','Gifts','Shopping'};
MostLeastExpensive =(Expenses==max(Expenses)|Expenses==min(Expenses));
h=pie(gca,Expenses,MostLeastExpensive,ExpenseCategories);
ShoppingGiftsFoodMedicalUtilitiesTransportLodgingIncidentalsExpenses = [20 10 40 12 20 19 5 15];
MostLeastExpensive =(Expenses==max(Expenses)|Expenses==min(Expenses));
h=pie(gca,Expenses,MostLeastExpensive);legend('Food','Medical','Lodging','Incidentals',...'Transport','Utilities','Gifts','Shopping');
4%FoodMedicalLodgingIncidentalsTransportUtilitiesGiftsShopping
14%11%7%13%14%28% 9% Expenses = [20 10 40 12 20 19 5 15];
MostLeastExpensive = [0 1 0 1 0 1 0 1];%分割 h=pie(gca,Expenses,MostLeastExpensive);legend('Food','Medical','Lodging','Incidentals',...'Transport','Utilities','Gifts','Shopping');
11%14%4%7%13% FoodMedicalLodgingIncidentalsTransportUtilitiesGiftsShopping28%14% 9%
x = [20 10 40 12 20 19 5 15];explode = [4 2 2 2 2 4 2 2];label = {'Food','Medical','Lodging','Incidentals',...'Transport','Utilities','Gifts','Shopping',}';figure('color','w','renderer','openGL');h = pie3(x,explode);h = findobj(h,'Type','text');set(h,{'string'},cellfun(@strcat,get(h,{'string'}),label,'un',0),'FontName','Times New Roman','FontSize',16);%set(h,{'string'},strcat(get(h,{'string'}),label));
%cm = [72 65 137;143 184 58;193 60 49;41 121 201;...%
150;189 84 58;193 160 90;241 121 101]/255;colormap(jet), shading interp view(18,20), camproj perspective light('Position',[1 2 3],'Style','inf')lighting gouraud
x = [20 10 40 12 20 19 5 15];explode = [4 2 2 2 2 4 2 2];label = {'14% Food','7% Medical','28% Lodging','9% Incidentals',...'14% Transport','13% Utilities','4% Gifts','11% Shopping',}';figure('color','w','renderer','openGL');pie3s(x,'Explode',explode,'Labels',label)%见Matlab_pie3s
直方图
Y = round(rand(5,3)*10);figure;subplot(2,2,1);bar(Y,'grouped');title('Group')subplot(2,2,2);bar(Y,'stacked');title('Stack')subplot(2,2,3);bar(Y,'histc');title('Histc')subplot(2,2,4);bar(Y,'hist');title('Hist')Group105100123Histc10501050450123Hist453020Stack1234512345
stream = RandStream('mrg32k3a','Seed',4);y1 = rand(stream,10,5);hb = bar(y1,'stacked');colormap(summer);hold on y2 = rand(stream,10,1);set(gca,'FontSize',14,'FontName','Times New Roman')hp = plot(1:10,y2,'marker','square','markersize',12,...'markeredgecolor','y','markerfacecolor',[.6,0,.6],...'linestyle','-','color','r','linewidth',2);hold off legend([hb,hp],'Carrots','Peas','Peppers','Green Beans',...'Cucumbers','Eggplant','Location','SouthEastOutside')3.532.521.510.50 12345678910CarrotsPeasPeppersGreen BeansCucumbersEggplant Data = [1,-2,3,1,-1,-2 4 2 3];DataP = Data;DataN = Data;DataP(Data < 0)= 0;DataN(Data > 0)= 0;figure;bar(DataP,0.5,'k','EdgeColor','k');hold on;bar(DataN,0.5,'b','EdgeColor','b');43210-1-2123456789
Y = round(rand(5,3)*10);figure;subplot(2,2,1);bar3(Y,'grouped');
title('Group','FontSize',14,'FontName','Times New Roman')subplot(2,2,2);bar3(Y,'stacked');
title('Stack','FontSize',14,'FontName','Times New Roman')subplot(2,2,3);bar3(Y,'histc');
title('Histc','FontSize',14,'FontName','Times New Roman')subplot(2,2,4);bar3(Y,'hist');
title('Hist','FontSize',14,'FontName','Times New Roman')
Group1020Stack***Histc1010Hist***45123
杆状图
Data = [1,-2,3,1,-1,-2 4 2 3];DataP = Data;DataN = Data;DataP(Data < 0)= NaN;DataN(Data > 0)= NaN;figure;stem(DataP,'k');hold on;stem(DataN,'b');43210-1-2123456789Data = [1,-2,3,1,-1,-2 4 2 3];DataP = Data;DataN = Data;DataP(Data < 0)= NaN;DataN(Data > 0)= NaN;figure;stem(DataP,'k','fill');hold on;stem(DataN,'b','fill');4
3210-1-2123456789 Data = [1,-2,3,1,-1,-2 4 2 3];DataP = Data;DataN = Data;DataP(Data < 0)= NaN;DataN(Data > 0)= NaN;figure;stem(DataP,':diamondk','fill');hold on;stem(DataN,':diamondr','fill');43210-1-2123456789
Data = [1,-2,3,1,-1,-2 4 2 3];DataP = Data;DataN = Data;DataP(Data < 0)= NaN;DataN(Data > 0)= NaN;figure;stem(DataP,'LineStyle','-.','MarkerFaceColor','k','MarkerEdgeColor','green');hold on;stem(DataN,'LineStyle','-.','MarkerFaceColor','red','MarkerEdgeColor','green');4
3210-1-2123456789
三维图形
figure;[X,Y] = meshgrid(-15:.5:15,-12:.5:12);%X belongs to [-15,15] and Y belongs to [-12,12].R = sqrt(X.^2 + Y.^2)+ eps;Z = sin(R)./R;mesh(Z);%surf(X,Y,Z)
xlabel('X','FontSize',14,'FontName','Times New Roman')ylabel('Y','FontSize',14,'FontName','Times New Roman')zlabel('Z','FontSize',14,'FontName','Times New Roman')title('3-D space','FontSize',16,'FontName','Times New Roman')
3-D space by mesh10.5Z0-0.***203040506070YX
figure;X=-12:0.5:12;Y=-12:0.5:12;%surf绘图时,X,Y可以是一维向量,也可以是二维矩阵 R=ones(length(X),length(Y));for i=1:length(X)
for j=1:length(Y)
R(i,j)= sqrt(X(i).^2 + Y(j).^2)+eps;
end end
Z = sin(R)./R;surf(X,Y,Z);xlabel('X','FontSize',14,'FontName','Times New Roman')ylabel('Y','FontSize',14,'FontName','Times New Roman')zlabel('Z','FontSize',14,'FontName','Times New Roman')title('3-D space by surf','FontSize',16,'FontName','Times New Roman')
3-D space by surf10.5Z0-0.5151050-5-10-15-15-10-5051015YX
figure;[X,Y] = meshgrid(-15:.5:15,-12:.5:12);%X belongs to [-15,15] and Y belongs to [-12,12].R = sqrt(X.^2 + Y.^2)+ eps;Z = sin(R)./R;plot3(X,Y,Z);xlabel('X','FontSize',14,'FontName','Times New Roman')ylabel('Y','FontSize',14,'FontName','Times New Roman')zlabel('Z','FontSize',14,'FontName','Times New Roman')title('3-D space by plot3','FontSize',16,'FontName','Times New Roman')
3-D space by plot310.5Z0-0.5151050-5-10-5051015Y-15-15-10X
数学公式、符号和希腊字母的输入命令
Character Sequence alpha beta gamma delta epsilon zeta eta theta vartheta iota kappa lambda mu nu xi pi rho sigma varsigma tau equiv Im otimes cap supset int rfloor lfloor perp wedge rceil vee langle Symbol α β γ δ ɛ δ ε Θ ϑ ι κ λ µ ν ξ π π σ ρ τ ≡ ℑ
⊗ ∩ ⊃
∫ ë û ⊥
∧
ù ∨ ∠
Character Sequence upsilon phi chi psi omega Gamma Delta Theta Lambda Xi Pi Sigma Upsilon Phi Psi Omega forall exists ni cong approx Re oplus cup
subseteq in lceil cdot neg times surd varpi rangle
Symbol ς Φ σ τ υ Γ Δ Θ Λ Ξ Π Σ ϒ Φ Ψ Ω ∀ ∃ ∍ ≅ ≈ ℜ ⊕ ∪
⊆ ∈ é · ¬ x √ ϖ ∠ Character Sequence sim leq infty clubsuit diamondsuit heartsuit spadesuit leftrightarrow leftarrow uparrow rightarrow downarrow circ pm geq propto partial bullet div neq aleph wp oslash supseteq subset o nabla ldots prime mid
copyright
Symbol ~ ≤ ∞ ♣ ♦ ♥ ♠ ↔ ← ↑ → ↓ º ± ≥ ∝ ∂ • ÷ ≠ ℵ ℘ ∅ ⊇ ⊂ ο ∇...´ ∅
| ©
图形标注
set(gca,'FontSize',10, 'FontName','Arial')xlabel('test','FontSize',10,'FontName','Arial')ylabel('test','FontSize',10,'FontName','Arial')legend('test','FontSize',10,'FontName','Arial')title('test','FontSize',13,'FontName','Times New Roman')r(red)红色
G(green)绿色
b(blue)蓝色
c(cyan)青色
M(magenta)品红
y(yellow)黄色
k(black)黑色
w(white)+ 加号
o(字母)小圆圈
* 星号
.实点
x 叉号 d 棱形
^ 上三角形
v 下三角形 colormap(jet)
坐标控制
axis函数 的调用格式为:
axis([xmin xmax ymin ymax zmin zmax])axis square:产生正方形坐标系(缺省为矩形)axis auto:使用缺省设置 axis off:取消坐标轴 axis on:显示 坐标轴 grid on:加网格线
白色
第二篇:2009全国数学建模大赛学习总结~MATLAB
全国数学建模大赛过去挺长时间了,今天想要写点关于MATLAB应用技巧的小总结。不得不承认MATLAB实在是太强大了,有太多的工具箱。我先简单的介绍一下,在数学建模中,我用到的一些比较方便的命令,和大家分享一下。
Plottools:MATLAB作图工具箱
可以画出二维和三维图像
如果你已经打开图形窗口了, 可以通过点击'快捷按钮栏'中最右侧那个图标启动Plottools;若还没有打开任何图形窗口, 可以在Matlab的命令窗口(command window)中输入命令: plottools 就可以打开一个新图形窗口, 同时也启动Plottools工具;还有一种情况, 你已经打开一个plottools窗口, 但是想要同时再画另一个图像, 那么, 可以在已有的图像窗口中点击'新建'按钮, 新建一个图形窗口, 然后在那个窗口上点击最右侧图标来激活plottools工具。左侧从上到下依次是:
1.添加新的坐标系:
向中间的图形窗口内添加新的坐标系, 可选二维或三维坐标系, 甚至可以一次选择多个坐标系, 如果不预先选择坐标系而是直接添加图形, Matlab会自动添加一个合适的坐标系
2.变量列表: Matlab当前工作空间(workspace)中存在的变量列表于此, 通过在变量上点击右键, 激活右键弹出菜单, 我们可以画相应变量的图像, 但是不推荐这么做, 因为这样画图没有控制选项, 容易出错, 我们还有更好的办法
3.标识图形: 向已画号的图像中添加表示图形, 如线条, 箭头等 说明:
2D Axes 得到二维图像 3D Axes 得到三维图像 plot(y)得到普通函数图像 bar(y)得到树干图 stem(y)得到阶梯图 area(y)得到区域图
pie(y)得到对应百分比的饼图 hist(y)得到以上6种图像合并的图像
cftool:拟合工具箱
cftool 进入其介面就是近乎傻瓜式的拟合操作了 进入曲线拟合工具箱界面“Curve Fitting tool”(1)点击“Data”按钮,弹出“Data”窗口;
(2)利用X data和Y data的下拉菜单读入数据x,y,可修改数据集名“Data set name”,然后点击“Create data set”按钮,退出“Data”窗口,返回工具箱界面,这时会自动画出数据集的曲线图;
(3)点击“Fitting”按钮,弹出“Fitting”窗口;
(4)点击“New fit”按钮,可修改拟合项目名称“Fit name”,通过“Data set”下拉菜单选择数据集,然后通过下拉菜单“Type of fit”选择拟合曲线的类型,工具箱提供的拟合类型有:
· Custom Equations:用户自定义的函数类型
·Exponential:指数逼近,有2种类型,a*exp(b*x)、a*exp(b*x)+ c*exp(d*x)· Fourier:傅立叶逼近,有7种类型,基础型是 a0 + a1*cos(x*w)+ b1*sin(x*w)· Gaussian:高斯逼近,有8种类型,基础型是 a1*exp(-((x-b1)/c1)^2)
·Interpolant:插值逼近,有4种类型,linear、nearest neighbor、cubic spline、shape-preserving · Polynomial:多形式逼近,有9种类型,linear ~、quadratic ~、cubic ~、4-9th degree ~
·Power:幂逼近,有2种类型,a*x^b、a*x^b + c
·Rational:有理数逼近,分子、分母共有的类型是linear ~、quadratic ~、cubic ~、4-5th degree ~;此外,分子还包括constant型
· Smoothing Spline:平滑逼近(翻译的不大恰当,不好意思)
·Sum of Sin Functions:正弦曲线逼近,有8种类型,基础型是 a1*sin(b1*x + c1)· Weibull:只有一种,a*b*x^(b-1)*exp(-a*x^b)
这个命令特别好用,今年建模比赛,我就是用了这个命令做的转矩与转速的关系图,并进行了拟合,很好用的。
disttool:常用的分布函数:
disttool
输入该命令可以直接得到一些常用函数的图像,像beta(百特分布),binomial(二项式分布)。。。。
好了,先写这些吧,MATLAB很强大,有些命令知道了 就可以省去很多 自己的编程
学无止境,加油吧
希望这些所谓的技巧能给大家带来方便
第三篇:MATLAB绘图实训
Matlab绘图实训
一、实训目的
1.熟悉MATLAB语言的使用
2.了解MATLAB在电子信息课程中的应用
3.掌握MATLAB矩阵输入、运算以及MATLAB数值的运算功能 4.掌握各种数据的创建、访问、扩建及缩减
5.了解利用MATLAB计算系统响应的方法;验证信号与系统的基本概念、基本理论,掌握信号与系统的分析方法。
二、实训任务和要求
1、熟练利用MATLAB语言编程对系统S平面分析
2、掌握利用MATLAB分析系统时域的方法,熟悉系统的零输入响应,零状态响应及冲击响应的步骤。
3、MATLAB是目前国际上最流行,应用最广泛的科学与工程计算软件,它由MATLAB语言,MATLAB工作环境,MATLAB图像处理系统,MATLAB数据函数库,MATLAB应用程序接口五大部分组成的集数值计算,图形处理,程序开发为一体的功能强大的系统.它应用于自动控制,数学计算,信号分析,计算机技术,图像信号处理,财务分析,航天工业,汽车工业,生物医学工程,语音处理和雷达工程等各行业,也是国内高校和研究部门进行许多科学研究的重要工具。
MATLAB的基本数据单位是矩阵,它的指令表达式与数学,工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完相同的事情简捷得多。MATLAB是“矩阵实验室”(MATrix LABoratoy)的缩写,它是以矩阵运算为基础的交互式程序语言,能够满足科学、工程计算和绘图的需求。与其它计算机语言相比,其特点是简洁和智能化,适应科技专业人员的思维方式和书写习惯,使得编程和调试效率大大提高。它用解释方式工作,键入持续后立即得出结果,人机交互性能好,易于调试并被科技人员所乐于接受。特别是它可适应多种平台,并且随着计算机硬软件的更新及时升级,因此MATLAB语言在国外的大学工学院中,特别是频繁进行数值计算的电子信息类学科中,已经成为每个学生都掌握的工具了。它大大提高了课程教学、解题作业、分析研究的效率。
4、系统S平面分析的基本理论
MATLAB在系统S平面分析中,一般是求系统函数的零极点分布图,画单位冲激响应和幅频响应的图形,通常按常规方法这些波形很难画出,但是应用MATLAB就可简便快捷的画出图形,使系统的分析更加便捷.例如,已知系统函数为H,利用MATLAB 1
画出该系统的零极点分布图,求出该系统的单位冲激响应和幅频响应,并判断系统的稳定性。
源程序如下:
> > % program 2 Impulse response,amp;itude fequency response and stability analysis of LTI H(s)>>Bum=[1];den=[1 2 2 1]; >>sys=tf(Bum,den); >>poles=roots(den): >>figure(1);pzmap(sys); t=O: 0.02: 10: >>h=impulse(Bum,den,t); >>figure(2);plot(t,h);
>>xlabel(t(s));ylabel(h(t));title(Im— pulse Response); >>[H,W]=freqs(Bum,den); >>figure(3);plot(W,abs(H));
>>xlabel(ang.freq.\omega(rad/s));yla— bel(H(j\omega));title(Magnitude Respone); > grid on
程序运行的结果如图一,图二,图三所示:
图一 系统函数零极点分布图形
图二 系统的单位冲激响应
图三 系统的幅频响应
5、MATLAB系统时域求解的基本函数 求取系统单位阶跃响应:step()求取系统的冲激响应: impulse()y=step(num,den,t):其中num和den分别为系统传递函数描述中的分子和分母 3
多项式系数,t为选定的仿真时间向量,一般可以由t=0:step:end等步长地产生出来。该函数返回值y为系统在仿真时刻各个输出所组成的矩阵
[y,x,t]=step(num,den):此时时间向量t由系统模型的特性自动生成, 状态变量x返回为空矩阵。
[y,x,t]=step(A,B,C,D,iu):其中A,B,C,D为系统的状态空间描述矩阵,iu用来指明输入变量的序号。x为系统返回的状态轨迹。
impulse()函数的用法
求取脉冲激励响应的调用方法与step()函数基本一致。y=impulse(num,den,t);[y,x,t]=impulse(num,den);[y,x,t]=impulse(A,B,C,D,iu,t)covar:连续系统对白噪声的方差响应 initial:连续系统的零输入响应
lsim:连续系统对任意输入的响应对于离散系统只需在连续系统对应函数前加d就可以,如dstep,dimpulse等。
三、实训过程与内容
1、采用的软件及开发平台
MATLAB7.0 计算机
2、系统的详细设计
(一)、MATLAB中系统S平面分析的基本函数
(a)Laplace拉普拉斯变换 语法: laplace(F)laplace(F,t)fourier(F,w,z)简介:
L = laplace(F)表示对F函数关于默认自变量t做拉普拉斯变换。默认结果是关于s的函数。拉普拉斯变换完成了时域函数到频域函数的转换。
L= laplace(F,t)会令L为t的函数,而非默认的s。
L = laplace(F,w,z)规定F是关于w的函数,而L是关于z的函数。
(b)ilaplace 拉普拉斯逆变换 用法:
F = ilaplace(L)F = ilaplace(L,y)F = ilaplace(L,y,x)简介:
F = ilaplace(L)将L(s)变换成F(t)F = ilaplace(L,y)将L(s)变换为F(y),而非F(t)F = ilaplace(L,y,x)将L(y)变换为F(x)
(二)分析与实现
(1)由系统函数零、极点分布决定时域特性
当H(s)极点(一阶)pj中和的取值为0.06:0.03:0.06,0.5:0.25:0时,画出对应于h(t)波形,并分析波形。
解:
首先,根据s域的函数H(S),做拉普拉斯逆变换求出时域函数h(t),绘制h(t)的图形。
代码及波形图如下:
(1)clear;clc(2)clear;clc(3)clear;clc syms s;syms s;syms s;H=1/(s-(-0.06+0.5*j));H=1/(s-(-0.06+0.25*j));H=1/(s+0.06);h=real(ilaplace(H));h=real(ilaplace(H));h=real(ilaplace(H));ezplot(h)ezplot(h)ezplot(h)
(4)clear;clc(5)clear;clc(6)clear;clc syms s;syms s;syms s;
H=1/(s-(-0.03+0.5*j));H=1/(s-(-0.03+0.25*j));H=1/(s+0.03);h=real(ilaplace(H));h=real(ilaplace(H));h=real(ilaplace(H));ezplot(h)ezplot(h)ezplot(h)
(7)clear;clc(8)clear;clc(9)clear;clc syms s;syms s;syms s;H=1/(s-0.5*j);H=1/(s-0.25*j);H=1/s;h=real(ilaplace(H));h=real(ilaplace(H));h=real(ilaplace(H));ezplot(h)ezplot(h)ezplot(h)7
(10)clear;clc(11)clear;clc(12)clear;clc syms s;syms s;syms s;H=1/(s-(0.03+0.5*j));H=1/(s-(0.03+0.25*j));H=1/(s-0.03);h=real(ilaplace(H));h=real(ilaplace(H));h=real(ilaplace(H));ezplot(h)ezplot(h)ezplot(h)
(13)clear;clc(14)clear;clc(15)clear;clc syms s;syms s;syms s;H=1/(s-(0.06+0.5*j));H=1/(s-(0.06+0.25*j));H=1/(s-0.06);h=real(ilaplace(H));h=real(ilaplace(H));h=real(ilaplace(H));ezplot(h)ezplot(h)ezplot(h)
(2)由系统函数零、极点分布决定频率特性
若H(s)零极点分布如图1所示,讨论他们是何种类型的滤波器,画出其幅频特性曲线。
jjj000(a)(b)(c)jj0jj2j1jj2j10j0(d)0j1j2(e)j1j2(f)0 系统零极点分布图
(a)低通滤波器 clear;clc w=0:0.01:5;w1=0;w2=0;k=0;10
H=1./(((w-w1)*i+(k+1)).*((w-w2)*i+(k+2)));plot(w,H)
(b)低通滤波器 clear;clc w=0:0.01:5;w1=0;w2=0;k=0;H=(w+3)./(((w-w1)*i+(k+1)).*((w-w2)*i+(k+2)));plot(w,H)
低通滤波器
clear;clc(c)
w=0:0.01:5;H=(w+3)./((w*i+1).*(w*i+2));plot(w,H)
带通滤波器
clear;clc w=0:0.01:5;w1=2;w2=-2;k=0;H=w./(((w-w1)*i+(k+1)).*((w-w2)*i+(k+2)));plot(w,H)
(d)
高通滤波器
clear;clc w=0:0.01:5;w1= 2;w2=-2;o1=3;o2=-3;k=0;H=(w-o1).*(w-o2)./(((w-w1)*i+(k+1)).*((w-w2)*i+(k+2)));plot(w,H)grid on
高通滤波器
clear;clc w=0:0.01:5;(e)
(f)
w1=2;w2=-2;o1=3;o2=-3;k=0;H=(w-o1).*(w-o2)./(((w-w1)*i+(k+1)).*((w-w2)*i+(k+2)));plot(w,H)grid on
(3)、零输入响应与零状态响应
零输入响应:就是系统中的输入至始至终都是0,电路反应完全靠电路中的储能设备(电容电感)来释放能量。
零状态响应:就是系统中的储能设备在时刻0之前的能量储备是0,电路反应完全靠外界的输入。
绘制地球卫星的运行轨道,以卫星轨道为平面,地球位置为坐标原点,定义卫星的二维运动状态动方程为 s[x,y,vx,vy]Tvyx3222(xy)y3(x2y2)2 vx,其中x,y表示位置,vx,vy表示速度,可知运xyGMEsvxyvGMEMATLAB语言程序为:
R0=1;
a=12*R0;%椭圆的长半轴
b=9*R0;%椭圆的短半轴
T0=2*pi;
T=5*T0;dt=pi/1000;%dt控制卫星运动的快慢,若将1000改为100,则将变的非常快 t=[0:dt:T]';f=sqrt(a^2-b^2);%焦距
th=12.5*pi/180;%轨道相对xy平面的倾角
E=exp(-t/20);
x=E.*(a*cos(t)-f);y=E.*(b*cos(th)*sin(t));z=E.*(b*sin(th)*sin(t));subplot(2,1,1)%在同一窗口中显示上下两图形,此为显示上边图形plot3(x,y,z,'g')%用绿色线条显示静态图形 title('卫星返回地球时运动轨迹图','FontSize',12,'FontWeight','bold')
%添加标题以及确定其字体大小和加粗等
view([117 37])%建立三维框架 [X,Y,Z]=sphere(30);X=R0*X;Y=R0*Y;Z=R0*Z;
grid on,hold on surf(X,Y,Z),shading interp
x1=-18*R0;%x轴下边界 x2=6*R0;%x轴上边界 y1=-12*R0;%y轴下边界 y2=12*R0;%y轴上边界 z1=-6*R0;%z轴下边界 z2=6*R0;%z轴上边界
axis([x1 x2 y1 y2 z1 z2])%调整图幅大小 view([117 37])p=0.2;subplot(2,1,2)%显示下边的图形
comet3(x,y,z,p)%显示动态三维图形 模拟轨迹图
(4)、冲激响应和阶跃响应
冲激响应:系统的冲激响应就是电路系统在冲激信号激励下产生的零状态响应。
阶跃响应: LTIS在单位阶跃信号作用下,系统产生的零状态响应,叫做单位阶跃响应。
实例:对图1所示电路,分别求电流i(t)对激励
e(t)(t)和e(t)u(t)的冲激响应h(t)和阶跃响应g(t)。
R11i(t)ic(t)C1FiL(t)L1H4e(t)3R22
解:当e(t)(t)
解得 i(s)=(s^+6s+4)/(s^+7s+10)当e(t)u(t)
i(s)=(s^+6s+4)/(s^*s+7s^+10s)MATLAB仿真图:冲激响应:
阶跃响应:
四、实训总结与心得体会
通过本次实训,我从中学到了很多,对MATLAB有了一定的了解。Matlab是一个基于矩阵运算的软件,它的运算功能非常强大,编程效率高,强大而智能化的作业图功能,可扩展性强,simulink动态仿真功能,主要用于仿真、验证、算法思想是否正确。我深刻体会到计算机以及应用软件在工科学生专业课学习和科研技术人员科技研发中所起到的巨大作用。它能成十成百倍的提高我们的工作效率。利用MATLAB,可以使原本复杂的计算过程大大简化,在处理矩阵、复数运算的过程中尤其明显。
在这段时间里,我们学习了MATLAB的工具的使用,熟悉其最基础的功能,锻炼了我的实际动手能力。Help是MATLAB中最有效的命令。遇到问题,通常都可以借助help解决问题。下面是我对help的一些常用方法的总结:
(1)命令窗口直接敲“help”,你就可以得到本地机器上matlab的基本的帮助信息。
(2)对于某些不是很明确的命令,只知道大体所属范围,譬如说某个工具箱,直接在命令窗口中敲入help toolboxname,一帮可以得到本工具箱有关的信息:版本号,函数名等。
(3)知道函数名,直接用help funname就可以得到相应的帮助信息。
在以后的学习中,可以多利用MATLAB的强大计算功能来解决一些复杂的运算。这次基础强化训练让我又掌握了一款有用的软件,并且对电路题目的解法也有了新的认识,这些都是宝贵的收获。
历经了几周的实训过程,除了知识的增加和技能的提高,这一过程对我意志的锻炼和自学能力的培养对我产生了深远的影响。等到所有图表、数据、公式一一跃然纸上的时候,涌上的一种满足感使我觉得辛勤劳动终于有了回报。
我觉得想要学好MATLAB是不容易的,这是一件需要持之以恒的事,必须要坚持不懈的学习,还需要敢于开口向别人请教,更需要我们勤于思考,勤于记忆,勤于动手。程序设计是实践性和操作性很强的事情,需要我们亲自动手。因此,我们应该经常自己动手实际操作设计程序,熟悉MATLAB的操作,这对提高我们的操作能力非常有效。
这次实习中得到的这些求知、为人处世方面的道理,将伴随我整个大学生活,甚至一生,它们将是我人生道路上的一笔极其宝贵的财富,我一定会好好珍惜和利用它们。相信它们对我今后的学习将会有很大的帮助,也相信一切的一切,明天会更好。
知识是无穷无尽的,知识的获取需要一颗上进的心,老师将我们领进了门,下 18
面的路就应该我们自己去走,即是充满荆棘,也要努力奋斗往前冲。
在这次的实习过程中,老师不辞辛苦给我们指导,为我们实训做出很大努力,给我们提供很多帮助和指导,在这里也真心地向老师们说声:老师,您辛苦了!谢谢您多日来的指导。
五、参考文献
[1] 王正林.精通 MATLAB 7.电子工业出版社.2006 [2] 陈怀琛,吴大正,高西全.MATLAB 及在电子信息课程中的应用[M].北京:电子工业出版社.2006.[3] 邱关源.电路[M].北京:高等教育出版社.2006.5.[4] 郑君里,应启行,杨为理.信号与系统 2000年5月第二版
第四篇:MATLAB实验小结论文 数学建模
数学建模论文
题 目 求π的近似值的数学建模问题
学 院 材料科学与工程
专业班级
学生姓名
成 绩
年 05 月 20
MATLAB
2010 日
摘要 这个学期,我们开了MATLAB的课程,因为是一个人做所以作业选择书上一道相关的题目,并参考了一些资料。
任务
求π的近似值
分析
1111这个公式求π的近似值,直到某一项的绝对值小于10-6为止。4357采用MATLAB的循环来求
实验程序
x=1;y=0;i=1;while abs(x)>=1e-6 y=y+x;x=(-1)^i/(2*i+1);i=i+1;end format long,pi=4*y 可以用实验结果 pi =
3.14***92 收获
得出的π值已经非常接近真实的值了,学好MATLAB可以提高我们的效率。
参考文献
数学模型(第三版)姜启源著 高等教育出版社 MATLAB实验
第五篇:选修课数学实验与建模matlab作业
实验一
一元函数微分学
实验1 一元函数的图形(基础实验)
实验目的 通过图形加深对函数及其性质的认识与理解, 掌握运用函数的图形来观察和分析 函数的有关特性与变化趋势的方法,建立数形结合的思想;掌握用Matlab作平面曲线图性的方法与技巧.初等函数的图形
1.1 作出函数ytanx和ycotx的图形观察其周期性和变化趋势.x=-2*pi:0.1:2*pi;y1=tan(x);y2=cot(x);plot(x,y1,x,y2);axis([-10,10,-10,10])1.2将函数ysinx,yx,yarcsinx的图形作在同一坐标系内, 观察直接函数和反函数的图形间的关系.x1=-2*pi:0.1:2*pi;y1=sin(x1);y2=x1;x2=-1:0.1:1;y3=asin(x2);plot(x1,y1,x1,y2,x2,y3);
axis([-5,5,-5,5])1.3给定函数
5x2x3x4 f(x)55x5x2(a)画出f(x)在区间[4,4]上的图形;x=-4:0.1:4;y=(5+x.^2+x.^3+x.^4)./(5+5*x+5*x.^2);plot(x,y);axis([-4,4,-4,4])(b)画出区间[4,4]上f(x)与sin(x)f(x)的图形.x=-4:0.1:4;y1=(5+x.^2+x.^3+x.^4)./(5+5*x+5*x.^2);y2=sin(x).*y1;
plot(x,y1,x,y2);axis([-4,4,-4,4])
1.4 在区间[1,1]画出函数ysinx=-1:0.01:1;y=sin(1./x);plot(x,y)
1.5 作出以参数方程x2cost,ysint(0t2)所表示的曲线的图形.t=0:0.1:2*pi;x=2*cos(t);y=sin(t);plot(x,y,0,x,x,0)1.6分别作出星形线x2co3ts,y2si3tn(0t2)和摆线x2(tsint),1的图形.xy2(1cost)(0t4)的图形.程序1:t=0:0.1:2*pi;x=2*cos(t).^3;y=2*sin(t).^3;plot(x,y)程序2:t=0:0.1:4*pi;x=2*(t-sin(t));y=2*(1-cos(t));plot(x,y);axis([0,4*pi,0,5])x(t)costcos5t1.7 画出参数方程的图形:
y(t)sintcos3tt=-pi/2:0.01:pi/2;x=cos(t).*cos(5*t);y=sin(t).*cos(3*t);plot(x,y)1.8 作出极坐标方程为r2(1cost)的曲线的图形.t=-2*pi:0.1:2*pi;r=2*(1-cos(t));polar(t,r)
1.9
作出极坐标方程为ret/10的对数螺线的图形.t=-2*pi:0.1:2*pi;r=exp(t./10);polar(t,r)
1.10作出由方程x3y33xy所确定的隐函数的图形(笛卡儿叶形线).ezplot('x^3+y^3-3*x*y')
1.11 分别作出取整函数y[x]和函数yx[x]的图形.程序1:ezplot('y-fix(x)',[-5,5]);grid on;
程序2:ezplot('y-x+fix(x)',[-5,5]);
Grid on;
1.12 作出符号函数ysgnx的图形.ezplot('y-sign(x)',[-5,5]);grid on
12xsin,x01.13作出分段函数f(x)的图形.x0,x0
plot([-4:0],ones(length(-4:0))*(-1),'-',[0],ones(length(0))*0,[0:4],ones(length(0:4))*1)
axis([-5 5-2 2])
1.14 制作函数sincx的图形动画, 观察参数c对函数图形的影响.x=0:0.1:2*pi;for i=1:30;y=sin(i*x);plot(x,y);grid on;pause(0.1);end 1.15作出函数f(x)x2sincx的图形动画,观察参数c对函数图形的影响.x=-2*pi:0.1:2*pi;
for b=1:100;c=0.1*b;y=x.^2+sin(c*x);
plot(x,y);
temp=['c=',num2str(c)];
title(temp);
grid on;pause(0.1);end
实验2 极限与连续(基础实验)
实验目的 通过计算与作图, 从直观上揭示极限的本质,加深对极限概念的理解.掌握用 Matlab画散点图, 以及计算极限的方法.深入理解函数连续的概念,熟悉几种间断点的图形
特征,理解闭区间上连续函数的几个重要性质.作散点图
2.1 观察数列{nn}的前100项变化趋势.n=1:100;x=nthroot(n,n);stem(n,x)
12.2通过动画观察当n时数列an2的变化趋势.nfor n=1:inf an=1/n.^2;plot(n,an,’o’);grid on;hold on;end 2.3 设x12,xn12xn.从初值x12出发, 可以将数列一项一项地计算出来.format long,x=2^0.5;for i=1:10
x=(2+x).^0.5 end
x = 1.84775906502257 x = 1.96***6 x = 1.99036945334439 x = 1.99759091241034 x = 1.99939763739241 x = 1.99984940367829 x = 1.99996235056520 x = 1.99999058761915 x = 1.99999764690340 x = 1.99999941172576
2.4在区间[4,4]上作出函数f(x)究
xx39x的图形, 并研x3xlimf(x)和 limf(x).x1x=-4:0.1:4;y=(x.^3-9*x)./(x.^3-x);plot(x,y);
grid on;syms x;limit((x.^3-9*x)./(x.^3-x),x,inf)limit((x.^3-9*x)./(x.^3-x),x,1)
ans =1
ans =NaN 12.5观察函数f(x)2sinx当x时的变化趋x势.x=0:0.1;inf;y=1/x.^2.*sin(x);plot(x,y)1112.6设数列xn333.计算这个数列的12n前30项的近似值.作散点图, 观察点的变化趋势.sum=0;
for n=1:30
sum=sum+1/(n^3);
plot(n,sum,'o');
grid on;
hold on;end 13xn1.可以证明:这个数列的极限是3.计算这个数列的前
2xn130项的近似值.作散点图, 观察点的变化趋势.2.7定义数列x01,xn
tempn=1;
for n=1:29
tempn=(tempn+3/tempn)/2;
plot(n,tempn,'o');
grid on;
hold on;
end 2.8计算极限
11x2(1)limxsinsinx
(2)limx x0xexxtanxsinx
(4)limxx(3)lim3x0x0xlncotx
(6)limx2lnx(5)limx0x0lnx3x32x25sinxxcosx
(8)lim(7)limx5x32x1x0x2sinx
ee2xsinx1cosx
(10)lim(9)limx0xx0xsinx
syms x;(1)limit(x.*sin(1./x)+1./x*sin(x),x,0)=1(2)limit((x.^2)/exp(x),x,+inf)=0(3)limit((tan(x)-sin(x))./x.^3,x,0)=1/2(4)limit(x.^x,x,+0)=1(5)limit(log(cot(x))/log(x),x,+0)=-1(6)limit(x.^2*log(x),x,+0)=0(7)limit((sin(x)-x.*cos(x))/(x.^2.*sin(x)),x,0)=1/3(8)limit((3*x^3-2*x^2+5)/(5*x^3+2*x+1),x,0)=5(9)limit((exp(x)-exp(-x)-2*x)/(x-sin(x)),x,0)=2(10)limit((sin(x)/x)^(1/(1-cos(x))),x,0)= 1/exp(1/3)
xx1实验3 导数(基础实验)
实验目的 深入理解导数与微分的概念, 导数的几何意义.掌握用Matlab求导数与高 阶导数的方法.深入理解和掌握求隐函数的导数, 以及求由参数方程定义的函数的导数的方法.导数概念与导数的几何意义 3.1作函数f(x)2x33x212x7的图形和在x1处的切线.syms x;diff(2*x^3+3*x^2-12*x+7)y=6*x^2+6*x-12;x=-4:0.1:4;y1=2*x.^3+3*x.^2-12*x+7;y2=-12*(x+1)+20;plot(x,y1,x,y2)
13.2求函数f(x)sinaxcosbx的一阶导数.并求f.absyms a b x;diff(sin(a*x)*cos(b*x))
function y=f1(x)syms a b real;y=cos(a*x)*a*cos(b*x)-sin(a*x)*sin(b*x)*b;
y=f1(1/(a+b))
ans = cos(a*x)*a*cos(b*x)-sin(a*x)*sin(b*x)*b
y = cos(a/(a+b))*a*cos(b/(a+b))-sin(a/(a+b))*sin(b/(a+b))*b 3.3求函数yx102(x10)9的1阶到11阶导数.syms x;for n=1:11;
diff(x^10+2*(x-9)^9,x,n)end
ans =
10*x^9+18*(x-9)^8 ans = 90*x^8+144*(x-9)^7 ans = 720*x^7+1008*(x-9)^6 ans = 5040*x^6+6048*(x-9)^5 ans = 30240*x^5+30240*(x-9)^4 ans = 151200*x^4+120960*(x-9)^3 ans = 604800*x^3+362880*(x-9)^2 ans = 1814400*x^2+725760*x-6531840 ans = 3628800*x+725760 ans = 3628800 ans = 0
3.求隐函数的导数及由参数方程定义的函数的导数
3.4求由方程2x22xyy2x2y10确定的隐函数的导数.syms x y;f=2*x^2-2*x*y+y^2+x+2*y+1;dx=diff(f,x);dy=diff(f,y);dy_dx=-dx/dy
dy_dx =(-4*x+2*y-1)/(-2*x+2*y+2)3.5求由参数方程xetcost,yetsint确定的函数的导数.syms t;x=exp(t)*cos(t);y=exp(t)*sin(t);dy_dx=diff(y,t)/diff(x,t)
dy_dx =(exp(t)*sin(t)+exp(t)*cos(t))/(exp(t)*cos(t)-exp(t)*sin(t))拉格朗日中值定理
3.6对函数f(x)x(x1)(x2),观察罗尔定理的几何意义.(1)画出yf(x)与f(x)的图形, 并求出x1与x2.(2)画出yf(x)及其在点(x1,f(x1))与(x2,f(x2))处的切线.syms x;diff(x*(x-1)*(x-2))
solve('(x-1)*(x-2)+x*(x-2)+x*(x-1)')
x=-2:0.1:4;y1=x.*(x-1).*(x-2);y2=(x-1).*(x-2)+x.*(x-2)+x.*(x-1);plot(x,y1,x,y2)
x=0:0.1:2;y1=x.*(x-1).*(x-2);y2=0.3849+0*x;y3=-0.3849+0*x;plot(x,y1,x,y2,'-',x,y3,'-')axis([0 2-0.5 0.5])
ans =
[ 1+1/3*3^(1/2)] [ 1-1/3*3^(1/2)]
3.7 对函数f(x)ln(1x)在区间[0,4]上观察拉格朗日中值定理的几何意义.(1)画出yf(x)及其左、右端点连线的图形;f(4)f(0)(2)画出函数yf(x)的曲线图, 并求出使得
40f(4)f(0)f().40(3)画出yf(x),它在处的切线及它在左、右端点连线的图形.syms x;f=log(1+x);x=0:0.01:4;plot(x,eval(f));hold on;line([0,4],[0,eval(sym('log(5)'))],'color','r','linewidth',2);y=diff(f)-sym('log(5)')/4;ezplot(y);k=sym('log(5)')/4;X=solve(y);b=log(1+eval(X));plot(x,eval(k)*(x-eval(X))+b,'r');hold off;axis([0,4,0,1.7]);grid on;title('拉格朗日中值定理');gtext(['y=',char(f)]);gtext(['y=',char(y)]);
gtext(['切线']);3.8求下列函数的导数:(1)ye3x1x;
(2)yln[tan()];
24(1)syms x;
diff(exp((x+1)^(1/3)))
ans =1/3/(x+1)^(2/3)*exp((x+1)^(1/3))(2)syms x;
diff(log(tan(x/2+pi/4)))ans =(1/2+1/2*tan(1/2*x+1/4*pi)^2)/tan(1/2*x+1/4*pi)
3.9求下列函数的微分:(1)y2;
(2)yln(xx2a2).(1)syms x;
diff(2^(-1/cos(x)))
ans =-2^(-1/cos(x))/cos(x)^2*sin(x)*log(2)(2)syms x;
syms a real;
diff(log(x+(x^2+a^2)^0.5))
ans =(1+1/(x^2+a^2)^(1/2)*x)/(x+(x^2+a^2)^(1/2))
3.10求下列函数的一、二阶导数:(1)yln[f(x)];
(2)yf(ex)ef(x).ans= 1/f(x)*f’(x)
-1/(f(x))^2*f’’(x)
3.11求下列函数的高阶导数:(1)yxsinhx,求y(100);
(2)yx2cosx,求y(10);(1)
syms x;diff(x*sinh(x),100)ans =100*cosh(x)+x*sinh(x)(2)
syms x;diff(x^2*cos(x),10)ans =90*cos(x)-20*x*sin(x)-x^2*cos(x)
3.18求由下列方程所确定的隐函数yy(x)的导数:(1)lnxeyx1cosxe;
(2)arctanylnx2y2.x(1)
syms x y;f=log(x)+exp(-y/x)-exp(1);
fx=diff(f,x);fy=diff(f,y);dy_dx=-fx/fy ans =-(-1/x-y/x^2*exp(-y/x))*x/exp(-y/x)(2)
syms x y;f=atan(y/x)-log((x^2+y^2)^0.5);
fx=diff(f,x);fy=diff(f,y);dy_dx=-fx/fy;simplify(dy_dx)ans =(y+x)/(x-y)
3.19求由下列参数方程确定的函数的导数:
6tx,31t3xcost,(1)
(2) 236tysint;y.1t3
(1)
syms t;x=diff(cos(t)^3,t);
y=diff(sin(t)^3,t);dy_dx=y/x
ans =-sin(t)/cos(t)(2)
syms t;x=diff(6*t/(1+t^3),t);y=diff(6*t^2/(1+t^3),t);
dy_dx=y/x;simplify(dy_dx)
ans =t*(-2+t^3)/(-1+2*t^3)
实验4 导数的应用(基础实验)
实验目的
理解并掌握用函数的导数确定函数的单调区间、凹凸区间和函数的极值的方法.理解曲线 的曲率圆和曲率的概念.进一步熟悉和掌握用Matlab作平面图形的方法和技巧.掌握用 Matlab求方程的根(包括近似根)和求函数极值(包括近似极值)的方法.求函数的单调区间 4.1求函数yx32x1的单调区间.syms x;diff(x^3-2*x+1)solve('3*x^2-2')ans =3*x^2-2 ans =1/3*6^(1/2)
-1/3*6^(1/2)求函数的极值
x4.2求函数y的极值.1x2syms x;diff(x/(1+x^2))
solve('1/(1+x^2)-2*x^2/(1+x^2)^2')ans =1/(1+x^2)-2*x^2/(1+x^2)^2 ans =[ 1][-1]
求函数的凹凸区间和拐点
14.3 求函数y的凹凸区间和拐点.12x2syms x;diff(1/(1+2*x^2),2)
solve('32/(1+2*x^2)^3*x^2-4/(1+2*x^2)^2')
x=-1:0.1:1;y1=32./(1+2*x.^2).^3.*x.^2-4./(1+2*x.^2).^2;y2=0*x;plot(x,y1,x,y2,'-')ans = 32/(1+2*x^2)^3*x^2-4/(1+2*x^2)^2 ans = [ 1/6*6^(1/2)] [-1/6*6^(1/2)] 10
4.4 已知函数
16254x2x5x60x3150x2180x25, 22在区间[6,6]上画出函数f(x),f(x),f(x)的图形, 并找出所有的驻点和拐点.disp('输入函数(自变量为x)');f(x)syms x;f=input('函数f(x)=');df=diff(f);cdf=char(df);a=[];count=0;clf;if(strfind(cdf,'x'))
sf=solve(df);
ezplot(df);
gtext(['y''=',char(df)]);
disp(['y''=',char(df)]);
count=count+1;
legend('一阶导');
hold on;
for i=1:size(sf);
a(i)=sf(i);
end
a=sort(a);
if(numel(a)~=0&numel(a)~=1&numel(a)~=inf)
for i=1:numel(sf);
strstart='-inf';
strend='+inf';
if(i==1)
x=a(i)-1;
x0=Eval(df);
strend=num2str(a(i));if(x0<0)disp(['单调减区间','[',strstart,',',strend,']']);else disp(['单调增区间','[',strstart,',',strend,']']);
end
end
if(i==numel(sf))
x=a(i)+a(i-1);
x0=Eval(df);
x=a(i)+1;
x1=Eval(df);
strstart=num2str(a(i));
x=a(i);
y=Eval(f);
else if(i==1)
x=a(i)-1;
else
x=a(i)-a(i-1);11
end
x0=Eval(df);
x=(a(i)+a(i+1))/2;
x1=Eval(df);
strstart=num2str(a(i));
strend=num2str(a(i+1));
x=a(i);
y=Eval(f);
end
if(x1<0)disp(['单调减区间','[',strstart,',',strend,']']);
if(x0>0)disp(['驻点:极大值','x=',num2str(a(i)),',y=',num2str(y)]);
end
else
disp(['单调增区间','[',strstart,',',strend,']']);
if(x0<0)disp(['驻点:极小值','x=',num2str(a(i)),',y=',num2str(y)]);
end
ddf=diff(df);
cddf=char(ddf);
if(strfind(cddf,'x'))
ssf=solve(ddf);
ezplot(ddf);
gtext(['y''''=',char(ddf)]);
disp(['y''''=',char(ddf)]);
count=count+1;
b=[];
for i=1:size(ssf);
b(i)=ssf(i);
end
b=sort(b);
if(numel(b)~=0&numel(b)~=1&numel(b)~=inf)
for i=1:numel(ssf);
strstart='-inf';
strend='+inf';
end
end
end
if(i==1)
x=b(i)-1;
x0=Eval(ddf);
strend=num2str(b(i));
if(x0<0)
disp(['单调凸区间','[',strstart,',',strend,']']);
disp(['拐点','x=',num2str(b(i))]);
else
disp(['单调凹区间','[',strstart,',',strend,']']);
disp(['拐点','x=',num2str(b(i))]);
end
end
if(i==numel(ssf))
x=b(i)+b(i-1);12
x0=Eval(ddf);
x=b(i)+1;
x1=Eval(ddf);
strstart=num2str(b(i));
else
if(i==1)
x=b(i)-1;
else
x=b(i)-b(i-1);
end
x0=Eval(ddf);
x=(b(i)+b(i+1))/2;
x1=Eval(ddf);
strstart=num2str(b(i));
strend=num2str(b(i+1));
end
if(x1<0)
disp(['单调凸区间','[',strstart,',',strend,']']);
disp(['拐点','x=',num2str(b(i))]);
else
disp(['单调凹区间','[',strstart,',',strend,']']);
disp(['拐点','x=',num2str(b(i))]);
end
end
end
elseif(numel(b)==1)
disp(['拐点','x=',num2str(b(1))]);
end end if(~(min(a)==[]|max(a)==[]))
ezplot(f,[min(a)-1,max(a)+1]);else
ezplot(f);
gtext(['y=',char(f)]);
disp(['y=',char(f)]);
count=count+1;end switch count
case 3
legend('一阶导','二阶导','原函数');
case 2
legend('一阶导','原函数');
case 1
legend('原函数');end title('连续函数的性质');grid on;hold off;运行结果:输入函数(自变量为x)
函数f(x)=x^6/2-2*x^5-25*x^4/2+60*x^3-150*x^2-180*x-25 y'=3*x^5-10*x^4-50*x^3+180*x^2-300*x-180 单调增区间[-inf,-0.4591] 单调减区间[-0.4591,1.5529-1.8228i] 13
驻点:极大值x=-0.4591,y=19.7063 单调减区间[1.5529-1.8228i,1.5529+1.8228i] 驻点:极大值x=1.5529-1.8228i,y=-378.8847+558.3244i 单调增区间[1.5529+1.8228i,-4.4431] 驻点:极小值x=1.5529+1.8228i,y=-378.8847-558.3244i 单调减区间[-4.4431,5.1297] 驻点:极大值x=-4.4431,y=-5010.7825 单调增区间[5.1297,+inf] 驻点:极小值x=5.1297,y=-3445.4274 y''=15*x^4-40*x^3-150*x^2+360*x-300 单调凸区间[-inf,0.96967-0.77693i] 拐点x=0.96967-0.77693i 单调凸区间[0.96967-0.77693i,0.96967+0.77693i] 拐点x=0.96967-0.77693i 单调凸区间[0.96967+0.77693i,-3.2539] 拐点x=0.96967+0.77693i 单调凸区间[-3.2539,3.9812] 拐点x=-3.2539 单调凹区间[3.9812,+inf] 拐点x=3.9812 y=1/2*x^6-2*x^5-25/2*x^4+60*x^3-150*x^2-180*x-25
求极值的近似值 4.5求函数y2sin2(2x)5xxcos2的位于区间(0,)内的极值的近似值.22即得到函数y的两个极小值和极小值点.再转化成函数y的极大值和极大值点.两种方法的结
果是完全相同的.function y=f(x)y=2*sin(2*x)*sin(2*x)+5/2*x*cos(x/2)*cos(x/2);ezplot(y,[0,pi]);grid;x=fminbnd('f1(x)',0.5,2.5)f1(x)x=fminbnd('-f1(x)',0,pi)f1(x)x=fminbnd('-f1(x)',1.5,pi)f1(x)极小值点x = 1.6239
ans = 1.9446 极大值点x = 0.8642
ans = 3.7323 极大值点x = 2.2449
ans = 2.9571
项目二
一元函数积分学与空间图形的画法
实验1 一元函数积分学(基础实验)
实验目的掌握用Matlab计算不定积分与定积分的方法.通过作图和观察, 深入理解
定积分的概念和思想方法.初步了解定积分的近似计算方法.理解变上限积分的概念.提高应用 定积分解决各种问题的能力.用定义计算定积分
当f(x)在[a,b]上连续时, 有
因此可将 babaf(x)dxlimnnbank0n1(ba)bafaklimnnnnakfk1n(ba) nk0n1(ba)bafak
与
nnakfk1(ba) n作为baf(x)dx的近似值.1.1 计算1sin0xxdx的近似值.fun=inline('sin(x)./x','x');y=quad(fun,0,1)y =0.9461 1.2 用定义求定积分示.bax2dx的动画演m=moviein(10)for a=1:10 for n=20:30 x=linspace(0,4,n+1);y=x.^2;for i=1:n
fill([x(i),x(i+1),x(i+1),x(i)],[0,0,y(i),y(i)],'b')hold on end plot(x,y)m(:,a)=getframe;end movie(m,1,1)end
不定积分计算 1.3求x2(1x3)5dx.syms x;int(x^2*(1-x^3)^5)
ans =-1/18*x^18+1/3*x^15-5/6*x^12+10/9*x^9-5/6*x^6+1/3*x^3 1.4求sinxdx.xsyms x;int(sin(x)*x)ans = sin(x)-x*cos(x)
定积分计算
1.5 求4010(xx2)dx.syms x;int(x-x^2,0,1)ans = 1/6 1.6 求|x2|dx.syms x;int(abs(x-2),0,4)ans = 4 变上限积分
1.7
画出变上限函数形.syms t;int(t*(sin(t))^2,0,x)
x=-2*pi:0.1:2*pi;y1=x.*(sin(x)).^2;y2=-1/2*x.*cos(x).*sin(x)+1/4*x.^2+1/4*sin(x).^2;plot(x,y1,x,y2)
求平面图形的面积 1.8 设f(x)e(x2)cosx和g(x)4cos(x2).计算区间[0,4]上两曲线所围成的平面的面
积.fun=inline('abs(exp(-((x-2).^2).*cos(pi*x))-4*cos(x-2))','x');y=quad(fun,0,4)
y = 6.4774 求平面曲线的弧长
1.9 f(x)sin(xxsinx),计算(0,f(0))与(2,f(2))两点间曲线的弧长.fun=inline('(1+(cos(x+sin(x)).*(1+cos(x))).^2).^0.5','x');y=quad(fun,0,2*pi)y = 7.9062 求旋转体的体积
1.10 求曲线g(x)xsin2x(0x)与x轴所围成的图形分别绕x轴和y轴旋转所成的旋 转体体积.fun=inline('pi*(x.*(sin(x).^2)).^2','x');y=quad(fun,0,pi)fun=inline('2*pi*x.^2.*(sin(x).^2)','x');y=quad(fun,0,pi)y =9.8629 y =27.5349 2x0tsint2dt及其导函数的图
实验2 空间图形的画法(基础实验)
实验目的掌握用Matlab绘制空间曲面和曲线的方法.熟悉常用空间曲线和空间曲面 的图形特征,通过作图和观察, 提高空间想像能力.深入理解二次曲面方程及其图形.一般二元函数作图
42.1作出函数z的图形.21xy2
a=10;step=0.5;x=-a:step:a;y=x;[x,y]=meshgrid(x);z=4./(1+x.^2+y.^2);mesh(x,y,z);
2.2 作出函数zxyex
a=5;step=0.3;x=-a:step:a;y=x;[x,y]=meshgrid(x);z=-x.*y.*exp(-(x.^2+y.^2));surf(x,y,z);
二次曲面 2y2的图形.x2y2z22.3作出椭球面1的图形.491(这是多值函数, 用参数方程作图的命令ParametricPlot3D.该曲面的参数方程为
syms u v;u=0:0.2:2*pi;[u,v]=meshgrid(u);x=2.*sin(u).*cos(v);y=3.*sin(u).*sin(v);z=cos(u);mesh(x,y,z)
x2y2z22.4作出单叶双曲面1的图形.(曲面的参数方程为
149xsecusinv,y2secucosv,z3tanu,(/2u/2,0v2.))
syms u v;u=-pi/2:0.2:pi/2;v=0:0.2:2*pi;[u,v]=meshgrid(u,v);x=sec(u).*sin(v);y=2.*sec(u).*cos(v);z=3*tan(u);mesh(x,y,z);axis([-10,10,-10,10,-10,10]);view(-7,60);x2y2z
22.5 作双叶双曲面1的图1.521.421.32形.(曲面的参数方程是
x1.5cotucosv,y1.4cotusinv,z1.3cscu, 其中参数0u2对应双叶双曲面的另一叶.)
syms u v;
u=0:0.2:pi/2;v=-pi:0.2:pi;,v时对应双叶双曲面的一叶, 参数2u0,v时[u,v]=meshgrid(u,v);x=3*cot(u).*cos(v);y=5*cot(u).*sin(v);z=2*csc(u);mesh(x,y,z);hold on;u=-pi/2:0.2:0;v=-pi:0.2:pi;[u,v]=meshgrid(u,v);x=3*cot(u).*cos(v);y=5*cot(u).*sin(v);z=2*csc(u);mesh(x,y,z);
hold off;2.6作出圆环
x(83cosv)cosu,y(83cosv)sinu,z7sinv,(0u3/2,/2v2)的图形.syms u v;
u=0:0.2:pi/2;v=-pi:0.2:pi;[u,v]=meshgrid(u,v);x=3*cot(u).*cos(v);y=5*cot(u).*sin(v);z=2*csc(u);mesh(x,y,z);hold on;u=-pi/2:0.2:0;v=-pi:0.2:pi;[u,v]=meshgrid(u,v);x=3*cot(u).*cos(v);y=5*cot(u).*sin(v);z=2*csc(u);mesh(x,y,z);
hold off;2.7 画出参数曲面
xcosusinvysinusinvzcosvln(tanv/2u/5)的图形.u=0:0.1:4*pi;v=0.001:0.1:2;[u,v]=meshgrid(u,v);x=cos(u).*sin(v);y=sin(u).*sin(v);z=cos(v)+log(tan(v/2)+u/5);surf(x,y,z)
u[0,4],v[0.001,2]
曲面相交 2.8作出球面x2y2z222和柱面(x1)2y21相交的图形.u=0:0.1:2*pi;v=0:0.1:pi;[u,v]=meshgrid(u,v);x=2*cos(v).*sin(u);y=2*sin(v).*sin(u);z=2*cos(u);surf(x,y,z)hold on t=0:0.1:2*pi;c=0:0.1:2;[t,c]=meshgrid(t,c);a=1+cos(t);b=sin(t);surf(a,b,c)2.9作出锥面x2y2z2和柱面(x1)2y21相交的图形.u=0:0.1:2*pi;v=0:0.1:2;
[u,v]=meshgrid(u,v);x=cos(u).*v;y=sin(u).*v;
z=v;
surf(x,y,z)
hold on
t=0:0.1:2.1*pi;c=0:0.1:2;
[t,c]=meshgrid(t,c);a=1+cos(t);b=sin(t);
surf(a,b,c)2.10 画出以平面曲线ycosx为准线, 母线平行于Z轴的柱面的图形.(写出这一曲面的参数方程为
xtycost,t[,],sR zs取参数s的范围为[0, 8].)
t=-pi:0.1:pi;s=0:0.1:8;
[t,s]=meshgrid(t,s);x=t;y=cos(t);z=s;
surf(x,y,z)
空间曲线
xsint2.11绘制参数曲线 y2cost 的图形.zt/2t=-4*pi:0.1:4*pi;x=sin(t);y=2*cos(t);z=t/2;plot3(x,y,z,’r’)grid on
xcos2t12.12绘制参数曲线 y的图形.12tzarctantt=-2*pi:0.1:2*pi;x=(cos(t)).^2;y=1./(1+2*t);z=atan(t);plot3(x,y,z)grid on
动画制作
2.13用动画演示由曲线ysinz,z[0,]绕z轴旋转产生旋转曲面的过程.(该曲线绕z轴旋转所得旋转曲面的方程为x2y2sin2z, 其参数方程为
xsinzcosu,ysinzsinu,zz,(z[0,],u[0,2]))
m=moviein(10);
for i=1:10
u=0:0.1:pi/5*(i+0.2);
v=0:0.1:pi;
[u,v]=meshgrid(u,v);x=sin(v).*cos(u);y=sin(v).*sin(u);z=v;
mesh(x,y,z)
m(:,i)=getframe;
end
movie(m,1);
项目三
多元函数微积分
实验1 多元函数微分学(基础实验)
实验目的掌握利用Matlab计算多元函数偏导数和全微分的方法, 掌握计算二元
函数极值和条件极值的方法.理解和掌握曲面的切平面的作法.通过作图和观察, 理解二元 函数的性质、方向导数、梯度和等高线的概念.求多元函数的偏导数与全微分
zz2z2z,,.xyx2xysyms x y;z=sin(x*y)+cos(x*y)^2;zx=diff(z,x)
zy=diff(z,y)
zzxx=diff(z,x,2)zzxy=diff(zx,y)1.1设zsin(xy)cos2(xy),求
zx =cos(x*y)*y-2*cos(x*y)*sin(x*y)*y zy =cos(x*y)*x-2*cos(x*y)*sin(x*y)*x zzxx =-sin(x*y)*y^2+2*sin(x*y)^2*y^2-2*cos(x*y)^2*y^2 zzxy =-sin(x*y)*x*y+cos(x*y)+2*sin(x*y)^2*x*y-2*cos(x*y)^2*x*y-2*cos(x*y)*sin(x*y)
uuvv1.2设xeuusinv,yeuucosv,求,,.xyxysyms x y u v;f1=exp(u)+u*sin(v)-x;
f2=exp(u)-u*cos(v)-y;
f1u=diff(f1,u);
f1v=diff(f1,v);
fx=diff(f1,x);f2u=diff(f2,u);f2v=diff(f2,v);fy=diff(f2,y);ux=-fx/f1u uy=-fy/f2u vx=-fx/f1v vy=-fy/f2v
ux =
1/(exp(u)+sin(v))uy = 1/(exp(u)-cos(v))vx = 1/u/cos(v)vy = 1/u/sin(v)微分学的几何应用
1.3 求出曲面z2x2y2在点(1,1)处的切平面、法线方程, 并画出图形.[x,y]=meshgrid(-5:0.1:5);z=2.*x.^2+y.^2;mesh(x,y,z)hold on [x,y]=meshgrid(-10:0.1:10);z=4*x+2*y-3;plot3(x,y,z)hold on line([41,-39],[21,-19],[-7,13])axis([-20 20-20 20-40 40])
41.4求曲面k(x,y)2在点xy211164,处的切平面方程, 并把曲面和它的4221切平面作在同一图形里.syms x y k;
df_dx=diff(4/(x^2+y^2+1),x)
df_dy=diff(4/(x^2+y^2+1),y)
a=linspace(-10,10,100);
b=a;
[a,b]=meshgrid(a,b);
c=4./(a.^2+b.^2+1);
d=-8/((1/4)^2+(1/2)^2+1)^2*(1/4);
e=-8/((1/4)^2+(1/2)^2+1)^2*(1/2);
f=d.*(a-1/4)+e.*(b-1/2)+64/21;
mesh(a,b,c);
hold on;
mesh(a,b,f);
axis([-10,10,-10,10,-2,5]);
多元函数的极值
1.5求f(x,y)x3y33x23y29x的极值.syms x y;f=x^3-y^3+3*x^2+3*y^2-9*x;fx=diff(f,x)fy=diff(f,y)fxx=diff(fx,x)fxy=diff(fx,y)fyy=diff(fy,y)
1.6 求函数zx2y2在条件x2y2xy10下的极值.syms x y m;z=x^2+y^2;df_dy=diff(z,y);df_dx=diff(z,x);q=x^2+y^2+x+y-1;dq_dx=diff(q,x);dq_dy=diff(q,y);[x,y,m]=solve(df_dx+m*dq_dx,df_dy+m*dq_dy,q)
x =[-1+1/3*3^(1/2)][-1-1/3*3^(1/2)] y =[-1/2+1/2*3^(1/2)][-1/2-1/2*3^(1/2)] m =[-1/2+1/2*3^(1/2)][-1/2-1/2*3^(1/2)]
实验2 多元函数积分学(基础实验)
实验目的
掌握用Matlab计算二重积分与三重积分的方法;深入理解曲线积分、曲面积分的 概念和计算方法.提高应用重积分和曲线、曲面积分解决各种问题的能力.计算重积分
2.1计算xydxdy, 其中D为由xy2,x2Dy, y2所围成的有界区域.syms x y;int(int(x*y^2,x,2-y,y^0.5),y,1,2)
ans =193/120 2.2计算(x2y2z)dxdydz, 其中由曲面z2x2y2与zx2y2围成.syms t r z;int(int(int((r^2+z)*r,z,r,(2-r^2)^0.5),r,0,1),t,0,2*pi)
ans =2.1211 重积分的应用
2.3 求由曲面fx,y1xy与gx,y2x2y2所围成的空间区域的体积.syms t r;int(int((3/2-r^2)*r,r,0,(3/2)^0.5),t,0,2*pi)ans =3.5343 2.4 在Oxz平面内有一个半径为2的圆, 它与z轴在原点O相切, 求它绕z轴旋转一周所得旋转体体积.syms x;int(4*pi*x*(4-(x-2)^2)^0.5,x,0,4)
ans =157.9137
计算曲线积分
2.5求 Lf(x,y,z)ds, 其中fx,y,z130x210y,积分路径为
L:xt,yt2,z3t2,0y2.(注意到,弧长微元dsxt2yt2zt2dt, 将曲线积分化为定积分)syms t;x=t;y=t^2;z=3*t^2;f=diff([x,y,z],t);fun=inline('((1+30*t.^2).^0.5+10*t.^2).*(1+40*t.^2).^0.5','t');quad(fun,0,2)
ans =348.9428 2.6求F.dr, 其中
LFxy6i3x(xy52)j,r(t)2costisintj,0t2.syms t;
x=cos(t);
y=sin(t);
int(x*y^6*(-2*sin(t))+3*x*(x*y^5+2)*cos(t),t,0,2*pi)
ans = 6*pi
计算曲面积分
2.7计算曲面积分得的有限部分.222z2(注意到,面积微元dS1zxydxdy, 投影曲线xy2x的极坐标方程为 (xyyzzx)dS, 其中为锥面zx2y2被柱面x2y22x所截
2将曲面积分化作二重积分,并采用极坐标计算重积分.)
syms t r;
x=r*cos(t);24
r2cost,t2,y=r*sin(t);
z=r;
int(int((x*y+y*z+x*z)*r*2^0.5,r,0,2*cos(t)),t,-pi/2,pi/2)
ans = 6.0340 2.8计算曲面积分x3dydzy3dzdxz3dxdy, 其中为球面x2y2x2a2的外侧.syms t s r;syms a real;int(int(int(3*r^4*sin(s),r,0,a),s,0,pi),t,0,2*pi)
ans = 12/5*a^5*pi
实验3 最小二乘拟合(基础实验)
实验目的了解曲线拟合问题与最小二乘拟合原理.学会观察给定数表的散点图, 选择 恰当的曲线拟合该数表.最小二乘拟合原理 给定平面上的一组点
(xk,yk),k1,2,,n, 寻求一条曲线yf(x),使它较好的近似这组数据, 这就是曲线拟合.最小二乘法是进行曲线拟合的常用方法.最小二乘拟合的原理是, 求f(x),使
[f(x)ykk1nk]2
达到最小.拟合时, 选取适当的拟合函数形式
f(x)c00(x)c11(x)cmm(x),其中0(x),1(x),,m(x)称为拟合函数的基底函数.为使取到极小值, 将f(x)的表达式 代入, 对变量ci求函数的偏导数, 令其等于零, 就得到由m1个方程组成的方程组, 从中 可解出ci(i0,1,2,,m).曲线拟合
3.1 为研究某一化学反应过程中温度x(C)对产品得率y(%)的影响, 测得数据如下: x 100 110 120 130 140 150 160 170 180 190 y 45 51 54 61 66 70 74 78 85 89 试求其拟合曲线.x=[100,110,120,130,140,150,160,170,180,190];
y=[45,51,54,61,66,70,74,78,85,89];
a=polyfit(x,y,1)
z=polyval(a,x);
plot(x,y,'gp',x,z,'r');
a = 0.4830
-2.7394
即拟合曲线为:y=0.4830x-2.7394
3.2 给定平面上点的坐标如下表: x0.10.20.30.40.50.60.70.80.9
y5.12345.30575.56875.93786.43377.09787.94939.025310.3627试求其拟合曲线.x=[0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9];
y=[5.1234,5.3057,5.5687,5.9378,6.4337,7.0978,7.9493,9.0253,10.3627];
a=polyfit(x,y,3)
z=polyval(a,x);
plot(x,y,'bp',x,z,'r');
a = 4.9875
0.6902
1.3202
4.9774
即拟合曲线为:y=4.9875x^3+0.6902x^2+1.3202x+4.9774
项目四 无穷级数与微分方程
实验1 无穷级数(基础实验)
实验目的
观察无穷级数部分和的变化趋势,进一步理解级数的审敛法以及幂级数部分和对函数的 逼近.掌握用Matlab求无穷级数的和, 求幂级数的收敛域, 展开函数为幂级数以及展 开周期函数为傅里叶级数的方法.数项级数
1.1(1)观察级数
x=0;
for n=1:50;
x=x+1/n^2;
plot(n,x,’r*’)
hold on
end
(2)观察级数势.nn112的部分和序列的变化趋势.n的部分和序列的变化趋n11
x=0;
for n=1:100;
x=x+1/n;
plot(n,x,’r*’)
hold on
end 10n1.2 设an, 求n!an1n.s=10;
for i=1:inf;
s=s+s*10/(i+1);
end
s =5.2257e+086
求幂级数的收敛域
1.3 求n042n(x3)n的收敛域与和函数.n
1syms n x k;
limit(4^(2*n)/(n+1)/(4^(2*n+2)/(n+2)),n,inf)%|x-3|<1/16
s=symsum(4^(2*n)*(x-3)^n/(n+1),n,0,inf)%-1/(x-3)*(x-3+1/16*log(49-16*x))
ans = 1/16 收敛域是[-1/16,1/16]
s =-log(49-16*x)/(16*x-48)
函数的幂级数展开
1.4 求cosx的6阶麦克劳林展开式.syms x;taylor(cos(x),7)
ans =1-1/2*x^2+1/24*x^4-1/720*x^6 1.5求arctanx的5阶泰勒展开式.syms x;taylor(atan(x))
ans =x-1/3*x^3+1/5*x^5 x12x1
21.6 求e在x1处的8阶泰勒展开, 并通过作图比较函数和它的近似多
syms x;
t=taylor(exp(-(x-1)^2*(x+1)^2),9,1)
ezplot(t);
hold on;x1=-10:0.01:10;y=exp(-(x1-1).^2.*(x1+1).^2);plot(x1,y,'r');
axis([0,2,-1,1]);ans=1-4*(x-1)^2-4*(x-1)^3+ 7*(x-1)^4+16*(x-1)^5+ 4/3*(x-1)^6-28*(x-1)^7-173/6*(x-1)^8 实验2 微分方程(基础实验)
实验目的理解常微分方程解的概念以及积分曲线和方向场的概念,掌握利用 Matlab求微分方程及方程组解的常用命令和方法.求解微分方程
2.1求微分方程 y2xyxex的通解.y=dsolve('Dy+2*x*y=x*exp(-x^2)','x')
y =(1/2*x^2+C1)*exp(-x^2)2.2求微分方程xyyex0在初始条件yx122e下的特解.y=dsolve('x*Dy+y=exp(x)','y(1)=2*exp(1)','x')
y =(exp(x)+exp(1))/x 27
2.3求解微分方程y2xex, 并作出其积分曲线.y=dsolve('D2y-2*x=exp(x)','x')
x=-2:0.1:2;y=1./3*x.^3+exp(x)+x+1;plot(x,y)dxtdtx2ye2.4求微分方程组在初始条件dyxy0dtxt01,yt00下的特解.[x y]=dsolve('Dx+x+2*y-exp(t)','Dy-x-y','x(0)=1','y(0)=0','t')
x =cos(t)
y =1/2*sin(t)-1/2*cos(t)+1/2*exp(t)
2.5求出初值问题
22yysinxycosx y(0)1,y(0)0的数值解, 并作出数值解的图形.function dy=ffer(x,y)dy=zeros(2,1);dy(1)=y(2);dy(2)=-y(2)*(sin(x))^2-y(1)+(cos(x))^2;
[X,Y]=ode23s('ffer',[0 4],[1 0])plot(X,Y(:,1),'-')
2.6洛伦兹(Lorenz)方程组是由三个一阶微分方程组成的方程组.这三个方程看似简单, 也没有包含复杂的函数, 但它的解却很有趣和耐人寻味.试求解洛伦兹方程组
x(t)16y(t)16x(t)y(t)x(t)z(t)45x(t)y(t), z(t)x(t)y(t)4z(t)x(0)12,y(0)4,z(0)0并画出解曲线的图形.function dy=lorenz(t,y)dy=zeros(3,1);dy(1)=16*y(2)-16*y(1);dy(2)=-y(1)*y(3)+45*y(1)-y(2);dy(3)=y(1)*y(2)-4*y(3);
[T,Y]=ode45('lorenz',[0 0.1],[12 4 0])plot(T,Y(:,1),'-',T,Y(:,2),'*',T,Y(:,3),'+')
项目五
矩阵运算与方程组求解
实验1 行列式与矩阵
实验目的
掌握矩阵的输入方法.掌握利用Matlab对矩阵进行转置、加、减、数乘、相乘、乘方等运算, 并能求矩阵的逆矩阵和计算方阵的行列式.矩阵A的转置函数Transpose[A] 131.1 求矩阵51
A'
ans = 7242的转置.6314
A=[1 7 2;3 4 2;5 6 3;1 1 4];矩阵线性运算 1.1 设A345427,B192,求AB,4B2A.426A=[3 4 5;4 2 6];
B=[4 2 7;1 9 2];
A+B
4*B-2*A
ans = ans =
0
-4 矩阵的乘法运算
42711.3 设A192,B0,求AB与BTA,并求A3.0351A=[4 2 7;1 9 2;0 3 5];B=[1 0 1]';A*B B'*A A^3 ans =11
ans =
ans =
119
660
555
141
932
444
477
260 1113211.4设A111,B041,求3AB2A及ATB.123124A=[-1 1 1;1-1 1;1 2 3];B=[3 2 1;0 4 1;-1 2-4];
3*A*B-2*A A'*B ans =
-33 ans =
0
-10 求方阵的逆
251.5设A03132233,求A1.146215A=[2 1 3 2;5 2 3 3;0 1 4 6;3 2 1 5];inv(A)ans =
-1.7500
1.3125
0.5000
-0.6875
5.5000
-3.6250
-2.0000
2.3750
0.5000
-0.1250
-0.0000
-0.1250
-1.2500
0.6875
0.5000
-0.3125 3x2yz7,1.6 解方程组xy3z6,2x4y4z2.a=[3 2 1;1-1 3;2 4-4];b=[7 6-2]';x=ab
x =
1.0000
1.0000
2.0000 求方阵的行列式
1x121.7 计算范德蒙行列式x13x14x11x22x23x24x21x32x33x34x31x42x43x44x41x52.x53x54x5syms x1 x2 x3 x4 x5 A=[1,1,1,1,1;x1,x2,x3,x4,x5;x1^2,x2^2,x3^2,x4^2,x5^2;x1^3,x2^3,x3^3,x4^3,x5^3;x1^4,x2^4,x3^4,x4^4,x5^4];a=det(A);a=simple(a)a=(-x4+x3)*(x5-x4)*(x5-x3)*(x2-x4)*(x2-x3)*(x2-x5)*(-x4+x1)*(x1-x3)*(x1-x5)*(x1-x2)
371.8 设矩阵 A1125792462403, 求|A|,tr(A),A3.76569783790A=[3 7 2 6-4;7 9 4 2 0;11 5-6 9 3;2 7-8 3 7;5 7 9 0-6];det(A)A' A^3
ans =
11592 ans =
0
0
-6 ans =
726
2062
944
294
-358
1848
3150
1516
228
1713
2218
1006
404
1743
984
-451
1222
384
801
2666
477
745
-125 向量的内积
1.9求向量u{1,2,3}与v{1,1,0}的内积.u=[1 2 3];v=[1-1 0]';
u*v
ans =-1 实验2 矩阵的秩与向量组的极大无关组
实验目的学习利用Matlab求矩阵的秩,作矩阵的初等行变换;求向量组的秩与极大无关组.求矩阵的秩
321322.1 设M21313, 求矩阵M的秩.70518m=[3 2-1-3-2;2-1 3 1-3;7 0 5-1-8];rank(m)ans =2 32132.2 已知矩阵M2131的秩等于2, 求常数t的值.70t1syms t;M=[3 2-1-3 1;2-1 3 1 1;7 0 t-1 1] m=rref(M)
%分母为t-5,将5代入M M=[3 2-1-3 1;2-1 3 1 1;7 0 5-1 1];refm=rref(M)%所以t=5 解得 t=5 矩阵的初等行变换
22382.4 设A212212,求矩阵A的秩.1314A=[2-3 8 2;2 12-2 12;1 3 1 4];rank(A)ans =2 向量组的秩
2.5 求向量组1(1,2,1,1),3(0,4,5,2),2(2,0,3,0)的秩.a1=[1 2-1 1];a2=[0-4 5-2];a3=[2 0 3 0];rank([a1;a2;a3])
ans = 2
向量组的极大无关组 2.6求向量组
1(1,1,2,4),2(0,3,1,2),3(3,0,7,14),4(1,1,2,0),5(2,1,5,0)的极大无关组, 并将其它向量用极大无关组线性表示.33
a1=[1-1 2 4];a2=[0 3 1 2];a3=[3 0 7 14];a4=[1-1 2 0];a5=[2 1 5 0];rank([a1;a2;a3;a4;a5])rank([a1;a2;a3])rank([a1;a3;a4])rank([a1;a2;a4])ans = 3 ans = 2 ans = 3 ans = 3 向量组的等价 2.7设向量
1(2,1,1,3),2(3,2,1,2),1(5,8,5,12),2(4,5,3,7),求证:向量组1,2与1,2等价.a1=[2 1-1 3];a2=[3-2 1-2];b1=[-5 8-5 12];b2=[4-5 3-7];rank([a1;a2;b1;b2])rank([a1;a2])rank([b1;b2])rref([a1;a2])rref([b1;b2])ans =2 ans =2 ans =2 ans =
1.0000
0
-0.1429
0.5714
0
1.0000
-0.7143
1.8571 ans =
1.0000
0
-0.1429
0.5714
0
1.0000
-0.7143
1.8571 实验3 线性方程组
实验目的 熟悉求解线性方程组的常用命令,能利用Mathematica命令各类求线性方程 组的解.理解计算机求解的实用意义.x1x22x3x40,3xxx32x40,3.1求解线性方程组12
5x7x3x0,2342x13x25x3x40.a=[1 1-2-1;3-1-1 2;0 5 7 3;2-3-5-1];b=[0 0 0 0]';x=ab
ans = 3.2向量组1(1,1,2,3),2(1,1,1,1),3(1,3,4,5),4(3,1,5,7)是否线性相关? a1=[1 1 2 3];a2=[1-1 1 1];a3=[1 3 4 5];a4=[3 1 5 7];rank([a1;a2;a3;a4])
ans =
线形无关
非齐次线性方程组的特解
x1x22x3x443x2x2x32x423.3求线性方程组15x27x33x422x13x25x3x44 的特解.A=[1 1-2-1;3-2-1 2;0 5 7 3;2-3-5-1];B=[4;2;2;4];C=[1 1-2-1 4;3-2-1 2 2;0 5 7 3 2;2-3-5-1 4];
% C为增广矩阵% rref(C)
ans =
1.0000
0
0
0.6667
1.0000
0
1.0000
0
-0.3333
1.0000
0
0
1.0000
0.6667
-1.0000
0
0
0
0
0 由结果可以看出x4为自由未知量,方程组得解为: x1=-0.6667x4+1.0000 x2=0.3333 x4+ 1.0000 x3=-0.6667x4-1.0000 x1x22x3x443x2x2x32x423.4求线性方程组15x27x33x422x13x25x3x44B=[4;2;2;4];
的特解.A=[1 1-2-1;3-2-1 2;0 5 7 3;2-3-5-1];C=[1 1-2-1 4;3-2-1 2 2;0 5 7 3 2;2-3-5-1 4];
% C为增广矩阵% rref(C)
ans =
1.0000
0
0
0.6667
0
0
1.0000
0
-0.3333
0
0
0
1.0000
0.6667
0
0
0
0
0
1.0000 由结果可知,增广矩阵的秩与系数矩阵的秩不相等,故方程组无解。
3.5求出通过平面上三点(0,7),(1,6)和(2,9)的二次多项式ax2bxc,并画出其图形.A=[0 0 1;1 1 1;4 2 1];B=[7 6 9]';abc=inv(A)*B
ezplot('2*x^2-3*x+7')abc =
3.6求出通过平面上三点(0,0),(1,1),(-1,3)以及满足f(1)20,f(1)9的4次多项式f(x).A=[0 0 0 0 1;1 1 1 1 1;1-1 1-1 1;-4 3-2 1 0;4 3 2 1 0];B=[0 1 3 20 9]';abcde=inv(A)*B
abcde =
-4.7500
7.7500
6.7500
-8.7500
0 非齐次线性方程组的通解
x1x22x3x412xx2x32x433.7解方程组1x1x3x423x1x23x45a=[1-1 2 1;2-1 1 2;1 0-1 1;3-1 0 3];b=[1;3;2;5];rref([a b])
ans =
0
0
0
0
0
0
0
0
0
0
0
0
0
由结果可以看出x3,x4为自由未知量,方程组得解为:
x1=2+x3-x4;x2=1+3*x3;ax1x2x313.8当a为何值时,方程组x1ax2x31无解、有唯一解、有无穷多解?当方程组有
xxax1231解时,求通解.syms a;A=[a 1 1;1 a 1;1 1 a];Ab=[a 1 1 1;1 a 1 1;1 1 a 1];b=[1 1 1]';rref(A)%A的秩为3,rref(Ab)%增广矩阵的秩为3,所以a不等于-2时,方程组都有解,且只有唯一解 Ab1=[-2 1 1 1;1-2 1 1;1 1-2 1];rref(Ab1)%a=-2时,A的秩为2,增广矩阵的秩为3,无解 x=inv(A)*b %x即为a不等于-2时方程组的解
项目六
矩阵的特征值与特征向量
实验1 求矩阵的特征值与特征向量
实验目的
学习利用Mathematica(4.0以上版本)命令求方阵的特征值和特征向量;能利用软件计算方 阵的特征值和特征向量及求二次型的标准形.求方阵的特征值与特征向量.1021.1求矩阵A121.的特征值与特值向量.130A=[-1 0 2;1 2-1;1 3 0];[V D]=eig(A,'nobalance')V =
1.0000
1.00000.0000i
0.0000
1.00000.0000i
1231.2 求方阵M213的特征值和特征向量.336M=[1 2 3;2 1 3;3 3 6];[V D]=eig(M,'nobalance')V =
0.7071
0.5774
0.4082
-0.7071
0.5774
0.4082
0
-0.5774
0.8165 D =
-1.0000
0
0
0
-0.0000
0
0
0
9.0000 3001.3已知2是方阵A1t3的特征值,求t.123syms t;A=[3 0 0;1 t 3;1 2 3];E=eig(A)solve(1/2*t+3/2-1/2*(t^2-6*t+33)^(1/2)-2)E = 1/2*t+3/2+1/2*(t^2-6*t+33)^(1/2)1/2*t+3/2-1/2*(t^2-6*t+33)^(1/2)ans = 8 2121.4 已知x(1,1,1)是方阵A5a3的一个特征向量,求参数a,b及特征向量x所1b2属的特征值.syms a b c;A=[2-c-1 2;5 a-c 3;-1 b-2-c];x=[1;1;-1];A*x [a b c]=solve('-1-c','2+a-c','1+b+c','a,b,c')ans =
-1-c 2+a-c 1+b+c a =-3 b = 0 c =-1 矩阵的相似变换
4111.7设矩阵A222,求一可逆矩阵P,使P1AP为对角矩阵.222A=[4 1 1;2 2 2;2 2 2];[P D]=eig(A)P =
0.5774
0.5774
-0.0000
0.5774
-0.5774
-0.7071
0.5774
-0.5774
0.7071 D =
6.0000
0
0
0
2.0000
0
0
0
-0.0000 2001001.8已知方阵A2x2与B020相似, 求x,y.31100ysyms x;A=[-2 0 0;2 x 2;3 1 1];E=eig(A)y=-2 x=solve(1/2*x+1/2+1/2*(x^2-2*x+9)^(1/2)-2)y =-2 x = 0 011.9 对实对称矩阵A10110010,求一个正交阵P,使P1AP为对角阵.100002A=[0 1 1 0;1 0 1 0;1 1 0 0;0 0 0 2];[P D]=eig(A)P =
-0.7152
0.3938
0.5774
0
0.0166
-0.8163
0.5774
0
0.6987
0.4225
0.5774
0
0
0
0
1.0000 D =
-1.0000
0
0
0
0
-1.0000
0
0
0
0
2.0000
0
0
0
0
2.0000 1.10 求一个正交变换,化二次型f2x1x22x1x32x2x32x4为标准型.A=[0 1 1 0;1 0 1 0;1 1 0 0;0 0 0 2];[Q D]=eig(A)Q =
-0.7152
0.3938
0.5774
0
0.0166
-0.8163
0.5774
0
0.6987
0.4225
0.5774
0
0
0
0
1.0000 D =
-1.0000
0
0
0
0
-1.0000
0
0
0
0
2.0000
0
0
0
0
2.0000 1.11 已知二次型
222f(x1,x2,x3)x12x2x32x1x24x1x32x2x3
(1)求标准形;(2)求正惯性指数;
(3)判断二次型是否正定.(1)
A=[1 1-2;1-2 1;-2 1 1];[Q D]=eig(A)
Q =
0.4082
0.5774
-0.7071
-0.8165
0.5774
-0.0000
0.4082
0.5774
0.7071
D =
-3.0000
0
0
0
0.0000
0
0
0
3.0000(2)由对角矩阵D得,正惯性指数是1。(3)D=diag([-3,0,3]);
if all(D>0)
disp('二次型正定')
else disp('二次型非正定')
end 二次型非正定