23.08.2018 Views

algebralineal2

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

1.5 Cálculo con Python 23<br />

1 5 1 Operaciones básicas<br />

Comenzaremos con ejemplos de operaciones algebraicas sencillas con Python.<br />

Como se ve en la sección B.2, los números complejos están accesibles en Python<br />

y operar con ellos es fácil. Realicemos las siguientes operaciones:<br />

1 >>> 2 -1j -(6+2 j)<br />

2 ( -4 -3j)<br />

3 >>> (3+2 j) *(1 -5 j)<br />

4 (13 -13 j)<br />

5 >>> (1+1 j) /(1+2 j)<br />

(2 − i) − (6 + 2i) = −4 − 3i<br />

(3 + 2i)(1 − 5i) = 13 − 13<br />

1 + i<br />

1 + 2i = 3 5 − 1 5 i<br />

6 (0.59999999999999998 -0.20000000000000001 j)<br />

Como ocurre con las calculadoras, en el momento en el que aparecen números<br />

racionales el cálculo se vuelve engorroso. Afortunadamente tenemos el módulo<br />

SymPy para operar de forma exacta. En este módulo tenemos definida la<br />

unidad imaginaria como I, pero hemos de usar el operador de multiplicación<br />

(a diferencia del uso con j): por ejemplo,<br />

1 + i<br />

1 + 2i = 3 5 − 1 5 i<br />

7 >>> from sympy import I, simplify<br />

8 >>> (1+ I) /(1+2* I)<br />

9 (1 + I) /(1 + 2*I)<br />

10 >>> simplify (_)<br />

11 3/5 - I/5<br />

Como podemos observar, la operación 1+i<br />

1+2i<br />

no se realiza al momento (es tratada<br />

como una expresión simbólica), por lo que debemos simplificarla. Nótese el uso<br />

del guión bajo (o underscore) para referirnos al último cálculo realizado. Nótese<br />

también que solo hemos importado las funciones del módulo que necesitamos.<br />

Podríamos haber escrito directamente<br />

12 >>> simplify (6/(2 - I))<br />

13 12/5 + 6*I/5<br />

que equivale a<br />

6<br />

2 − i = 12 5 + 6 5 i<br />

El módulo SymPy también dispone de funciones para calcular el conjugado,<br />

el módulo y el argumento de un número complejo:

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!