【数据分析】多重分形去趋势波动分析附matlab代码

简介: 【数据分析】多重分形去趋势波动分析附matlab代码

 ✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。

🍎个人主页:Matlab科研工作室

🍊个人信条:格物致知。

更多Matlab仿真内容点击👇

智能优化算法  神经网络预测雷达通信 无线传感器

信号处理图像处理路径规划元胞自动机无人机

⛄ 内容介绍

Fractal structures are found in biomedical time series from a wide range of physiological

phenomena. The multifractal spectrum identififies the deviations in fractal structure within

time periods with large and small flfluctuations. The present tutorial is an introduction to

multifractal detrended flfluctuation analysis (MFDFA) that estimates the multifractal spec

trum of biomedical time series. The tutorial presents MFDFA step-by-step in an interactive

Matlab session. All Matlab tools needed are available in Introduction to MFDFA folder at the

website www.ntnu.edu/inm/geri/software. MFDFA are introduced in Matlab code boxes

where the reader can employ pieces of, or the entire MFDFA to example time series. After

introducing MFDFA, the tutorial discusses the best practice of MFDFA in biomedical signal

processing. The main aim of the tutorial is to give the reader a simple self-sustained guide

to the implementation of MFDFA and interpretation of the resulting multifractal spectra.

⛄ 部分代码

YMatrix1=[multifractal.*30,RW3];

YMatrix2=[monofractal.*30,RW2];

YMatrix3=[whitenoise.*30,RW1];

X1=2600:3600;

Y1=RW3(2600:3600);

% Create figure

figure1 = figure('PaperType','a4letter','PaperSize',[20.98 29.68],...

   'Color',[1 1 1]);

% Create axes

axes1 = axes('Parent',figure1,'YTickLabel',{'0','200','400','600'},...

   'YTick',[0 200 400 600],...

   'XTickLabel',{},...

   'XTick',zeros(1,0),...

   'Position',[0.13 0.6545 0.7745 0.2705],...

   'LineWidth',2,...

   'FontSize',14);

% Uncomment the following line to preserve the Y-limits of the axes

ylim(axes1,[-220 700]);

hold(axes1,'all');

% Create multiple lines using matrix input to plot

pplot1 = plot(YMatrix1,'Parent',axes1);

set(pplot1(2),'LineWidth',2,'Color',[1 0 0]);

% Create axes

axes2 = axes('Parent',figure1,'YTickLabel',{},'YTick',zeros(1,0),...

   'XTick',zeros(1,0),...

   'Position',[0.6641 0.8264 0.1875 0.1359],...

   'LineWidth',2);

% Uncomment the following line to preserve the Y-limits of the axes

ylim(axes2,[370 570]);

box(axes2,'on');

hold(axes2,'all');

% Create plot

plot(X1,Y1,'Parent',axes2,'LineWidth',2,'Color',[1 0 0]);

% Create axes

axes3 = axes('Parent',figure1,'YTickLabel',{'0','200','400','600'},...

   'YTick',[0 200 400 600],...

   'XTickLabel',{},...

   'XTick',zeros(1,0),...

   'Position',[0.13 0.3833 0.7745 0.272],...

   'LineWidth',2,...

   'FontSize',14);

% Uncomment the following line to preserve the Y-limits of the axes

ylim(axes3,[-220 700]);

hold(axes3,'all');

% Create multiple lines using matrix input to plot

pplot2 = plot(YMatrix2,'Parent',axes3);

set(pplot2(1),'DisplayName','Noise like time series');

set(pplot2(2),'LineWidth',2,'Color',[1 0 0],...

   'DisplayName','Random walk like time series');

% Create ylabel

ylabel('Amplitude (measurement units)','FontSize',14);

% Create axes

axes4 = axes('Parent',figure1,'YTickLabel',{'-200','0','200','400','600'},...

   'YTick',[0 200 400 600],...

   'XTickLabel',{'0','1?00','2?00','3?00','4?00','5?00','6?00','7?00','8?00'},...

   'XTick',[0 1000 2000 3000 4000 5000 6000 7000 8000],...

   'Position',[0.13 0.1108 0.7745 0.2723],...

   'LineWidth',2,...

   'FontSize',14);

ylim(axes4,[-220 700]);

hold(axes4,'all');

% Create multiple lines using matrix input to plot

