Loop Updating Vectors for Number of Iterations
8 views (last 30 days)
Show older comments
Hello,
I am trying to create a loop that will update a vector for a given number of iterations but keep getting errors. The x0 vector is solved and I would like to set as the first iteration. I would appreciate any help :)
What I am Trying to Implement:
x0 = A\b
x1 = A\x0
x2 = A\x1
...
xn = A\x(n-1)
My Code:
clear, clc;
% Given Information
A = [3 2 3; 5 5 6; 9 8 9];
b = [1; 2; 3];
x0 = A\b; % Calculate x0 vector
% My Attempt at Loop
b_ = zeros(size(b)); % Initialize?
x_ = zeros(size(x0)); % Initialize?
for k = 1:200
x(k(1)) = x_ + x0 % First Iteration
b(k) = b_ + x(k) % Update b vector
x(k+1) = A\b(k) % Updated x vector
end
2 Comments
Walter Roberson
on 7 Oct 2020
Is it correct that your b is always the previous x (except for the first time) ? Your use of those updates with 0 is confusing the issue if they are not needed.
Answers (1)
Asad (Mehrzad) Khoddam
on 7 Oct 2020
Simply use
A = [3 2 3; 5 5 6; 9 8 9];
b = [1; 2; 3];
x=b;
for k=1:200
x=A\x;
end
0 Comments
See Also
Categories
Find more on Loops and Conditional Statements 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!