1. 如何用matlab模拟布朗运动
有没有具体的要求呢
可以给你写一个随机运动轨迹的
x0=0;
y0=0;
n=1e5;
x=zeros(1,n);
y=x;
x(1)=x0;
y(1)=y0;
for
i=2:n
p=unidrnd(4);
if
p==1
x(i)=x(i-1)+1;
y(i)=y(i-1);
end
if
p==2
x(i)=x(i-1)-1;
y(i)=y(i-1);
end
if
p==3
x(i)=x(i-1);
y(i)=y(i-1)-1;
end
if
p==4
x(i)=x(i-1);
y(i)=y(i-1)+1;
end
end
comet(x,y);
这里是朝着四个方向的随机运动
还是挺好玩的
我选的n是10万要跑两分钟吧
不知道你要的是不是这种
后边的动画只是用了comet(x,y);这个语句
2. 求一个MATLAB程序,通过蒙特卡洛方法模拟二维布朗运动的,谢谢
function [x,y,m,n]=br2(x0,xf,y0,yf,h)
x=x0:h:xf;
y=y0:h:yf;
a=randn(size(x));
b=randn(size(y));
m(1)=0;
n(1)=0;
for k=1:length(x)-1;
m(k+1)=m(k)+a(k);
n(k+1)=n(k)+b(k);
end;
再在命令窗口键入
x0=0;
xf=10;
h=0.01;
y0=0;
yf=10;
[x,y,m,n]=br2(x0,xf,y0,yf,h);
plot(m,n)
xlabel('m');
ylabel('n')
3. 布朗运动怎么在matlab上模拟
clc;
clear all;
t=1;
x=100;
y=100;
vx=17;vy=0;
for k=1:40
p=2*pi*rand(1,1) ;
vx=17*cos(p);
vy=17*sin(p);
x=x+vx*t;
y=y+vy*t;
line('ydata',y,'xdata',x,'Color' ,[1 0 0], 'Marker' ,'.' , 'MarkerSize' ,12, 'EraseMode' , 'non');
plot(x,y);
axis([0 200 0 200])
if(x>200||y>200||x<0||y<0)
break
end
hold on
pause(0.4);
end
望采纳
4. matlab计算布朗运动的二阶变差
二阶变差是不是二阶差分啊,就是是不是:
[X(t)-X(t-1)]-[X(t-1)-X(tp2)]
如果是的话就是:
diff(diff(X))...X是那一万个点。
5. 求MATLAB高手给下离散时间马尔科夫链、泊松过程、布朗运动的matlab仿真程序。急急急!!!
在matlab中文论坛里可以找到
6. matlab多粒子布朗运动记录坐标问题。
你编程生成的图太恶心了,不过符合蒙卡的思想,你可以从布朗运动的本质入手,定义粒子后让他的运动方向是随机的,如一维中定义前进后退(-1)^n让n成为那个随机数,然后拓展到空间,三维方向上去。。。很简单的