Vector projection

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search

Template:Short description Script error: No such module "For". Script error: No such module "Unsubst". The vector projection (also known as the vector component or vector resolution) of a vector aScript error: No such module "Check for unknown parameters". on (or onto) a nonzero vector bScript error: No such module "Check for unknown parameters". is the orthogonal projection of aScript error: No such module "Check for unknown parameters". onto a straight line parallel to bScript error: No such module "Check for unknown parameters".. The projection of aScript error: No such module "Check for unknown parameters". onto bScript error: No such module "Check for unknown parameters". is often written as proj𝐛𝐚 or abScript error: No such module "Check for unknown parameters"..

The vector component or vector resolute of aScript error: No such module "Check for unknown parameters". perpendicular to bScript error: No such module "Check for unknown parameters"., sometimes also called the vector rejection of aScript error: No such module "Check for unknown parameters". from bScript error: No such module "Check for unknown parameters". (denoted oproj𝐛𝐚 or abScript error: No such module "Check for unknown parameters".),[1] is the orthogonal projection of aScript error: No such module "Check for unknown parameters". onto the plane (or, in general, hyperplane) that is orthogonal to bScript error: No such module "Check for unknown parameters".. Since both proj𝐛𝐚 and oproj𝐛𝐚 are vectors, and their sum is equal to aScript error: No such module "Check for unknown parameters"., the rejection of aScript error: No such module "Check for unknown parameters". from bScript error: No such module "Check for unknown parameters". is given by: oproj𝐛𝐚=𝐚proj𝐛𝐚.

File:Projection and rejection.svg
Projection of aScript error: No such module "Check for unknown parameters". on bScript error: No such module "Check for unknown parameters". (a1), and rejection of aScript error: No such module "Check for unknown parameters". from bScript error: No such module "Check for unknown parameters". (a2)
File:Projection and rejection 2.svg
When 90° < θ ≤ 180°Script error: No such module "Check for unknown parameters"., a1Script error: No such module "Check for unknown parameters". has an opposite direction with respect to bScript error: No such module "Check for unknown parameters"..

To simplify notation, this article defines 𝐚1:=proj𝐛𝐚 and 𝐚2:=oproj𝐛𝐚. Thus, the vector 𝐚1 is parallel to 𝐛, the vector 𝐚2 is orthogonal to 𝐛, and 𝐚=𝐚1+𝐚2.

The projection of aScript error: No such module "Check for unknown parameters". onto bScript error: No such module "Check for unknown parameters". can be decomposed into a direction and a scalar magnitude by writing it as 𝐚1=a1b^ where a1 is a scalar, called the scalar projection of aScript error: No such module "Check for unknown parameters". onto bScript error: No such module "Check for unknown parameters"., and Script error: No such module "Check for unknown parameters". is the unit vector in the direction of bScript error: No such module "Check for unknown parameters".. The scalar projection is defined as[2] a1=𝐚cosθ=𝐚b^ where the operator denotes a dot product, ‖a‖ is the length of aScript error: No such module "Check for unknown parameters"., and θ is the angle between aScript error: No such module "Check for unknown parameters". and bScript error: No such module "Check for unknown parameters".. The scalar projection is equal in absolute value to the length of the vector projection, with a minus sign if the direction of the projection is opposite to the direction of bScript error: No such module "Check for unknown parameters"., that is, if the angle between the vectors is more than 90 degrees.

The vector projection can be calculated using the dot product of 𝐚 and 𝐛 as: proj𝐛𝐚=(𝐚b^)b^=𝐚𝐛𝐛𝐛𝐛=𝐚𝐛𝐛2𝐛=𝐚𝐛𝐛𝐛𝐛.

Notation

This article uses the convention that vectors are denoted in a bold font (e.g. a1Script error: No such module "Check for unknown parameters".), and scalars are written in normal font (e.g. a1).

