Main Content

dot

Descripción

ejemplo

C = dot(A,B) devuelve el producto punto escalar de A y B.

  • Si A y B son vectores, deben tener la misma longitud.

  • Si A y B son matrices o arreglos multidimensionales, deben tener el mismo tamaño. En este caso, la función dot trata A y B como recopilaciones de vectores. La función calcula el producto punto de los vectores correspondientes en la primera dimensión del arreglo cuyo tamaño no sea igual a 1.

ejemplo

C = dot(A,B,dim) evalúa el producto punto de A y B en la dimensión, dim. La entrada dim es un escalar entero positivo.

Ejemplos

contraer todo

Cree dos vectores simples de tres elementos.

A = [4 -1 2];
B = [2 -2 -1];

Calcule el producto punto de A y B.

C = dot(A,B)
C = 8

El resultado es 8 dado que

C = A(1)*B(1) + A(2)*B(2) + A(3)*B(3)

Cree dos vectores complejos.

A = [1+i 1-i -1+i -1-i];
B = [3-4i 6-2i 1+2i 4+3i];

Calcule el producto punto de A y B.

C = dot(A,B)
C = 1.0000 - 5.0000i

El resultado es un escalar complejo, dado que A y B son complejos. En general, el producto punto de dos vectores complejos también es complejo. Se produce una excepción al tomar el producto punto de un vector complejo consigo mismo.

Encuentre el producto interno de A consigo mismo.

D = dot(A,A)
D = 8

El resultado es un escalar real. El producto interno de un vector consigo mismo está relacionado con la longitud euclidiana del vector, norm(A).

Cree dos matrices.

A = [1 2 3;4 5 6;7 8 9];
B = [9 8 7;6 5 4;3 2 1];

Encuentre el producto punto de A y B.

C = dot(A,B)
C = 1×3

    54    57    54

El resultado, C, contiene tres productos punto separados. dot trata las columnas de A y B como vectores y calcula el producto punto de las columnas correspondientes. Así, por ejemplo, C(1) = 54 es el producto punto de A(:,1) con B(:,1).

Encuentre el producto punto de A y B, y trate las filas como vectores.

D = dot(A,B,2)
D = 3×1

    46
    73
    46

En este caso, D(1) = 46 es el producto punto de A(1,:) con B(1,:).

Cree dos arreglos multidimensionales.

A = cat(3,[1 1;1 1],[2 3;4 5],[6 7;8 9])
A = 
A(:,:,1) =

     1     1
     1     1


A(:,:,2) =

     2     3
     4     5


A(:,:,3) =

     6     7
     8     9

B = cat(3,[2 2;2 2],[10 11;12 13],[14 15; 16 17])
B = 
B(:,:,1) =

     2     2
     2     2


B(:,:,2) =

    10    11
    12    13


B(:,:,3) =

    14    15
    16    17

Calcule el producto punto de A y B en la tercera dimensión (dim = 3).

C = dot(A,B,3)
C = 2×2

   106   140
   178   220

El resultado, C, contiene cuatro productos punto separados. El primer producto punto, C(1,1) = 106, es igual al producto punto de A(1,1,:) con B(1,1,:).

Argumentos de entrada

contraer todo

Arreglos de entrada, especificados como arreglos numéricos.

Tipos de datos: single | double
Soporte de números complejos:

Dimensión en la que operar, especificada como escalar entero positivo. Si no se especifica ningún valor, el valor predeterminado es la primera dimensión del arreglo cuyo tamaño no es igual a 1.

Considere dos arreglos de entrada 2D, A y B:

  • dot(A,B,1) trata las columnas de A y B como vectores y devuelve los productos punto de las columnas correspondientes.

  • dot(A,B,2) trata las filas de A y B como vectores y devuelve los productos punto de las filas correspondientes.

dot(A,B,1) column-wise computation and dot(A,B,2) row-wise computation

dot devuelve conj(A).*B si dim es mayor que ndims(A).

Más acerca de

contraer todo

Producto punto escalar

El producto punto escalar de dos vectores reales de longitud n es igual a

u·v=i=1nuivi=u1v1+u2v2+...+unvn.

Esta relación es conmutativa para vectores reales, de forma que dot(u,v) es igual a dot(v,u). Si el producto punto es igual a cero, u y v son perpendiculares.

En los vectores complejos, el producto punto implica un conjugado complejo. Esto asegura que el producto interno de cualquier vector consigo mismo es un producto real y definido positivo.

u·v=i=1nu¯ivi.

A diferencia de la relación para vectores reales, la relación compleja no es conmutativa, por lo que dot(u,v) es igual a conj(dot(v,u)).

Algoritmos

  • Cuando las entradas A y B son vectores reales o complejos, la función dot las trata como vectores columna, y dot(A,B) es lo mismo que sum(conj(A).*B).

  • Cuando las entradas son matrices o arreglos multidimensionales, el argumento dim determina en qué dimensión opera la función sum. En este caso, dot(A,B) es lo mismo que sum(conj(A).*B,dim).

Capacidades ampliadas

Historial de versiones

Introducido antes de R2006a

Consulte también

| | | |