MATLAB实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 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 =