The dot product of vectors aScript error: No such module "Check for unknown parameters". and bScript error: No such module "Check for unknown parameters". is written as 𝐚𝐛, the norm of aScript error: No such module "Check for unknown parameters". is written ‖a‖, the angle between aScript error: No such module "Check for unknown parameters". and bScript error: No such module "Check for unknown parameters". is denoted θ.

Definitions based on angle alpha

Scalar projection

Script error: No such module "Labelled list hatnote". The scalar projection of aScript error: No such module "Check for unknown parameters". on bScript error: No such module "Check for unknown parameters". is a scalar equal to a1=𝐚cosθ, where θ is the angle between aScript error: No such module "Check for unknown parameters". and bScript error: No such module "Check for unknown parameters"..

A scalar projection can be used as a scale factor to compute the corresponding vector projection.

Vector projection

The vector projection of aScript error: No such module "Check for unknown parameters". on bScript error: No such module "Check for unknown parameters". is a vector whose magnitude is the scalar projection of aScript error: No such module "Check for unknown parameters". on bScript error: No such module "Check for unknown parameters". with the same direction as bScript error: No such module "Check for unknown parameters".. Namely, it is defined as 𝐚1=a1b^=(𝐚cosθ)b^ where a1 is the corresponding scalar projection, as defined above, and b^ is the unit vector with the same direction as bScript error: No such module "Check for unknown parameters".: b^=𝐛𝐛

Vector rejection

By definition, the vector rejection of aScript error: No such module "Check for unknown parameters". on bScript error: No such module "Check for unknown parameters". is: 𝐚2=𝐚𝐚1

Hence, 𝐚2=𝐚(𝐚cosθ)b^

Definitions in terms of a and b

When Template:Mvar is not known, the cosine of Template:Mvar can be computed in terms of aScript error: No such module "Check for unknown parameters". and bScript error: No such module "Check for unknown parameters"., by the following property of the dot product abScript error: No such module "Check for unknown parameters". 𝐚𝐛=𝐚𝐛cosθ

Scalar projection

By the above-mentioned property of the dot product, the definition of the scalar projection becomes:[2] a1=𝐚cosθ=𝐚𝐛𝐛.

In two dimensions, this becomes a1=𝐚x𝐛x+𝐚y𝐛y𝐛.

Vector projection

Similarly, the definition of the vector projection of aScript error: No such module "Check for unknown parameters". onto bScript error: No such module "Check for unknown parameters". becomes:[2] 𝐚1=a1b^=𝐚𝐛𝐛𝐛𝐛, which is equivalent to either 𝐚1=(𝐚b^)b^, or[3] 𝐚1=𝐚𝐛𝐛2𝐛=𝐚𝐛𝐛𝐛𝐛.

Scalar rejection

In two dimensions, the scalar rejection is equivalent to the projection of aScript error: No such module "Check for unknown parameters". onto 𝐛=(𝐛y𝐛x), which is 𝐛=(𝐛x𝐛y) rotated 90° to the left. Hence, a2=𝐚sinθ=𝐚𝐛𝐛=𝐚y𝐛x𝐚x𝐛y𝐛.

Such a dot product is called the "perp dot product."

Vector rejection

By definition, 𝐚2=𝐚𝐚1

Hence, 𝐚2=𝐚𝐚𝐛𝐛𝐛𝐛.

By using the Scalar rejection using the perp dot product this gives

𝐚2=𝐚𝐛𝐛𝐛𝐛

Properties

File:Dot Product.svg
If 0° ≤ θ ≤ 90°, as in this case, the scalar projection of aScript error: No such module "Check for unknown parameters". on bScript error: No such module "Check for unknown parameters". coincides with the length of the vector projection.

Scalar projection

