MATLAB实验报告

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第一次作业

1输入两个随机矩阵,对两个矩阵进行“+”,“-”,“*”,“/”,“^”,”inv()”运算。源代码:

>> A=rand(3,3);

B=rand(3,3);

X1=A+B

Y1=A-B

Z1=A*B

X2=A/B

Y2=A^2

Z2=inv(A)

X3=B^3

Y3=inv(B)

X1 =

0.7958 1.2020 1.0306

1.5159 1.1434 1.6269

1.0386 0.9348 1.1309

Y1 =

-0.4940 0.5180 -0.0375

-0.1201 0.5639 0.1727

-0.2819 0.2524 0.5123

Z1 =

1.1286 0.4702 0.8595

1.7424 0.7930 1.2717

1.2720 0.5817 0.8878

X2 =

9.6223 -5.2516 -2.6642

7.2620 -3.2324 -2.0318

6.5780 -2.5630 -2.6769

Y2 =

0.8108 1.1586 1.2567

1.0415 1.8630 1.8539

0.7822 1.3198 1.3970

Z2 =

-1.2890 3.1731 -2.6959

1.7948 0.4925 -1.6240

-0.7030 -1.8170 3.6318

X3 =

1.5871 0.7626 1.1593

1.8790 0.9005 1.3793

1.3979 0.6731 1.0137

Y3 =

-7.0936 3.4223 4.2037

10.1638 -6.8551 -1.4350

3.9301 0.2569 -

4.1572

2求方程sin(4)uz^2+vz+4w+a=0.

源代码:

syms u v z w a

f=sym('4');

eq=sin(f)*u*z^2+v*z+f*w+a;

rest1=solve(eq,z)

rest2=solve(eq,w)

rest1 =

1/2/sin(4)/u*(-v+(v^2-16*u*sin(4)*w-4*u*sin(4)*a)^(1/2))

1/2/sin(4)/u*(-v-(v^2-16*u*sin(4)*w-4*u*sin(4)*a)^(1/2))

rest2 =

-1/4*sin(4)*u*z^2-1/4*v*z-1/4*a

3求方程发现x^3+3x^2+2x-2.5的根与实根。

源代码:

>> syms x

f=x^3+3*x^2+2*x-2.5;

solve(f,x)

syms x real

solve(f,x)

ans=

1/6*(270+6*1977^(1/2))^(1/3)+2/(270+6*1977^(1/2))^(1/3)-1

-1/12*(270+6*1977^(1/2))^(1/3)-1/(270+6*1977^(1/2))^(1/3)-1+1/2*i*3^(1/2)*(1/6*(270+6*1977^(1/ 2))^(1/3)-2/(270+6*1977^(1/2))^(1/3))

-1/12*(270+6*1977^(1/2))^(1/3)-1/(270+6*1977^(1/2))^(1/3)-1-1/2*i*3^(1/2)*(1/6*(270+6*1977^(1/ 2))^(1/3)-2/(270+6*1977^(1/2))^(1/3))

ans=

1/6*(270+6*1977^(1/2))^(1/3)+2/(270+6*1977^(1/2))^(1/3)-1

-1/12*(270+6*1977^(1/2))^(1/3)-1/(270+6*1977^(1/2))^(1/3)-1+1/2*i*3^(1/2)*(1/6*(270+6*1977^(1/ 2))^(1/3)-2/(270+6*1977^(1/2))^(1/3))

-1/12*(270+6*1977^(1/2))^(1/3)-1/(270+6*1977^(1/2))^(1/3)-1-1/2*i*3^(1/2)*(1/6*(270+6*1977^(1/ 2))^(1/3)-2/(270+6*1977^(1/2))^(1/3))

第二次作业

分析火灾发生地点到消防队的距离与所造成的经济损失之间的关系

源代码:

%一个自变量化为多个自变量的形式

%多项式线性回归

x=[3.4 1.8 4.6 2.3 3.1 5.5 0.7 3.0 2.6 4.3 2.1 1.1 6.1 4.8 3.8];

y=[26.2 17.8 31.3 23.1 27.5 36.0 14.1 22.3 19.6 31.3 24.0 17.3 43.2 36.4 26.1]; plot(x,y,'r.'); %绘制散点图

xlabel('Distance'); %横轴标签(到消防队的距离)ylabel('Loss'); %纵轴标签(火灾引起的损失)hold on %保持图形

X=[ones(length(y),1),x',x'.^2]; %自变量矩阵

Y=y'; %因变量向量

[B,Bint,E,Eint,Stats]=regress(Y,X); %回归分析

R2=Stats(1); %拟合优度

f=B(1)+B(2)*x+B(3)*x.^2; %模型表达

s=sqrt(sumsqr(y-f)/(length(f)-3)); %计算标准误差

x=sort(x); %自变量排序

f=B(1)+B(2)*x+B(3)*x.^2; %模型表达

plot(x,f,'b-'); %添加趋势线

hold off %绘图结束

B,R2,s %输出主要结果

%多项式拟合

x=[3.4 1.8 4.6 2.3 3.1 5.5 0.7 3.0 2.6 4.3 2.1 1.1 6.1 4.8 3.8];

y=[26.2 17.8 31.3 23.1 27.5 36.0 14.1 22.3 19.6 31.3 24.0 17.3 43.2 36.4 26.1]; plot(x,y,'r.'); %绘制散点图

xlabel('Distance'); %横轴标签(到消防队的距离)ylabel('Loss'); %纵轴标签(火灾引起的损失)hold on %保持图形

N=2; %确定多项式阶次

[P,S]=polyfit(x,y,N); %多项式拟合

lx=linspace(min(x),max(x)); %限定趋势线的长度范围

z=polyval(P,lx); %计算分割点上多项式的函数值plot(lx,z,'b-'); %将趋势线添加到散点图中

hold off %绘图结束

e=y-polyval(P,x); %计算残差

s=sqrt(sumsqr(e)/(length(y)-N-1)); %计算标准误差

P,s

运行结果:%输出主要结果

B =

相关文档
最新文档