Generation of random number which needs to be passed to an array

1 vue (au cours des 30 derniers jours)
Ganesh Kini
Ganesh Kini le 15 Juin 2020
Réponse apportée : Rik le 15 Juin 2020
I have 2 variables named A and B
A has the range from -0.2 to 2.2
B has the range from -3.2 to 0.2
I need all the possible to combinations of A and B in 0.1 steps
for example
FROM
0.1 0.2
-0.1 -0.3 and so on
How do I randomly generate this?
  2 commentaires
James Tursa
James Tursa le 15 Juin 2020
By randomly, do you mean you want to randomly pick one pair from all possible pairs? Or do you mean you want to generate the set of all possible pairs but then randomly mix them up?
Ganesh Kini
Ganesh Kini le 15 Juin 2020
Modifié(e) : Ganesh Kini le 15 Juin 2020
Thank you for your reply
I want all the sets of randomly mixed values and then I need to iterate them
So, there are two questions
1) How do I randomly pick one set of A and B and then pass it on the array?
2) How do I iterate all the sets of values without using for loop?

Connectez-vous pour commenter.

Réponses (1)

Rik
Rik le 15 Juin 2020
You can generate all combinations and mix them up like this:
[A,B]=ndgrid(-0.2:0.1:2.2,-3.2:0.1:0.2);
new_order=randperm(numel(A));
A=A(new_order);
B=B(new_order);
Now you can feed it to your next function. Whether you are able to avoid for-loops depends on what function you are trying to call. (and it may not be the optimal strategy to do so at any cost)

Catégories

En savoir plus sur Random Number Generation 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!

Translated by