{"id":2822,"date":"2017-06-06T09:40:35","date_gmt":"2017-06-06T14:40:35","guid":{"rendered":"http:\/\/blog.espol.edu.ec\/matg1013\/?p=2822"},"modified":"2026-02-15T05:58:13","modified_gmt":"2026-02-15T10:58:13","slug":"normas-como-distancias","status":"publish","type":"post","link":"https:\/\/blog.espol.edu.ec\/algoritmos101\/mn-u03\/normas-como-distancias\/","title":{"rendered":"3.5 Normas de vector o matriz como distancias con Python"},"content":{"rendered":"\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<div class=\"wp-block-group has-medium-font-size is-layout-flex wp-block-group-is-layout-flex\">\n<p><a href=\"#norma3d\">Norma 3D<\/a><\/p>\n\n\n\n<p><a href=\"#error3d\">error 3D y Norma<\/a><\/p>\n\n\n\n<p><a href=\"#normainfinito\">Norma infinito<\/a><\/p>\n\n\n\n<p><a href=\"#algoritmo\">Algoritmo<\/a><\/p>\n<\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"norma3d\">1. Normas de un vector en 3D<\/h2>\n\n\n\n<p><strong>Referencia<\/strong>: Chapra 10.3.1 p298, Burden 7.1 p320, Rodr\u00edguez 4.4.1 p132<\/p>\n\n\n\n<figure class=\"wp-block-image alignright size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"503\" height=\"385\" src=\"http:\/\/blog.espol.edu.ec\/algoritmos101\/files\/2017\/06\/errordistancia01.png\" alt=\"error distancia 3D entre tres puntos\" class=\"wp-image-13426\" style=\"width:350px\" \/><\/figure>\n\n\n\n<p>La norma de un vector se interpreta como una distancia entre la coordenada definida por el vector [x<sub>i<\/sub>, y<sub>i<\/sub>, z<sub>i<\/sub>] y el origen [0,0,0]. <\/p>\n\n\n\n<p>Tambi\u00e9n se puede realizar respecto a otro punto de referencia, se conoce como Norma Euclidiana o Norma p=2.<\/p>\n\n\n\n<p>Previamente, en b\u00fasqueda de ra\u00edces, el error de aproximaci\u00f3n se considera como la diferencia entre dos iteraciones sucesivas:.<\/p>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> error = |x_{i+1} - x_{i}| <\/span>\n\n\n\n<p>Si el concepto se extiende a vectores en tres dimensiones, se observa como el error entre vectores |X<sub>i+1<\/sub> - X<sub>i<\/sub>| que se interpreta mejor como una distancia.<\/p>\n\n\n\n<p>Por ejemplo, si se usan los puntos y se visualizan en un gr\u00e1fico:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>   &nbsp;X2:  &#091; 2  4 -1]\n   -X1: -&#091; 1  2  3]\n______________________\nerrado =|&#091; 1  2 -4]|<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image alignright size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"501\" height=\"374\" src=\"http:\/\/blog.espol.edu.ec\/algoritmos101\/files\/2017\/06\/errordistancia02.png\" alt=\"error distancia como norma\" class=\"wp-image-13427\" style=\"width:350px\" \/><\/figure>\n\n\n\n<p>La diferencia entre los vectores |[ 1, 2, -4]|&nbsp; es m\u00e1s simple de observar como un n\u00famero escalar. Una forma de convertir el punto a un escalar es usar la distancia al origen.<\/p>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> errado = \\sqrt{1^2 + 2^2 + (-4)^2} = 4.58 <\/span>\n\n\n\n<p>El resultado tambi\u00e9n se interpreta como la distancia entre los puntos X<sub>1<\/sub> y X<sub>2<\/sub>.<\/p>\n\n\n\n<p>De ampliar el concepto a <em><strong>n<\/strong><\/em> dimensiones se conoce como norma de un vector o matriz.<\/p>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> ||x|| = \\sqrt{x^2+y^2+z^2} <\/span>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> ||x|| = \\Big[ \\sum_{i=0}^{n} x_i ^2 \\Big] ^{1\/2} <\/span>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<div class=\"wp-block-group has-medium-font-size is-layout-flex wp-block-group-is-layout-flex\">\n<p><a href=\"#norma3d\">Norma 3D<\/a><\/p>\n\n\n\n<p><a href=\"#error3d\">error 3D y Norma<\/a><\/p>\n\n\n\n<p><a href=\"#normainfinito\">Norma infinito<\/a><\/p>\n\n\n\n<p><a href=\"#algoritmo\">Algoritmo<\/a><\/p>\n<\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"error3d\">2. Distancia entre dos puntos en el espacio, error y Norma<\/h2>\n\n\n\n<p>Observe los siguientes videos, sobre acople de aeronaves.<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"KC-135 Stratotanker in Action - Aircraft Air Refueling\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube.com\/embed\/zvMm41FuMlI?start=210&feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<figure class=\"wp-block-image aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"632\" height=\"263\" src=\"http:\/\/blog.espol.edu.ec\/algoritmos101\/files\/2017\/06\/repostarCombustibleEnAire01.png\" alt=\"repostar Combustible En Aire\" class=\"wp-image-13428\" \/><\/figure>\n\n\n\n<p>Acoplamiento de aviones para recarga de combustible . www.AiirSource.com. 30\/diciembre\/2015. <br>KC-135 Stratotanker in Action - Aircraft Air Refueling<\/p>\n\n\n\n<p>El carguero ruso Progress M-06M pas\u00f3 de largo la Estaci\u00f3n Espacial Internacional fracasado en su intento de acoplarse<\/p>\n\n\n\n<p>Soyuz MS-22 docking. 21 sept 2022.<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"Soyuz MS-22 docking\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube.com\/embed\/iEeRbutuTZ8?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u00bfConsidera importante que exista acoplamiento para iniciar la carga el combustible? o \u00bfpara abrir la escotilla del transbordador?<\/li>\n<\/ul>\n\n\n\n<p>Si el error de acoplamiento entre artefactos se calcula como la Norma entre los puntos de \"contacto\",<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u00bfes necesario calcular la ra\u00edz cuadrada de los cuadrados de las diferencias? o,<\/li>\n\n\n\n<li>\u00bfSolo toma en cuenta el m\u00ednimo o el m\u00e1ximo de las diferencias entre las coordenadas?,<\/li>\n\n\n\n<li>\u00bfcu\u00e1l de las formas tiene menos operaciones, es m\u00e1s r\u00e1pida de realizar?<\/li>\n<\/ul>\n\n\n\n<p>considere sus respuestas para el siguiente concepto.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<div class=\"wp-block-group has-medium-font-size is-layout-flex wp-block-group-is-layout-flex\">\n<p><a href=\"#norma3d\">Norma 3D<\/a><\/p>\n\n\n\n<p><a href=\"#error3d\">error 3D y Norma<\/a><\/p>\n\n\n\n<p><a href=\"#normainfinito\">Norma infinito<\/a><\/p>\n\n\n\n<p><a href=\"#algoritmo\">Algoritmo<\/a><\/p>\n<\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"normainfinito\">3. Norma infinito<\/h2>\n\n\n\n<p>Se determina como el valor mas grande entre los elementos del vector o matriz.<\/p>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> ||x|| = max\\Big[ |x_i| \\Big] <\/span>\n\n\n\n<p>Es m\u00e1s sencilla de calcular que la Norma Euclidiana, Norma P=2, mostrada al principio.<\/p>\n\n\n\n<p>Se interpreta como si alguna de las diferencia entre las coordenadas de los puntos de acople entre aeronaves es mayor que lo tolerado, no se debe permitir abrir la v\u00e1lvula de combustible o la escotilla del transbordador. No es prioritario calcular la suma de los cuadrados de las diferencias para saber que no existe acople a\u00fan.<\/p>\n\n\n\n<p>Existen otras formas de calcular la Norma, que se presentan en la siguiente p\u00e1gina web.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<div class=\"wp-block-group has-medium-font-size is-layout-flex wp-block-group-is-layout-flex\">\n<p><a href=\"#norma3d\">Norma 3D<\/a><\/p>\n\n\n\n<p><a href=\"#error3d\">error 3D y Norma<\/a><\/p>\n\n\n\n<p><a href=\"#normainfinito\">Norma infinito<\/a><\/p>\n\n\n\n<p><a href=\"#algoritmo\">Algoritmo<\/a><\/p>\n<\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"algoritmo\">4. Algoritmo con Python<\/h2>\n\n\n\n<p>Principalmente se usa para generar las gr\u00e1ficas 3D, que ayudan a la interpretaci\u00f3n del concepto con los puntos de coordenadas:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>X0 = &#091;0.0, 0, 0]\nX1 = &#091;1.0, 2, 3]\nX2 = &#091;2.0, 4,-1]<\/code><\/pre>\n\n\n\n<p>Las instrucciones gr\u00e1ficas principales son:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Para puntos, gr\u00e1ficos de dispersi\u00f3n o scatter()<\/li>\n\n\n\n<li>Para las lineas, gr\u00e1ficos de l\u00ednea o plot()<\/li>\n<\/ul>\n\n\n\n<p>El resultado de la parte num\u00e9rica se obtiene con pocas instrucciones en el bloque de procedimiento<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>     X2:  &#091; 2 4 -1]\n    -X1: -&#091; 1 2  3]\n____________________\nerrado =  &#091; 1 2 -4]\n||errado|| =  4.58257569495584\nNorma euclidiana :  4.58257569495584<\/code><\/pre>\n\n\n\n<p>Las instrucciones en Python son:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code alignwide\"><pre class=\"brush: python; title: ; notranslate\" title=\"\">\n# Norma como error o distancia entre dos puntos\n# caso 3D\nimport numpy as np\n\n# INGRESO\nX0 = &#x5B;0.0, 0, 0]\nX1 = &#x5B;1.0, 2, 3]\nX2 = &#x5B;2.0, 4,-1]\n\n# PROCEDIMIENTO\nX0 = np.array(X0)\nX1 = np.array(X1)\nX2 = np.array(X2)\nerrado = X2 - X1\ndistancia = np.sqrt(np.sum(errado**2))\n# funciones numpy\nNerrado = np.linalg.norm(errado)\n\n# SALIDA\nprint('X1 = ', X1)\nprint('X2 = ', X2)\nprint('errado = ', errado)\nprint('||errado|| = ', distancia)\nprint('Norma euclidiana : ',Nerrado)\n\n# Grafica\nimport matplotlib.pyplot as plt\n\nfigura  = plt.figure()\ngrafica = figura.add_subplot(111,projection = '3d')\n\n# puntos en el espacio\n&#x5B;x, y , z] = X0\ngrafica.scatter(x,y,z, c = 'blue',\n                marker='o', label = 'X0')\n&#x5B;x, y , z] = X1\ngrafica.scatter(x,y,z, c = 'red',\n                marker='o', label = 'X1')\n&#x5B;x, y , z] = X2\ngrafica.scatter(x,y,z, c = 'green',\n                marker='o', label = 'X2')\n\n# l\u00edneas entre puntos\nlinea = np.concatenate((&#x5B;X0],&#x5B;X1]),axis = 0)\nx = linea&#x5B;:,0]\ny = linea&#x5B;:,1]\nz = linea&#x5B;:,2]\ngrafica.plot(x,y,z, label = '||X1||')\n\nlinea = np.concatenate((&#x5B;X0],&#x5B;X2]),axis = 0)\nx = linea&#x5B;:,0]\ny = linea&#x5B;:,1]\nz = linea&#x5B;:,2]\ngrafica.plot(x,y,z, label = '||X2||')\n\nlinea = np.concatenate((&#x5B;X1],&#x5B;X2]),axis = 0)\nx = linea&#x5B;:,0]\ny = linea&#x5B;:,1]\nz = linea&#x5B;:,2]\ngrafica.plot(x,y,z, label = '||error||')\n\ngrafica.set_xlabel('eje x')\ngrafica.set_ylabel('eje y')\ngrafica.set_zlabel('eje z')\ngrafica.legend()\n\ngrafica.view_init(35, 25)\nplt.show()\n<\/pre><\/div>\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<div class=\"wp-block-group has-medium-font-size is-layout-flex wp-block-group-is-layout-flex\">\n<p><a href=\"#norma3d\">Norma 3D<\/a><\/p>\n\n\n\n<p><a href=\"#error3d\">error 3D y Norma<\/a><\/p>\n\n\n\n<p><a href=\"#normainfinito\">Norma infinito<\/a><\/p>\n\n\n\n<p><a href=\"#algoritmo\">Algoritmo<\/a><\/p>\n<\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n","protected":false},"excerpt":{"rendered":"<p>Norma 3D error 3D y Norma Norma infinito Algoritmo 1. Normas de un vector en 3D Referencia: Chapra 10.3.1 p298, Burden 7.1 p320, Rodr\u00edguez 4.4.1 p132 La norma de un vector se interpreta como una distancia entre la coordenada definida por el vector [xi, yi, zi] y el origen [0,0,0]. Tambi\u00e9n se puede realizar respecto [&hellip;]<\/p>\n","protected":false},"author":8043,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"wp-custom-template-entrada-mn-unidades","format":"standard","meta":{"footnotes":""},"categories":[37],"tags":[],"class_list":["post-2822","post","type-post","status-publish","format-standard","hentry","category-mn-u03"],"_links":{"self":[{"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/posts\/2822","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/users\/8043"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/comments?post=2822"}],"version-history":[{"count":7,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/posts\/2822\/revisions"}],"predecessor-version":[{"id":21555,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/posts\/2822\/revisions\/21555"}],"wp:attachment":[{"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/media?parent=2822"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/categories?post=2822"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/tags?post=2822"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}