资源简介
多重分形谱计算程序matlab,可用于股市分析等。有问题希望大家及时反馈给我。

代码片段和文件信息
function [f_aAlpha]=AlphaR(Datarintervalqinterval)
%[f_aa]=AlphaR(Datarintervalqinterval)
%AlphaR为计算多重分形谱的函数
%Data为输入样本数据列向量第一列为数据
%rinterval为尺子取值范围rinterval=[rminrmax];
%rmin为大于等于2的正整数,最大为数据长度
%qinterval为q取值范围qinterval=[qminq步长qmax];
%% 数据准备
L=length(Data); % 总数据个数
%尺子参数
rmin=rinterval(1); % 尺子区间
rmax=rinterval(2);
rno=rmax-rmin+1; % 尺子个数
%q参数
qmin=qinterval(1); % q的范围
qd=qinterval(2); % 步长
qmax=qinterval(3);
qno=fix((qmax-qmin)/qd+1); % q的个数
c=zeros(rno1);
i=1;
for r=rmin:rmax % 每组区间长度
c(i1)=mod(Lr);
i=i+1;
end
c=c‘; % 计算不能被边长r整除的余数
count=L-c;
format long
modify=1;
modifying=zeros(rno1);
r=rmin; % 尺子初始长度
%% 进入配分函数主循环
%计算每区间质量值
for i=1:rno
B=Data(1:count(i)1); % 取出每个尺子对应的所有数据
ino=length(B)/r; % 尺子对应的区间数interval no
Tssum=sum(B);
U=reshape(Brino); % 每列保存每区间全部数据
T=sum(U)./Tssum; % 每个区间的质量
T=T‘;
TT(1:length(T)i)=T; % 按列保存不同区间的T值%%%%%%%%%%%%preallocate
modifying(modify1)=ino; % 每个尺子对应区间数(T值的个数)
r=r+1;
if r>= rmin+rno % 自定义项,“※-3”
break; % 边长初始限制,循环终止
end
modify=modify+1;
end
TT=nonzeros(TT);
to_modifying=zeros(rno1);
for cugb=1:rno
to_modifying(cugb1)=sum(modifying(1:cugb)); % 第i个尺子累计有T值个数的总数
end
j=1;
% q 为任意数,这里取1到n,为n,与 k取值保持一致,q过大,计算机无法
%识别,默认为无穷大,q过小,结果接近0,则意义不明确
XX=zeros(rnoqno);
for q=qmin:qd:qmax
for k=1:rno
if k==1
X=TT(1:to_modifying(k1)1).^q;
else
X=TT(to_modifying(k-11)+1:to_modifying(k1)1).^q;
end
t=sum(X);
XX(kj)=t; % 第k个尺子第j个q的配分函数,Xq(ξ)这里用到两个循环,即考虑到了幂函数,又需考虑求和
end
j=j+1;
end
%% 谱函数主循环
side_length= rmin:rmax; % 尺子长度
side_length=side_length‘;
q=qmin:qd:qmax; % q分层参数
m=1;
slope=zeros(qno1);
for i=1:qno
s=XX(:i); % 每一层所有尺子的配分函数
b=polyfit(log(side_length)log(s)1); % 在对数尺度下计算斜率一阶拟合
slope(m1)=b(11);% 这里的Slope即为质量指数,τ(q)
m=m+1;
end
%plot(q‘slope) % 若τ(q)-q为线性关系,则为单分形;若τ(q)-q是凸函数,
Alpha=diff(slope)./diff(q‘); % 奇异指数Alpha
q=q‘;
f_a=Alpha.*q(2:end)-slope(2:end); %奇异谱函数
%% 画图
% figure
% plot(Alphaf_a‘o‘)
% xlabel(‘α‘‘FontSize‘12);
% ylabel(‘f(α)‘‘FontSize‘12);
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2013-07-23 13:45 Charles Li Multifractal1.0\
文件 2698 2013-07-22 16:14 Charles Li Multifractal1.0\AlphaR.m
文件 543 2013-07-23 13:53 Charles Li Multifractal1.0\Charles Li Multifractal1.0使用说明.txt
文件 700 2013-07-19 11:10 Charles Li Multifractal1.0\MulDataGenerator.m
文件 1324 2013-07-22 13:38 Charles Li Multifractal1.0\MulGetdate.m
文件 1214 2013-07-22 15:20 Charles Li Multifractal1.0\MultifractalRE.m
文件 895 2013-07-22 16:31 Charles Li Multifractal1.0\sc
文件 205281 2013-07-19 16:22 Charles Li Multifractal1.0\TData.mat
文件 641211 2013-07-19 16:27 Charles Li Multifractal1.0\TData1.mat
- 上一篇:汽车悬架的半主动控制MATLAB仿真
- 下一篇:关于MSK的matlab源代码
相关资源
- 高灵敏度GPS接收机MATLAB仿真,附捕获
- 基于MATLAB的质点弹道计算与外弹道优
- 阵列天线的matlab仿真
- MATLAB 经典程序源代码大全
- MATLAB小波软阈值去噪代码33473
- 天线阵的波束形成在MATLAB仿真程序及
- 非线性SVM算法-matlab实现
- 《MATLAB 智能算法超级学习手册》-程序
- 组合导航matlab程序
- 读取txt文件内容matlab代码实现
- Matlab实现基于相关的模板匹配程序
- matlab优化工具箱讲解
- 基于MATLAB的快速傅里叶变换
- 光纤传输中的分布傅立叶算法matlab实
- 基于matlab的图像处理源程序
- matlab 椭圆拟合程序
- 算术编码解码matlab源代码
- optical_flow 光流法 matlab 实现程序
- 引导图像滤波器 Matlab实现
- 分形几何中一些经典图形的Matlab画法
- OFDM系统MATLAB仿真代码
- SVM工具箱(matlab中运行)
- 图像小波变换MatLab源代码
- LU分解的MATLAB实现
- 冈萨雷斯数字图像处理matlab版(第三
- 替代数据法的matlab程序
- 用matlab实现的多站定位系统性能仿真
- 通过不同方法进行粗糙集属性约简m
- k近邻算法matlab实现
- matlab识别系统
评论
共有 条评论