How can I make each iteration of a for each block create a unique random number?
6 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Eugene Ofori
el 28 de Nov. de 2022
Comentada: cr
el 28 de Nov. de 2022
I want to create a random number for all iterations of my For Each Block at each time step. I've tried by simply adding a random number in my For Each Subsystem but I get the same random number outputted for each iteration. See a test model of this below.
How can I achieve generating unique random numbers for each iteration?
One method I know exists would be to have it outside the for each loop but that is undesirable because:
- My model is several subsystems beneath the top level of the for each loop so it would be undesirable.
- I would like to create this into a library block so I don't want it to be dependent on signals at the top level.
0 comentarios
Respuesta aceptada
cr
el 28 de Nov. de 2022
You will have to generate a vector of random numbers outside and pass it as an input. Default partitioning of this vector might not happen the way you need it.
Cheers.
2 comentarios
cr
el 28 de Nov. de 2022
Not sure if that is possible. The rng blocks spit a number (or a vector of numbers) in sequence for each time step. The iterations inside the foreach block are not individual time steps -just the same time step iterating over each element in the vector signal.
Más respuestas (0)
Ver también
Categorías
Más información sobre Sources en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!