zoukankan      html  css  js  c++  java
  • Dot Product

    These are vectors:

    vectors

    They can be multiplied using the "Dot Product" (also see Cross Product).

    Calculating

    You can calculate the Dot Product of two vectors this way:

    ot-product-1

    a · b = |a| × |b| × cos(θ)

    Where:
    |a| is the magnitude (length) of vector a
    |b| is the magnitude (length) of vector b
    θ is the angle between a and b

    So we multiply the length of a times the length of b, then multiply by the cosine of the angle between a and b

    OR you can calculate it this way:

    ot-product-2

    a · b = ax × bx + ay × by

    So we multiply the x's, multiply the y's, then add.

    Both methods work!

    Example: Calculate the dot product of vectors a and b:

    -product-ex1

    a · b = |a| × |b| × cos(θ)

    a · b = 10 × 13 × cos(59.5°)

    a · b = 10 × 13 × 0.5075...

    a · b = 65.98... = 66 (rounded)

    a · b = ax × bx + ay × by

    a · b = -6 × 5 + 8 × 12

    a · b = -30 + 96

    a · b = 66

    Both methods came up with the same result (after rounding)

    Also note that we used minus 6 for ax (it is heading in the negative x-direction)

    Note: you can use the Vector Calculator to help you.

    Why cos(θ) ?

    OK, to multiply two vectors it makes sense to multiply their lengths together but only when they point in the same direction.

    So we make one "point in the same direction" as the other by multiplying by cos(θ):

    roduct-a-cos

    roduct-light

    We take the component of a
    that lies alongside b

    Like shining a light to see
    where the shadow lies

    THEN we multiply !

    It works exactly the same if we "projected" b alongside a then multiplied:

    Because it doesn't matter which order we do the multiplication:

    |a| × |b| × cos(θ) = |a| × cos(θ) × |b|

    1447261004080999

    Right Angles

    When two vectors are at right angles to each other the dot product is zero.

    Example: calculate the Dot Product for:

    -right-angle

    a · b = |a| × |b| × cos(θ)

    a · b = | a| × | b| × cos(90°)

    a · b = | a| × | b| × 0

    a · b = 0

    a · b = ax × bx + ay × by

    a · b = -12 × 12 + 16 × 9

    a · b = -144 + 144

    a · b = 0

    This can be a handy way to find out if two vectors are at right angles.

    Three or More Dimensions

    This all works fine in 3 (or more) dimensions, too.

    And can actually be very useful!

    Example: Sam has measured the end-points of two poles, and wants to know the angle between them:

    -product-ex2

    We have 3 dimensions, so don't forget the z-components:

    a · b = ax × bx + ay × by + az × bz

    a · b = 9 × 4 + 2 × 8 + 7 × 10

    a · b = 36 + 16 + 70

    a · b = 122

    Now for the other formula:

    a · b = |a| × |b| × cos(θ)

    But what is |a| ? It is the magnitude, or length, of the vector a. We can use Pythagoras:

    • |a| = √(42 + 82 + 102)
    • |a| = √(16 + 64 + 100)
    • |a| = √180

    Likewise for |b|:

    • |b| = √(92 + 22 + 72)
    • |b| = √(81 + 4 + 49)
    • |b| = √134

    And we know from the calculation above that a · b = 122, so:

    a · b = |a| × |b| × cos(θ)

    122 = √180 × √134 × cos(θ)

    cos(θ) = 122 / (√180 × √134)

    cos(θ) = 0.7855...

    θ = cos -1(0.7855...) = 38.2...°

    Done!

    I tried a calculation like that once, but worked all in angles and distances ... it was very hard, involved lots of trigonometry, and my brain hurt. The method above is much easier.

    Cross Product

    The Dot Product gives a scalar (ordinary number) answer, and is sometimes called the scalar product.

    But there is also the Cross Product which gives a vector as an answer, and is sometimes called the vector product.

  • 相关阅读:
    Netty学习路线总结
    Intellij IDEA 快捷键整理-鬼畜版(全键盘开发指南)
    httpClient
    [翻译]Javaslang 介绍
    Docker学习<一>--初体验Windows环境下安装
    Spring @RequestParam @RequestBody @PathVariable 等参数绑定注解详解
    IntelliJ IDEA 2016.2激活方法
    解决mac升级后,出现的 xcrun: error: invalid active developer path, missing xcrun 错误
    Logstash 安装与配置
    【JVM学习笔记】双亲委托机制存在的意义
  • 原文地址:https://www.cnblogs.com/McKean/p/6087669.html
Copyright © 2011-2022 走看看