pRODUCTO Sea;

VECTORIAL

Y

MATRICIAL

y entonces el producto de (producto escalar), esta dado por:

dos n-vectores;

Debido a la notación empleada , el producto escalar de dos vectores a menudo recibe el nombre de producto punto o producto interno de los vectores. Se puede advertir fácilmente que el producto escalar de dos n-vectores es un escalar. A fin de que se puede hacer el cálculo del producto escalar de A y B es necesario que A y B tengan el mismo número de componentes. El producto escalar entre vectores cumple con lo siguiente: Sean a, b y c n-vectores y 1.2.3.4.PRODUCTO ENTRE DOS MATRICES: Suponga que B y C son matrices. Si el número de columnas de A y el número de filas de B son idénticas, las matrices pueden multiplicarse como: (Ley conmutativa del producto escalar) (Ley distributiva del producto escalar) un escalar. Entonces:

Donde es una matriz que representa el resultado de la multiplicación. Los elementos de C están relacionados con los de A y B por:

si A y B son matrices cuadradas del mismo tamaño. C también será también una matriz cuadrada del mismo tamaño. el elemento ij-ésimo de AB es igual al producto punto del i-ésimo renglón de A y la j-ésima columna de B. y el número de columnas de C es igual as de B. Lo anterior es suficiente para deducir que el producto de AB no es igual a BA. entonces C es una matriz de p x r.Dicho de otra forma. En otras palabras. Sea: Encontrar C = AB . Ejemplo de productos entre matrices. si A es una matriz de p x q y B una matriz de q x r . Obviamente. Puede darse el caso especial donde AB = BA. Es decir: El número de filas de C es igual al de A. a lo cual se dice que las matrices son conmutativas.

x[i][j]+=a. guardando en los elementos de la la matriz local resultado la suma de los productos de la fórmula anterior. Matriz b){ Matriz resultado=new Matriz(a.n. for(int i=0.n). j++){ for(int k=0. public static Matriz producto(Matriz a. dando como resultado una matriz de dimensiones m x q. j<a.x[i][k]*b. i++){ for(int j=0. } . y sumando los resultados. En este apartado nos circunscribiremos exclusivamente a matrices cuadradas de dimensión n. k<a. En general. i<a.n. Los elementos cij se obtienen multiplicando los elementos aik de la fila i por los elementos akj de la columna j.x[k][j]. k++){ resultado. se pueden multiplicar dos matrices de dimensiones m x n y n x q. La codificación se realiza empleando un tripe bucle for.n.Obtenemos así que: Producto de dos matrices La regla para multiplicar dos matrices es bastante más complicada que para sumar dos matrices de las mismas dimensiones.

} } return resultado. Matriz a){ int n=v. Matriz a){ Matriz resultado=new Matriz(a. } } return b. public static Vector producto(Vector v.n). for(int j=0. Vector v){ int n=v.x[i][j]=a.n.n. k++){ b. Cada elemento del vector resultante se obtiene multiplicando los elementos de una fila de la matriz por los correspondientes elementos del vector columna y se suman los resultados. k<n. j++){ resultado. i<n. i<a. El código es semejante al de la función producto definida previamente. La codificación de esta función producto es la siguiente: public static Vector producto(Matriz a. i++){ for(int j=0.x[i][j]*d.x[k]. } Al multiplicar un vector fila por una matriz cuadrada de la misma dimensión obtenemos otro vector fila. Vector b=new Vector(n). } . for(int i=0. j++){ for(int k=0. j<n.n.n. j<a.x[i]+=a. Vector b=new Vector(n). i++){ for(int k=0. } Otras variantes de la operación producto son: El producto de un escalar (número real) por una matriz que da como resultado otra matriz cuyos elementos están todos multiplicados por dicho escalar.} } return resultado. } Al multiplicar una matriz cuadrada de dimensión n. for(int i=0. k<n. Se define también la operación conmutativa public static Matriz producto(double d.x[j]+=v.x[i][k]*v.x[k][j]. } } return b. por un vector columna de la misma dimensión obtenemos otro vector columna.x[k]*a. k++){ b.

i<n. j++){ texto+="\t "+(double)Math. i++){ for(int j=0. j<n. } texto+="\n". //dimensión private double[][] x.Mostrar matriz **************************** public class Matriz{ public int n. } texto+="\n". public String toString(){ String texto="\n".round(1000*x[i][j])/1000. } . //.. for(int i=0. return texto..

Sign up to vote on this title
UsefulNot useful