pplot3 = plot(YMatrix3,'Parent',axes4);

set(pplot3(2),'LineWidth',2,'Color',[1 0 0]);

% Create xlabel

xlabel('time (sample number)','FontSize',14);

% Create legend

legend1 = legend(axes3,'show');

set(legend1,'LineWidth',2);

% Create textbox

annotation(figure1,'textbox',[0.2362 0.6476 0.1934 0.04038],...

   'String',{'Monofractal time series'},...

   'FontSize',14,...

   'FitBoxToText','off',...

   'LineStyle','none');

% Create textbox

annotation(figure1,'textbox',[0.2362 0.9246 0.1822 0.04038],...

   'String',{'Multifractal time series'},...

   'FontSize',14,...

   'FitBoxToText','off',...

   'LineStyle','none');

% Create textbox

annotation(figure1,'textbox',[0.238 0.2453 0.1057 0.04038],...

   'String',{'White noise'},...

   'FontSize',14,...

   'FitBoxToText','off',...

   'LineStyle','none');

% Create line

annotation(figure1,'line',[0.3828 0.3828],[0.8978 0.8278]);

% Create line

annotation(figure1,'line',[0.3828 0.4714],[0.8281 0.8291]);

% Create line

annotation(figure1,'line',[0.4713 0.4713],[0.8294 0.9004]);

% Create line

annotation(figure1,'line',[0.3828 0.4705],[0.8995 0.9004]);

% Create line

annotation(figure1,'line',[0.4705 0.6632],[0.8291 0.8277]);

% Create line

annotation(figure1,'line',[0.4696 0.6667],[0.9017 0.9637]);

% Create line

annotation(figure1,'line',[0.1302 0.1293],[0.9327 0.8977],'LineWidth',4,...

   'Color',[1 1 1]);

clear pplot1 pplot2 pplot3 legend1 axes1 figure1 axes2 figure2 axes3 figure3 ans axes4 X1 Y1 YMatrix1 YMatrix2 YMatrix3

⛄ 运行结果

image.gif编辑

image.gif编辑

image.gif编辑

image.gif编辑

image.gif编辑

image.gif编辑

image.gif编辑

正在上传…重新上传取消

image.gif编辑

image.gif编辑

image.gif编辑

⛄ 参考文献

[1]Espen Alexander Fürst E.A.F.I. Ihlen. Introduction to Multifractal Detrended Fluctuation Analysis in Matlab[J]. Frontiers, 2012.

❤️ 关注我领取海量matlab电子书和数学建模资料

❤️部分理论引用网络文献,若有侵权联系博主删除

