1)掌握矩阵的分析方法
2)掌握多项式的运算规则
3)掌握数据的分析与统计
4)掌握函数分析与数值积分
a=[1, 2, 3; 4, 3, 1; 5, 3, 8]
n=norm(a) % n = 11.2269
n=norm(a,2) % n = 11.2269
b=[1 2 4 3 5] % 1 2 4 3 5
m=norm(b,2) % m = 7.4162
a=[1,2,3;4,3,1;5,3,8]
inv(a)
det(a)
a*inv(a)
例1. m=n & det(A)≠0
A = [6 3 4;-2 5 7;8 -4 -3]
B = [3 -4 -7]'
X = A\B
det(A)
例2. m>n, 超定方程组
A(4,:) = [1 5 -7]
B(4,:) = [9]
X = A\B
例3. m A=[2,4,2,1;-1,2,0,2;3,5,2,1] B=[1;4;6] X = A\B A=[2,4,1; -1,2,2;3,5,1] [L,U,P]=lu(A) [L,U]=lu(A) 试比较结果的不同及原因 A=[0,-6,-1;6,2,-16;-5,20,-10] lanmuda=eig(A) [V,D]=eig(A) A=[1 1 1;1 2 3;2 3 5] X=A^3 Y=A^(-3) Z=A^(2/3) 2^A exp(A) a=[1 2 3 4] b=[2 3] b=[0 0 b] c=a+b a=[1 2]; b=[1 3]; c=conv(a,b) [q,r]=deconv(c,a) 例1 a=[1,4,3], b=[1,3] c=polyder(a) d=polyder(b) 例2 a=[1,1] b=[1,2] c=polyder(a,b) conv(a,b) p =[ 1 -12 0 25 116] r=roots(p) 由根求多项式:poly r = [-1,-2]’ poly(r) 例1:利用m文件运行下列程序 % 求H(jw)并画图 figure(1) a1=[2,4,6,8];b1=[3,6,9]; w=linspace(0,10); A=polyval(a1,j*w); B=polyval(b1,j*w); subplot(2,1,1), plot(w,abs(B./A)) subplot(2,1,2) plot(w,angle(B./A)) 例2:利用m文件运行下列程序 figure(2) w1=logspace(-1,1); H=polyval(b1,j*w1)./polyval(a1,j*w1); subplot(2,1,1) semilogx(w1,abs(H)) subplot(2,1,2) semilogx(w1,angle(H)) 例3:求的时域响应并画图。 num=[3,0.5,4]; den=[1,5,4,7]; [r,p,k]=residue(num,den) clf t=[0:0.2:10]; y=r(1)*exp(p(1)*t)+r(2)*exp(p(2)*t)+r(3)*exp(p(3)*t); plot(t,y) 线性拟和 x=[0:10] y=exp(-0.1*x)+0.5 p=polyfit(x,y,1) z=p(1)*x+p(2); plot(x,y,x,z) 二次拟和 x=[0:10] y=exp(-0.1*x)+0.5 p=polyfit(x,y,3) z1=p(1)*x.^3+p(2)*x.^2+p(3)*x+p(4); z2=p(1)*x.^3+p(2)*x.^2+p(3)*x+p(4)+0.01; figure (1) plot(x,y,'r',x,z1,'bp') figure (2) plot(x,y,'r-',x,z2,'b-.') x=0:9; y=[0,1.8,2.1,0.9,0.2,-0.5,-0.2,-1.7,-0.9,-0.3]; x1=0:0.01:9; y1=interp1(x,y,x1,'*nearset'); y2=interp1(x,y,x1,'*linear'); y3=interp1(x,y,x1,'spline'); y4=interp1(x,y,x1,'cubic'); plot(x,y,'ok',x1,y1,'-r',x1,y2,'-.b',x1,y3,':c',x1,y4,'--k') legend('原始数据','最近点插值','线性插值','样条插值','立方插值') clear x,y x=[1 2;3 4] y=[5 6;7 8] a=max(x) b=min(y) x=[3,4,1,7,8,9,6] N=mean(x) M=median(x) s=sum(x) x=[3,4,1,7,8,9,6] s1=std(x) s2=std(x, 0) s3=std(x,1) x=[3,4,1,7,8,9,6] A=sort(x) [B,index]=sort(x) x1=[3 2 4] y=prod(x1) x2=[1 2;3 4] y2=prod(x2) x3(:,:,1)=[1 2;3 4] x3(:,:,2)=[2 3;4 2] y3=prod(x3) x=[1 3 2] a=diff(x,1) b=diff(x,2) function y=humps(x) y=1./((x-0.3).^2+0.01)+1./((x-0.9).^2+0.04)-6 % 以humps.m存放在当前目录中,以备调用。 调用: y=humps(0.5) fplot('humps',[0,2]) f='2*exp(-x)*sin(x)' fplot(f,[0,8]); % 李撒如图形 x='sin(t)' y='cos(t)' z='sin(t+pi)' figure(1),ezplot(x,y,[0,2*pi]) figure(2),ezplot(x,z,[0,2*pi]) x='sin(t)' q=quad(x,0,pi) % 函数子程序,文件名:exampfun.m,单独存放 function y=exampfun(t,x) u=1-(t.^2)/(pi^2); y=[0,1;-1,0]*x+[0;1]*u; % 主程序,单独存放,文件名不限 clf t0=0; tf=3*pi; x0t=[0;0]; [t,x]=ode45('exampfun',[t0,tf],x0t); y=x(:,1); y2=[]; for i=1:length(t) y2(i)=(1+2/(pi^2))*(1-cos(t(i)))-t(i)^2/(pi^2); end u=1-(t.^2)/(pi^2); plot(t,y,'-',t,u,'+',t,y2,'o') legend('数值积分解','输入量','解析解');2.1.4 矩阵分解-lu分解
2.1.5 矩阵特征值
2.1.6 矩阵的幂次运算
2.2 多项式运算
2.2.1 多项式表示及其四则运算
2.2.2 多项式求导函数polyder
2.2.3 多项式求根
2.2.4 多项式求值
2.2.5 多项式拟合
2.2.6 多项式插值
2.3 数据的分析与统计
2.3.1 最大/小值函数
2.3.2 平均值、中间值及元素和函数
2.3.3 标准偏差函数
2.3.4 排序函数
2.3.5 元素乘积函数
2.3.6 求元素之差
2.4 函数分析与数值积分
2.4.1 函数的表示与调用
2.4.2 函数图形的绘制-1
2.4.3 函数图形的绘制-2
2.4.4 数值积分
2.4.5 初始值的常微分方程求解