From: "Steven_Lord" <>
Newsgroups: comp.soft-sys.matlab
Subject: Re: Iterative Procedure Using Vectors
Date: Thu, 25 Apr 2013 14:30:57 -0400
Organization: MathWorks
Lines: 39
Message-ID: <klbsp0$t0m$>
References: <klbqnr$mdk$>
Mime-Version: 1.0
Content-Type: text/plain;
Content-Transfer-Encoding: 7bit
X-Trace: 1366914656 29718 (25 Apr 2013 18:30:56 GMT)
NNTP-Posting-Date: Thu, 25 Apr 2013 18:30:56 +0000 (UTC)
In-Reply-To: <klbqnr$mdk$>
X-Priority: 3
X-MSMail-Priority: Normal
Importance: Normal
X-Newsreader: Microsoft Windows Live Mail 14.0.8089.726
X-MimeOLE: Produced By Microsoft MimeOLE V14.0.8089.726
Xref: comp.soft-sys.matlab:794360

"Laura " <> wrote in message 
> I have been told to carry out the following iterative procedure:
> a) Set a vector v to be the vector [1 ; 0]
> b) Find a new vector u = Av (where A is a 2 x 2 real matrix)
> c) Find the magnitude of this new vector u, and call this magnitude c
> d) Divide u by c
> e) Set v to be this unit vector, then repeat steps b) to e) a number of 
> times.
> So far I have tried:
> v(1) = [1 ; 0]

You can't fit the two elements of [1; 0] into the one element of v(1). It's 
too big. If you wanted to store that in the first column of v, that would 

v(:, 1) = [1; 0]

> for n = 1:100
>    u(n) = A*v(n+1)

See above plus you'll want to change all your indexing to refer to columns 
of the matrix rather than individual elements.

Also pay close attention to whether you want elementwise or vector division. 

Steve Lord
To contact Technical Support use the Contact Us link on