Unable to store matrix array in for loop

2 views (last 30 days)
Prince Igweze
Prince Igweze on 5 Nov 2019
Answered: randerss simil on 13 Feb 2021
t = linspace(10^-4,10^12,17)
for i = 1:17
m = inv((At * Cd * A) + (t(i) * Ht * H)) * At * Cd * do
end
Solution for m is a 20 by 1 matrix
but im having issues storing each iteration of the solution as an individual set (i.e m1 , m2, m3 ....m17)
it just lumps all the solutions as m
making it unable for me to call out a solution of choice
  3 Comments
Prince Igweze
Prince Igweze on 5 Nov 2019
t is just a range of values between 10^-4 and 10^12
Prince Igweze
Prince Igweze on 5 Nov 2019
that seems to make more sense.
Stephen, any ideas on how I can store each solution in the loop as M(1), M(2) .....M(17)
rather than M.

Sign in to comment.

Answers (2)

Bhaskar R
Bhaskar R on 5 Nov 2019
t = linspace(10^-4,10^12,17);
m = zeros(length(t),1); % initialize with zeros
for i = 1:17
m(i) = inv((At * Cd * A) + (t(i) * Ht * H)) * At * Cd * do; % store values for each iteration
end
  1 Comment
Prince Igweze
Prince Igweze on 5 Nov 2019
its showing this when i run
Unable to perform assignment because the left and right sides have a different number of elements.

Sign in to comment.


randerss simil
randerss simil on 13 Feb 2021
t = linspace(10^-4,10^12,17)
for i = 1:17
m{i} = inv((At * Cd * A) + (t(i) * Ht * H)) * At * Cd * do ; % use cell array
end
Use cell array as above

Categories

Find more on Creating and Concatenating Matrices 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!