square of a vector

14 views (last 30 days)
Berbia
Berbia on 31 Oct 2012
I have to calculate a square of vector which should results a scalar value. i.e) A=(B-C)^2 B and C are vectors and I need A as a scalar. How can I implement this in matlab??

Accepted Answer

Honglei Chen
Honglei Chen on 31 Oct 2012
Edited: Honglei Chen on 31 Oct 2012
My guess is you need an inner product, i.e. A = |B-C|^2, you can do it many different ways, one way is
B = ones(3,1);
C = ones(3,1);
A = (B-C)'*(B-C)
  6 Comments
Honglei Chen
Honglei Chen on 31 Oct 2012
I'd say
temp = B-C;
temp'*temp
Matt J
Matt J on 31 Oct 2012
Edited: Matt J on 31 Oct 2012
You should think about whether the loop can be avoided altogether, since this sounds like a very vectorizable operation. If B and C are matrices and you want the dot product along columns, for example
temp=B-C;
result = sum(temp.^2,1);

Sign in to comment.

More Answers (1)

Matt J
Matt J on 31 Oct 2012
A=norm(B-C)^2;

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!