{"id":5308,"date":"2017-08-19T09:04:40","date_gmt":"2017-08-19T14:04:40","guid":{"rendered":"http:\/\/blog.espol.edu.ec\/telg1001\/?p=5308"},"modified":"2026-04-06T06:26:24","modified_gmt":"2026-04-06T11:26:24","slug":"transformada-z-inversa-conceptos","status":"publish","type":"post","link":"https:\/\/blog.espol.edu.ec\/algoritmos101\/ss-u07\/transformada-z-inversa-conceptos\/","title":{"rendered":"7.1.4 Transformada z Inversa con Sympy y telg1001.py"},"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=\"#conceptoinversa\">inversa<\/a><\/p>\n\n\n\n<p>usando:<\/p>\n\n\n\n<p><a href=\"#inversaz1\">1\/z<\/a><\/p>\n\n\n\n<p><a href=\"#inversaz\">z<\/a><\/p>\n\n\n\n<p><a href=\"#inversafraccion\">z\/(z - 2)<\/a><\/p>\n\n\n\n<p><a href=\"#inversafraccionparcial\">fracciones parciales<\/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=\"conceptoinversa\">1. Transformada z Inversa<\/h2>\n\n\n\n<p><strong>Referencia<\/strong>: Lathi 5.1-1 p495, Oppenheim 10.3 p757<\/p>\n\n\n\n<p>Muchas de las transformadas X[z] de inter\u00e9s pr\u00e1ctico son fracciones de polinomios en <code>z<\/code>, que pueden ser expresadas como una suma de fracciones parciales cuya inversa puede ser revisada en una <a href=\"https:\/\/blog.espol.edu.ec\/algoritmos101\/ss-u07\/transformada-z-tabla\/\" data-type=\"post\" data-id=\"1413\">tabla de transformadas z<\/a>.<\/p>\n\n\n\n<p>El m\u00e9todo de fracciones parciales funciona dado que para cada x[n] transformable con n\u22650 le corresponde una X[z] \u00fanica definida para |z|&gt;a y viceversa. Para lo mostrado, se supone que se usa la fracci\u00f3n parcial mas simple.<\/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=\"#conceptoinversa\">inversa<\/a><\/p>\n\n\n\n<p>usando:<\/p>\n\n\n\n<p><a href=\"#inversaz1\">1\/z<\/a><\/p>\n\n\n\n<p><a href=\"#inversaz\">z<\/a><\/p>\n\n\n\n<p><a href=\"#inversafraccion\">z\/(z - 2)<\/a><\/p>\n\n\n\n<p><a href=\"#inversafraccionparcial\">fracciones parciales<\/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=\"inversaz1\">2. Ejemplo - Transformada z inversa de una fracci\u00f3n X[1\/z]<\/h2>\n\n\n\n<p><strong>Referencia<\/strong>: Oppenheim Ejemplo 10.13 p761, Lathi Ejemplo 5.1 p490<\/p>\n\n\n\n<p>Continuando con el ejercicio presentado para convertir x[n] a X[z], se tiene que:<\/p>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> X[z] = \\frac{1}{1-a z^{-1}}\\text{ , } |z|&gt;|a|<\/span>\n\n\n\n<p>la expresi\u00f3n se puede expandir en series se potencias y obtener los primeros t\u00e9rminos de la secuencia de x[n]. Los t\u00e9rminos son \u00fatiles si se se requieren los <strong>m<\/strong> primeros t\u00e9rminos de la secuencia, es decir <strong>n<\/strong> se encuentra en [0,<strong>m<\/strong>-1]<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>X&#091;z]: \n  z   \n------\n-a + z\n\n F&#091;z]:\n         2    3    4    5    6                 \n    a   a    a    a    a    a     \/1          \\\n1 + - + -- + -- + -- + -- + -- + O|--; z -&gt; oo|\n    z    2    3    4    5    6    | 7         |\n        z    z    z    z    z     \\z          \/\nT\u00e9rminos x&#091;n] entre&#091;0,7]\n&#091;1, a, a**2, a**3, a**4, a**5, a**6]\n\n x&#091;n] con a= 1\/2\n&#091;1.0, 0.5, 0.25, 0.125, 0.0625, 0.03125, 0.015625]<\/code><\/pre>\n\n\n\n<p>Al final de la serie F[z] se muestra un t\u00e9rmino con el orden del error.<\/p>\n\n\n\n<p>De los t\u00e9rminos mostrados, se observa que X[n] = a<sup>n<\/sup><\/p>\n\n\n\n<p>Usando por ejemplo <code>a=1\/2<\/code>, se obtiene como resultado de x[n],<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"558\" height=\"443\" src=\"http:\/\/blog.espol.edu.ec\/algoritmos101\/files\/2017\/08\/TransformadaZ_Ej01Xz_Xn.png\" alt=\"Transformada Z Ej01 Xz Xn\" class=\"wp-image-20501\" \/><\/figure>\n\n\n\n<pre class=\"wp-block-code\"><code>&gt;&gt;&gt; xi\n&#091;1.0, 0.5, 0.25, 0.125, 0.0625, 0.03125, 0.015625]<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">2.1 Algoritmo en Python<\/h3>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: python; title: ; notranslate\" title=\"\">\n# transformada z inversa de X&#x5B;z]\nimport sympy as sym\n\n# INGRESO\nz = sym.symbols('z',)\nn = sym.symbols('n', nonnegative=True)\na = sym.symbols('a')\nu = sym.Heaviside(n)\n\nXz = 1\/(1-a*z**(-1))\n\n# valor a como racional en dominio 'ZZ' enteros\na_k = sym.Rational(1\/2).limit_denominator(100)\n\nm = 7   # T\u00e9rminos a graficar\n\n# PROCEDIMIENTO\n# Series de potencia z**(-1)\nFz = sym.series(Xz,z**(-1), n=m)\n\n# Terminos de X&#x5B;n]\nxn = &#x5B;]\ntermino = Fz.args\nfor i in range(0,m,1):\n    xn.append(termino&#x5B;i]*(z**i))\n \n# SALIDA\nprint('X&#x5B;z]: ')\nsym.pprint(Xz)\nprint('\\n F&#x5B;z]:')\nsym.pprint(Fz)\nprint('\\n T\u00e9rminos x&#x5B;n] entre &#x5B;0,'+str(m)+']')\nprint(xn)\n\n# GRAFICA valores ---------------\nimport numpy as np\nimport matplotlib.pyplot as plt\n# Terminos de X&#x5B;n]\nxi = &#x5B;] ; ki=&#x5B;]\nfor i in range(0,m,1):\n    valor = xn&#x5B;i].subs({z:1,a:a_k})\n    xi.append(float(valor))\n    ki.append(i)\n\nprint('\\n x&#x5B;n] con a=',a_k)\nprint(xi)\n\n# grafica entrada x&#x5B;n]\nplt.axvline(0,color='grey')\nplt.stem(ki,xi,label='x&#x5B;n]')\nplt.xlabel('n')\nplt.ylabel('x&#x5B;n]')\nplt.title(r'x&#x5B;n]= $'+str(sym.latex(xn))+'$')\nplt.grid()\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=\"#conceptoinversa\">inversa<\/a><\/p>\n\n\n\n<p>usando:<\/p>\n\n\n\n<p><a href=\"#inversaz1\">1\/z<\/a><\/p>\n\n\n\n<p><a href=\"#inversaz\">z<\/a><\/p>\n\n\n\n<p><a href=\"#inversafraccion\">z\/(z - 2)<\/a><\/p>\n\n\n\n<p><a href=\"#inversafraccionparcial\">fracciones parciales<\/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=\"inversaz\">3. Ejemplo.&nbsp; Transformada z inversa de una fracci\u00f3n dada con X[z]<\/h2>\n\n\n\n<p><strong>Referencia<\/strong>: Oppenheim Ejemplo 10.13 p761, Lathi Ejemplo 5.1 p490<\/p>\n\n\n\n<p>Si la expresi\u00f3n se usa de la forma simplificada, que es la m\u00e1s com\u00fan para tratar las expresiones con Sympy, el algoritmo anterior para las series no realiza la misma respuesta.<\/p>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> X[z] = \\frac{z}{z-a}\\text{ , } \\Big|z|&gt;|a|<\/span>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> X[z] = \\frac{1}{1-a z^{-1}}\\text{ , } \\Big|z|&gt;|a|<\/span>\n\n\n\n<p>Para este caso se multiplica el numerador y denominador por 1\/z, obteniendo la expresi\u00f3n del ejemplo anterior. Para generar la serie se realiza el, cambio de variable Z=1\/z para generar la serie sobre Z. Luego se restablece en la expresi\u00f3n antes de mostrar los t\u00e9rminos, y se obtiene el mismo resultado.<\/p>\n\n\n\n<p>De los t\u00e9rminos mostrados, se observa que X[n] = a<sup>n<\/sup><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">3.1 Algoritmo en Python<\/h3>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: python; title: ; notranslate\" title=\"\">\n# transformada z inversa de X&#x5B;z]\n# supone que la expresi\u00f3n son fracciones parciales\nimport sympy as sym\n\n# INGRESO\nz = sym.symbols('z')\nn = sym.symbols('n', integer=True, positive=True)\na = sym.symbols('a')\n\nXz = z\/(z-a)\n\n# valor a como racional en dominio 'ZZ' enteros\na_k = sym.Rational(1\/2).limit_denominator(100)\n\nm = 7   # T\u00e9rminos a graficar\n\n# PROCEDIMIENTO\n# expresi\u00f3n Xz con z para aplicar serie\n# separa numerador y denominador\n&#x5B;Pz,Qz] = Xz.as_numer_denom()\nPz = (Pz*(1\/z)).expand(1\/z)\nQz = (Qz*(1\/z)).expand(1\/z)\n\n# cambia Z por 1\/z\nZ = sym.symbols('Z')\nPZ = Pz.subs(1\/z,Z)\nQZ = Qz.subs(1\/z,Z)\nXZ = PZ\/QZ\n\n# Series de potencia de Z\nFZ = sym.series(XZ,Z, n=m)\nFz = FZ.subs(Z,1\/z) # restituye 1\/z\n\n# Terminos de X&#x5B;n]\nxn = &#x5B;]\ntermino = Fz.args\nfor i in range(0,m,1):\n    xn.append(termino&#x5B;i]*(z**i))\n\n# SALIDA\nprint('X&#x5B;z]: ')\nsym.pprint(Xz)\nprint('\\n F&#x5B;z]:')\nsym.pprint(Fz)\nprint('T\u00e9rminos x&#x5B;n] entre&#x5B;0,'+str(m)+']')\nprint(xn)\n\n# GRAFICA valores ---------------\nimport numpy as np\nimport matplotlib.pyplot as plt\n# Terminos de X&#x5B;n]\nxi = &#x5B;] ; ki=&#x5B;]\nfor i in range(0,m,1):\n    valor = xn&#x5B;i].subs({z:1,a:a_k})\n    xi.append(float(valor))\n    ki.append(i)\n\nprint('\\n x&#x5B;n] con a=',a_k)\nprint(xi)\n\n# grafica entrada x&#x5B;n]\nplt.axvline(0,color='grey')\nplt.stem(ki,xi,label='x&#x5B;n]')\nplt.xlabel('n')\nplt.ylabel('x&#x5B;n]')\nplt.title(r'x&#x5B;n]= $'+str(sym.latex(xn))+'$')\nplt.grid()\n\nplt.show()\n<\/pre><\/div>\n\n\n<p>El algoritmo presentado puede ser tomado como punto de partida para los siguientes ejercicios. Realizado para explicaci\u00f3n conceptual.<\/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=\"#conceptoinversa\">inversa<\/a><\/p>\n\n\n\n<p>usando:<\/p>\n\n\n\n<p><a href=\"#inversaz1\">1\/z<\/a><\/p>\n\n\n\n<p><a href=\"#inversaz\">z<\/a><\/p>\n\n\n\n<p><a href=\"#inversafraccion\">z\/(z - 2)<\/a><\/p>\n\n\n\n<p><a href=\"#inversafraccionparcial\">fracciones parciales<\/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=\"inversafraccion\">4. Ejemplo.&nbsp; Transformada z inversa de una fracci\u00f3n X[1\/z]<\/h2>\n\n\n\n<p><strong>Referencia<\/strong>: Oppenheim Ejemplo 10.13 p761, Lathi Ejemplo 5.1 p490<\/p>\n\n\n\n<p>Continuando con el ejercicio presentado para convertir x[n] a X[z], se tiene que:<\/p>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> X[z] = \\frac{1}{1-a z^{-1}}\\text{ , } |z|&gt;|a|<\/span>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> X[z] = \\frac{z}{z-a}\\text{ , } \\Big|z|&gt;|a|<\/span>\n\n\n\n<p>siendo la expresi\u00f3n de ingreso al algoritmo:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>F = z\/(z - 2)<\/code><\/pre>\n\n\n\n<p>el resultado es:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>f&#091;n] : 2**n*Heaviside(n)\n&gt;&gt;&gt; <\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"algoritmo\">4.1 Algoritmo Python para z\/(z - 2) con telg1001.py<\/h3>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: python; title: ; notranslate\" title=\"\">\n# transformada z propiedades con Sympy\n# aplicar luego de buscar en tabla de pares\nimport sympy as sym\nimport telg1001 as ss\n\n# INGRESO\nn = sym.Symbol('n', real=True)\nz = sym.Symbol('z')\nu = sym.Heaviside(n)\n\n# (a**n)*f&#x5B;n] &lt;--&gt; F(z\/a)\nF = z\/(z - 2)  #f = (2**n)*u\n\n# PROCEDIMIENTO\nfn = ss.inverse_z_transform(F,z,n)\n\n# SALIDA\nprint('f&#x5B;n] :',fn)\n<\/pre><\/div>\n\n\n<p>El algoritmo presentado puede ser tomado como punto de partida para los siguientes ejercicios. Realizado para explicaci\u00f3n conceptual.<\/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=\"#conceptoinversa\">inversa<\/a><\/p>\n\n\n\n<p>usando:<\/p>\n\n\n\n<p><a href=\"#inversaz1\">1\/z<\/a><\/p>\n\n\n\n<p><a href=\"#inversaz\">z<\/a><\/p>\n\n\n\n<p><a href=\"#inversafraccion\">z\/(z - 2)<\/a><\/p>\n\n\n\n<p><a href=\"#inversafraccionparcial\">fracciones parciales<\/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=\"inversafraccionparcial\">5. Ejemplo. Transformada z inversa usando expansi\u00f3n en fracciones parciales<\/h2>\n\n\n\n<p><strong>Referencia<\/strong>: Lathi 5.3 a<\/p>\n\n\n\n<p>Encuentre la transformada z inversa para:<\/p>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> F[z] = \\frac{8z-19}{(z-2)(z-3)}<\/span>\n\n\n\n<p>el ingreso para el algoritmo del ejercicio anterior es:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>F = (8*z-19)\/((z-2)*(z-3))<\/code><\/pre>\n\n\n\n<p>con el resultado siguiente:<\/p>\n\n\n\n<pre class=\"wp-block-code alignwide\"><code>f&#091;n] : (9*2**n + 10*3**n)*Heaviside(n)\/6 - 19*DiracDelta(n)\/6<\/code><\/pre>\n\n\n\n<p>activando la variable <code>sym.SYMPY_DEBUG=True<\/code>, se observa el proceso de fracci\u00f3n parcial modificada, la b\u00fasqueda en la tabla, y aplicaci\u00f3n de una propiedad de la transformada z.<\/p>\n\n\n\n<pre class=\"wp-block-code alignwide\"><code>inverse_z_transform(F,z,n): (8*z - 19)\/((z - 3)*(z - 2))\n\napart_z(F)     : (8*z - 19)\/((z - 3)*(z - 2))\n  z**a, ma_za: None  ; a ,ma_ka: None\n  z**a, ma_za: None  ; a ,ma_ka: None\n  z**a, ma_za: None  ; a ,ma_ka: None\n\n_simplify_z: (8*z - 19)\/(z*(z - 3)*(z - 2)) \n P: 8*z - 19 \n Q: z*(z - 3)*(z - 2)\n  P match (a*z-b)**c: {a_: 8, b_: 19, c_: 1} \n  P_leadcoef: 8  : P: z - 19\/8\n  Q match (a*z-b)**c: None \n  Q_leadcoef: 1   Q: z*(z - 3)*(z - 2)\n  k: 8  ; Fz: (z - 19\/8)\/(z*(z - 3)*(z - 2)) \n  simplify_z F: (8*z - 19)\/(z*(z - 3)*(z - 2))\n  simplify(F\/z): (8*z - 19)\/(z*(z - 3)*(z - 2))\n  P: z - 19\/8 \n  P_degree: 1  ; P_zeros : &#091;19\/8]\n  Q: z*(z - 3)*(z - 2) \n  Q_degree: 3  ; Q_unique: &#091;0, 2, 3]\n  apart(F\/z): 3\/(2*(z - 2)) + 5\/(3*(z - 3)) - 19\/(6*z)\n  ma_Qk: {a_: 6, b_: 0, c_: 1}  ; ma_Qk2: {b_: 6, a_: 0, c_: 0}\n\n_simplify_z: -19\/(6*z) \n P: -19 \n Q: 6*z\n  P match (a*z-b)**c: {b_: 19, a_: 0, c_: 1} \n  P_leadcoef: -19  : P: 1\n  Q match (a*z-b)**c: {a_: 6, b_: 0, c_: 1} \n  Q_leadcoef: 6   Q: z\n  k: -19\/6  ; Fz: 1\/z \n  simplify_z F: -19\/(6*z)\n  ma_Qk: {a_: 2, b_: -4, c_: 1}  ; ma_Qk2: {b_: 2, c_: -4, a_: 0}\n\n_simplify_z: 3\/(2*(z - 2)) \n P: 3 \n Q: 2*z - 4\n  P match (a*z-b)**c: {b_: -3, a_: 0, c_: 1} \n  P_leadcoef: 3  : P: 1\n  Q match (a*z-b)**c: {a_: 2, b_: 4, c_: 1} \n  Q_leadcoef: 2   Q: z - 2\n  k: 3\/2  ; Fz: 1\/(z - 2) \n  simplify_z F: 3\/(2*(z - 2))\n  ma_Qk: {a_: 3, b_: -9, c_: 1}  ; ma_Qk2: {b_: 3, c_: -9, a_: 0}\n\n_simplify_z: 5\/(3*(z - 3)) \n P: 5 \n Q: 3*z - 9\n  P match (a*z-b)**c: {b_: -5, a_: 0, c_: 1} \n  P_leadcoef: 5  : P: 1\n  Q match (a*z-b)**c: {a_: 3, b_: 9, c_: 1} \n  Q_leadcoef: 3   Q: z - 3\n  k: 5\/3  ; Fz: 1\/(z - 3) \n  simplify_z F: 5\/(3*(z - 3))\n\n apart z*(Fz\/z)  : 3*z\/(2*(z - 2)) + 5*z\/(3*(z - 3)) - 19\/6\n apart_z(F) as Add: (-19\/6, 3*z\/(2*(z - 2)), 5*z\/(3*(z - 3)))\n  term_k&#091;z]: -19\/6\n\n_simplify_z: 1 \n P: 1 \n Q: 1\n  P match (a*z-b)**c: {c_: 0} \n  P_leadcoef: 1  : P: 1\n  Q match (a*z-b)**c: {c_: 0} \n  Q_leadcoef: 1   Q: 1\n  k: 1  ; Fz: 1 \n  simplify_z F: 1\n\n_z_pairs_table match:\n  k: -19\/6  ; Fz: 1\n  z_pair F&#091;z]: 1  ; ma_z: {}\n  z_pair f&#091;n]: DiracDelta(n)\n  try,check  : True -&gt; True\n   pair f&#091;n]: (-19*DiracDelta(n)\/6, 0, True)\n  term_k&#091;n]: (-19*DiracDelta(n)\/6, 0, True)\n  term_k&#091;z]: 3*z\/(2*(z - 2))\n\n_simplify_z: z\/(z - 2) \n P: z \n Q: z - 2\n  P match (a*z-b)**c: {a_: 1, b_: 0, c_: 1} \n  P_leadcoef: 1  : P: z\n  Q match (a*z-b)**c: {a_: 1, b_: 2, c_: 1} \n  Q_leadcoef: 1   Q: z - 2\n  k: 1  ; Fz: z\/(z - 2) \n  simplify_z F: z\/(z - 2)\n\nz_properties_inverse_z_transform\n\n_simplify_z: 3*z\/(2*(z - 2)) \n P: 3*z \n Q: 2*z - 4\n  P match (a*z-b)**c: {a_: 3, b_: 0, c_: 1} \n  P_leadcoef: 3  : P: z\n  Q match (a*z-b)**c: {a_: 2, b_: 4, c_: 1} \n  Q_leadcoef: 2   Q: z - 2\n  k: 3\/2  ; Fz: z\/(z - 2) \n  simplify_z F: 3*z\/(2*(z - 2))\n P: z \n Q: z - 2\n k: 3\/2  ; P_signo: 1  ; P_degree: 1  ; P_zeros: &#091;0]\n Q_degree: 1  ; Q_poles (real): &#091;2]\n ma_Q1 (c*z-a)**b : {c_: 1, a_: 2, b_: 1}\n F&#091;z]:  z\/(z - 2)\n\n _z_property multiply (a**n)*f&#091;n] &lt;--&gt; F(z\/a) \n P_sign: 1 ; k: 3\/2  ; k_a: 2 &lt;class 'sympy.core.numbers.Integer'&gt;\n Fz: z\/(z - 1)\n\n_simplify_z: z\/(z - 1) \n P: z \n Q: z - 1\n  P match (a*z-b)**c: {a_: 1, b_: 0, c_: 1} \n  P_leadcoef: 1  : P: z\n  Q match (a*z-b)**c: {a_: 1, b_: 1, c_: 1} \n  Q_leadcoef: 1   Q: z - 1\n  k: 1  ; Fz: z\/(z - 1) \n  simplify_z F: z\/(z - 1)\n\n_z_pairs_table match:\n  k: 1  ; Fz: z\/(z - 1)\n  z_pair F&#091;z]: z\/(z - 1)  ; ma_z: {}\n  z_pair f&#091;n]: Heaviside(n)\n  try,check  : True -&gt; True\n   pair f&#091;n]: (Heaviside(n), Abs(z) &gt; 1, True)\n\n  _z_property multiply (a**n)*f&#091;n]:\n  (3*2**n*Heaviside(n)\/2, Abs(z) &gt; 2, True)\n   f&#091;n]: (3*2**n*Heaviside(n)\/2, Abs(z) &gt; 2, True)\n   prop f&#091;n]: (3*2**n*Heaviside(n)\/2, Abs(z) &gt; 2, True)\n  term_k&#091;n]: (3*2**n*Heaviside(n)\/2, Abs(z) &gt; 2, True)\n  term_k&#091;z]: 5*z\/(3*(z - 3))\n\n_simplify_z: z\/(z - 3) \n P: z \n Q: z - 3\n  P match (a*z-b)**c: {a_: 1, b_: 0, c_: 1} \n  P_leadcoef: 1  : P: z\n  Q match (a*z-b)**c: {a_: 1, b_: 3, c_: 1} \n  Q_leadcoef: 1   Q: z - 3\n  k: 1  ; Fz: z\/(z - 3) \n  simplify_z F: z\/(z - 3)\n\nz_properties_inverse_z_transform\n\n_simplify_z: 5*z\/(3*(z - 3)) \n P: 5*z \n Q: 3*z - 9\n  P match (a*z-b)**c: {a_: 5, b_: 0, c_: 1} \n  P_leadcoef: 5  : P: z\n  Q match (a*z-b)**c: {a_: 3, b_: 9, c_: 1} \n  Q_leadcoef: 3   Q: z - 3\n  k: 5\/3  ; Fz: z\/(z - 3) \n  simplify_z F: 5*z\/(3*(z - 3))\n P: z \n Q: z - 3\n k: 5\/3  ; P_signo: 1  ; P_degree: 1  ; P_zeros: &#091;0]\n Q_degree: 1  ; Q_poles (real): &#091;3]\n ma_Q1 (c*z-a)**b : {c_: 1, a_: 3, b_: 1}\n F&#091;z]:  z\/(z - 3)\n\n _z_property multiply (a**n)*f&#091;n] &lt;--&gt; F(z\/a) \n P_sign: 1 ; k: 5\/3  ; k_a: 3 &lt;class 'sympy.core.numbers.Integer'&gt;\n Fz: z\/(z - 1)\n\n_simplify_z: z\/(z - 1) \n P: z \n Q: z - 1\n  P match (a*z-b)**c: {a_: 1, b_: 0, c_: 1} \n  P_leadcoef: 1  : P: z\n  Q match (a*z-b)**c: {a_: 1, b_: 1, c_: 1} \n  Q_leadcoef: 1   Q: z - 1\n  k: 1  ; Fz: z\/(z - 1) \n  simplify_z F: z\/(z - 1)\n\n_z_pairs_table match:\n  k: 1  ; Fz: z\/(z - 1)\n  z_pair F&#091;z]: z\/(z - 1)  ; ma_z: {}\n  z_pair f&#091;n]: Heaviside(n)\n  try,check  : True -&gt; True\n   pair f&#091;n]: (Heaviside(n), Abs(z) &gt; 1, True)\n\n  _z_property multiply (a**n)*f&#091;n]:\n  (5*3**n*Heaviside(n)\/3, Abs(z) &gt; 3, True)\n   f&#091;n]: (5*3**n*Heaviside(n)\/3, Abs(z) &gt; 3, True)\n   prop f&#091;n]: (5*3**n*Heaviside(n)\/3, Abs(z) &gt; 3, True)\n  term_k&#091;n]: (5*3**n*Heaviside(n)\/3, Abs(z) &gt; 3, True)\n\n f&#091;n]: 3*2**n*Heaviside(n)\/2 + 5*3**n*Heaviside(n)\/3 - 19*DiracDelta(n)\/6\n f&#091;n]: (9*2**n + 10*3**n)*Heaviside(n)\/6 - 19*DiracDelta(n)\/6\nf&#091;n] : (9*2**n + 10*3**n)*Heaviside(n)\/6 - 19*DiracDelta(n)\/6<\/code><\/pre>\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=\"#conceptoinversa\">inversa<\/a><\/p>\n\n\n\n<p>usando:<\/p>\n\n\n\n<p><a href=\"#inversaz1\">1\/z<\/a><\/p>\n\n\n\n<p><a href=\"#inversaz\">z<\/a><\/p>\n\n\n\n<p><a href=\"#inversafraccion\">z\/(z - 2)<\/a><\/p>\n\n\n\n<p><a href=\"#inversafraccionparcial\">fracciones parciales<\/a><\/p>\n<\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n","protected":false},"excerpt":{"rendered":"<p>inversa usando: 1\/z z z\/(z - 2) fracciones parciales algoritmo 1. Transformada z Inversa Referencia: Lathi 5.1-1 p495, Oppenheim 10.3 p757 Muchas de las transformadas X[z] de inter\u00e9s pr\u00e1ctico son fracciones de polinomios en z, que pueden ser expresadas como una suma de fracciones parciales cuya inversa puede ser revisada en una tabla de transformadas [&hellip;]<\/p>\n","protected":false},"author":8043,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"wp-custom-template-entrada-ss-unidades","format":"standard","meta":{"footnotes":""},"categories":[177],"tags":[],"class_list":["post-5308","post","type-post","status-publish","format-standard","hentry","category-ss-u07"],"_links":{"self":[{"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/posts\/5308","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=5308"}],"version-history":[{"count":8,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/posts\/5308\/revisions"}],"predecessor-version":[{"id":24040,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/posts\/5308\/revisions\/24040"}],"wp:attachment":[{"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/media?parent=5308"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/categories?post=5308"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/tags?post=5308"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}