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

239 vues (au cours des 30 derniers jours)
Lee Ming De
Lee Ming De le 7 Nov 2019
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.

Réponse acceptée

Jan
Jan le 7 Nov 2019
Modifié(e) : Jan le 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 commentaires
Oghenetega Oguns
Oghenetega Oguns le 9 Mai 2023
What about when the vector is 3D?
Thanks
David Goodmanson
David Goodmanson le 10 Mai 2023
Modifié(e) : David Goodmanson le 10 Mai 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)

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur MATLAB Coder dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by