Find orthogonal vector to current vector in 3D

  • Thread starter lemd
  • Start date
  • #1
lemd
31
0
Hi,

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?
 

Answers and Replies

  • #2
Edgardo
705
15
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.

Example:
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.

Example:
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.
 
  • #3
lemd
31
0
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

Regards
 
  • #4
AlephZero
Science Advisor
Homework Helper
7,025
298
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.
 
Last edited:

Suggested for: Find orthogonal vector to current vector in 3D

  • Last Post
Replies
3
Views
512
  • Last Post
Replies
4
Views
349
  • Last Post
Replies
2
Views
785
  • Last Post
Replies
3
Views
998
Replies
1
Views
420
Replies
17
Views
847
  • Last Post
Replies
0
Views
348
Replies
8
Views
340
Replies
7
Views
582
Top