现已经有部分分形维数代码,但需要增加广义分形维数计算如果有小伙伴会等请赐教,现将已有分形代码进行分享

clc,clear;

% function multifractal(A)

format long g

%输入一个列向量即可

DApath=['E:\MATLAB\fenxing code\geardata\zhengchang\'];

% zc=[];

for I=1:2

DATAfile=['Data1-' int2str(I) '.txt'];

% [DATAfile DApath]=uigetfile('*.txt','输入信号');

FILENAME=[DApath,DATAfile];

data=load(FILENAME);

data=data(1:4096,1);

A=data;

%format long g

L=length(A);

i=1;

modify=1;

tmin=2;% 边框间距,“※”

tmax=10;

ttmin=-10;

ttmax=10;% 自定义 q 的范围

for r=tmin:1:tmax

c(i,1)=mod(L,r);

i=i+1;

end

c'; % 计算不能被边长r整除的余数

a=L-c';% 计算并剔除掉不能被边长r整除的原始数据,得到有用数据的个数

n=length(a);  % 求解格网化边长的个数,即为 n(网格边长可以有n=9种)

TT=[];

j=1;

r=tmin;   % 自定义项

for i=1:1:n   % 即n=25-10+1,自定义的结果

B=A(1:a(i),1);

U=reshape(B,r,length(B)/r);%不明白???????

T=mean(U);%默认的是求各列的均值

T=T'.*r^3;

TT(1: length(T),i)=[T]; %概率密度分布函数

modifying(modify,1)=length(T);

r=r+1;

if r>= tmin+n           % 自定义项

break;       % 边长超过10+n,超过初始限制,则程序自动终止

end

modify=modify+1;

end

modifying;

% TT= nthroot(TT,1); %对TT开n次方根 开一次方根有意义吗????

% 或者不缩小

% TT;

%TT=nonzeros(TT); %矩阵TT中的非零元素

for cugb=1:1:n   %cugb=9

modifying_modifying(cugb,1)=sum(modifying(1:cugb));     % 有影响的新加卷 % & * % ¥ # @ !) ……

end

modifying_modifying;

j=1;

% q 为任意数,这里取1到n,为n,与 k取值保持一致,q过大,计算机无法识别,默认为无穷大,q过小,结果接近0,则意义不明确

for q=ttmin:ttmax           %这里取 q=-10:1:10

for k=1:1:n

X=TT(1:modifying_modifying(k,1),1).^q;

if k>1

X=TT(modifying_modifying(k-1,1)+1:modifying_modifying(k,1),1).^q;

end

t=sum(X);

XX(k,j)=[t];             % 这里用到两个循环,即考虑到了幂函数,又需考虑求和

end

j=j+1;

end

XX;                     % 得到质量分配函数

X=log(tmin:1:tmax);

%

% X=log(tmax:-1:tmin);          % 此系以前的自定义输入结果,“※—4”

%

Y=log(XX);

%

% figure(1)

% plot(X',Y,'o-k')        % 至此,计算多重分形谱的第一步,分配函数构建完毕

%

%求质量指数τ(q)

side_length= tmin:1:tmax;         % 自定义网格边长,“※—5”

side_length=side_length';

q=ttmin:ttmax;                    % q=-5:1:n-10,q=-10:1:10

m=1;

[ha,hb]=size(XX);

for i=1:1:hb

% XX=XX’;                         % or not

s=XX(:,i);                        % XX

b=polyfit(log(side_length),log(s),1);  % 在对数尺度下计算斜率

slope(m,1)=b(1,1);

m=m+1;

end

slope;   %  这里的Slope即为质量指数,τ(q)

N=polyfit(q', slope,1);

plot(q', slope)    %  此步是考察τ(q)-q 之间的关系,

%

%求奇异指数

a=diff(slope)./diff(q');   % 第三步计算,diff函数求偏导确实少一列

%

%求多重分形谱

q=q';

f_a=a.*q(1:end-1)-slope(1:end-1);%多重分形谱

%

% figure(2)

% a=sort(a,'ascend');

plot(a,f_a,'o-k')

%xlabel('α','FontSize',12);

%ylabel('f(α)','FontSize',12);

% polyfit(a,f_a,3)

a=sort(a,'ascend');

% a+1

% f_a+1

a    % 奇异性指数

f_a % 不同层次的分维数

matlab多重分形广义函数谱,多重广义分形维数计算 - 程序语言 - DelphiPascal - 小木虫论坛-学术科研互动平台...相关推荐

  1. matlab寻峰代码,寻峰的函数!! - 程序语言 - MATLAB/Mathematica - 小木虫论坛-学术科研互动平台...

    我这里的数据是pgm的,我将其处理成多个高斯拟合的形式,现阶段只能将其最大的那个拟合出来,其他的高斯拟合我需要找到其峰值的位置! 我把前边的语句先列举上: function [ OutArr ] = ...

  2. matlab迭代算法实例sor,SOR迭代 - 程序语言 - MATLAB/Mathematica - 小木虫论坛-学术科研互动平台...

    方法一:建立了SOR.m的脚本文件,实现的是SOR迭代,程序语言如下: %SOR迭代 clear; clc; format long; i=1; n=6; H=hilb(n); X=ones(n,1) ...

  3. matlab模糊控制m函数,模糊控制m文件运行出错 - 程序语言 - MATLAB/Mathematica - 小木虫论坛-学术科研互动平台...

    Error using parsrule (line 182) Output MF index is too high Error in readfis (line 231) out=parsrule ...

  4. matlab产生光脉冲,【资源】分享一个脉冲的光线中传输的matlab程序 - 仿真模拟 - 小木虫 - 学术 科研 互动社区...

    好多研1的同学,开始用matlab进行模拟的时候都没有学过matlab,下面这个程序为光脉冲在光纤中传输时程序,其中用到了傅里叶分步法,要用傅里叶分步法的同学也可以参考借鉴一下,还有这个程序也可以用来 ...

  5. matlab求距离判别函数,求MATLAB的逐步判别程序 - 仿真模拟 - 小木虫 - 学术 科研 互动社区...

    somomo91 你不觉得信息量太少了么? 摸不着头脑, zhouxiaobo 是啊,信息量太少,LZ能详细描述一下你的问题吗 或者直接给出你的数据和要求 2012jxyl 引用回帖: zhouxia ...

  6. 用MATLAB做结构灵敏度分析怎么做,如何做灵敏度分析 - 数学 - 小木虫 - 学术 科研 互动社区...

    我有以下数据 年份        平均气温        最高气温        最低气温        相对湿度        日照时数        实际风速        日均ET 1953   ...

  7. matlab nml,fortran module 中如何进行赋值计算 - 程序语言 - 小木虫 - 学术 科研 互动社区...

    Fortran代码如下: <pre> module module_name real(8) :: a,b,c contains subroutine initial_ab namelist ...

  8. java 红外光谱数据库_免费的谱图数据库20个 - 晶体 - 小木虫 - 学术 科研 互动社区...

    [名称]ChemExper化学品目录CDD (包括MSDS.5000张红外谱图) [资源简介] The database contains currently more than 70 000 che ...

  9. java 红外光谱数据库_【分享】免费的20个谱图数据库 - 晶体 - 小木虫 - 学术 科研 互动社区...

    免费的谱图数据库20个 ★ ★ ★ ★ ★ [名称]ChemExper化学品目录CDD (包括MSDS.5000张红外谱图) [资源简介] The database contains currentl ...

  10. MATLAB计算杨氏模量,四阶弹性模量Cijkl如何在matlab里表示啊? - 计算模拟 - 小木虫 - 学术 科研 互动社区...

    matlab 四元数运算计算包就可以了吧 Matlab 四元数操作函数 2012-06-03 21:02:55|  分类: MATLAB&Mathemati |  标签:四元数  quater ...

最新文章

  1. AngularJS开发指南7:AngularJS本地化,国际化,以及兼容IE低版本浏览器
  2. Scholomance Academy 读题训练,模拟(沈阳)
  3. 淘宝API调用 申请 获取session key
  4. GPhone、OPhone、UPhone、APhone、IPhone:满城尽带XPhone
  5. 单例模式 java 实现_单例模式
  6. 利用jemalloc分析内存泄漏以及LD_PRELOAD
  7. Go 1.9中值得关注的几个变化
  8. 数学归纳法的相关证明
  9. xpath的基础知识
  10. python歌词统计单词词频_python词频统计
  11. UIFont 字体设置
  12. 乱OL, Ran OL[Ran2_Online]加解密工具源码
  13. 12省微生物繁殖,for循环模拟,12省,古堡算式全排列,12省鲁卡斯队列黄金比例比较,double精度12省填空题猜生日枚举,12省填空题土地测量,double12省填空题巧排扑克牌,12省汉诺塔
  14. gz是什么意思饭圈_zqsg是什么意思网络用语 饭圈zqsg是什么梗介绍
  15. Excel如何批量删除工作表全部图片?
  16. 计算机网络笔记4 网络层
  17. package.json 中的波浪号(~)和插入符号(^)有什么区别?
  18. private static final long serialVersionUID = 1L 是什么意思
  19. 前端实现炫酷动效_最好的H5动效视频教程:HTML5炫酷动效案例
  20. 探秘双“11”征服马云刘强东的电商架构 !

热门文章

  1. java---抽奖小程序
  2. 阿铭Linux_传统IDC 部署网站学习笔记20190121
  3. Web票据在线打印和套打解决方案
  4. brew 镜像_ps镜像快捷键,ps镜像图片效应功能怎么用?
  5. JavaScript常见的六种继承方式
  6. PyTorch搭建ShuffleNet
  7. 交通信号灯的检测与识别
  8. xlsxwriter进度条php,PHP_XLSXWriter
  9. 聚类及DBSCAN 聚类算法
  10. SSO单点登录系统的设计与实现