使用matlab模拟一维、二维和三维下的Brown运动的样本轨道。
时间: 2024-02-17 07:01:01 浏览: 89
好的,以下是使用MATLAB模拟一维、二维和三维下的Brown运动的样本轨迹的示例代码。
一维Brown运动:
```matlab
% 模拟参数
N = 1000; % 步数
dt = 0.01; % 步长
mu = 0; % 均值
sigma = 1; % 方差
% 初始化数组
x = zeros(N, 1);
% 模拟Brown运动
for i = 2:N
x(i) = x(i-1) + randn * sqrt(dt);
end
% 画图
plot(x);
xlabel('步数');
ylabel('位置');
title('一维Brown运动');
```
二维Brown运动:
```matlab
% 模拟参数
N = 1000; % 步数
dt = 0.01; % 步长
mu = [0 0]; % 均值
sigma = [1 0; 0 1]; % 协方差矩阵
% 初始化数组
x = zeros(N, 2);
% 模拟Brown运动
for i = 2:N
x(i,:) = x(i-1,:) + mvnrnd(mu, sigma) * sqrt(dt);
end
% 画图
plot(x(:,1), x(:,2));
xlabel('X');
ylabel('Y');
title('二维Brown运动');
```
三维Brown运动:
```matlab
% 模拟参数
N = 1000; % 步数
dt = 0.01; % 步长
mu = [0 0 0]; % 均值
sigma = [1 0 0; 0 1 0; 0 0 1]; % 协方差矩阵
% 初始化数组
x = zeros(N, 3);
% 模拟Brown运动
for i = 2:N
x(i,:) = x(i-1,:) + mvnrnd(mu, sigma) * sqrt(dt);
end
% 画图
plot3(x(:,1), x(:,2), x(:,3));
xlabel('X');
ylabel('Y');
zlabel('Z');
title('三维Brown运动');
```
以上三段代码分别使用MATLAB模拟了一维、二维和三维下的Brown运动的样本轨迹,并绘制了相应的图形。
阅读全文