相关文章
|
21天前
|
编解码 算法 数据安全/隐私保护
基于BP译码的LDPC误码率matlab仿真,分析码长,码率,信道对译码性能的影响,对比卷积码,turbo码以及BCH码
本程序系统基于BP译码的LDPC误码率MATLAB仿真,分析不同码长、码率、信道对译码性能的影响,并与卷积码、Turbo码及BCH编译码进行对比。升级版增加了更多码长、码率和信道的测试,展示了LDPC码的优越性能。LDPC码由Gallager在1963年提出,具有低复杂度、可并行译码等优点,近年来成为信道编码研究的热点。程序在MATLAB 2022a上运行,仿真结果无水印。
54 0
|
2月前
|
算法 数据可视化
基于SSA奇异谱分析算法的时间序列趋势线提取matlab仿真
奇异谱分析(SSA)是一种基于奇异值分解(SVD)和轨迹矩阵的非线性、非参数时间序列分析方法,适用于提取趋势、周期性和噪声成分。本项目使用MATLAB 2022a版本实现从强干扰序列中提取趋势线,并通过可视化展示了原时间序列与提取的趋势分量。代码实现了滑动窗口下的奇异值分解和分组重构,适用于非线性和非平稳时间序列分析。此方法在气候变化、金融市场和生物医学信号处理等领域有广泛应用。
111 19
|
3月前
|
安全
【2023高教社杯】D题 圈养湖羊的空间利用率 问题分析、数学模型及MATLAB代码
本文介绍了2023年高教社杯数学建模竞赛D题的圈养湖羊空间利用率问题,包括问题分析、数学模型建立和MATLAB代码实现,旨在优化养殖场的生产计划和空间利用效率。
191 6
【2023高教社杯】D题 圈养湖羊的空间利用率 问题分析、数学模型及MATLAB代码
|
3月前
|
算法 Perl
【光波电子学】基于MATLAB的多模光纤模场分布的仿真分析
本文介绍了基于MATLAB的多模光纤模场分布仿真分析,详细阐述了多模光纤的概念、实现方法、仿真技术,并利用模式耦合方程分析方法,通过理论和仿真模型设计,展示了不同模式下的光场分布及其受光纤参数影响的分析结果。
75 4
【光波电子学】基于MATLAB的多模光纤模场分布的仿真分析
|
2月前
|
算法 数据挖掘 vr&ar
基于ESTAR指数平滑转换自回归模型的CPI数据统计分析matlab仿真
该程序基于ESTAR指数平滑转换自回归模型,对CPI数据进行统计分析与MATLAB仿真,主要利用M-ESTAR模型计算WNL值、P值、Q值及12阶ARCH值。ESTAR模型结合指数平滑与状态转换自回归,适用于处理经济数据中的非线性趋势变化。在MATLAB 2022a版本中运行并通过ADF检验验证模型的平稳性,适用于复杂的高阶自回归模型。
|
3月前
|
算法 测试技术 SoC
基于直流潮流的IEEE30电力系统停电分布及自组织临界性分析matlab仿真
本研究提出一种基于直流潮流的算法来分析电力系统的停电分布及自组织临界性。算法迭代更新参数并模拟线路随机断开,运用粒子群优化计算关键值,并评估线路接近容量极限的概率。通过改变参数β和μ,分析不同线路可靠性和容量增加方式下的停电分布,并探索系统趋向临界状态的过程及停电概率分布。该方法基于IEEE30测试系统,利用MATLAB2022a实现,简化处理有功功率流动,适用于评估电力系统稳定性及预防大规模停电事故。
|
3月前
|
数据采集 存储 移动开发
【2023五一杯数学建模】 B题 快递需求分析问题 建模方案及MATLAB实现代码
本文介绍了2023年五一杯数学建模竞赛B题的解题方法,详细阐述了如何通过数学建模和MATLAB编程来分析快递需求、预测运输数量、优化运输成本,并估计固定和非固定需求,提供了完整的建模方案和代码实现。
88 0
【2023五一杯数学建模】 B题 快递需求分析问题 建模方案及MATLAB实现代码
|
3月前
|
算法
蜂窝网络下行链路的覆盖率和速率性能matlab仿真分析
此程序在MATLAB2022a环境下运行,基于随机几何模型评估蜂窝网络的下行链路覆盖率和速率性能。通过模拟不同场景下的基站(BS)配置与噪声情况,计算并绘制了各种条件下的信号干扰加噪声比(SINR)阈值与覆盖率概率的关系图。结果显示,在考虑噪声和不同基站分布模型时,覆盖率有显著差异,提出的随机模型相较于传统网格模型更为保守但也更加贴合实际基站的分布情况。
|
3月前
|
数据采集 数据可视化 数据挖掘
数据分析大神养成记:Python+Pandas+Matplotlib助你飞跃!
在数字化时代,数据分析至关重要,而Python凭借其强大的数据处理能力和丰富的库支持,已成为该领域的首选工具。Python作为基石,提供简洁语法和全面功能,适用于从数据预处理到高级分析的各种任务。Pandas库则像是神兵利器,其DataFrame结构让表格型数据的处理变得简单高效,支持数据的增删改查及复杂变换。配合Matplotlib这一数据可视化的魔法棒,能以直观图表展现数据分析结果。掌握这三大神器,你也能成为数据分析领域的高手!
76 2
|
3月前
|
机器学习/深度学习 数据采集 数据可视化
基于爬虫和机器学习的招聘数据分析与可视化系统,python django框架,前端bootstrap,机器学习有八种带有可视化大屏和后台
本文介绍了一个基于Python Django框架和Bootstrap前端技术,集成了机器学习算法和数据可视化的招聘数据分析与可视化系统,该系统通过爬虫技术获取职位信息,并使用多种机器学习模型进行薪资预测、职位匹配和趋势分析,提供了一个直观的可视化大屏和后台管理系统,以优化招聘策略并提升决策质量。
167 4
下一篇
无影云桌面