生成布朗运动随机序列代码,求修改。
11 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
代码段红色标示的符号是什么意思?运行结果中的警告和错误是指什么?怎样修改?
function data = BrownM( Npoints, Mean, Std, Opt )
dt=1;
% dt时间变化
% 选择项,Opt=1 生成一维随机数, Opt=2 生成二维随机数
if Opt == 1
%%
% standard Brownian motion
data = [0 cumsum(dt^0.5.*random('Normal', Mean, Std, 1, Npoints))];
% 生成服从正态分布的随机数, Mean 均值, Std 方差, 1, Npoints, 一行Npoints个
% cumsum为累加函数
% 画图
figure
plot(0:Npoints, data);
else if Opt == 2
data = cumsum([zeros(1,3);dt^0.5*random('Normal', Mean, Std, Npoints-1,3)]);
% 画图
figure
plot3(data(:,1), data(:,2), data(:,3), 'k');
% 根据数值设定画图点的颜色
pcol = (data-repmat(min(data), Npoints, 1))/...
repmat(max(data)-min(data), Npoints, 1);
% 叠加画图
hold on ;
scatter3(data(:,1), data(:,2), data(:,3),...
10, pcol, 'filled');
% 显示网格
grid on;
hold off;
else
error('Opt = 1 or Opt = 2')
end
end
运行结果如下
dataA=BrownM(Npoints, Mean, Std, Opt); (其中参数值分别为1000, 0, 1 , 2)Warning: Rank deficient, rank = 1, tol = 2.794952e-14. > In BrownM at 22 Error using scatter3 (line 77)C must be a single color, a vector the same length as X, or an M-by-3 matrix.
Error in BrownM (line 26) scatter3(data(:,1), data(:,2), data(:,3),...
0 Commenti
Risposta accettata
bejapp
il 16 Nov 2022
你这个是pcol设定出了问题,因为原作者的用意无从考证,我就按照自己的想法随便帮你改动了一下
function data = BrownM( Npoints, Mean, Std, Opt )
dt=1;
% dt时间变化
% 选择项,Opt=1 生成一维随机数, Opt=2 生成二维随机数
if Opt == 1
%%
% standard Brownian motion
data = [0 cumsum(dt^0.5.*random('Normal', Mean, Std, 1, Npoints))];
% 生成服从正态分布的随机数, Mean 均值, Std 方差, 1, Npoints, 一行Npoints个
% cumsum为累加函数
% 画图
figure
plot(0:Npoints, data);
else if Opt == 2
data = cumsum([zeros(1,3);dt^0.5*random('Normal', Mean, Std, Npoints-1,3)]);
% 画图
figure
plot3(data(:,1), data(:,2), data(:,3), 'k');
% 根据数值设定画图点的颜色
% pcol = (data-repmat(min(data), Npoints, 1))/...
% repmat(max(data)-min(data), Npoints, 1);
pcol = sum(data,2);
% 叠加画图
hold on ;
scatter3(data(:,1), data(:,2), data(:,3),...
10, pcol, 'filled');
% 显示网格
grid on;
hold off;
else
error('Opt = 1 or Opt = 2')
end
end
结果如附图所示
0 Commenti
Più risposte (0)
Vedere anche
Categorie
Scopri di più su 描述性统计量 in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!