matlab笔记 考试内容.docx
- 文档编号:12758140
- 上传时间:2023-06-07
- 格式:DOCX
- 页数:33
- 大小:320.95KB
matlab笔记 考试内容.docx
《matlab笔记 考试内容.docx》由会员分享,可在线阅读,更多相关《matlab笔记 考试内容.docx(33页珍藏版)》请在冰点文库上搜索。
matlab笔记考试内容
第一次上机函数微积分运算
例1:
解:
>>symsx;
>>y=sin(x)/(x^2+4*x+3);
>>diff(y,100)
ans=
simple(ans)…………
例2:
解:
(代数方程直接求解)
solve('x^4+6*x^3+7*x^2+2*x-9')
例3:
Hilbert矩阵
求解:
hilb(3)
解:
>>hilb(3)
ans=
1.00000.50000.3333
0.50000.33330.2500
0.33330.25000.2000
>>formatrational
>>hilb(3)
ans=
11/21/3
1/21/31/4
1/31/41/5
>>det(ans)
ans=
1/2160
>>formatlong
>>hilb(3)
ans=
1.0000000000000000.5000000000000000.333333333333333
0.5000000000000000.3333333333333330.250000000000000
0.3333333333333330.2500000000000000.200000000000000
>>formatshort
>>hilb(3)
ans=
1.00000.50000.3333
0.50000.33330.2500
0.33330.25000.2000
例4:
几个术语名称
线性:
lineAlgebre
规划:
program
线性规划:
linprog
例5:
matlab语言
运算符:
关系运算符:
逻辑运算符:
赋值语句:
=
顺序结构、
选择结构:
if
else
end
function[返回值]=函数名(输入值)
函数表达式
eg:
functiony=f1(x)
y=sin(x+4)/cos(x+8)-x^2-9
第二次上机
例1:
对变量的操作
who你的变量yourvariablesare:
whos
NameSizeBytesClassAttributes
ans3x372double
clear(清除变量)clc(clear)也清除窗口内容
inf无限NaN不是一个数
realmax、realmin最大、小实数
type.[]+显示一个M文件的内容打印
dir路径
which[]+地址
delet[]+删除
edit编辑
save保存
例2:
矩阵的输入
a=[1,2,3;4,5,6]
zeros(3,4)3*4阶零矩阵
ones(2,3)2*3全1矩阵
eye(3,4)3*4单位矩阵
magic(3,4)魔方矩阵(行列对角元素之和均相等)
det行列式
trance迹、路径
rank秩
inv逆矩阵
eig特征值
poly多项式
null零
diag
dome演示
path设置路径
eps计算机能识别的最小正数
lastwarn最后一次警告
lastcrr最后一次错误
vpa(pi,100)pi后一百位小数
a.*b与a*b有区别
a.^a
flipr(左右翻转)flipd(上下翻转)
rot旋转rot90旋转90°
find(?
)、all(?
)、any(?
):
?
是不是真
如:
a=[1234]
>>find(a>=3)
ans=
34
>>all(a>=2)
ans=
0
>>any(a>=0)
ans=
1
例3:
矩阵操作
矩阵元素的提取a(行,列)=
如:
a=[1,2,3;4,5,6;7,8,9]
>>a(2,1)=600
a=
123
60056
789
>>a(2,3)
ans=
6
例4:
>>a=[6.78.45.7100.324.438.7];
>>sum=0;
>>fori=a;
>>sum=sum+i
sum=
222.9000
例5:
1+2+3+……+100=?
>>sum=0;i=1;
>>whilei<=100
sum=sum+i;
i=i+1;
end
>>sum
sum=
5050
例6:
第三次上机
1.建立函数:
>>symsxa;
>>y=a*sin(x);
>>diff(y)
ans=
a*cos(x)
或者:
>>y=sym('a*sin(x)');/注意sym与syms的区别/
>>diff(y)
ans=
a*cos(x)
2.内联函数:
>>y=inline('a*siin(x)','x','a')
y=
Inlinefunction:
y(x,a)=a*siin(x)
3.计算阶乘:
functiony=f1(n)
ifn>1
y=f1(n-1)*n;
elseifany([0,1]==n)
y=1;
end
4.matlab图形plot
x=[1234];y=[491932];plot(x,y)
5.funtool简单图形之间的关系
二维:
bar条形;compass罗盘;feather羽毛;hist直方图
polar极坐标stairs阶梯函数semilogx对数函数
6.画图函数:
>>helpwin
左上端installation下的matlab(+号展开)——function——graphics
——
7.subplot分割图形
例:
x=-3:
0.1:
3;
>>y1=sin(x);
>>y2=cos(x);
>>y3=tan(x);
>>y4=cot(x);
>>subplot(2,3,1),plot(x,y1)
>>subplot(2,3,2),plot(x,y2)
>>subplot(2,3,3),plot(x,y3)
>>subplot(2,3,4),plot(x,y4)
8.用ezplot作图:
例:
ezplot('y-x^2',[-10,10])
9.三维图形绘制plot3
例:
>>t=0:
0.1:
pi;
>>x=sin(3*t);
>>y=cos(3*t);
>>z=t.^2;
>>plot3(x,y,z)
10.surf表面mesh网格waterfall
例:
>>[x,y]=meshgrid(0:
31)
>>z=x.^2+y.^2;
>>mesh(x,y,z);
>>surf(x,y,z)
>>waterfall(x,y,z)
第四次上机极限积分
一、极限
1.limit(fun,x,x0,'left'或'right')——单边极限
例:
解:
>>symsabx;
>>f=x*(1+a/x)^x*sin(b/x);
>>limit(f,x,inf)
ans=
b*exp(a)
>>limit(f,x,0)
ans=
limit(x*sin(b/x)*(a/x+1)^x,x=0)
注:
可套用:
如
symsxy;f=x+y;limt(limit(f,x,3),y,5)
2.导函数diff(fun,x,n)(隐函数,参数函数)
例:
>>symsx;y=sin(x);diff(y)
ans=cos(x)
若:
a=[1,4,9];diff(a)
ans=[3,5]([4-1,9-4])
注:
可嵌套如:
symsxy;f=x+y;diff(diff(f,x),y)
例:
雅克比行列式jacobian(?
)
如:
>>symsrtheta;
>>x=r*cos(theta),y=r*sin(theta);
x=
r*cos(theta)
>>jacobian([x;y],[r,theta])
ans=
[cos(theta),-r*sin(theta)]
[sin(theta),r*cos(theta)]
二、积分
1.定积分int(fun,x,a,b)
例:
>>symsx;
>>y=sin(x);
>>int(y,x,-pi,pi)
ans=
0
2.不定积分int(y,x)
例:
>>symsx;
>>y=sin(x);
>>int(y,x)
ans=
-cos(x)
3.无穷积分
例:
>>symsx;
>>y=sin(x);
>>int(y,x,1,inf)
ans=
NaN
4.嵌套:
>>symsxy;
f=sin(x+y);
int(int(f,x,0,1),y,0,3)
ans=
sin
(1)+sin(3)-sin(4)
5.泰勒展开式taylor(f,x,x0,n)
例:
>>symsx;
>>y=exp(x);
>>taylor(y,3)
ans=
x^2/2+x+1
6.级数求和(符号求和)symsum(f(k),k,k0,kn)k从k0+k1+……+kn
例:
>>symsk;
>>symsum(k,1,100)
ans=
5050
>>symsum(k^2,k,1,100)
ans=
338350
>>symsum(1/k^2,k,1,inf)
ans=
pi^2/6
>>symsum(k^2)
ans=
k^3/3-k^2/2+k/6
>>symsk,n;
>>limit((symsum(1/k,k,1,n)-log(n)),n,inf)
ans=
9417553366569523/135********111488
>>vpa(ans,8)
ans=
0.69703897
第五次上机数值求解
1.梯形公式突然票证(x,y)求面积
例:
>>x=[0:
0.01:
3*pi/2];
>>y=cos(15*x);
>>trapz(x,y)
ans=
0.0665
2.辛普森公式quad(f(x),a,b)
例:
>>y=inline('x.^2','x');
quad(y,0,1)
ans=
0.3333
3.二重积分quad2dggen(fun,ym,yM,xm,xM)
即:
例:
>>fl=inline(‘-sqrt(1-x^2)’,’x’);
>>fh=inline(‘sqrt(1-x^2)’,’x’);
>>f=1;
>>y=quad2dggen(f,fl,fh,-1,1)
注:
多元函数积分可用int计算,int可计算曲线积分和曲面积分
>>int(函数表达式)
第六次上机积分变换
1.对于
拉普拉兹变换lapace(fun,u,v)反变换ilapace(fun,u,v)
例:
>>symst;
>>laplace(t^2)
ans=
2/s^3
>>symst;
>>y=sym('f(t)');
>>laplace(diff(y,t,2))
ans=
s^2*laplace(f(t),t,s)-s*f(0)-D(f)(0)
3.傅里叶变换fourier(fun,u,v)将v的函数变成u的函数
傅里叶反变换ifourier(fun,u,v)将u的函数变成v的函数
4.Z变换ztrans(fun,k,z)
例:
>>symsk;
>>f=k;
>>ztrans(f)
ans=
z/(z-1)^2
5.gcd最大公约数
例:
>>symsx;
>>a=x^2+6*x-3;
>>b=x^2+6*x=3;
>>b=x^2+6*x+3;
>>gcd(a,b)
ans=
1
>>a=(x-2)*(x+3);
>>b=(x-2)*(x+6);
>>gcd(a,b)
ans=
x–2
习题1.证明:
证明:
>>symsx;
>>y=sym('f(x)');
>>diff(int(y,x))
ans=
f(x)
2.求:
的z变换
解:
>>symsn;
>>f=n^2;
>>ztrans(f)
ans=
(z^2+z)/(z-1)^3
3.求
的准确特征值和特征向量
解:
>>a=[12;34];
>>b=sym(a);
>>[m,n]=eig(b)
m=
[-33^(1/2)/6-1/2,33^(1/2)/6-1/2]
[1,1]
n=
[5/2-33^(1/2)/2,0]
[0,33^(1/2)/2+5/2]
4.已知
,求
解:
>>a=[12;34];
>>expm(a)
ans=
51.969074.7366
112.1048164.0738
第七次上机代数方程与最优化
一、图解法
例1.
解:
>>ezplot('x^2-2*x',[1,3])
>>holdon;
>>line([0,3],[0,0])
>>
二、solve解方程组
例2.
解:
>>[x,y]=solve('x^2+y^2-1=0','0.75*x^3-y+0.9=0')
三、非线性方程求根fsolve(fun,x0)
例3.
解:
>>y=inline('exp(-3*t)*sin(t)+cos(t)','t')
>>fsolve(y,0)
ans=
-0.3431
四、优化问题fminsearchfminunc
例4.
解:
>>f=inline('x^2-1','x');
>>fminsearch(f,0.5)
ans=
-4.4409e-016
例5.min(x1+x2-x3)s.t
解:
>>f=[11-1]';
>>a=[-1,1,0;1,0,1];b=[0,8];
>>ae=[];be=[];
>>xm=[000];
>>linprog(f,a,b,ae,be,xm,[],[])
Optimizationterminated.
ans=
0.0000
0.0000
8.0000
例6:
max(-x1+x2-3x3)min(x1-x2+3x3)
s.t:
解:
>>f=[1,-1,3]';a=[-1,1,0;1,0,1];b=[0,6];
>>ae=[111];be=[8];
>>xm=[1,-inf,-inf];xM=[3,inf,inf];x0=[000];
>>linprog(f,a,b,ae,be,xm,xM,x0)
Optimizationterminated.
ans=
3.0000
3.0000
2.0000
五、二次规划求解quadprog
例7.min(
)s.t
解:
>>f=[-2,0,0]';a=[-1,-1,1;1,3,8];b=[-8,-9];
>>ae=[1,3,1;1,2,-9];be=[7,10];xm=[1,1,-inf];xM=[8,8,inf];x0=[000];
>>h=[200;0-20;006];
>>quadprog(h,f,a,b,ae,be,xm,xM)
ans=
3.7160
1.2359
-0.4236
第八次上机规划问题
一、规划fmincon
例1.min(
)s.t
解:
建立函数functiony=xhf(x)
y=1000-x
(1)*x
(1)-2*x
(2)*x
(2)-x(3)*x(3)-x
(1)*x
(2)-x
(1)*x(3);
再建立约束函数function[c,ceq]=gyl(x)
ceq=[x
(1)^2+x
(2)^2+x(3)^2-25;8*x
(1)+14*x
(2)+7*x(3)-56];
c=[];
主程序:
>>a=[];b=[];aeq=[];beq=[];
>>xm=[0;0;0];xM=[];
>>x0=[1;1;1];
>>fmincon('xhf',x0,a,b,aeq,beq,xm,xM,'gyl')
ans=
3.5122
0.2170
3.5521
二、整数规划(略)
三、0-1规划
例2.min(
)
解:
>>f=[-3,2,-5];
>>a=[1,2,-1;1,4,1;1,1,0;0,4,1];b=[2,4,3,6];ae=[];be=[];
>>bintprog(f,a,b,ae,be)
Optimizationterminated.
ans=
1
0
1
例3.min(
)s.t
解:
functiony=xhf(x)
y=-3*x
(1)+2*x
(2)-5*x(3);
function[c,ceq]=gyl(x)
c=[x
(1)*x
(1)+2*x
(2)-x(3)-2];
ceq=[x
(1)+4*x
(2)*x
(2)+x(3)-4];
>>a=[];b=[];ae=[];be=[];xm=[0;0;0];xM=[];x0=[1;1;1];
>>fmincon('xhf',x0,a,b,ae,be,xm,xM,'gyl')
第九次上机常微分方程
一、解析解dsolve(可解高阶方程和高阶方程组的解析解)
例1.
其中
解:
>>symstxy;
>>[x,y]=dsolve('D2x+2*Dx=x+2*y-exp(-t)','Dy=4*x+3*y+4*exp(-t)','x(0)=1','Dx(0)=1','y(0)=8')
二、数值解ode45(常微分方程4阶5级龙格库塔方程数值解)
例:
解:
functionxdot=xhf(t,x)
xdot=[-8/3*x
(1)+x
(2)*x(3);-10*x
(2)+10*x(3);-x
(1)*x
(2)+28*x
(2)-x(3)];
>>[t,x]=ode45('xhf',[0,100],[0;0;10^(-10)])
三、特殊方程
1.刚性方程ode15s
例:
(u=1:
普通方程;u=1000刚性方程)
functiony=xhf(t,x,flag,mu)
y=[x
(2);-mu*(x
(1)^2-1)*x
(2)-x
(1)];
>>[x,y]=ode15s('xhf',[0,3000],[2;0],[],1000)
2.微分代数方程
例:
解:
functiondx=xhf(t,x)
dx=[-0.2*x
(1)+x
(2)*x(3)+0.3*x
(1)*x
(2);
2*x
(1)*x
(2)-5*x
(2)*x(3)-2*x
(2)*x
(2)];
>>m=[1,0,0;0,1,0;0,0,0];
>>options=odeset;options.mass=m;
>>x0=[0.8;0.1;0.1];
>>[t,x]=ode15s('xhf',[0,20],x0,options)
习题:
1.
的解析解
2.
的解析解
第十次上机插值函数
一、一维插值interp1(一维多项插值)interp2(二维多线插值)
例:
x
0234
y
0.31.57.86.3
解:
>>x=[0234];
>>y=[0.31.57.86.3];
>>x0=1;
>>interp1(x,y,x0)
ans=
0.9000
例:
x
0234
y
0.31.57.86.3
z
0.8689
解:
>>[x,y]=meshgrid(-3:
0.6:
3,-2:
0.4:
2);
>>z=(x.^2-2*x).*exp(-x.^2-y.^2-x.*y);
>>surf(x,y,z)
>>[x1,y1]=meshgrid(-3:
0.2:
3,-2:
0.2:
2);
>>z1=interp2(x,y,z,x1,y1);
>>surf(x1,y1,z1)
注:
surf(实图)mesh(网图)
二、样条插值(三次样条插值)
例:
>>x0=[0,0.4,1,2,pi];
>>y0=sin(x0);
>>s=csapi(x0,y0)
s=
form:
'pp'
breaks:
[00.4000123.1416]
coefs:
[4x4double]
pieces:
4
order:
4
dim:
1
>>s.coefs
ans=
-0.16270.00760.99650
-0.1627-0.18760.92450.3894
0.0244-0.48040.52380.8415
0.0244-0.4071-0.36370.9093
>>fnplt(s)
>>fnder(s,2)
ans=
form:
'pp'
breaks:
[00.4000123.1416]
coefs:
[4x2double]
pieces:
4
order:
2
dim:
1
fnplt(ans)
三、多项式拟合polyfit(x,y,n)
例:
y=2x-3
解:
>>x=[0123];
>>y=[-2.99,-1,0.99,3];
>>polyfit(x,y,1)
ans=
1.9960-2.9940
或:
>>polyfit(x,y,2)
ans=
0.00501.9810-2.9890
练习1.
1.>>x0=0:
0.1:
1;
>>y0=x0.^2+x0.*exp(x0);
>>plot(x,y)
>>polyfit(x0,y0,n)(n取值待定)
2.>>x0=0:
0.3:
1;
>>y0=cos(x0);
>>s=csapi(x0,y0);
>>fnplt(s)
>>s.coefs
ans=
0.0717-0.53860.00631.0000
0.0717-0.4741-0.29760.9553
0.0717-0.4096-0.56270.8253
3.>>x=0:
10;
>>y=sin(x);
>>x1=0:
0.25:
10;
>>interp1(x
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- matlab笔记 考试内容 matlab 笔记