【数学建模方法概论作业】微分方程、层次分析法、主成分分析

问题5.2

Matlab求解微分方程组的数值解
在这里插入图片描述

方法

利用软件计算离散的数值解

结果

在这里插入图片描述

代码

function dy=rigid(t,y)%rigid:方程组
    dy=zeros(3,1);
    dy(1)=y(2)*y(3);
    dy(2)=-y(1)*y(3);
    dy(3)=-0.51*y(1)*y(2);
end
%命令行
>> [T,Y]=ode45('rigid',[0 12],[0 1 1]);%句柄,区间,初始值
>> plot(T,Y(:,1),'-',T,Y(:,2),'*',T,Y(:,3),'+')

一、问题5.3

层次分析法,5个因素得到的两两比较矩阵为A,判断矩阵为A是否接近一致矩阵。
在这里插入图片描述

二、方法

计算最大特征根λ=5.073
特征向量为w =(0.263,0.475,0.055,0.090,0.110)T
一致性指标CI=0.018
随机一致性指标 RI=1.12 (查表)
一致性比率CR=0.018/1.12=0.016<0.1
通过一致性检验
权向量(特征向量)w =(0.263,0.475,0.055,0.090,0.110)T

三、结果

"lamda_max="    "5.0721"

"CI="    "0.018021"

"CR="    "0.01609"

通过一致性检验
权重为:
0.2636
0.4758
0.0538
0.0981
0.1087

四、代码

A = [1 1/2 4 3 3;2 1 7 5 5;1/4 1/7 1 1/2 1/3;1/3 1/5 2 1 1;1/3 1/5 3 1 1];

lamda_max = max(eig(A));%最大特征根
disp(["lamda_max=",num2str(lamda_max)]);
[~,n] = size(A);%get rows and cols,~表示不获取这一位置的参数
CI = (lamda_max - n)/(n-1);
disp(["CI=",num2str(CI)])
%平均一致性指标表
RI = [0 0 0.52 0.89 1.12 1.26 1.26 1.36 1.41 1.49 1.52 1.54 1.56 1.58 1.59];

CR = CI/RI(n);
disp(["CR=",num2str(CR)]);
if CR<0.1
    disp("通过一致性检验")
else
    disp("不通过一致性检验")
end



%特征法求权重
if CR<0.1
    [v,d] = eig(A);%v特征向量,d特征值构成的对角矩阵
    [max_r,max_c] = find(d == lamda_max);%寻找最大特征值所在位置
    e = v(:,max_c)/sum(v(:,max_c));
    disp("权重为:");
    disp(e);
end

一、问题5.4

卫星图像的初始数据包含 400 万个 3 维向量中,其协方差矩阵是G,求数据的主成分,且给出由第一主成分确定的新变量.
在这里插入图片描述

二、方法

主成分分析

三、结果

在这里插入图片描述
在这里插入图片描述

四、代码

G = [2383.78 2611.84 2136.20;2611.84 3106.47 2553.90;2136.20 2553.90 2650.71];
[Q,D] = eig(G);%得到特征向量、特征根矩阵
d = diag(D);%得到特征根
eig1 = sort(d,'descend');%贡献值由大到小排
Q = fliplr(Q);%对应向量也按特征值由大到小排列
disp(d);%显示特征值
disp(Q)%显示特征向量

S=0;
i=0;
%筛选主成分
while S/sum(eig1)<0.85
    i=i+1;
    S=S+eig1(i);
end
NEW = Q(:,1:i);%主成分的线性表示
disp(NEW);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值