You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Introducción a Matlab y Octave, Release 0.1<br />
Importante: No existe una multiplicación de vectores, la operación anterior es operar los vectores elemento<br />
elemento, lo que corresponde más a una tabla que a lo que se esperaría de un vector. De hecho en Cálculo Numérico<br />
no hay ninguna diferencia entre un vector y una simple lista de números.<br />
Una operación importante cuando se habla de vectores es el producto escalar, que se define como.<br />
u · v = �<br />
uivi (3.1)<br />
En Maltab puede calcularse con la función dot.<br />
dot(u, v, dim)<br />
Calcula el producto escalar de dos vectores. El tercer argumento, dim es de utilidad en el caso que alguno<br />
de los dos argumentos o ambos sean matrices.<br />
>> dot(v,w)<br />
ans = 60<br />
Aunque sea mucho menos eficiente también podemos calcular ese producto escalar utilizando la definición de la<br />
operación y la función sum.<br />
sum(x, dim)<br />
Suma los elementos de un vector. dim es de utilidad cuando el argumento sea una matriz.<br />
>> sum(v.*w)<br />
ans = 60<br />
Advertencia: En muchos programas escritos en Matlab encontraremos el producto escalar escrito como<br />
>> u’*v<br />
Es una operación válida, aunque aún no sepamos qué operaciones son el apóstrofe y el asterisco sin punto<br />
respectivamente. El problema de no utilizar la función dot es que estamos utilizando una sintaxis ambigua,<br />
no sabemos si u y v son vectores, además de ser una opreación mucho más propensa a fallar sin dar excesiva<br />
información del porqué. Recordad que la belleza es importante.<br />
prod(x, dim)<br />
Calcula el producto de los elementos de un vector. dim es de utilidad cuando el argumento sea una matriz.<br />
Una técnica importante en Matlab es la concatenación de dos vectores que puede hacerse simplemente pegándolos<br />
>> a = [1,2,3];<br />
>> b = [4,5,6];<br />
>> [a,b]<br />
ans =<br />
1 2 3 4 5 6<br />
o utilizando la función cat.<br />
Ejercicio 5<br />
Cuando Gauss contaba siete años el profesor les puso un ejercicio para tenerlos entretenidos un rato. ¿Cuánto es la<br />
suma de todos los números enteros entre 1 y 100? Gauss llegó fácilmente al reultado en sólo unos pocos segundos<br />
porque vio que sumando pares de números 1+99, 2+98, 3+97... La operación podía reducirse a 50 × 99+100. Con<br />
Matlab se puede hacer la operación por fuerza bruta de muchas maneras pero... ¿Eres capaz de hacerlo con sólo<br />
una línea de código?<br />
Ejercicio 6<br />
3.4. Vectores 17<br />
i