Using matlab to find vectors that are orthogonal to another vector.

246 views (last 30 days)
Is there a way that matlab can be used to find a general solution for vectors that are orthogonal to another vector. (eg, (1,1) )? Without using matlab, i can get the general solution which is x =-y, but i cant find a way to do this using matlab.

Accepted Answer

Jan
Jan on 7 Nov 2019
Edited: Jan on 7 Nov 2019
Do you mean 2D vectors?
v = rand(1, 2) % Any test vector
vp = [-v(2), v(1)]
dot(v, vp) % Orthogonal means: dot product is 0
So "x=-y" is a part of the solution. Add "y=x" and you get one of the two perpendicular vectors. -vp is the other one.
  2 Comments
David Goodmanson
David Goodmanson on 10 May 2023
Edited: David Goodmanson on 10 May 2023
Hi O^2,
n = 5;
v = rand(n,1)
% make sure that v is a row vector, just in case it was a column vector
v = v(:).'
% find a set of n-1 mutually orthogonal column vectors
% that are all perpendicular to v.
n = null(v)

Sign in to comment.

More Answers (0)

Categories

Find more on MATLAB Coder 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!