Is this a right way to code nested sums?

:
Is the above code a correct way to code the following expression (note that in the code r is RRintervals, and i is n):
or it would be better to code it with nested for loops? Im asking because i cant really test it.

5 comentarios

Torsten
Torsten el 11 de En. de 2024
Editada: Torsten el 11 de En. de 2024
I wonder why you define M as a symbolic array and not as a usual numerical array.
Is "RRintervals" a function or an array of values ? If "RRintervals" is an array, n > N must hold, I guess.
Marcello Calza
Marcello Calza el 11 de En. de 2024
RRintervals is an array of doubles
Torsten
Torsten el 11 de En. de 2024
Editada: Torsten el 11 de En. de 2024
Then what does RRintervals(n-j) and RRintervals(n-k) mean if n <= N, e.g. RRintervals(-3) ?
Or does the array M(n) only exist for n > N and M(n) can be set to NaN for n <= N ?
Marcello Calza
Marcello Calza el 11 de En. de 2024
i dont get what is N in your example, but yes RRintervals cant have index < 0 , thats why i will probably just use nested for loops. Thanks for the replies.
Torsten
Torsten el 11 de En. de 2024
Editada: Torsten el 11 de En. de 2024
Nested for loops don't help to make array indices positive. The N is the N in your graphics formula. Or is n=N ?

Iniciar sesión para comentar.

Respuestas (1)

Hello Marcello,
To implement nested summations, you may employ nested 'for' loops or use array operations. The selection of the approach is contingent upon the nature of the problem at hand, particularly concerning the dependency of the summation indices. It appears that in your case, the summation indices 'j' and 'k' are interdependent on each other.
Consequently, I recommend utilizing nested 'for' loops to accomplish your objective. The code snippet provided below serves as an illustrative example to facilitate your comprehension of the concept.
% Define the limits of the loops
N = 5; % Upper limit for the inner loop
% Preallocate the vector with zeros
my_vector = zeros(1, N);
% Initialize a counter for the vector index
index = 1;
% Perform the outer loop
for i = 1:N
% Perform the inner loop
for j = i+1:N+1
% Insert the element at the current index
my_vector(i) = (my_vector(i) + 1)*j;
end
end
% Display the result
disp(my_vector);
1236 516 156 36 6
Refer to the following documentation links to have more information on:
Hope this helps!
Balavignesh S

1 comentario

Marcello Calza
Marcello Calza el 11 de En. de 2024
Yes the dependency between the indices is a problem so i think i will try to code it with nested for loops, thank you.

Iniciar sesión para comentar.

Categorías

Más información sobre Loops and Conditional Statements en Centro de ayuda y File Exchange.

Productos

Versión

R2023b

Preguntada:

el 11 de En. de 2024

Editada:

el 11 de En. de 2024

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by