Matlab:利用Matlab编程实现模拟分子布朗运动的动画展示

举报
一个处女座的程序猿 发表于 2021/03/30 23:26:32 2021/03/30
【摘要】 Matlab:利用Matlab编程实现模拟分子布朗运动的动画展示     目录 输出结果 实现代码       输出结果   实现代码 %Brownian motion clf; n=20; s=0.02; x = rand(n,1)-0.5; y = rand(n,1)-0.5; h = plot(x,y,'.'); axis([-1 1 -1...

Matlab:利用Matlab编程实现模拟分子布朗运动的动画展示

 

 

目录

输出结果

实现代码


 

 

 

输出结果

 

实现代码


  
  1. %Brownian motion
  2. clf;
  3. n=20;
  4. s=0.02;
  5. x = rand(n,1)-0.5;
  6. y = rand(n,1)-0.5;
  7. h = plot(x,y,'.');
  8. axis([-1 1 -1 1])
  9. axis square
  10. grid off
  11. set(h,'EraseMode','xor','MarkerSize',18)
  12. grid on;
  13. title('Press Ctl-C to stop');
  14. while 1
  15. drawnow
  16. x = x + s*randn(n,1);
  17. y = y + s*randn(n,1);
  18. set(h,'XData',x,'YData',y)
  19. end

  
  1. clear;clc;
  2. %Initializetherandngenerator
  3. randn('state',1)
  4. %SettheparameterHandthesamplelength
  5. H=0.7;lg=10000;
  6. %Generateandplotwavelet-basedfBmforH=0.7
  7. fBm=wfbm(H,lg);
  8. n=0:10;
  9. dt=2.^n;
  10. v=zeros(1,length(n));
  11. fori=1:11
  12. d=fBm(1+dt(i):end)-fBm(1:end-dt(i));
  13. v(i)=sum(d.^2)./(length(d)-1);
  14. cleard;
  15. end
  16. p=polyfit(log(dt),log(v),1);
  17. loglog(dt,v,'ko');
  18. holdon;
  19. sH=p(1)./2;
  20. ch=exp(p(2));
  21. plot(dt,ch.*dt.^(2.*sH),'b','LineWidth',1);
  22. %%
  23. clc;
  24. clearvars-exceptchsH;
  25. mch=ch;
  26. msH=sH;
  27. clearchsH;
  28. %Initializetherandngenerator
  29. randn('state',1)
  30. %SettheparameterHandthesamplelength
  31. H=0.7;lg=10000;
  32. fBm=fbm1d(H,lg);
  33. n=0:10;
  34. dt=2.^n;
  35. v=zeros(1,length(n));
  36. fori=1:11
  37. d=fBm(1+dt(i):end)-fBm(1:end-dt(i));
  38. v(i)=sum(d.^2)./(length(d)-1);
  39. cleard;
  40. end
  41. p=polyfit(log(dt./lg),log(v),1);
  42. holdon;
  43. loglog(dt,v,'ks');
  44. sH=p(1)./2;
  45. ch=exp(p(2));
  46. plot(dt,ch.*(dt./lg).^(2.*sH),'r','LineWidth',1);
  47. legend('matlab',strcat('Var=',num2str(mch),'*dt^{2.*',num2str(msH),'}'),'KB',strcat('Var=',num2str
  48. (ch),'*dt^{2.*',num2str(sH),'}'),'Location','SouthEast');
  49. saveas(gcf,'test1.jpg');

 

 

 

相关文章
Fractional Brownian motion generator

分数布朗运动及其模拟PDF参考文件

 

 

 

文章来源: yunyaniu.blog.csdn.net,作者:一个处女座的程序猿,版权归原作者所有,如需转载,请联系作者。

原文链接:yunyaniu.blog.csdn.net/article/details/83758429

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。