Sum of matrix with variable dimension
1 view (last 30 days)
Show older comments
Hello, I have two matrices produced by meshgrid and a simple scalar:
r = 1:10;
N = 1:10;
[r,N] = meshgrid(r,N);
N0 = 4;
I want, for each value of N, to get the sum from N0 to N of r^n. However this Matlab commands is not working :
sum(r.^(N0:N));
For example for r(5,5) = 5 and N(5,5) = 5, the result would be 5^4 + 5^5 = 3750. What I want is to get the matrix resultant of this operation over each row and column of r and N.
Thank you for your help!
2 Comments
Image Analyst
on 29 Oct 2016
Why is the N value raised to the 5th power while the r value is raised to the 4th power? What does it mean to have an exponent that is a vector, like [4,5]?
Accepted Answer
Guillaume
on 29 Oct 2016
I'm not sure what should happen when N(y,x) < N0, should the result be 0?
If I understand correctly, this will do:
arrayfun(@(rr, nn) sum(rr .^(N0:nn)), r, N)
Note that the above works for N(y, x) < N0 because the sum of an empty vector is 0 instead of empty.
More Answers (0)
See Also
Categories
Find more on Logical in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!