Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Vector projection
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
{{Short description|Concept in linear algebra}} {{For|more general concepts|Projection (linear algebra)|Projection (mathematics)}} {{Lead too long|date=September 2024}} The '''vector projection''' (also known as the '''vector component''' or '''vector resolution''') of a [[Vector (geometry)|vector]] {{math|'''a'''}} on (or onto) a nonzero vector {{math|'''b'''}} is the [[orthogonal projection]] of {{math|'''a'''}} onto a [[straight line]] parallel to {{math|'''b'''}}. The projection of {{math|'''a'''}} onto {{math|'''b'''}} is often written as <math>\operatorname{proj}_\mathbf{b} \mathbf{a}</math> or {{math|'''a'''<sub>∥'''b'''</sub>}}. The vector component or vector resolute of {{math|'''a'''}} [[perpendicular]] to {{math|'''b'''}}, sometimes also called the '''vector rejection''' of {{math|'''a'''}} ''from'' {{math|'''b'''}} (denoted <math>\operatorname{oproj}_{\mathbf{b}} \mathbf{a}</math> or {{math|'''a'''<sub>⊥'''b'''</sub>}}),<ref>{{cite book |first=G. |last=Perwass |year=2009 |url=https://books.google.com/books?id=8IOypFqEkPMC&pg=PA83 |title=Geometric Algebra With Applications in Engineering |page=83 |publisher=Springer |isbn=9783540890676 }}</ref> is the orthogonal projection of {{math|'''a'''}} onto the [[plane (geometry)|plane]] (or, in general, [[hyperplane]]) that is [[orthogonal]] to {{math|'''b'''}}. Since both <math>\operatorname{proj}_{\mathbf{b}} \mathbf{a}</math> and <math>\operatorname{oproj}_{\mathbf{b}} \mathbf{a}</math> are vectors, and their sum is equal to {{math|'''a'''}}, the rejection of {{math|'''a'''}} from {{math|'''b'''}} is given by: <math display="block">\operatorname{oproj}_{\mathbf{b}} \mathbf{a} = \mathbf{a} - \operatorname{proj}_{\mathbf{b}} \mathbf{a}.</math> [[File:Projection and rejection.svg|thumb|488x488px|Projection of {{math|'''a'''}} on {{math|'''b'''}} ('''a'''<sub>1</sub>), and rejection of {{math|'''a'''}} from {{math|'''b'''}} ('''a'''<sub>2</sub>).|center]] [[File:Projection and rejection 2.svg|thumb|248px|When {{math|90° < ''θ'' ≤ 180°}}, {{math|'''a'''<sub>1</sub>}} has an opposite direction with respect to {{math|'''b'''}}.]] To simplify notation, this article defines <math>\mathbf{a}_1 := \operatorname{proj}_{\mathbf{b}} \mathbf{a}</math> and <math>\mathbf{a}_2 := \operatorname{oproj}_{\mathbf{b}} \mathbf{a}.</math> Thus, the vector <math>\mathbf{a}_1</math> is parallel to <math>\mathbf{b},</math> the vector <math>\mathbf{a}_2</math> is orthogonal to <math>\mathbf{b},</math> and <math>\mathbf{a} = \mathbf{a}_1 + \mathbf{a}_2.</math> The projection of {{math|'''a'''}} onto {{math|'''b'''}} can be decomposed into a direction and a scalar magnitude by writing it as <math>\mathbf{a}_1 = a_1\mathbf{\hat b}</math> where <math>a_1</math> is a scalar, called the ''[[scalar projection]]'' of {{math|'''a'''}} onto {{math|'''b'''}}, and {{math|'''b̂'''}} is the [[unit vector]] in the direction of {{math|'''b'''}}. The scalar projection is defined as<ref name=":1">{{Cite web|title=Scalar and Vector Projections| url=https://www.ck12.org/book/ck-12-college-precalculus/section/9.6/|access-date=2020-09-07|website=www.ck12.org}}</ref> <math display="block">a_1 = \left\|\mathbf{a}\right\|\cos\theta = \mathbf{a}\cdot\mathbf{\hat b}</math> where the operator '''⋅''' denotes a [[dot product]], ‖'''a'''‖ is the [[Euclidean norm|length]] of {{math|'''a'''}}, and ''θ'' is the [[angle]] between {{math|'''a'''}} and {{math|'''b'''}}. 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 vector|opposite]] to the direction of {{math|'''b'''}}, that is, if the angle between the vectors is more than 90 degrees. The vector projection can be calculated using the dot product of <math>\mathbf{a}</math> and <math>\mathbf{b}</math> as: <math display="block">\operatorname{proj}_{\mathbf{b}} \mathbf{a} = \left(\mathbf{a} \cdot \mathbf{\hat b}\right) \mathbf{\hat b} = \frac {\mathbf{a} \cdot \mathbf{b}} {\left\|\mathbf{b}\right\| } \frac {\mathbf{b}} {\left\|\mathbf{b}\right\|} = \frac {\mathbf{a} \cdot \mathbf{b}} {\left\|\mathbf{b}\right\|^2}{\mathbf{b}} = \frac {\mathbf{a} \cdot \mathbf{b}} {\mathbf{b} \cdot \mathbf{b}}{\mathbf{b}} ~ .</math> ==Notation== This article uses the convention that vectors are denoted in a bold font (e.g. {{math|'''a'''<sub>1</sub>}}), and scalars are written in normal font (e.g. ''a''<sub>1</sub>). The dot product of vectors {{math|'''a'''}} and {{math|'''b'''}} is written as <math>\mathbf{a}\cdot\mathbf{b}</math>, the norm of {{math|'''a'''}} is written ‖'''a'''‖, the angle between {{math|'''a'''}} and {{math|'''b'''}} is denoted ''θ''. ==Definitions based on angle ''alpha''== ===Scalar projection=== {{Main|Scalar projection}} The scalar projection of {{math|'''a'''}} on {{math|'''b'''}} is a scalar equal to <math display="block"> a_1 = \left\|\mathbf{a}\right\| \cos \theta , </math> where ''θ'' is the angle between {{math|'''a'''}} and {{math|'''b'''}}. A scalar projection can be used as a [[scale factor]] to compute the corresponding vector projection. ===Vector projection=== The vector projection of {{math|'''a'''}} on {{math|'''b'''}} is a vector whose magnitude is the scalar projection of {{math|'''a'''}} on {{math|'''b'''}} with the same direction as {{math|'''b'''}}. Namely, it is defined as <math display="block">\mathbf{a}_1 = a_1 \mathbf{\hat b} = (\left\|\mathbf{a}\right\| \cos \theta) \mathbf{\hat b}</math> where <math>a_1</math> is the corresponding scalar projection, as defined above, and <math>\mathbf{\hat b}</math> is the [[unit vector]] with the same direction as {{math|'''b'''}}: <math display="block">\mathbf{\hat b} = \frac {\mathbf{b}} {\left\|\mathbf{b}\right\|}</math> ===Vector rejection=== By definition, the vector rejection of {{math|'''a'''}} on {{math|'''b'''}} is: <math display="block">\mathbf{a}_2 = \mathbf{a} - \mathbf{a}_1</math> Hence, <math display="block">\mathbf{a}_2 = \mathbf{a} - \left(\left\|\mathbf{a}\right\| \cos \theta\right) \mathbf{\hat b}</math> ==Definitions in terms of a and b == When {{mvar|θ}} is not known, the cosine of {{mvar|θ}} can be computed in terms of {{math|'''a'''}} and {{math|'''b'''}}, by the following property of the [[dot product]] {{math|'''a''' ⋅ '''b'''}} <math display="block"> \mathbf{a} \cdot \mathbf{b} = \left\|\mathbf{a}\right\| \left\|\mathbf{b}\right\| \cos \theta</math> ===Scalar projection=== By the above-mentioned property of the dot product, the definition of the scalar projection becomes:<ref name=":1" /> In two dimensions, this becomes <math display="block">a_1 = \frac {\mathbf{a}_x \mathbf{b}_x + \mathbf{a}_y \mathbf{b}_y} {\left\|\mathbf{b}\right\|}.</math> ===Vector projection=== Similarly, the definition of the vector projection of {{math|'''a'''}} onto {{math|'''b'''}} becomes:<ref name=":1" /> <math display="block">\mathbf{a}_1 = a_1 \mathbf{\hat b} = \frac {\mathbf{a} \cdot \mathbf{b}} {\left\|\mathbf{b}\right\| } \frac {\mathbf{b}} {\left\|\mathbf{b}\right\|},</math> which is equivalent to either <math display="block">\mathbf{a}_1 = \left(\mathbf{a} \cdot \mathbf{\hat b}\right) \mathbf{\hat b},</math> or<ref>{{cite web|url=http://www.math.oregonstate.edu/home/programs/undergrad/CalculusQuestStudyGuides/vcalc/dotprod/dotprod.html | title=Dot Products and Projections}} {{Dead link|date=January 2025}} </ref> <math display="block">\mathbf{a}_1 = \frac {\mathbf{a} \cdot \mathbf{b}} {\left\|\mathbf{b}\right\|^2}{\mathbf{b}} = \frac {\mathbf{a} \cdot \mathbf{b}} {\mathbf{b} \cdot \mathbf{b}}{\mathbf{b}} ~ .</math> ===Scalar rejection=== In two dimensions, the scalar rejection is equivalent to the projection of {{math|'''a'''}} onto <math>\mathbf{b}^\perp = \begin{pmatrix}-\mathbf{b}_y & \mathbf{b}_x\end{pmatrix}</math>, which is <math>\mathbf{b} = \begin{pmatrix}\mathbf{b}_x & \mathbf{b}_y\end{pmatrix}</math> rotated 90° to the left. Hence, <math display="block">a_2 = \left\|\mathbf{a}\right\| \sin \theta = \frac {\mathbf{a} \cdot \mathbf{b}^\perp} {\left\|\mathbf{b}\right\|} = \frac {\mathbf{a}_y \mathbf{b}_x - \mathbf{a}_x \mathbf{b}_y} {\left\|\mathbf{b}\right\| }.</math> Such a dot product is called the "perp dot product." ===Vector rejection=== By definition, <math display="block">\mathbf{a}_2 = \mathbf{a} - \mathbf{a}_1 </math> Hence, <math display="block">\mathbf{a}_2 = \mathbf{a} - \frac {\mathbf{a} \cdot \mathbf{b}} {\mathbf{b} \cdot \mathbf{b}}{\mathbf{b}}.</math> By using the Scalar rejection using the perp dot product this gives <math display="block">\mathbf{a}_2 = \frac{\mathbf{a}\cdot\mathbf{b}^\perp}{\mathbf{b}\cdot\mathbf{b}}\mathbf{b}^\perp</math> ==Properties== [[Image:Dot Product.svg|thumb|917x917px|If 0° ≤ ''θ'' ≤ 90°, as in this case, the [[scalar projection]] of {{math|'''a'''}} on {{math|'''b'''}} coincides with the [[Euclidean norm|length]] of the vector projection.|center]] ===Scalar projection=== {{Main|Scalar projection}} The scalar projection {{math|'''a'''}} on {{math|'''b'''}} is a scalar which has a negative sign if [[right angle|90 degrees]] < ''θ'' ≤ [[straight angle|180 degrees]]. It coincides with the [[Euclidean norm|length]] {{math|‖'''c'''‖}} of the vector projection if the angle is smaller than 90°. More exactly: * {{math|1=''a''<sub>1</sub> = ‖'''a'''<sub>1</sub>‖}} if {{math|0° ≤ ''θ'' ≤ 90°}}, * {{math|1=''a''<sub>1</sub> = −‖'''a'''<sub>1</sub>‖}} if {{math|90° < ''θ'' ≤ 180°}}. ===Vector projection=== The vector projection of {{math|'''a'''}} on {{math|'''b'''}} is a vector {{math|'''a'''<sub>1</sub>}} which is either null or parallel to {{math|'''b'''}}. More exactly: * {{math|1='''a'''<sub>1</sub> = '''0'''}} if {{math|1=''θ'' = 90°}}, * {{math|'''a'''<sub>1</sub>}} and {{math|'''b'''}} have the same direction if {{math|0° ≤ ''θ'' < 90°}}, * {{math|'''a'''<sub>1</sub>}} and {{math|'''b'''}} have opposite directions if {{math|90° < ''θ'' ≤ 180°}}. ===Vector rejection=== The vector rejection of {{math|'''a'''}} on {{math|'''b'''}} is a vector {{math|'''a'''<sub>2</sub>}} which is either null or orthogonal to {{math|'''b'''}}. More exactly: * {{math|1='''a'''<sub>2</sub> = '''0'''}} if {{math|1=''θ'' = 0°}} or {{math|1=''θ'' = 180°}}, * {{math|1='''a'''<sub>2</sub>}} is orthogonal to {{math|'''b'''}} if {{math|1=0 < ''θ'' < 180°}}, ==Matrix representation== The orthogonal projection can be represented by a [[Projection (linear algebra)|projection matrix]]. To project a vector onto the unit vector {{math|1='''a''' = (''a<sub>x</sub>, a<sub>y</sub>, a<sub>z</sub>'')}}, it would need to be multiplied with this projection matrix: ==Uses== The vector projection is an important operation in the [[Gram–Schmidt process|Gram–Schmidt]] [[orthonormality|orthonormalization]] of [[vector space]] [[Basis (linear algebra)|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 (geometry)|plane]], and rejection of a vector from a plane.<ref> M.J. Baker, 2012. [http://www.euclideanspace.com/maths/geometry/elements/plane/lineOnPlane/index.htm Projection of a vector onto a plane.] Published on www.euclideanspace.com.</ref> 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 [[geometric algebra#Projection and rejection|projection and rejection]] of a general multivector onto/from any invertible ''k''-blade. ==See also== *[[Scalar projection]] *[[Vector notation]] ==References== {{reflist}} ==External links== * [http://www.euclideanspace.com/maths/geometry/elements/plane/lineOnPlane/index.htm Projection of a vector onto a plane] {{Linear algebra}} [[Category:Operations on vectors|projection]] [[Category:Transformation (function)]] [[Category:Functions and mappings]]
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)
Pages transcluded onto the current version of this page
(
help
)
:
Template:Cite book
(
edit
)
Template:Cite web
(
edit
)
Template:Dead link
(
edit
)
Template:For
(
edit
)
Template:Lead too long
(
edit
)
Template:Linear algebra
(
edit
)
Template:Main
(
edit
)
Template:Math
(
edit
)
Template:Mvar
(
edit
)
Template:Navbox
(
edit
)
Template:Reflist
(
edit
)
Template:Short description
(
edit
)