Cholesky分解(Matlab代码实现)

简介: Cholesky分解(Matlab代码实现)

💥1 概述

Cholesky分解是一种将对称正定矩阵分解为一个下三角矩阵和其转置的方法。对于一个对称正定矩阵A,可以将其分解为A = LL^T,其中L是一个下三角矩阵。


Cholesky分解的步骤如下:


1.对于一个对称正定矩阵A,找到一个下三角矩阵L,使得A = LL^T。


2.从左上角开始,计算L的每个元素。对于第i行第j列的元素L(i,j),有以下公式:


1.如果i = j,计算L(i,j) = sqrt(A(i,j) - sum(L(i,k)^2, k=1 to i-1))。


2.如果i > j,计算L(i,j) = (A(i,j) - sum(L(i,k)*L(j,k), k=1 to j-1)) / L(j,j)。


3.如果i < j,L(i,j) = 0。


1.重复步骤2,直到计算完所有的L(i,j)。


Cholesky分解的优点是计算效率高,尤其适用于解线性方程组和计算矩阵的逆。由于分解后的矩阵L是下三角矩阵,求解线性方程组Ax = b时,可以通过前代法和后代法分别求解Ly = b和L^Tx = y,从而得到解x。


Cholesky分解的一个重要应用是在金融领域中的风险管理和投资组合优化中,用于计算协方差矩阵的逆。


Cholesky分解法又叫平方根法,是求解对称正定线性方程组最常用的方法之一。对于一般矩阵,为了消除LU分解的局限性和误差的过分积累,采用了选主元的方法,但对于对称正定矩阵而言,选主元是不必要的。


更详细知识点,这个博主讲解很清晰,超棒:


矩阵Cholesky分解,及其在求解线性方程组、矩阵逆的应用

📚2 运行结果

部分代码:

for i=1:N
    W3(:,i)=randn(2,1); 
end
for i=1:N
    WW3(:,i)=wblrnd(9.0,2.15,2,1); 
end
Z3=R3*W3;
ccc03=corrcoef(W3');
ccc03
ccc13=corrcoef(Z3');
ccc13
aa3=zeros(2,N);
Ls3=zeros(2,N);
for p=1:2
hig=max(Z3(p,:));
k=1;
for i=1:N
[b c]=min(Z3(p,:));
Ls3(p,c)=k;
k=k+1;
Z3(p,c)=hig+1;
end
end
LLs3=Ls3;
x=zeros(2,N);
for i=1:N
    tt=(i-0.5)/N;
    x3(1,i)=wblinv(tt,9.0,2.15);
    x3(2,i)=wblinv(tt,9.0,2.15);   
end
for i=1:2
y3=x3(i,:);
bb3=LLs3(i,:);
hig1=max(y3);
hig2=max(bb3);
for p=1:N
[C1 D1]=min(y3);
[C2 D2]=min(LLs3(i,:));
bb3(1,D2)=C1;
y3(1,D1)=hig1+1;
LLs3(i,D2)=hig2+1;
end
yy3(i,:)=bb3;
end


🎉3 参考文献

部分理论来源于网络,如有侵权请联系删除。


[1]李辉,郝如江.基于不完全Cholesky分解相关熵双谱的轴承故障诊断[J].振动与冲击,2022,41(11):123-132

[2]笪涵,胡圣波.基于Cholesky矩阵分解的贝叶斯压缩感知信号处理[J].贵州师范大学学报:自然科学版,2021,39(1):72-76

🌈4 Matlab代码实现


相关文章
|
11天前
|
安全
【2023高教社杯】D题 圈养湖羊的空间利用率 问题分析、数学模型及MATLAB代码
本文介绍了2023年高教社杯数学建模竞赛D题的圈养湖羊空间利用率问题,包括问题分析、数学模型建立和MATLAB代码实现,旨在优化养殖场的生产计划和空间利用效率。
30 6
【2023高教社杯】D题 圈养湖羊的空间利用率 问题分析、数学模型及MATLAB代码
|
12天前
|
存储 算法 搜索推荐
【2022年华为杯数学建模】B题 方形件组批优化问题 方案及MATLAB代码实现
本文提供了2022年华为杯数学建模竞赛B题的详细方案和MATLAB代码实现,包括方形件组批优化问题和排样优化问题,以及相关数学模型的建立和求解方法。
37 3
【2022年华为杯数学建模】B题 方形件组批优化问题 方案及MATLAB代码实现
|
12天前
|
数据采集 存储 移动开发
【2023五一杯数学建模】 B题 快递需求分析问题 建模方案及MATLAB实现代码
本文介绍了2023年五一杯数学建模竞赛B题的解题方法,详细阐述了如何通过数学建模和MATLAB编程来分析快递需求、预测运输数量、优化运输成本,并估计固定和非固定需求,提供了完整的建模方案和代码实现。
25 0
【2023五一杯数学建模】 B题 快递需求分析问题 建模方案及MATLAB实现代码
|
3月前
|
数据安全/隐私保护
耐震时程曲线,matlab代码,自定义反应谱与地震波,优化源代码,地震波耐震时程曲线
地震波格式转换、时程转换、峰值调整、规范反应谱、计算反应谱、计算持时、生成人工波、时频域转换、数据滤波、基线校正、Arias截波、傅里叶变换、耐震时程曲线、脉冲波合成与提取、三联反应谱、地震动参数、延性反应谱、地震波缩尺、功率谱密度
基于混合整数规划的微网储能电池容量规划(matlab代码)
基于混合整数规划的微网储能电池容量规划(matlab代码)
|
3月前
|
算法 调度
含多微网租赁共享储能的配电网博弈优化调度(含matlab代码)
含多微网租赁共享储能的配电网博弈优化调度(含matlab代码)
|
3月前
|
机器学习/深度学习 算法 数据安全/隐私保护
基于DCT变换和位平面分解的数字水印嵌入提取算法matlab仿真
这是一个关于数字水印算法的摘要:使用MATLAB2022a实现,结合DCT和位平面分解技术。算法先通过DCT变换将图像转至频域,随后利用位平面分解嵌入水印,确保在图像处理后仍能提取。核心程序包括水印嵌入和提取,以及性能分析部分,通过PSNR和NC指标评估水印在不同噪声条件下的鲁棒性。
|
3月前
|
数据安全/隐私保护
地震波功率谱密度函数、功率谱密度曲线,反应谱转功率谱,matlab代码
地震波格式转换、时程转换、峰值调整、规范反应谱、计算反应谱、计算持时、生成人工波、时频域转换、数据滤波、基线校正、Arias截波、傅里叶变换、耐震时程曲线、脉冲波合成与提取、三联反应谱、地震动参数、延性反应谱、地震波缩尺、功率谱密度
|
3月前
|
算法 调度
面向配电网韧性提升的移动储能预布局与动态调度策略(matlab代码)
面向配电网韧性提升的移动储能预布局与动态调度策略(matlab代码)
|
3月前
|
运维 算法
基于改进遗传算法的配电网故障定位(matlab代码)
基于改进遗传算法的配电网故障定位(matlab代码)

热门文章

最新文章