dfa matlab用法,关于使用MF-DFA方法计算广义Hurst指数的MATLAB操作问题
我在论坛上复制了一个代码,是使用MF-DFA方法计算广义Hurst指数的,但不知道需填入的各个变量的名称,我是零基础,但任务时间很紧,来不及现学,所以想先用来算个数,请各位高手指教,不胜感激!
请问括号中的signal,m,scmin,scmax,ressc,qmin,qmax,qres各自是什么意思,都应该填写什么?最好能举个例子,实在是不胜感激!!!
具体代码如下:
function [s,q,Hq,h,Dh,logFq]=MFDFA(signal,m,scmin,scmax,ressc,qmin,qmax,qres)
%
% Multifractal detrended fluctuation analysis (MFDFA)
%
% [s,q,Hq,h,Dh,logFq]=MFDFA(signal,m,scmin,scmax,ressc,qmin,qmax,qres);
%
% INPUT PARAMETERS-----------------------------------------------------
%
% signal: input signal
% m: polynomial order for the detrending
% scmin: lower bound of the window size s
% scmax: upper bound of the window size s
% ressc: number of elements in s
% qmin lower bound of q
% qmax upper bound of q
% qres number of elements in q
%
% OUTPUT VARIABLES-----------------------------------------------------
%
% s: scale
% q: q-order
% Hq: q-generalized Hurst exponent
% logFq: q-generalized scaling function F(s,q) in log coordinates
% lin_fit linear least square fit to logFq
% h: H鰈der exponent
% Dh: Multifractal spectrum
%
% EXAMPLE-----------------------------------------------------
%
% T=40.96 ; rmin=0.02 ; Dt=rmin/2 ; Law=0 ; ParamLaw1=0.2; ParamLaw2=0; C=1 ; q1=(-10:10)/2;
% [Qr1,time,TtheoQ,q] = IDCnoise_epl(T,rmin,Dt,Law,ParamLaw1,C,q1);
% [Qr2,time,TtheoQ,q] = IDCnoise_epl(T,rmin,Dt,Law,ParamLaw2,C,q1);
% H=0.75 ; oversamprate = 16 ; printout = 0;
% [Ar,VH1,BH] = synthArVH(H,Qr1,Dt,oversamprate,printout) ;
% [Ar,VH2,BH] = synthArVH(H,Qr2,Dt,oversamprate,printout) ;
% [s,q,Hq1,h1,Dh1,logFq1]=MFDFA(diff(VH1),1,10,200,40,-3,3,61);
% [s,q,Hq2,h2,Dh2,logFq2]=MFDFA(diff(VH2),1,10,200,40,-3,3,61);
% figure;
% subplot(311)
% plot(1:4096,diff(VH1),'b-',1:4096,diff(VH2),'r-');xlabel('time');
% ylabel('amplitude'); title('multiplicative cascading noise \DeltaB_H(A(t))and fractional Gaussian noise \DeltaB_H(t)');
% legend('\DeltaB_H(A(t))','\DeltaB_H(t)');
% subplot(323);
% plot(log2(s),logFq1(:,1:5:end),'b-');hold all
% plot(log2(s),logFq2(:,1:5:end),'r-');
% xlabel('log_2(\Deltat)');ylabel('log_2(F_\Delta_t(q))');title('log-scaling function')
% subplot(324)
% plot(q,Hq1,'bo-',q,Hq2,'ro-');xlabel('q'); ylabel('H(q)'); title('q-generalized Hurst exponent');
% legend('\DeltaB_H(A(t))','\DeltaB_H(t)');
% subplot(325)
% plot(h1, Dh1,'bo-',h2, Dh2,'ro-');xlabel('h(q)');ylabel('D(h)');title('multifractal half-spectrum');
% legend('\DeltaB_H(A(t))','\DeltaB_H(t)');
%
% ---------------------------------------------------------------
% Written by Espen A. F. Ihlen (espen.ihlen@ntnu.no), 2009
warning off;
Fluct=cumsum(signal-mean(signal)./std(signal));
FluctRev=fliplr(Fluct);
N=length(Fluct);
ScaleNumb=linspace(log2(scmin),log2(scmax),ressc);
s=round(2.^ScaleNumb);
q=linspace(qmin,qmax,qres);
znumb=find(q==0);
Fq=zeros(length(s),length(q));
for ns=1:length(s),%disp(strcat('computing scale number_',num2str(ns)));
Ns=floor(s(ns)\N);
Var=zeros(Ns,length(q));
Varr=zeros(Ns,length(q));
for v=1:Ns,
SegNumb=((((v-1)*s(ns))+1):(v*s(ns)))';
Seg=Fluct(SegNumb);
SegRev=FluctRev(SegNumb);
poly=polyfit(SegNumb,Seg,m);
polyr=polyfit(SegNumb,SegRev,m);
fit=polyval(poly,SegNumb);
fitr=polyval(polyr,SegNumb);
for nq=1:length(q);
Var(v,nq)=((sum((Seg-fit).^2))/s(ns))^(q(nq)/2);
Varr(v,nq)=((sum((SegRev-fitr).^2))/s(ns))^(q(nq)/2);
end;
clear SegNumb Seg SedRev poly polyr fit fitr
end
for nq=1:length(q)
Fq(ns,nq)=((sum(Var(:,nq))+sum(Varr(:,nq)))/(2*Ns))^(1/q(nq));
end
Fq(ns,znumb)=(Fq(ns,znumb-1)+Fq(ns,znumb+1))./2;
clear Var Varr
end
logFq=log(Fq);
Hq=zeros(1,length(q));
lin_fit=zeros(length(s),length(q));
for nq=1:length(q);
P=polyfit(log(s),logFq(:,nq),1);
lin_fit(1:length(s),nq)=polyval(P,log(s));
Hq(nq)=P(1);
end;
tau=(q.*Hq)-1;
hh=diff(tau)./(q(2)-q(1));
Dh=(q(1:(end-1)).*hh)-tau(1:(end-1));
h=hh-1;
dfa matlab用法,关于使用MF-DFA方法计算广义Hurst指数的MATLAB操作问题相关推荐
- 辛普森matlab 不用递归,不用递归的方法计算米粒的个数和每个米粒的面积,matlab实现...
% 利用系统自带的米粒图片rice.png, 对该图片进行预处理后,计算该点中每个米粒的面积和所有米粒的个数,中间用到了求一个点所在的连通域的算法 clear all clc close all I ...
- 交叉功率谱 matlab,wavelet 小波分析基本程序及交叉 计算, 功率谱、 相干谱 matlab 252万源代码下载- www.pudn.com...
文件名称: wavelet下载 收藏√ [ 5 4 3 2 1 ] 开发工具: matlab 文件大小: 1790 KB 上传时间: 2016-02-29 下载次数: 0 详细说明:小波分 ...
- matlab如何寻找波谷,波峰波谷法计算信号的周期及其Matlab程序
波峰波谷法原理是:查找信号相邻波峰波谷间隔采样点的数量,乘上采样间隔的时间,最后求平均值即是信号的周期.但该方法对噪声较为敏感,采用波峰波谷法计算滤波后信号的周期,如图所示. 该方法主要是需要找到信号 ...
- dfa matlab用法,用MATLAB实现DFA算法及报告.doc
WORD格式整理 PAGE 专业资料 值得拥有 地理与生物信息学院 2011 / 2012 学年第 二 学期 实 验 报 告 课程名称: 医学信号处理 实验名称: DFA算法实现 班 级 学 号: * ...
- 直接法 matlab,解线性方程组直接方法matlab用法.doc
解线性方程组直接方法matlab用法 在这章中我们要学习线性方程组的直接法,特别是适合用数学软件在计算机上求解的方法. 2.1 方程组的逆矩阵解法及其MATLAB程序 2.1.3 线性方程组有解的判定 ...
- matlab解方程组方法,第二章解线性方程组的直接方法matlab用法
第二章解线性方程组的直接方法matlab用法 第二章 解线性方程组的直接方法的 MATLAB 程序24. 在这章中我们要学习线性方程组的直接法,特别是适 合用数学软件在计算机上求解的方法. 2.1 方 ...
- Matlab作图后的各种调整方法——线条、坐标、标题、图例
Matlab作图后的各种调整方法--线条.坐标.标题.图例 文章目录 Matlab作图后的各种调整方法--线条.坐标.标题.图例 一 , 写在前面 1.整个图窗 Figure(gcf) 2.我们使用命 ...
- java7 javascript引擎_Java7中脚本引擎的一般用法,共三种方法获得JavaScript引擎:名称、文件扩展名、MIME类型 | 学步园...
package com.sino.java7; import javax.script.ScriptEngine; import javax.script.ScriptEngineManager; i ...
- MATLAB读取写入文本数据最佳方法 | Best Method for Loading Saving Text Data Using MATLAB
MATLAB读取文件有很多方法.然而笔者在过去进行数据处理中,由于函数太多,相互混杂,与C#,Python等语言相比,反而认为读取文本数据比较麻烦.C#和Python等高级语言中,对于大部分的文本数据 ...
最新文章
- 利用python进行数据分析学习笔记(2)
- 《Java 核心技术卷1 第10版》学习笔记------ Object类的 hashCode 方法
- linux time dev null,/dev/null丟失后
- 项目开发容易出错情况统计
- HTML textarea控件
- 测试用例的八大设计方法
- 《人工智能:计算Agent基础》——1.5 复杂性维度
- python tkinter获取屏幕大小_用 Python 制作关不掉的端午安康弹窗
- 自动驾驶的Pipline -- 如何打造自动驾驶的数据闭环?(上)
- 小型功率放大器的设计与制作——功率放大器的设计方法
- java课程结课论文_Java技术综合课程设计论文
- 最大公约数是啥意思_什么是最大公约数
- 前端特效demo | 一起围观 10 种创意时钟 1
- 快递鸟电子面单打印接口demo-可返回电子面单模板
- [DP] 【UNR #2】积劳成疾
- 清华计算机系本科毕业起薪,大学本科毕业起薪最高的六大专业
- (一)计算机基本组成
- 小鱼鱼的 Python 学习笔记(第一周)
- Hadoop Mapreduce组建 核心环形缓冲区 RingBuff 原理及Go实现
- mysql 多条件like语句、正则regexp
热门文章
- Mysql学习总结(34)——Mysql 彻底解决中文乱码的问题
- Myeclipse学习总结(7)——Eclipse插件之Maven配置及问题解析
- Dubbo学习总结(1)——Dubbo入门基础与实例讲解
- python抢红包random实现_python写红包的原理流程包含random,lambda其中的使用和见简单介绍...
- js 防止重复提交方案
- 如何实现一个符合规范的Promise
- 2018-1-2Linux基础知识(19)vi编辑器及bash算数
- zabbix 安装(yum)
- 高可用高性能负载均衡软件HAproxy详解指南-第一章(简介、安装)
- HTML5 文档定义Doctype