{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Manual 02: Matrices\n", "## Universidad del Norte\n", "### Economía Matemática\n", "Esta es clase es referente a la parte **matricial**. Nuestro referente de insumo o la forma o manera como van los datos que usualmente utilizamos es con matrices y muchas de estas forman el desarrollo en cadena de multiples operaciones que nos llevaría tiempo hacer." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "A continuación vamos a realizat un *set up* para mejorar un poco la interacción y desarrollo de estas en el ambiente de Python." ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [], "source": [ "import numpy as np\n", "import sympy as sy\n", "\n", "sy.init_printing()" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [], "source": [ "np.set_printoptions(precision=3)\n", "np.set_printoptions(suppress=True)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Vamos a importar un paquete para múltiples salidas" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [], "source": [ "from IPython.core.interactiveshell import InteractiveShell\n", "\n", "InteractiveShell.ast_node_interactivity = \"all\" # Multiline activo" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [], "source": [ "def round_expr(expr, num_digits):\n", " return expr.xreplace({n: round(n, num_digits) for n in expr.atoms(sy.Number)})" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Matrices\n", "Conjunto de elementos ordenados en filas(m) y columnas(n) $A_{m\\times n}$. " ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [], "source": [ "A = np.array([[1, 2, 3], [4, 6, 9], [11, 14, 21]])" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[ 1, 2, 3],\n", " [ 4, 6, 9],\n", " [11, 14, 21]])" ] }, "execution_count": 16, "metadata": {}, "output_type": "execute_result" } ], "source": [ "A" ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "numpy.ndarray" ] }, "execution_count": 17, "metadata": {}, "output_type": "execute_result" } ], "source": [ "type(A)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Podemos conocer su tamaño $m \\times n$" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAADEAAAAVCAYAAADvoQY8AAAACXBIWXMAAA7EAAAOxAGVKw4bAAACWElEQVRYCc2X4VECMRCFT4cCTks4O0CtQOkALAE60PEX/NUO1BKgA7UDoQPpQKQDfF9IMHMGLnfE0czkNtndy3ubTXK5bLVaZX4dDoeF3/9v7RC/w8wro9HoWt22p/qPzcLy3HA7YKYpMnQlziVvjMI+1C/UHNhuLkn/TvoXq0smYrHkx2QvJR8BN0GoA7lXyVOUrlg9hF0QmdoEO1btqT1xvvtKjQWHaCz5T+V/Ibl0y+lOiocAkb50fTlC3BWXgVunSCTrYsEX3pkL4kpETWpKhGbqL201JiIv+aTq1sKyfOGdt/RgluchJrIx60e+zfqjCmXOd63VbogF7ysy0VF1S2QnsIAu5UAKB2qHMrfz/TrGSCx4d1p6nKnunFUNyLFLAOeqpP1N9VdKTax3kbg80MeDxo1ejjpp5Pcrp1NoRqqwrP2J5XSsGr1ZbbD4j9XOQ+CpdBFY7IncnU5BXA3SpgaMbjmxxJKUhlgmAQSxUN02o3xQpgLYZk8SgB2kCRa8FgRBSgo7UFkspZgoCKRfOAwom1MtQaDRWGto8yQTc4LgtOHUCRXuUc++QWTZ2MwAx6wJzgbwKclsNi1RWKXBuSbNOJ1Y82zSk5KD6UrPuu95NrL24wIoP045yqna5cytLRXPWCw3jMUcmH8JjlmC2fffQWN0VfN9x4l5XziF6ju+LCeK+Qqvm3s9uco3ykIDVJbf9wVQwFwh+NnYtsErMfQu++Sj0jGBg+UJX3P1cZlgaNb9zutHBT5X9vsKn1RmeG7+cX78X2udXcesyb/ygR/7wcf/AlmHmAfOV8zqAAAAAElFTkSuQmCC", "text/latex": [ "$\\displaystyle \\left( 3, \\ 3\\right)$" ], "text/plain": [ "(3, 3)" ] }, "execution_count": 18, "metadata": {}, "output_type": "execute_result" } ], "source": [ "A.shape" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Operación Básica\n", "Empezamos con un grupo pequeño de cálculo de operaciones. Miraremos primero las opciones que tenemos. Definimos dos matrices de tamaño $m \\times n$ y van a ser $A\\;y\\;B$" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "$$\n", "A = \\begin{pmatrix}\n", "3 & 5 \\\\\n", "9 & 8\n", "\\end{pmatrix} B = \\begin{pmatrix}\n", "0 & 1 \\\\\n", "5 & 4\n", "\\end{pmatrix}\n", "$$" ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [], "source": [ "A = np.array([[3, 5], [9, 8]])\n", "B = np.array([[0, 1], [5, 4]])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Si por algun motivo pensamos en una suma de matrices o lo que es\n", "$$A+B$$" ] }, { "cell_type": "code", "execution_count": 20, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[ 3, 6],\n", " [14, 12]])" ] }, "execution_count": 20, "metadata": {}, "output_type": "execute_result" } ], "source": [ "A+B" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Así mismo con la resta." ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[3, 4],\n", " [4, 4]])" ] }, "execution_count": 21, "metadata": {}, "output_type": "execute_result" } ], "source": [ "A-B" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Si intentaramos hacer una operación como la multiplicación, si hay que tener cuidado. Porque cualquiera sea el caso" ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[ 0, 5],\n", " [45, 32]])" ] }, "execution_count": 22, "metadata": {}, "output_type": "execute_result" } ], "source": [ "A*B" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Que lo que esta haciendo viene a ser mas bien un producto a producto por orden de elemento pero no la forma o manera **Producto elemental de Hadamard**" ] }, { "cell_type": "code", "execution_count": 23, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[25, 23],\n", " [40, 41]])" ] }, "execution_count": 23, "metadata": {}, "output_type": "execute_result" } ], "source": [ "A@B" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Que no es mas que: \n", "\n", "$$\n", "A = \\begin{pmatrix}\n", "3 & 5 \\\\\n", "9 & 8\n", "\\end{pmatrix} B = \\begin{pmatrix}\n", "0 & 1 \\\\\n", "5 & 4\n", "\\end{pmatrix}= \\begin{pmatrix}\n", "25 & 23 \\\\\n", "40 & 41\n", "\\end{pmatrix} \n", "$$\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Si queremos ver explicitamente lo anterior, una especie de paso a paso. Es tener por ejemplo:" ] }, { "cell_type": "code", "execution_count": 24, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "25" ] }, "execution_count": 24, "metadata": {}, "output_type": "execute_result" }, { "data": { "text/plain": [ "23" ] }, "execution_count": 24, "metadata": {}, "output_type": "execute_result" }, { "data": { "text/plain": [ "40" ] }, "execution_count": 24, "metadata": {}, "output_type": "execute_result" }, { "data": { "text/plain": [ "41" ] }, "execution_count": 24, "metadata": {}, "output_type": "execute_result" } ], "source": [ "np.sum(A[0, :] * B[:, 0]) # elemento de (1, 1)\n", "np.sum(A[0, :] * B[:, 1]) # elemento de (1, 2)\n", "np.sum(A[1, :] * B[:, 0]) # elemento de (2, 1)\n", "np.sum(A[1, :] * B[:, 1]) # elemento de (2, 2)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Note que el indice de Python siempre empieza desde cero, Para el caso $a_{ij}=a_{11}=a_{00}$" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Ejercicio\n", "\n", "$$\\text{1. Dadas las matrices } A = \\begin{pmatrix}\n", "2 & 3 \\\\\n", "4 & 5\n", "\\end{pmatrix} \\text{ y } B = \\begin{pmatrix}\n", "1 & 0 \\\\\n", "2 & 3\n", "\\end{pmatrix}, \\text{ calcule } A + B.$$" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "$$\\text{2. Dadas las matrices } C = \\begin{pmatrix}\n", "1 & 2 \\\\\n", "3 & 4\n", "\\end{pmatrix} \\text{ y } D = \\begin{pmatrix}\n", "0 & 1 \\\\\n", "1 & 0\n", "\\end{pmatrix}, \\text{ calcule ahora } C \\times D.$$" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Algebra, matrices y notación\n", "A continuación vamos a mirar como el paquete *Sympy* nos permite tambien realizar o hacer operaciones con (letras)." ] }, { "cell_type": "code", "execution_count": 36, "metadata": {}, "outputs": [], "source": [ "a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y, z = (\n", " sy.symbols(\n", " \"a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y, z\",\n", " real=True,\n", " )\n", ")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Ahora veamos el truco de uso" ] }, { "cell_type": "code", "execution_count": 26, "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/latex": [ "$\\displaystyle \\left[\\begin{matrix}2 a & 2 b & 2 c\\\\2 d & 2 e & 2 f\\end{matrix}\\right]$" ], "text/plain": [ "⎡2⋅a 2⋅b 2⋅c⎤\n", "⎢ ⎥\n", "⎣2⋅d 2⋅e 2⋅f⎦" ] }, "execution_count": 26, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAFUAAAAzCAYAAADmWEQdAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAC30lEQVR4Ae2c/01cMQzHS8UAiG5wjNAyQRmhsAEwAn/e/Us3oCvABu0GqGxQNuDHCHxdxSjKOU7exZGw5CdFSfz84vPnnLz3coa99Xp98Ek4NpvNqyAOUUYAjER2n6HzF+WlKNfZtdGsE7gtuBHH2z1E6j80LkH9T/3aONNDAAwvoHdKkRqHMYH9nvHwDfBy8AT9I5RryB57rh3V8Wi7Galwitbce9RXKD/RvkL5jfZqFFjreq+2VahwitaIA9R3DABteiqg/g3LZtSebatQAesU5UGAdg/ZCRwXHykE/V1Ebm23oJ6AxrNAhNdTOj/rcGu7CrUzCg9nEPVuuwoVsBiY9mY1a/q7tq1B7QnCLz1Kk3Q+rG0NqrSWMh+OJHpunXG4tl2FinWNp700xVnGNyxTsN5tV6EmSrQfsBKIcaTO3C9wa7sFlXZhvglQv0L2kEWUoDIscmtbhQpov4DmGfUPRoQ2Tf0zlHOWzag92+7ZUKGopA2UY9R0Y6L6O/rSmxZOmR4ubTehAh7dsC5NUXUO5tW2Ov07fQ+1gkBALYBYdAOqBcVijIBaALHoBlQLisUYAbUAYtENqBYUizECagHEohtQLSgWYwTUAohFt/maSkbwuhjJFAuSSJqRCqCRTLEwiUSFCqCRTJHWA7CgjaWuJBIVKgZxm9CQWOxaDfndguo2oWFXmum6Ib+rUBHu/OOe9vn4typNZ/E577arUEGCgdFaUjt6wNeu1eSubWtQNaf53IdNaOAPOKlW/daguk5oGIA57HcVanqEoM8mTXGWRTKF8O1VoSZdtwkNgq9LREN+t6C6TWhYQlDQHfJbhYolIJIpEvH0mNeVRNKzoeIyoUGIvqWinf1uQk03rEimWPCVqNN/wTihmhEIqBkMq2ZAtSKZjRNQMxhWzYBqRTIbh+/+q/Qc9n4q3fXf+9HYJlAyg8b/13eOVPo70/wfKfAPfdsjhSQnQG9eW9zeAKoTjbmzd+YrAAAAAElFTkSuQmCC", "text/latex": [ "$\\displaystyle \\left[\\begin{matrix}0 & 0 & 0\\\\0 & 0 & 0\\end{matrix}\\right]$" ], "text/plain": [ "⎡0 0 0⎤\n", "⎢ ⎥\n", "⎣0 0 0⎦" ] }, "execution_count": 26, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAFYAAAAzCAYAAAANb/8eAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAFCklEQVR4Ae2c4VUUMRDHFx8FoHaAHYhWoHQAdqB0AM9P8I2HHQgVnNABdADSgXQg0oH+f2uyby8ku8mR3J1n5r1csrPZmcw/k0lIomuHh4cbjYeOjo4ePOzKchAQTl78nqned6VfTjpxvq+PYQTOHezA8nxNHvtDhT0hfxX+tr6JRUA4flLdXTy2UgEE1gvIzCbSxC+G2hulez2/yia8sKCl9lgB+aC0LQzulP6pULXUwPac6rXKl73npS8uPbDy2PcGxeqxmd2pDQWEhcxyi4qLmrxk1KZawdqWWPdT6UJpR/wvyksTHnsrXftG0VvlEz3ThrmR9GE/tkN08o14t+2T52c0FOhjDOOPiAOVSYD5VelEZe9fHXqXhYx84isde2p0f1T5XGV4xQk9Sqz1r9FPUnlLafCPqEFgJQTgWO4AKN5qifKdeKWHp42v76wuk6N3xzamcM6keSG9/RHyQbzByXQsFNArGxJ66jQeg/uKnNfZHomvhAG3A+nwl9m0BARJLyOTkXHcryL+8/6zrzzosfqAnpmajSUUo1A22GN6n4PoQFe/9eLrHApGZLT2ezp25LOmCQJrAAREF0CUNXo/ZfCoptkq0IEugLtGVFH9A/ZHWRIEtvd1P7bCbocnBSlnZYDxJanTb4ylY9k0csND1jb05Hv16L0dOV69QWCNYLyiA048Jgxm6RsjbVu8znDDy5kRx9knsMRE+k063Zhv3+fO0WNHSCdb+pl77juGp7Du4fVZCD2ToH3lTBYTJTyWpRY8gntJYmmFfjZfCEsss+YFaiNdjAxsBUiWXBDtOBbP68ltDf3U/ViLRKZcgNf92ExYesUEY6y3dmVGI1CBjYYqrWIFNg2v6NoV2Gio0ipWYNPwiq5dgY2GKq1iBTYNr+jaFdhoqNIqVmDT8IquPbZX4BWkP9vYiDlT2lRiU2TPW3EFmbKV/RG7TxDcM5jJYyWcXX3OfdiQcPdrVxDOvybJZjZjXiixGcWeQHDrcCZgJbCREiu06IYzupaIABNQAZet06DtM4UCCYTYPpzHgWKrbNE/xpEYoVcqEwqCoNLWmT1W3+Kxg8JRsEKU5EhRHqseYpIivnBawKUFAGUCmzq91HMRkn485bOSvTDBxjdH8nhOUZIOhj+g4kjceOQUg3xwwh4FVgIQiLAtldtjGOV2wirusUY/M/Guyu3NE+V0KkAfKBUl6eLEgssiv5WzCoi6/TMIrITgKYDqu7DhO+9X1Xwk/YwUOpEjkv51Hjrbdm4+hQFJph28jXakQWAliOG/yAsbeCpEGzhjgzh7u9RztJHtV0/7YYQ00tnv3EGJY8By1DxlgITjxdaTBoVneIlncr0navhl0BcSwUW8pNPo4KrAAAiI7pAD7EbvpwCHV4iuC8lNEYvHRnsrgoPA9rS6PcUMaSeR0hc20O29o6WOndelOKDgbkNSBweBVcNZyuCVDPuWjDH03rwubBDjCQcdqQ3EW2Jvkgd1AhIL0oX9jNwkfWMxdqEXNmQUyxyABODuwoSeB9eQidiNVbcTV1LoGwRWBuC1j67YBHhjDZzpvdqw6ImL0MdVpyQKhoIkKStWWZ3J3MH6HSK+TtpSwk8F1g+WXb8TWxuBnOyxg6HAr/O/4LbAylJyXygcBaEC64FIHvrkG401FHiAzcGyHss/uWnjiRWqZ1YElUYQcHFT9RZH67EsuPv/GQSxpVIcAqweHmH3B1Nsk9eFDyWHAAAAAElFTkSuQmCC", "text/latex": [ "$\\displaystyle \\left[\\begin{matrix}a & b & c\\\\d & e & f\\end{matrix}\\right]$" ], "text/plain": [ "⎡a b c⎤\n", "⎢ ⎥\n", "⎣d e f⎦" ] }, "execution_count": 26, "metadata": {}, "output_type": "execute_result" } ], "source": [ "A = sy.Matrix([[a, b, c], [d, e, f]])\n", "A + A\n", "A - A\n", "2*A-A" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "A continuación crearemos una matriz adicional y seguiremos desarrollando otras operaciones." ] }, { "cell_type": "code", "execution_count": 27, "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/latex": [ "$\\displaystyle \\left[\\begin{matrix}a + g & b + h & c + i\\\\d + j & e + k & f + l\\end{matrix}\\right]$" ], "text/plain": [ "⎡a + g b + h c + i⎤\n", "⎢ ⎥\n", "⎣d + j e + k f + l⎦" ] }, "execution_count": 27, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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", "text/latex": [ "$\\displaystyle \\left[\\begin{matrix}a - g & b - h & c - i\\\\d - j & e - k & f - l\\end{matrix}\\right]$" ], "text/plain": [ "⎡a - g b - h c - i⎤\n", "⎢ ⎥\n", "⎣d - j e - k f - l⎦" ] }, "execution_count": 27, "metadata": {}, "output_type": "execute_result" } ], "source": [ "B = sy.Matrix([[g, h, i], [j, k, l]])\n", "A + B\n", "A - B" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Ya claro la parte de las sumas y restas pasemos entonces a la parte del producto" ] }, { "cell_type": "code", "execution_count": 28, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAFYAAAAzCAYAAAANb/8eAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAFCklEQVR4Ae2c4VUUMRDHFx8FoHaAHYhWoHQAdqB0AM9P8I2HHQgVnNABdADSgXQg0oH+f2uyby8ku8mR3J1n5r1csrPZmcw/k0lIomuHh4cbjYeOjo4ePOzKchAQTl78nqned6VfTjpxvq+PYQTOHezA8nxNHvtDhT0hfxX+tr6JRUA4flLdXTy2UgEE1gvIzCbSxC+G2hulez2/yia8sKCl9lgB+aC0LQzulP6pULXUwPac6rXKl73npS8uPbDy2PcGxeqxmd2pDQWEhcxyi4qLmrxk1KZawdqWWPdT6UJpR/wvyksTHnsrXftG0VvlEz3ThrmR9GE/tkN08o14t+2T52c0FOhjDOOPiAOVSYD5VelEZe9fHXqXhYx84isde2p0f1T5XGV4xQk9Sqz1r9FPUnlLafCPqEFgJQTgWO4AKN5qifKdeKWHp42v76wuk6N3xzamcM6keSG9/RHyQbzByXQsFNArGxJ66jQeg/uKnNfZHomvhAG3A+nwl9m0BARJLyOTkXHcryL+8/6zrzzosfqAnpmajSUUo1A22GN6n4PoQFe/9eLrHApGZLT2ezp25LOmCQJrAAREF0CUNXo/ZfCoptkq0IEugLtGVFH9A/ZHWRIEtvd1P7bCbocnBSlnZYDxJanTb4ylY9k0csND1jb05Hv16L0dOV69QWCNYLyiA048Jgxm6RsjbVu8znDDy5kRx9knsMRE+k063Zhv3+fO0WNHSCdb+pl77juGp7Du4fVZCD2ToH3lTBYTJTyWpRY8gntJYmmFfjZfCEsss+YFaiNdjAxsBUiWXBDtOBbP68ltDf3U/ViLRKZcgNf92ExYesUEY6y3dmVGI1CBjYYqrWIFNg2v6NoV2Gio0ipWYNPwiq5dgY2GKq1iBTYNr+jaFdhoqNIqVmDT8IquPbZX4BWkP9vYiDlT2lRiU2TPW3EFmbKV/RG7TxDcM5jJYyWcXX3OfdiQcPdrVxDOvybJZjZjXiixGcWeQHDrcCZgJbCREiu06IYzupaIABNQAZet06DtM4UCCYTYPpzHgWKrbNE/xpEYoVcqEwqCoNLWmT1W3+Kxg8JRsEKU5EhRHqseYpIivnBawKUFAGUCmzq91HMRkn485bOSvTDBxjdH8nhOUZIOhj+g4kjceOQUg3xwwh4FVgIQiLAtldtjGOV2wirusUY/M/Guyu3NE+V0KkAfKBUl6eLEgssiv5WzCoi6/TMIrITgKYDqu7DhO+9X1Xwk/YwUOpEjkv51Hjrbdm4+hQFJph28jXakQWAliOG/yAsbeCpEGzhjgzh7u9RztJHtV0/7YYQ00tnv3EGJY8By1DxlgITjxdaTBoVneIlncr0navhl0BcSwUW8pNPo4KrAAAiI7pAD7EbvpwCHV4iuC8lNEYvHRnsrgoPA9rS6PcUMaSeR0hc20O29o6WOndelOKDgbkNSBweBVcNZyuCVDPuWjDH03rwubBDjCQcdqQ3EW2Jvkgd1AhIL0oX9jNwkfWMxdqEXNmQUyxyABODuwoSeB9eQidiNVbcTV1LoGwRWBuC1j67YBHhjDZzpvdqw6ImL0MdVpyQKhoIkKStWWZ3J3MH6HSK+TtpSwk8F1g+WXb8TWxuBnOyxg6HAr/O/4LbAylJyXygcBaEC64FIHvrkG401FHiAzcGyHss/uWnjiRWqZ1YElUYQcHFT9RZH67EsuPv/GQSxpVIcAqweHmH3B1Nsk9eFDyWHAAAAAElFTkSuQmCC", "text/latex": [ "$\\displaystyle \\left[\\begin{matrix}a & b & c\\\\d & e & f\\end{matrix}\\right]$" ], "text/plain": [ "⎡a b c⎤\n", "⎢ ⎥\n", "⎣d e f⎦" ] }, "execution_count": 28, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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", "text/latex": [ "$\\displaystyle \\left[\\begin{matrix}g & h & i\\\\j & k & l\\\\m & n & o\\end{matrix}\\right]$" ], "text/plain": [ "⎡g h i⎤\n", "⎢ ⎥\n", "⎢j k l⎥\n", "⎢ ⎥\n", "⎣m n o⎦" ] }, "execution_count": 28, "metadata": {}, "output_type": "execute_result" } ], "source": [ "A = sy.Matrix([[a, b, c], [d, e, f]])\n", "B = sy.Matrix([[g, h, i], [j, k, l], [m, n, o]])\n", "A\n", "B" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Cuando entonces vemos que si aplicamos lo conmutable, veremos como se emplea en realidad el desarrollo de cada uno de los elementos contenidos en una matriz." ] }, { "cell_type": "code", "execution_count": 29, "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/latex": [ "$\\displaystyle \\left[\\begin{matrix}a g + b j + c m & a h + b k + c n & a i + b l + c o\\\\d g + e j + f m & d h + e k + f n & d i + e l + f o\\end{matrix}\\right]$" ], "text/plain": [ "⎡a⋅g + b⋅j + c⋅m a⋅h + b⋅k + c⋅n a⋅i + b⋅l + c⋅o⎤\n", "⎢ ⎥\n", "⎣d⋅g + e⋅j + f⋅m d⋅h + e⋅k + f⋅n d⋅i + e⋅l + f⋅o⎦" ] }, "execution_count": 29, "metadata": {}, "output_type": "execute_result" } ], "source": [ "AB = A * B\n", "AB" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "*Note adicionalmente que el producto se desarrolla tal cual es requerido por ese tipo de operación*" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Propiedades\n", "Miremos un ejemplo mas clave. La multiplicación de matrices suele ser \"no conmutable\". Por ello, vamos a tomar como ejemplo" ] }, { "cell_type": "code", "execution_count": 30, "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/latex": [ "$\\displaystyle \\left[\\begin{matrix}23 & 48\\\\24 & 30\\end{matrix}\\right]$" ], "text/plain": [ "⎡23 48⎤\n", "⎢ ⎥\n", "⎣24 30⎦" ] }, "execution_count": 30, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAEoAAAAzCAYAAAAw/Z54AAAACXBIWXMAAA7EAAAOxAGVKw4bAAAFE0lEQVRoBe2b0VHcMBCGD4YCCOkAOiCkgpAOwqSCQAdk8gSv0AFQAQMdQAcEOoASgBLyf4rXY8sr2yLBdwPSjJC0XmlXv3bXsnQsHRwcrM6cdHh4+OyQ3zxJ83bxWNbMb5Wfonz05hFJT/AiwgJsLpZkUfeq7AnJ63Tf9/tEuOxq9jtYVEkjEFgZ4hGi6+L5WfFtqXykLfpdRWsVom+KgPl+Un3SOJcru+LHm/Zak3AavUBpAEA6UfnV+qpO/LqFphzcVSUB8EwZEAGTfpOkf5TNgroLHivfC5SYAaWFthTDmvBbhHxQnqmN5exU9X2VWNUk6aWy1Q89R6ehGLWtke41aPzKxJJWRZ/MckbPaASj9GYhWVzyqDQEFIA8aODUgDGAo4QuANN3zek0R49e19NgwZ2cAYNr6fko/3b6z40knXG5k1wFhiyqM54EARIuZ2/CDs+iEqQ7ej+rfMjVMRsoCSCIX0rYca6wBeBnK5DlcqZzFlASgskSs1IuaeMuXCmdeVNnu5xNZDRQlaA1lfWeygZZ9FI643K8pbNdzubWG8yNSQK+qb6hsrakSvhM5YuF2/gTlAD1WboSNpopxNuKjqck4+4gUOrMYAiJBwG8F/l7U9Mp6tKdbU74imjKE52TgWuVtQE0nzfrvUBpAFaCVWCw2L+3RfMC+sdKwJrK1P6rYvnvRa5s9oGj9oK9QGmQK2XAIhDGqbWHEmhm1tsV44VouOWVyle1vFzZ4mfRmReJBUf3G5Xewgemch4VYEj/EXjlPCoNT/fJcpdUKB4CBSgPFYdWgHJA8UgFKA8Vh1aAckDxSAUoDxWHVoByQPFIBSgPFYdWgHJA8UhD33ozbeH5aPzV6Eyb77jO1zg8onPawLfTZBegkrkueXathn60j2IdKz47BRm8zNUYdRoESpwINCVCR7UBioOwSwjUVczzApS7xlpH1TkC4mN8R9l0BLzBy1zxuKnX9SSED0J+7RKnHyLUViY+DuxRCmXPY+ZXbqPjrmQDjiWz9lpHPXAvc0V/VraTD+vfKXuBEveG8qIf/XLcw2TJIbFwVm+UHP+8+DJ3yPVuNPi+BHMuhcWYAqwOZzpzT9IJ6wlX+6aMaGZdTR3h22zMwditXLWKV/YCpUG5lsLHEfykOoEQK8P/g++rvlBJemE5wc1Urw8MVU8d9/Lymel56yAyntSQ6zEAAkwgCqBI76CxkCna0hNr4RaYOIl+v4fk0kc8BHl7Eya7jAEKa8LlsCTMl4HxdTNvNeefpM+d8rEyC3uuzE+ThnQkiI+6zO0FSoJ4o/A7KF6/XOcQ2M2Ez9Tu9WvxziVJL8ICixu2MZ4S4iF+jb7M7QVKA+FqLbOslMC6AAk3nGuSPrhciDORIuZ6HR3FjwFkXeYmgdJgAMGmkpVpJdG4XWHV1loP5tNgn4eboe9gEh/u2LnMFZ2Qkkx9QAEQG8nUAChmG7ukgAkeoCdxhrKZtqpGraN4sLzUZe5js3NcX4kJUZt4hJ9/aSqiOqbLFsG7Ts+9hIxEZjdboYHe0gurYSH59UoAUCULTvDOucwV+9/UC5QGZ1A+VwjcTcQ7H8V6bp8BFhPgefULUMk4Vd5Wbm4uAaX+MW4119GXuRV/qygXoC04ug0tAN5TfpDfhcanLPvkQo0RKEDFiCTaBagEMDG5ABUjkmjb9mBd0Z19R53Ujjdw9bO3XIlx0FwDLmZR7EGa/9zIN957TewHO1j8AScY69Jgqa+oAAAAAElFTkSuQmCC", "text/latex": [ "$\\displaystyle \\left[\\begin{matrix}21 & 14\\\\81 & 32\\end{matrix}\\right]$" ], "text/plain": [ "⎡21 14⎤\n", "⎢ ⎥\n", "⎣81 32⎦" ] }, "execution_count": 30, "metadata": {}, "output_type": "execute_result" } ], "source": [ "A = sy.Matrix([[9, 2], [3, 3]])\n", "B = sy.Matrix([[1, 4], [7, 6]])\n", "A * B\n", "B * A" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Siendo objetivos viene a ser algo como:" ] }, { "cell_type": "code", "execution_count": 31, "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/latex": [ "$\\displaystyle \\left[\\begin{matrix}a e + b g & a f + b h\\\\c e + d g & c f + d h\\end{matrix}\\right]$" ], "text/plain": [ "⎡a⋅e + b⋅g a⋅f + b⋅h⎤\n", "⎢ ⎥\n", "⎣c⋅e + d⋅g c⋅f + d⋅h⎦" ] }, "execution_count": 31, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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", "text/latex": [ "$\\displaystyle \\left[\\begin{matrix}a e + c f & b e + d f\\\\a g + c h & b g + d h\\end{matrix}\\right]$" ], "text/plain": [ "⎡a⋅e + c⋅f b⋅e + d⋅f⎤\n", "⎢ ⎥\n", "⎣a⋅g + c⋅h b⋅g + d⋅h⎦" ] }, "execution_count": 31, "metadata": {}, "output_type": "execute_result" } ], "source": [ "A = sy.Matrix([[a, b], [c, d]])\n", "B = sy.Matrix([[e, f], [g, h]])\n", "A * B\n", "B * A" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Para definir que $AB=BA$, habría que pensar que $AB-BA=0$" ] }, { "cell_type": "code", "execution_count": 32, "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/latex": [ "$\\displaystyle \\left[\\begin{matrix}b g - c f & a f - b e + b h - d f\\\\- a g + c e - c h + d g & - b g + c f\\end{matrix}\\right]$" ], "text/plain": [ "⎡ b⋅g - c⋅f a⋅f - b⋅e + b⋅h - d⋅f⎤\n", "⎢ ⎥\n", "⎣-a⋅g + c⋅e - c⋅h + d⋅g -b⋅g + c⋅f ⎦" ] }, "execution_count": 32, "metadata": {}, "output_type": "execute_result" } ], "source": [ "P = A * B - B * A\n", "P" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "De lo anterior debemos llevarlo a igualar cada uno de ellos a cero. Iremos primero por filas y luego si su respectiva columna\n", "\n", "Este sistema queda como:\n", "\n", "$$\\begin{align}\n", "bg-cf= & 0 \\\\\n", "af-bc+bh-df & 0 \\\\\n", "-age+ce-ch+dg= & 0 \\\\\n", "-bg+cf= & 0\n", "\\end{align}$$ \n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Un primer intento es mirar la reducción por Gauss-Jordan para resolver ese sistema ecuacional\n", "\n", "\\begin{align*}\n", " bg - cf &= 0 \\quad &\\Rightarrow -cf + bg + 0e + 0h = 0 \\\\\n", " af - be + bh - df &= 0 \\quad &\\Rightarrow (a - d)f + 0g - be + bh = 0 \\\\\n", " -ag + ce - ch + dg &= 0 \\quad &\\Rightarrow 0f + (d - a)g + ce - ch = 0 \\\\\n", " -bg + cf &= 0 \\quad &\\Rightarrow cf - bg + 0e + 0h = 0\n", "\\end{align*}" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Note que hemos organizado el Sistema. De tal manera que podamos reducirlo ordenadamente" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Resolver matrices de forma aumentada no es trivial. Es bueno tener claro su montaje. Para ello mire lo siguiente:\n", "\n", "$$\\begin{equation}\n", "\\left[\n", "\\begin{array}{cccc:c}\n", "-c & b & 0 & 0 & 0 \\\\\n", "a-d & 0 & -b & b & 0 \\\\\n", "0 & d-a & c & -c & 0 \\\\\n", "c & -b & 0 & 0 & 0\n", "\\end{array}\n", "\\right]\n", "\\end{equation}\n", "$$" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Miremos entonces como escribirla en Python" ] }, { "cell_type": "code", "execution_count": 33, "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/latex": [ "$\\displaystyle \\left[\\begin{matrix}- c & b & 0 & 0\\\\a - d & 0 & - b & b\\\\0 & - a + d & c & - c\\\\c & - b & 0 & 0\\end{matrix}\\right]$" ], "text/plain": [ "⎡ -c b 0 0 ⎤\n", "⎢ ⎥\n", "⎢a - d 0 -b b ⎥\n", "⎢ ⎥\n", "⎢ 0 -a + d c -c⎥\n", "⎢ ⎥\n", "⎣ c -b 0 0 ⎦" ] }, "execution_count": 33, "metadata": {}, "output_type": "execute_result" } ], "source": [ "A_aum = sy.Matrix([[-c, b, 0, 0], [a - d, 0, -b, b], [0, d - a, c, -c], [c, -b, 0, 0]])\n", "A_aum" ] }, { "cell_type": "code", "execution_count": 34, "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/latex": [ "$\\displaystyle \\left( \\left[\\begin{matrix}1 & 0 & - \\frac{b}{a - d} & \\frac{b}{a - d}\\\\0 & 1 & \\frac{b c}{- a b + b d} & \\frac{c}{a - d}\\\\0 & 0 & 0 & 0\\\\0 & 0 & 0 & 0\\end{matrix}\\right], \\ \\left( 0, \\ 1\\right)\\right)$" ], "text/plain": [ "⎛⎡ -b b ⎤ ⎞\n", "⎜⎢1 0 ───── ─────⎥ ⎟\n", "⎜⎢ a - d a - d⎥ ⎟\n", "⎜⎢ ⎥ ⎟\n", "⎜⎢ b⋅c c ⎥ ⎟\n", "⎜⎢0 1 ────────── ─────⎥, (0, 1)⎟\n", "⎜⎢ -a⋅b + b⋅d a - d⎥ ⎟\n", "⎜⎢ ⎥ ⎟\n", "⎜⎢0 0 0 0 ⎥ ⎟\n", "⎜⎢ ⎥ ⎟\n", "⎝⎣0 0 0 0 ⎦ ⎠" ] }, "execution_count": 34, "metadata": {}, "output_type": "execute_result" } ], "source": [ "A_aum.rref()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Solución del sistema" ] }, { "cell_type": "code", "execution_count": 35, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Solucion de los elementos de matriz B:\n", "e: h + g*(a - d)/c\n", "f: b*g/c\n", "\n", "Solución Paramétrica:\n", "e: c_{2} + \\frac{c_{1} \\left(a - d\\right)}{c}\n", "f: \\frac{b c_{1}}{c}\n", "g: c_{1}\n", "h: c_{2}\n" ] } ], "source": [ "import sympy as sp\n", "\n", "# Las entradas de variables (como simbolos)\n", "a, b, c, d = sp.symbols(\"a b c d\")\n", "\n", "# Siguiente matriz\n", "e, f, g, h = sp.symbols(\"e f g h\")\n", "\n", "# Montaje de Matrices\n", "A = sp.Matrix([[a, b], [c, d]])\n", "B = sp.Matrix([[e, f], [g, h]])\n", "\n", "# Hallamos productos\n", "AB = A * B\n", "BA = B * A\n", "\n", "# Va el conjunto de ecuaciones\n", "ecuaciones = [sp.Eq(AB[i, j], BA[i, j]) for i in range(2) for j in range(2)]\n", "\n", "# Solve the system of equations\n", "solucion = sp.solve(ecuaciones, (e, f, g, h))\n", "\n", "# Print the general solutions\n", "print(\"Solucion de los elementos de matriz B:\")\n", "for sol in solucion:\n", " print(f\"{sol}: {solucion[sol]}\")\n", "\n", "# Parámetros de sustitución\n", "# Es hora de definir c1 y c2\n", "c1, c2 = sp.symbols(\"c1 c2\")\n", "\n", "# Definimos la solución\n", "parametric_solucion = {\n", " e: solucion[e].subs({g: c1, h: c2}),\n", " f: solucion[f].subs({g: c1, h: c2}),\n", " g: c1,\n", " h: c2,\n", "}\n", "\n", "# Print the parameterized solution in LaTeX format\n", "print(\"\\nSolución Paramétrica:\")\n", "for sol in parametric_solucion:\n", " print(f\"{sp.latex(sol)}: {sp.latex(parametric_solucion[sol])}\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Solución Paramétrica:\n", "$$e: c_{2} + \\frac{c_{1} \\left(a - d\\right)}{c}\n", "f: \\frac{b c_{1}}{c}\n", "g: c_{1}\n", "h: c_{2}$$" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "--------" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Agradecimientos y créditos\n", "Mucho de este material se desarrolló gracias a los recursos construidos por el Profesor \n", "**Weijie Chen** y el Doctor **Div Baghia** de California State University. © *Todos los derechos reservados* \n" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.10.5" } }, "nbformat": 4, "nbformat_minor": 2 }