Script error: No such module "Labelled list hatnote". The scalar projection aScript error: No such module "Check for unknown parameters". on bScript error: No such module "Check for unknown parameters". is a scalar which has a negative sign if 90 degrees < θ180 degrees. It coincides with the length cScript error: No such module "Check for unknown parameters". of the vector projection if the angle is smaller than 90°. More exactly:

  • a1 = ‖a1Script error: No such module "Check for unknown parameters". if 0° ≤ θ ≤ 90°Script error: No such module "Check for unknown parameters".,
  • a1 = −‖a1Script error: No such module "Check for unknown parameters". if 90° < θ ≤ 180°Script error: No such module "Check for unknown parameters"..

Vector projection

The vector projection of aScript error: No such module "Check for unknown parameters". on bScript error: No such module "Check for unknown parameters". is a vector a1Script error: No such module "Check for unknown parameters". which is either null or parallel to bScript error: No such module "Check for unknown parameters".. More exactly:

  • a1 = 0Script error: No such module "Check for unknown parameters". if θ = 90°Script error: No such module "Check for unknown parameters".,
  • a1Script error: No such module "Check for unknown parameters". and bScript error: No such module "Check for unknown parameters". have the same direction if 0° ≤ θ < 90°Script error: No such module "Check for unknown parameters".,
  • a1Script error: No such module "Check for unknown parameters". and bScript error: No such module "Check for unknown parameters". have opposite directions if 90° < θ ≤ 180°Script error: No such module "Check for unknown parameters"..

Vector rejection

The vector rejection of aScript error: No such module "Check for unknown parameters". on bScript error: No such module "Check for unknown parameters". is a vector a2Script error: No such module "Check for unknown parameters". which is either null or orthogonal to bScript error: No such module "Check for unknown parameters".. More exactly:

  • a2 = 0Script error: No such module "Check for unknown parameters". if θ = 0°Script error: No such module "Check for unknown parameters". or θ = 180°Script error: No such module "Check for unknown parameters".,
  • a2Script error: No such module "Check for unknown parameters". is orthogonal to bScript error: No such module "Check for unknown parameters". if 0 < θ < 180°Script error: No such module "Check for unknown parameters".,

Matrix representation

The orthogonal projection can be represented by a projection matrix. To project a vector onto the unit vector a = (ax, ay, az)Script error: No such module "Check for unknown parameters"., it would need to be multiplied with this projection matrix:

Uses

The vector projection is an important operation in the Gram–Schmidt orthonormalization of vector space bases. It is also used in the separating axis theorem to detect whether two convex shapes intersect.

Generalizations

Since the notions of vector length and angle between vectors can be generalized to any n-dimensional inner product space, this is also true for the notions of orthogonal projection of a vector, projection of a vector onto another, and rejection of a vector from another.

Vector projection on a plane

In some cases, the inner product coincides with the dot product. Whenever they don't coincide, the inner product is used instead of the dot product in the formal definitions of projection and rejection. For a three-dimensional inner product space, the notions of projection of a vector onto another and rejection of a vector from another can be generalized to the notions of projection of a vector onto a plane, and rejection of a vector from a plane.[4] The projection of a vector on a plane is its orthogonal projection on that plane. The rejection of a vector from a plane is its orthogonal projection on a straight line which is orthogonal to that plane. Both are vectors. The first is parallel to the plane, the second is orthogonal.

For a given vector and plane, the sum of projection and rejection is equal to the original vector. Similarly, for inner product spaces with more than three dimensions, the notions of projection onto a vector and rejection from a vector can be generalized to the notions of projection onto a hyperplane, and rejection from a hyperplane. In geometric algebra, they can be further generalized to the notions of projection and rejection of a general multivector onto/from any invertible k-blade.

See also

References

<templatestyles src="Reflist/styles.css" />

  1. Script error: No such module "citation/CS1".
  2. a b c Script error: No such module "citation/CS1".
  3. Script error: No such module "citation/CS1".
  4. M.J. Baker, 2012. Projection of a vector onto a plane. Published on www.euclideanspace.com.

Script error: No such module "Check for unknown parameters".

External links

Script error: No such module "Navbox".