雑感等

音楽,数学,語学,その他に関するメモを記す.

フラクショナルブラウン運動の分散特性のプロット

matlabプログラムで分散特性\sigma^{2}_{H}= \langle \lvert f(t+\tau)-f(t) \rvert ^{2} \rangleに対する時間間隔 \tauを両対数グラフにプロットする.

Hurst指数がHのフラクショナルブラウン運動(fBm)の信号に対して分散 \sigma^{2}_{H}-時間間隔 \tauをプロットすると,
両対数グラフ上で傾きが2Hの線形となる範囲が現れる.

フラクショナルブラウン運動の生成プログラム - 雑感等に記載したプログラムを用い,
Hurst指数H=0.2, 0.5, 0.8のfBm信号を生成し,分散 \sigma^{2}_{H}-時間間隔 \tauをプロットした.

 \tauが小さい領域では線形にプロットされる.

H=0.2
f:id:kazmus:20180804111504p:plain

H=0.5
f:id:kazmus:20180804111517p:plain

H=0.8
f:id:kazmus:20180804111529p:plain

分散 \sigma^{2}_{H}-時間間隔 \tauをプロットするmatlabプログラム

%使用例
%fBm=csvread('fBm.csv');
%dif_time(fBm)
%第二引数は空で良い

function dif_time(sig,fs)
if 1~=exist('fs')
    fs=length(sig);
end
ts=1/fs;
loopMax=length(sig);
meanMoment=zeros(loopMax,1);
subplot(211)
for k=1:100:loopMax
    diffSquareSig=(sig(k+1:end)-sig(1:end-k)).^2;
    loglog((k*ts), ( mean(diffSquareSig)) ,'o')
    hold on
end
ylabel('<|f (t+\tau)-f (t)|^{2}>','FontSize',16)
xlabel('\tau','FontSize',16)
subplot(212)
plot(sig)
ylabel('amplitude','FontSize',16)
xlabel('time','FontSize',16)
set(gca,'FontSize',12)
end