How do I make a 2D randomwalk?
123 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Delshad Ayoubi
le 17 Fév 2018
Commenté : Image Analyst
le 1 Mar 2022
I have so far only been able to make a 1D randomwalk but I have to make it into 2D. Below is my code for 1D. How do I change it so that it is in 2D?
clear
clc
N = 100; % Length of the x-axis, also known as the length of the random walks.
M = 400; % The amount of random walks.
x_t(1) = 0;
for m=1:M
for n = 1:N % Looping all values of N into x_t(n).
A = sign(randn); % Generates either +1/-1 depending on the SIGN of RAND.
x_t(n+1) = x_t(n) + A;
end
plot(x_t);
hold on
end
0 commentaires
Réponse acceptée
Image Analyst
le 17 Fév 2018
Modifié(e) : Image Analyst
le 17 Fév 2018
Just duplicate everything for y:
clc;
clearvars;
N = 100; % Length of the x-axis, also known as the length of the random walks.
M = 400; % The amount of random walks.
x_t(1) = 0;
y_t(1) = 0;
for m=1:M
for n = 1:N % Looping all values of N into x_t(n).
A = sign(randn); % Generates either +1/-1 depending on the SIGN of RAND.
x_t(n+1) = x_t(n) + A;
A = sign(randn); % Generates either +1/-1 depending on the SIGN of RAND.
y_t(n+1) = y_t(n) + A;
end
plot(x_t, y_t);
hold on
end
grid on;
% Enlarge figure to full screen.
set(gcf, 'Units', 'Normalized', 'Outerposition', [0, 0.05, 1, 0.95]);
axis square;
For what it's worth, see my attached random walk demos.
13 commentaires
Andy Paulo Ureña
le 1 Mar 2022
Hi, how can i calculate the distance from the origin to all points taken in every step iteration? Thanks a lot
Image Analyst
le 1 Mar 2022
@Andy Paulo Ureña make a new array called allDistances, and assign it distances
allDistances(n) = distance;
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur 2-D and 3-D Plots dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!