How to get my script to work?

I want to make a script to follow an iterative procedure but every time I run my current script the following error message: ??? In an assignment A(I) = B, the number of elements in B and I must be the same.
A = [1 2;3 4]
%Investigate the iterative procedure v(n+1) = u/C
for n = 1:10
v(1) = [1 0];
u = A*transpose(v(n));
C = norm(u);
v(n+1) = u/C;
end
How do I fix this? Thank you for your help in advance.

1 Kommentar

Jan
Jan am 29 Apr. 2013
When you post an error message in the forum, show the failing line also. Although we could guess it here, relying on out crystal balls is usually not efficient. ;-)

Antworten (2)

Azzi Abdelmalek
Azzi Abdelmalek am 29 Apr. 2013

0 Stimmen

A = [1 2;3 4]
%Investigate the iterative procedure v(n+1) = u/C
for n = 1:10
v(1,:) = [1 0];
u = A*transpose(v(n,:));
C = norm(u);
v(n+1,:) = u/C;
end

2 Kommentare

Arati
Arati am 29 Apr. 2013
Thank you, I can see where I was going wrong now.
Jan
Jan am 29 Apr. 2013
I recommend to use a pre-allocation. This is fundamental for efficient programs.
Jan
Jan am 29 Apr. 2013

0 Stimmen

A = [1 2;3 4]
v = zeros(11, 2); % Pre-allocate
v(1, :) = [1 0]; % Outside the loop
for n = 1:10
u = A * transpose(v(n, :));
C = norm(u);
v(n+1, :) = u/C;
end

Diese Frage ist geschlossen.

Gefragt:

am 29 Apr. 2013

Geschlossen:

am 20 Aug. 2021

Community Treasure Hunt

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

Start Hunting!

Translated by