24小时热门版块排行榜    

CyRhmU.jpeg
查看: 3220  |  回复: 31

zyj8119

木虫 (著名写手)

[交流] 【讨论】MC学习专题已有13人参与

回复此楼

» 收录本帖的淘帖专辑推荐

青枫小筑

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

好好学习,天天向上。
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zh1987hs

金虫 (著名写手)

分子模拟新手

★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
lei0736(金币+1):谢谢 2010-09-11 16:32:55
引用回帖:
Originally posted by zyj8119 at 2010-09-11 11:37:37:
我把我前面转载的帖子汇总了下:
1.http://muchong.com/bbs/viewthread.php?tid=2383706&fpage=1
2.http://muchong.com/bbs/viewthread.php?tid=2383749&fpage=1
3.[url]http://emu ...

希望您以后可以再这个帖中丰富完善对MC模拟的一些知识,争取对新入门的虫友有所裨益。
2楼2010-09-11 13:57:17
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zyj8119

木虫 (著名写手)

引用回帖:
Originally posted by zh1987hs at 2010-09-11 13:57:17:

希望您以后可以再这个帖中丰富完善对MC模拟的一些知识,争取对新入门的虫友有所裨益。

好的,再接再厉!
好好学习,天天向上。
3楼2010-09-11 14:17:49
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

made21

银虫 (初入文坛)


小木虫(金币+0.5):给个红包,谢谢回帖交流
楼主好人啊,回去慢慢学习!
4楼2010-09-11 16:18:39
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zyj8119

木虫 (著名写手)

【转】(分形)布朗运动的Matlab生成代码

★ ★ ★ ★
lei0736(金币+4):谢谢 2010-09-11 21:48:31
引用回帖:
Originally posted by zyj8119 at 2010-09-11 11:37:37:
我把我前面转载的帖子汇总了下:
1.http://muchong.com/bbs/viewthread.php?tid=2383706&fpage=1
2.http://muchong.com/bbs/viewthread.php?tid=2383749&fpage=1
3.[url]http://emu ...

生成(分形)布朗运动的近似方法主要有随机中点位移法(RMD),快速付立叶换(FFT),后者精度很高且性能好。我所写代码是paxson论文中的S语言代码翻译过来的,希望对大家有所帮助。
CODE:
function similar_sequence = generator_FFT(n,H)  
%--------------------------------------------------------------------------  
% GENERATOR_FFT Use fast fourier transform to generate normalized FGN   
%     and FBM. Then use Norrs method to generate normalized  
%     similar_sequence. Finally, the average of similar_sequence was set to
%     1 through normaliztion.
%  
%     Note:   
%     1. The input argument n is the number of point of sequence. It must   
%     be even. H is the objective similarity you want.   
%     2. The output argument similar_sequence is a similar_sequence with   
%     average equal to 1. The FGN and FBM are normalized FGN and FBM
%     respectively.   
%     3. This routine is a matlab version of paxson's R routine. For more  
%     details, see "Fast, approximate synthesis of fractional Gaussian   
%     noise for generating self-similar network traffic"
%--------------------------------------------------------------------------

%--------------------------------------------------------------------------  
%  
%    generator_FFT  
%    Edit by Chu Chen, 07/07/2007  
%    Should you have any suggestion for improving the code, please contact:  
%    chuch@scut.edu.cn.   
%--------------------------------------------------------------------------  

if mod(n,2) ~= 0
    error('The input argument "n" must be even');  
else   
    % Returns a Fourier-generated sample path of a "self similar" process
    % Consisting of n points(n should be even) and Hurst paramenter H  
    n = n/2;  
    lambda = [1:n]*pi/n;   
  
    % Approxiamte ideal power spectrum.
    f = FGNspectrum(lambda,H);  

    % Adjust for estimating power spectrum via periodogram
    f = f.*exprnd(1,1,n);

    % Construct corresponding complex numbers with randm phase   
    alpha = 2*pi.*unifrnd(0,1,1,n);   
    a = sqrt(f).*cos(alpha);   
    b = sqrt(f).*sin(alpha);   
    z = complex(a,b);

    % Last element should have zero phase  
    z(n) = abs(z(n));   

    % Expand z to correspond to a Fourier transform of a real-valued signal.  
    zprime = [0,z,conj(fliplr(z(1:n-1)))];

    % Inverse FFT gives sample path.   
    FGN = real(ifft(zprime));  
      
    % Standardize FGN and create FBM.
    FGN = (FGN-mean(FGN))/std(FGN);   
    FBM = cumsum(FGN);   
  
    % Use Norrs method to generate normalized similar_sequence   
    similar_sequence = FGN;  
     
    % M = 30;
    % a = 5;  
    % similar_sequence = M + sqrt(a*M)*similar_sequence;  
    % similar_sequence = max(0,similar_sequence);  
    % similar_sequence = similar_sequence*2*n/sum(similar_sequence);
end;


%----------------------------subfunction1----------------------------------  
function f = FGNspectrum(lambda,H)   
% Returns an approximation of the power spectrum of FGN at the given
% frequencies lambda and the given Hurst parameter H.   
f = 2*sin(pi*H)*gamma(2*H+1).*(1-cos(lambda)).*(lambda.^(-2*H-1) + FGNest(lambda,H));
  
%----------------------------subfunction2----------------------------------  
function est = FGNest(lambda,H)   
% Returns the estimate for B(lambda,H).  
d = -2*H-1;
dprime = -2*H;   
a1 = 2*1*pi+lambda;
b1 = 2*1*pi-lambda;
a2 = 2*2*pi+lambda;
b2 = 2*2*pi-lambda;
a3 = 2*3*pi+lambda;
b3 = 2*3*pi-lambda;
a4 = 2*4*pi+lambda;   
b4 = 2*4*pi-lambda;  
est = a1.^d + b1.^d + a2.^d + b2.^d + a3.^d + b3.^d + (a3.^dprime+b3.^dprime+a4.^dprime+b4.^dprime)/(8*pi*H)

[ Last edited by zyj8119 on 2010-9-11 at 21:34 ]
好好学习,天天向上。
5楼2010-09-11 21:32:23
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

yuankanxue

金虫 (著名写手)

分子玩家

问一下,楼主用mc模拟计算什么呀?
有志者事竟成,梦想给我方向,方法是效率,努力是捷径,失败是老师。
6楼2010-09-12 09:06:42
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zyj8119

木虫 (著名写手)

引用回帖:
Originally posted by yuankanxue at 2010-09-12 09:06:42:
问一下,楼主用mc模拟计算什么呀?

我主要是利用GCMC模拟微孔介孔材料吸附分离小分子气体的。
好好学习,天天向上。
7楼2010-09-12 09:38:41
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

小木虫(金币+0.5):给个红包,谢谢回帖交流
8楼2010-09-12 17:21:25
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zyj8119

木虫 (著名写手)

版主把此帖置顶吧,可以讨论MC的问题。。。。
好好学习,天天向上。
9楼2010-09-12 21:26:37
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zhangrq_hu

木虫 (著名写手)


小木虫(金币+0.5):给个红包,谢谢回帖交流
汇总贴应该置顶
10楼2010-09-12 21:49:21
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 zyj8119 的主题更新
普通表情 高级回复(可上传附件)
信息提示
请填处理意见