Loop and plot in 2D
Afficher commentaires plus anciens
Hi,
I have a variable V(a,b,c) where
a=1:50
b=a
c=1:100
Now I would like to make a loop and plot the following:
sum_a(V(a,a+r,:))
May I ask you to help me with this loop and the 2D plot?
I have tried with this:
M=50;
V_prev=zeros(a,b,c);
V=V_prev;
for ik=1:M
V(ik,:,:)=V+V(ik,:,:);
for r=50-1:-1:0
V(ik,ik+r,:)=sum(V(ik,ik+r,:));
end
end
Unfortunately it doesn't work.
Thanks in advance for your reply.
4 commentaires
Walter Roberson
le 27 Jan 2018
In your duplicate question on this topic, Jan Simon commented:
I do not understand the question. What exactly is "V_a,V_(a+l)"?
Does "sum_a(V(a,a+l,:))" mean:
M = V(1:50, (1:50)+l, :)
sum(M(:))
? What is "l" here? If the 2nd dimension has a length of a, a+l exceeds the array dimensions.
By the way: Do not use "l" (lowercase L) as a name, because it is hard to distinguish from 1.
Auryn_
le 27 Jan 2018
Jan
le 27 Jan 2018
@Auryn_: I still do not get it. sum(M(:)) is the sum of all elements of the array M. Where does "l" come into play then?
If V is a V(a,a,b) array and you want to get the sum over all a, than you need:
sum(sum(V, 1), 2)
Auryn_
le 27 Jan 2018
Réponse acceptée
Plus de réponses (1)
2 commentaires
Jan
le 28 Jan 2018
I have edited your code. Please read https://www.mathworks.com/matlabcentral/answers/13205-tutorial-how-to-format-your-question-with-markup#answer_18099.
Your code does not run: In the first iteration ik=1 and l=b-1 (did I told you already not to use "l" as name of a variable? It is a really serious advice.) ij is greater than a, such that A is not defined at all. Then the assignment to B fails with an error message.
Auryn_
le 28 Jan 2018
Catégories
En savoir plus sur Scopes and Data Logging dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!