Find orthogonal vector to current vector in 3D

by lemd
Tags: current, orthogonal, vector
lemd is offline
Dec17-12, 08:55 AM
P: 23

In 2D I know a simple answer: vector (a,b) is orthogonal to vector (-b,a)

Is there anyway similar to that to find an orthogonal vector in 3D?
Phys.Org News Partner Mathematics news on
Researchers help Boston Marathon organizers plan for 2014 race
'Math detective' analyzes odds for suspicious lottery wins
Pseudo-mathematics and financial charlatanism
Edgardo is offline
Dec17-12, 10:36 AM
P: 685
You can use the dot product. For example, if you have a vector v and want to find vector c that is orthogonal to v, then use the dot product <v,c> and set it equal to 0.

v = (4,2,3)
c = (x,y,z) = ?

(i) Set the dot product to zero:
<v,c> = 4x + 2y + 3z = 0

(ii) Choose some values for x and y, e.g. x=0 and y=-3

(iii) Solve the equation in (i) for z:
z = 1/3*(-4x-2y) = 1/3*(0+6) = 2

Result: c = (0,-3,2)


Another possibility is to use the cross product.
If vector v is given, choose some vector p (not parallel to v) and form the vector c = v x p.

v = (4,2,3)

(i) Choose an arbitrary vector p (not parallel to v):
p = (0,0,1)

(ii) Form the vector c = v x p (cross product):
c = (4,2,3) x (0,0,1) = (2,-4,0)


Note that there are infinitely many vectors that are orthogonal to a given vector.
lemd is offline
Dec17-12, 04:13 PM
P: 23
Many thanks

I knew dot and cross product, but because I write code so I need the simplest way to boost performance. As in 2D case I don't need to calculate anything, just use the trick. Also that it works for normalized vectors which doesn't need square root, a slow operation. I hope there are some tricks like that in 3D


AlephZero is offline
Dec17-12, 04:45 PM
Sci Advisor
HW Helper
P: 6,342

Find orthogonal vector to current vector in 3D

There isn't a unique vector orthogonal to a given vector in 3D. If the vector doesn't need to have any other properties, the same "trick" works. A vector orthogonal to (a, b, c) is (-b, a, 0), or (-c, 0, a) or (0, -c, b).

But if you want a unit orthogonal vector, you will have to use something like a square root.

Register to reply

Related Discussions
Use cross-product to find vector in R^4 that is orthogonal Precalculus Mathematics Homework 9
how to find a vector orthogonal to a line Precalculus Mathematics Homework 6
How to find vector coordinates in non-orthogonal systems? Linear & Abstract Algebra 13
Linear Algebra - Find unit vector orthogonal to 2, 4-space vectors? Calculus & Beyond Homework 32
Find a unit vector with a positive first coordinate orthogonal to both 'a' and 'b' Calculus 3