{ "cells": [ { "cell_type": "markdown", "metadata": { "nbsphinx": "hidden" }, "source": [ "# Characterization of Systems in the Time Domain\n", "\n", "*This Jupyter notebook is part of a [collection of notebooks](../index.ipynb) in the bachelors module Signals and Systems, Communications Engineering, Universität Rostock. Please direct questions and suggestions to [Sascha.Spors@uni-rostock.de](mailto:Sascha.Spors@uni-rostock.de).*" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Eigenfunctions\n", "\n", "An [eigenfunction](https://en.wikipedia.org/wiki/Eigenfunction) of a system is defined as the input signal $x(t)$ which produces the output signal $y(t) = \\mathcal{H}\\{ x(t) \\} = \\lambda \\cdot x(t)$ with $\\lambda \\in \\mathbb{C}$. The weight $\\lambda$ associated with $x(t)$ is known as scalar eigenvalue of the system. Hence, besides a weighting factor, an eigenfunction is not modified by passing through the system.\n", "\n", "[Complex exponential signals](../continuous_signals/standard_signals.ipynb#Complex-Exponential-Signal) $e^{s t}$ with $s \\in \\mathbb{C}$ are eigenfunctions of linear time-invariant (LTI) systems. This can be proven by applying the properties of LTI systems. Lets assume a generic LTI system with input signal $x(t) = e^{s t}$ and output signal $y(t) = \\mathcal{H}\\{ x(t) \\}$. The response of the LTI system to the shifted input signal $x(t-\\tau) = e^{s (t-\\tau)}$ reads\n", "\n", "\\begin{equation}\n", "y(t - \\tau) = \\mathcal{H}\\{ x(t-\\tau) \\} = \\mathcal{H}\\{ e^{-s \\tau} \\cdot e^{s t} \\}\n", "\\end{equation}\n", "\n", "due to the implied shift-invariance. Now considering the implied linearity this can be reformulated as\n", "\n", "\\begin{equation}\n", "y(t - \\tau) = e^{-s \\tau} \\cdot \\mathcal{H}\\{ e^{s t} \\} = e^{-s \\tau} \\cdot y(t)\n", "\\end{equation}\n", "\n", "It is straightforward to show that $y(t) = \\lambda e^{st}$ fulfills above equation\n", "\n", "\\begin{equation}\n", "\\lambda e^{s t} e^{-s \\tau} = e^{-s \\tau} \\lambda e^{st}\n", "\\end{equation}" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Example**\n", "\n", "An LTI system whose input/output relation is given by the following inhomogeneous linear ordinary differential equation (ODE) with constant coefficients is investigated\n", "\n", "\\begin{equation}\n", "a_0 y(t) + a_1 \\frac{d y(t)}{dt} + a_2 \\frac{d^2 y(t)}{dt^2} = x(t)\n", "\\end{equation}\n", "\n", "with $a_i \\in \\mathbb{R} \\quad \\forall i$. In the remainder, the output signal $y(t)$ of the system is computed by explicit solution of the ODE for $x(t) = e^{s t}$ as input signal. Integration constants are discarded for ease of illustration." ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$\\displaystyle y{\\left(t \\right)} = \\frac{e^{s t}}{a_{0} + a_{1} s + a_{2} s^{2}}$" ], "text/plain": [ " s⋅t \n", " ℯ \n", "y(t) = ─────────────────\n", " 2\n", " a₀ + a₁⋅s + a₂⋅s " ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import sympy as sym\n", "sym.init_printing()\n", "\n", "t, s, a0, a1, a2 = sym.symbols('t s a:3')\n", "x = sym.exp(s * t)\n", "y = sym.Function('y')(t)\n", "\n", "ode = sym.Eq(a0*y + a1*y.diff(t) + a2*y.diff(t, 2), x)\n", "solution = sym.dsolve(ode)\n", "solution.subs({'C1': 0, 'C2': 0})" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Exercises**\n", "\n", "* Is the complex exponential signal an eigenfunction of the system?\n", "* Introduce $x(t) = e^{s t}$ and $y(t) = \\lambda \\cdot e^{s t}$ into the ODE and solve manually for the eigenvalue $\\lambda$. How is the result related to above result derived by solving the ODE?\n", "* Can you generalize your findings to an ODE of arbitrary order?" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Example**\n", "\n", "The following inhomogeneous linear ODE with time-dependent coefficient is considered as an example for a **time-variant** but linear system\n", "\n", "\\begin{equation}\n", "t \\cdot \\frac{d y(t)}{dt} = x(t)\n", "\\end{equation}\n", "\n", "The output signal $y(t)$ of the system for a complex exponential signal at the input $x(t) = e^{st}$ is computed by explicit solution of the ODE. Again integration constants are discarded." ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAHUAAAAVCAYAAAB48KHmAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAE5klEQVRoBeWZ7VEcMQyGN8wVkFAC6eAIFQQ6IHRA6OAYfsE/hnQAVJAJHYRUQKCDo4Nk6IC8j2N7vF6v7d3j4wDNLPLKkmy9lmwv19zf3zeLPoeHh2s1Pmr1any9VJ2HxiDlb6VZkI6OjmZyMa10s2b1K9Vfl9pArGqD72D6jowfS5rktmw3xPdrfdjA7sTPam0eQ0/jk4gHeuCrdoxLyx1bU4MH2ndzFkd2HcpQyJFsBmOV8xf2yTeF5TEdvahy9F6OfomvhwO4tu0n8C21b50crnfkn8XvQvlztDWHTY37U8+F2l/iOUhGnD/03KhtkjewOVN7L7aJ362PXqxi/b5366eI6SLb74kGP+2bgOSARUb/Tehgh/0yUCvh4gkJSBKPxXYV20hGRX8QLy6o9VfCyqoVWRWmiyzqjoLKbaFbmuKtdDrVaO2wpwqWnmwMreRMxZUJpIRVxrTVVYXpqEVVQJwP2QxXP1l10ZpS+wX7nbZoed4U4yZPMCO26MFUiVWt3ypMJ3jTwFTMVz0f9Vzr3Veg7TsXD88bMia+VDTSYVC2JPyxXU0l4zy6Ev8mHhL2+PFjhZ1L0OYCdePmofmbBBUnLmKCX+o9xMWphzyJVahAW37Yov9YOevAxYzLz2BMzaLKwYGMcUIFnusJgaaakIf0SS+d81T2LBSBok+mE1AfzdXBhIskP4xVpRs442JTAjxQN/NlsSAWjEXtzF8+2WHWxbmw1FASq9BQvtgFwN8kkTixssh7ag/GdCIjJn+lByKI1tlhZXFVUomxnkSe8OOz3EvbDewBr0iaY+2FpOgro+CrTuMxr07SRra5+EPVLFZ2LAogxItbtksw56saUyqVy4xzSFUeOy+WkzWxjO+6u0gvfMUmd56iS8YT8NKR8ACTzu1cMj70S3eJOJ4SVkZffqlWFpLk6uwQkldjuiIHZnHEMQJkv/VKRhUjiytVojTJBn0yvXSxqAo2PcqTSH9rFB5DiouYwOhBSX5JEu4b+GZ3mEvWSqihmE7kxBHnD+eQWWQrZCAOa1fJTpeth8VLkQlcNj4RmFTkFzvs8VMk2T7FmdqaR2K+xOUXuaWcf8lhZSw1FtstZypj0J6pfRzMYRCmE+P1/x8yMd5a2Ab84gS66KGfotber4lxaUI/TgwqNR4v5a+Rj6c4U5NjB0IuLX4XC+SlZi9W8kdFbotz223EwZrtN/7f7SBMV3BmqQWwHJMdPKltlAXasHYx84slH2YrFo8XFBv+vZiSx/4e+71vx/Hjav6An0rioq3scliBb+tCprEoAv79eCfuaBCmYaVS9nyPEgDfSyZ7xFOV+l3y+HYmkSH8nMoP372NePx9apT0h4CerQI1r6nGP9ADh6iYOCYWjU8SuMEhsEPeWJtd8XAR6HKUw2pXStx8wYoxII67GJdhmPb9Lqnf6U70XGf65+qf9vXn5PwGqGee03lNfcQ6FqtaHEJMzfarzDjR4z+m1SZryJ74U4ZMckRFxxnl+kqczMP+rdAiWNVi5DF1Zyr7ONuEo3M12Nd7vzXVx6WB77bUWeP8dLjVx27MpaPj7yUIxmJVG1uMqTtTWeVVdfJjK2cpZ2LqLI3H4TOIc4jbWS1xMRhb4bVjLKPeGKxq42hjWrtn9+nZvXzW1x/KpTtDP5S9pfYQrGpxSWH6D2o43MOB2js2AAAAAElFTkSuQmCC\n", "text/latex": [ "$\\displaystyle y{\\left(t \\right)} = \\operatorname{Ei}{\\left(s t \\right)}$" ], "text/plain": [ "y(t) = Ei(s⋅t)" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "ode = sym.Eq(t*y.diff(t), x)\n", "solution = sym.dsolve(ode)\n", "solution.subs('C1', 0)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Note, $\\text{Ei}(\\cdot)$ denotes the [exponential integral](http://docs.sympy.org/latest/modules/functions/special.html#sympy.functions.special.error_functions.Ei). The response $y(t)$ of the time-variant system is not equal to a weighted complex exponential signal $\\lambda \\cdot e^{s t}$. It can be concluded that complex exponentials are no eigenfunctions of this particular time-variant system." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Example**\n", "\n", "A final example considers the following non-linear inhomogeneous ODE with constant coefficients\n", "\n", "\\begin{equation}\n", "\\left( \\frac{d y(t)}{dt} \\right)^2 = x(t)\n", "\\end{equation}\n", "\n", "as example for a **non-linear** but time-invariant system. Again, the output signal $y(t)$ of the system for a complex exponential signal at the input $x(t) = e^{st}$ is computed by explicit solution of the ODE. As before, integration constants are discarded." ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAg4AAAA/CAYAAACIAkAYAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAVXElEQVR4Ae2dS5IdNRaGrys86ujogGIFwA7AHvWQ8g4wtQLbO6DDIzNzwA6wV2BgB+AV2LAD6BW4qB10/58qpcrMm++6+f4VkVdKvfVLRzo6Oql778WLFxeHw+FXPWXz13ffffd52dPv4yIgzD9TCT/rAf/H45bm3I2AEVgSAqb/JfXGvuuisfi7EPiiAoXH93Oej3JunFeld7+OjIA66qmK+FHPb3qejFxcyl7lwqh8nTxO6FDe906YnbMyAptFwPS/2a5da8NYg85LlQ9ChsQ4aNCyWNnMhIDw/1ZFf6/nldzPpqpGNln9KtvSjalAdzlGoISA6b8EiF9nR0Bj8o9yJeR3jd9ZOcDv0yOgzuC4CKbhD7knYxqylj5Wma9O0Wrl85keJCY2RsAIdERANGP674iVoy0DATMOy+iHuNhOdjxBszVhIeWIZZ8CCSbAP0+RkfMwAjtCINKg6X9Hnb7mpqajijU3Ys111+KN8gkKkUgbjkRDVW1TvI/k/zwLIy3mifyDGOnmtdPvI6V51ClmFknxqe+DmEbvQVohGyYEaclvcn+t55cYx7YRMALVCIhOTP/V0Nh3wQiYcZi/cy6zKrzpUZXvNeGkIw252bGgAdv5KxilGSpteBbLls3xSjBy/4B/DIv+to2AEWhEwPTfCI8Dl4iAjyrm75UoMfirR1WeaoHmWCAaFnD0C9i9tBrFQ2KBtGGIVOBnpfuRR3kkZifLs6/Eo7WujmAENo6A6X/jHbzF5lnisM5eRdrwvqnqWsiZkC5kVyk+csyRpAX5fDIGgHB0FWAwrmMesvls8z+ykSwQxuej8XgFRibUSWEwNlXlKsp4hnKVO/Xi2GcTXwmpHTBoYG6mbLyhs7acTf8VPWb6rwBlJC8zDiMBO2a2IpDyosxEwoVRYRGXzSKO7sK3cv+kJy06crOwfiH7P7ILJgvjyIMvLWJeMAuxPCQMMCNXss9l/yA7GuIjxWDxnnzRVrnU+6UemJff9U5dJq+Hyj6ZUf3D+bfs1H9dMlf8yBR+UHyOrzja6iPR6lKM48yEgPoy0mOsgenf9B/HwmEK+jfjkOBep0ODhMWFy5u+jC2QHwsmSoowEEgP8kwCi0r+Xa/JvJYrKGkqLRILJqR0q6j8ao82FMbCRPzJjcoOkgbqp4d6U88g/Zi8MqctsKmvKktS+wMDBRZEkA2jGBkpMw+VqK3XU/1r+jf9pwGs8TAJ/Z+lEu1YHQIaJCySLC5fyl21K2UHjtSBxeOQ2ehCBGkCfiUDo3GlcBZiJqSXcpd3N6Uki3hFuhIlJOGqbtW7Co9FVLZLJVR/8OeYqK6vjrJR3MRAxcAMB5gIjjxsNoSA+tb0f9Ofpn/hMCX9W+Kw0okkmzQ4+w6fU2bvB9lpVyk3O3Deo9ShbQcLg7FWsfbVSruyrtr0VV8JDrd/VjEa7+QfGEiNh1UzVHVg7c1f/QjTYPq/7XjTv46YBcck9G+Jw+3AW40rmzTYQfJ1A/oK7E45fqgiHvxRViQOeglVA0tBwXDEQbxkFJ8FzGZCBIQ5kh+kDYkJ7Fh8kBhVxI35EG6zcgQ0LmAaTP8r78e66q+B/i1xqOu9ZftzjoV0ADsZDbijHar8kDqw+L/Vk/QgUqKiA44ViQMTEztTyuC4Y5FG9YTJQZoSFkS9n1NR2eF/N2RTf9oeb7NEUZDPSYPSpGzSEU57aScL7EM9+KMgGhdcvVYbxSH9hyyU/E/xBQR5hjZk+bZaqgdtbTMBn7ZIDl88AqZ/dZHGvOk/G6pT078Zh8XPEccV1CD5+Ni30Qepw6XSNS6ECodZOGI+GnOeMVD1RXrCAs+XHwfZabGVm0kFf76uSO2Wmz/0QkrDhVUwEOiH/C2bRZ947OS4HAvmoVG/Q+lQHIVRCFIc2ZERacRQ8SiDuFXmH/L8lx7qmQ9HaTW1Lx+QuSNTQB/WmS7MRV1a+y8EAY0D07/6QjiY/m/H5KT0f/+2XLu2ioAIDOW4oGW/1TZWtAumIep45INhovjKgK9OwoKv9ys9F3oPC77sj/U0LcAHhSOlIE3MQ6/huCgwMbzUGaWpZSwUxm7y37ITs1OXzwD/TwakcZKVI6CxZPq/7UPT/y0Wg11mHAZDN09CTQL/m6fkYaWqvveGpRyeSmUibWBhf1fORWHs3PG+1BMXfZiEtFArvJFpIHE0iovUAWYBRiQoqsawvrbSXyjNe9mpLj3ygPmpM3E3Eo9U6uLZf+EIaGyY/lv6SBiZ/osYnZz+zTgUAV78m4hi8oV48aAcVxCmAdPEADC55E3TwpuPF9ws7nq4ACseaxx418OOZqjprdsQC1K5KFPy+lH0y9nRbwhDksvGzrkRUB+b/ts7wfRfxOjk9G/GoQiw37aBQFwgI8FUtSrGiWHX0dHVzpgEdByQFMAw8Mkjd1805qXwKh2Hfyo9+g1l3QZ5BdOm40AkdDbipBkSZT9xxxGUQvMBdhuBDSIQadv0f9O5J6f/0RkHTZJcOBQ7snaMdo1Xm4EDjECGgMYSiyyLN0cHBd0O+bPIY1p1EW6iHf8qDyQD/HU4CpUH2SzIHFV0EiMr3pGOg/zQbfhKdiPTQXkNhjZRt7Lha5qISTlsVe/Cx/PJqnps+spqjMSxbvq/gf/k9H82ZreqAxHjlkXCdUUyIRDfxgj0RYCdRXl38ZX8vtGYKo8/Ftb4RUUspyp9DKuyYT6QGiSjcrj2+5Xs3gt/lhbdht5pUwXkUHq+ArnK8gtBctO2b/Q8CR4r/lFbPJ+suP9GrHoV/Zr+BfhY9H/vxYsXTIKIR096dqb8mEgfyu585qu4TAzp3xjl3rxRm9klghWfFRZ2x5tv/B0bKLxgCp7rYQwzeYDfO/mHP9+Sjdie8RcXZN65NCuI7GWTjt0/+BMH/zfyb+wHhVMuaUlDuZjB41b5nULaECqhvKgPzBF1QxmSeyk4PomKoHpdn1H9NzmfqF2m/4HDUdiZ/kvYCZNR6V/58+n6k1EYh6zyb2VXXjiUhTNZFr6xBwOFnWwSJb+lG7UXrXwWodkYB9WBhSZeksSOtXHhXDqma6qfsO69IK6pfaeoqzBiMtzkfKK2mf5PMUhWmsfa6F/1DYzDWEcVLEQFUW6pX1ko2f1VabKTjvR7MedZQ2fZEWoggDe7bMTc7/VcZvWxNQ0CSExeTlPUakvZ8nxi+l/tsDxJxVdJ/2MxDpwtN926h9IKn7MhTi2YLB3p2WXswSBuG/K/BKfCBgbutfDmnxXDP0ueKmPn04xAhjlKlUd00Jxyd6Fbnk9M/7sbzjcNXjP9n5xxEBiIXtu+okDi0CQOJz0KXZs2wgocMHN+JocOAMwDkof/qk64baZBAOwtbWjAesvziem/oeP3EbRa+r/f1j8a3Oz82Y3y6RlX9SZJQhbGbjV/hz7ShKOFUHFYJFFEIz8WJ/4vAMWgpMwmdzSkJ59UVgzYmB2PZGbReBf+9ANSBq5Yxs15K4xfUC6UbTMuAui17EraoPZ6PrkdU6b/Wyz26Fot/bcyDurN5yJ2LrlhQXmtJ7+YIxXAP28e6IXda8EoPcwAYlniX8iGMagzKOrF3XhdnOCvfCirU9xcRnznm2d2ckHTOFU+zBhiymdyz7V4wCjAzNEvMBBIgY6YPvnZjICA8J5Fr2WEpvTJ0vOJ0FLfm/77jJoNxl0z/TcyDmoYC9u7rM9Y6MvKjPiVFxp2FOV4WRbBIk3bhEl6dsCtRnVk4VuVUZ1hnmB4YMjyjNjU7WDH85HqwCSGQfrT1jc3Mf1rBHoioLHl+USYCQfTf8+x4+jLQqCRcVBV2YXGhQTpQvk8lp1+2e9cfk07aNI06TcoOOhIwIDMZtRuyn+rp089ED1FvCrrrnAWaxbq2T6/jBVTXeZkWmI1bO8Hgd3OJ7GLTf8RCdtrRqCRcdAgDwyAbBZ7FtC00MiP3QN+ZYmDvKqN0hA/nqVXR7rxbWM+mtKeJCxre+U9FHcsAKbhJ+XfxjzdsRgnNwLLQiCjqYPs3c0nuZ4w/efAsHOdCDQyDrkmoQ8Q7/+O3hA/nxGWd9hX8odBqDKkYeJIzIbciMqvS5FJTz6tRmnXpuPwqRrFZTZcdIXUoe0LlFYMHMEIrAyBPc8npv+VDVZX9xiBrowDUoLyAlel30AJxKvTTyjoN2jR5KyP+GXmA4lDuTx5HRvlsSodB9UXJulL2TAOfKXyaeZ33Dj7GIGFIaCxWsXo963lbueTjNZN/31HjOMvCoGzjrUpLOIa/EgOeNDKLxuYgIdlz+w9MQRMQPLjj63KTANRw795ZWm2avEnLGCAHoWNEVg8AhnN/i0bpvcuxvOJ/glVAJr+7zKKnHY2BLoyDlxUcdCE8b0e/ogqfsqYjhxyLXgjN/oPVYZ8ohY/t8HV3RdQx5RU5blKP7UdyQPt5z4LJC82RmDRCGRjlkUfGmbRG2p2P5+Y/ocOHadbAgKD/uRKg54vAy5kVyoPyp97GFq/MKgCQGkRY/JvnVw4tWmTtRWs0DbffHs33Zk7apzGKozuya7KVn67nE9M/zsimo00VWO2259cQdR6kmhSbnYaaAaXP8PMQ8NEMFT3gN0I6TdvhCW7NyQPHNncZQe3eazcwEUh8FDjlXHb2yid55MMNdN/7+HjBAtBoMtRBbuLN7n6htsjNehrPydUGJ9tshgiPehssvikS599dk683ojvs6o/WG8TXPO9ICDahMH9cIf2ej4pgmf6L+LhtxUg0OWrCiQA55ow0G1AnP6j3FW6DeXmogfBf1HwJUVXw6eVQyUVXctYWry4c7PEYaae0XhGJweGGEaXOzYWPwZVR+qKJHDq20efquw63SRVp9V4PilCZPov4jH5m+m/P+StjINArZUsNBWndNd6+B+Gb/W0TjTEU37EL2hcN5Wx1zBhBJPBovHIePUbBcILUXlQzosp9c6XPXwih74JX/6swcA4MA4q9YzGaoAwaqXlprKV3vNJE0AdwoSh6b8DTlVRhJ3pvwqYnn6tjEPP/ArR1UkwAZ0mGsXtFK9QwH5f+OqEheNqvxD0b7nGWFxs6xKvhmlVW1BO5F9N4461rk2b8VdbPZ/c9Kbpf8Co1vgx/Q/ArSrJWZWn/RaPAMc/fImxm0XjRD3C+fpmjPt/M13ZtyGm/76I3cQ3/Q/D7SiVGYcjSFbhwY5jkMh3Fa0boZJaZNFj2MXXOiPA5yyXhYDpv2d/mP57AtYS/X5LuIMXgoAGPpMFSnucbyJy4+IolE/5K+xdH/Oo/WACU4COAgYl3p/lH5R4ZbPTuCRAhvtHwA3zRu4jBkx+4Bt3J9yCWolxFg99Ccr9RA8XIwXFStn0F3Uir5d6ELOTF/4oDmOTlnDCcKNfQXqYHPzQ+eFIgvpSHyRMxKNd+JGWcPILRm7SkjdxwQVzKf+kCyE36SrrHWL7Z3EIqM/oU9N/Rc8IG9N/houwmIT+B10AVdF39hqIgDo6Lgqd/mZb8VlAWBTvDSxyU8kyQgHDgqKo/LkOnYvEElMlNws8C21Y3MtAZGnwBt/wSbBsCBFF1M/lZjEPJvN/qxeUKoO/bBR8y4s0F6b8pIf6oIRJHWAIXulhwiOcLyNCPXN+tCd9vSQ36QvKw/KjXhxZBcZBNvlR98KXTHr/U0+4YEw27Wmtt+LYTICA+sP0fwecs/Fs+heGwmJ0+lcZ3S6AukOfOuk4CLAoVP2/xzilLT9XJo1fNKDTop5VmR01GtQslH3MA6VJ94jIHbFmx5c3lMunm6lcuVn8y1eIo8CKlCPWEYXGyJRcKwyJx6WeYBSGH0+SItyEhH+nTWVlfuSdNw/0Qv2ZQPKGz5yj6VrvGN/2shAw/Rf7w/R/i8dk9H92W6ZdK0GABSztRFdS51GqqQUSpgCx+7tyAQqLC35alMtxat7f1/inxThXLjv+sqHchzlPmIBYl4PS8p43XK4Gs0E7CEeiBGPB7azByI8+R+LQaBSPcQEzwR9RIW3hU2guVIvSjIhXl3o3luXA2RAw/WfQa1zH8Wz6FybCYzL6vz/b8HfBvRHQwGDxYoFpXUR6Z77OBGGxVdXLi3G+NX0lDvm0de5YLscUaYHPIrO7LzMfLOaVRumRRFB/jk+QknCdM0cXT/V8rQeJBMcWhHUx6DI81wMDgo4FUheORci/b72VxGYpCKgPTf/Fzojj2fR/i8sk9G/G4RbwNbjYbRw0gSSJA5OJnibCWUO7htYxiu6ZUOtMjHMULtyOLoM5ilTtEfNkV8/C3mba+gcdCJiEl7I/ZJnhx2LfJf+QROmZSK9kw2QERkNuGBtue4Wh6VtvJbFZEAKm/2JnxPFs+hcuovHJ6P+s2A9+WzgChfNNDRR2lZHrXnjVT189tZ8jABblgjIgJSksTLJycgYaTdsCHuM12rlyL6si5squCq7yY1GnH1/riYwCfhfKC4VL3F0M0pWCBETpOfYgT3QfIl6nqneXOjnO6RAw/eewzI1n0/8NLpPRvxmH3EBcgfNcdQxctogGLpvzaxaDPZuv1PhvhEP5SAIx/Q/yT9IZveNGgajOgG9XQ7ks7JFBCen0TrlxJ4Qf/cRTa5SGPiQN/Rn7N/rxlUY+v3I+5byfK37Zj/eIQ9d6l8vx+/wImP6P+8D0X8RkEvr355hF0Cd/0yTPjhjJQevnmIrLrpTdZ9hF6z1p/8tvtybDBdH8dQZCwEn+cbFM2MgvSiBYjF/qnf9Ugel4rod+IA/ScWxAPhwXwBwEf8VNXzvITXg4EpDNZ5bc5cCxAJ9Ikoa0+Twr741QnIPiI1kgXZQ44BekB7IL/az3WN/ItFDfJ3pgith9xeMOOUOdOFJJWMhdW28S2EyHgPrC9H9HuHPj2fQ/Mv0L6/A5phmHOw7auybvM3HctSynNwJGYFkImP6X1R+uTTMCkXE4a47mUCNgBIyAETACRsAI3CJgxuEWi7lcV1nBfc7X56qryzUCRuC0CJj+T4unc5sAATMOE4DcUkS8jOdIM7glnYONgBFYPwKm//X34e5aYMZh5i7XmVFUfEOJzsYIGIEdIWD631Fnb6ipZhyW0ZnxSmA0622MgBHYFwKm/3319+pba8ZhAV2oXQef9PHd/pA/ZVpAC1wFI2AEhiJg+h+KnNPNhYAZh7mQPy6Xi0y4W+B3TSTx+/zjWPYxAkZgiwiY/rfYqxttU7rHoaJ9XEbzeYW/vUZEQJjHC2GeyR31H0Ys0VkbASOwFARM/0vpCddDYxHFXS6bK5vHSBze60Gjv/ykG/LKqfw+HgLqLHDnH86arhkerwLO2QgYgdkQMP3PBr0LPkbgibzKfAHvv/0fu4rg6kuOkmEAAAAASUVORK5CYII=\n", "text/latex": [ "$\\displaystyle \\left[ y{\\left(t \\right)} = - \\begin{cases} \\frac{2 \\sqrt{e^{s t}}}{s} & \\text{for}\\: s \\neq 0 \\\\t & \\text{otherwise} \\end{cases}, \\ y{\\left(t \\right)} = \\begin{cases} \\frac{2 \\sqrt{e^{s t}}}{s} & \\text{for}\\: s \\neq 0 \\\\t & \\text{otherwise} \\end{cases}\\right]$" ], "text/plain": [ "⎡ ⎛⎧ ______ ⎞ ⎧ ______ ⎤\n", "⎢ ⎜⎪ ╱ s⋅t ⎟ ⎪ ╱ s⋅t ⎥\n", "⎢ ⎜⎪2⋅╲╱ ℯ ⎟ ⎪2⋅╲╱ ℯ ⎥\n", "⎢y(t) = -⎜⎨─────────── for s ≠ 0⎟, y(t) = ⎨─────────── for s ≠ 0⎥\n", "⎢ ⎜⎪ s ⎟ ⎪ s ⎥\n", "⎢ ⎜⎪ ⎟ ⎪ ⎥\n", "⎣ ⎝⎩ t otherwise⎠ ⎩ t otherwise⎦" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "ode = sym.Eq(y.diff(t)**2, x)\n", "solution = sym.dsolve(ode)\n", "[si.subs('C1', 0) for si in solution]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Obviously for this non-linear system complex exponential signals are no eigenfunctions." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Transfer Function\n", "\n", "The complex eigenvalue $\\lambda$ constitutes the weight of a complex exponential signal $e^{st}$ (using complex frequency $s$) experiences when passing through an LTI system. It is commonly termed as [*transfer function*](https://en.wikipedia.org/wiki/Transfer_function) and is denoted by $H(s)=\\lambda(s)$. Using this definition, the output signal $y(t)$ of an LTI system for a complex exponential signal at the input reads\n", "\n", "\\begin{equation}\n", "y(t) = \\mathcal{H} \\{ e^{st} \\} = H(s) \\cdot e^{st}\n", "\\end{equation}\n", "\n", "Note that the concept of the transfer function is directly linked to the linearity and time-invariance of a system. Only in this case, complex exponential signals are eigenfunctions of the system and $H(s)$ describes the properties of an LTI system with respect to these.\n", "\n", "Above equation can be rewritten in terms of the magnitude $| H(s) |$ and phase $\\varphi(s) = \\arg \\{ H(s) \\}$ of the complex transfer function $H(s)$\n", "\n", "\\begin{equation}\n", "y(t) = | H(s) | \\cdot e^{s t + j \\varphi(s)}\n", "\\end{equation}\n", "\n", "The magnitude $| H(s) |$ provides the frequency dependent attenuation/amplification of the eigenfunction $e^{st}$ by the system, while $\\varphi(s)$ provides the introduced phase-shift." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Link between Transfer Function and Impulse Response\n", "\n", "In order to establish a link between the transfer function $H(s)$ and the impulse response $h(t)$, the output signal $y(t) = \\mathcal{H} \\{ x(t) \\}$ of an LTI system with input signal $x(t)$ is considered. It is given by convolving the input signal with the impulse response\n", "\n", "\\begin{equation}\n", "y(t) = x(t) * h(t) = \\int_{-\\infty}^{\\infty} x(t-\\tau) \\cdot h(\\tau) \\; d\\tau\n", "\\end{equation}\n", "\n", "For a complex exponential signal as input $x(t) = e^{st}$, the output of an LTI system is given as $y(t) = \\mathcal{H} \\{ e^{st} \\} = H(s) \\cdot e^{st}$. Introducing both signals into the convolution integral yields\n", "\n", "\\begin{equation}\n", "H(s) \\cdot e^{st} = \\int_{-\\infty}^{\\infty} e^{st} e^{-s \\tau} \\cdot h(\\tau) \\; d\\tau\n", "\\end{equation}\n", "\n", "which after canceling $e^{s t}$ (the integral depends not on $t$) results in\n", "\n", "\\begin{equation}\n", "H(s) = \\int_{-\\infty}^{\\infty} h(\\tau) \\cdot e^{-s \\tau} \\; d\\tau\n", "\\end{equation}\n", "\n", "under the assumption that the integral converges.\n", "The transfer function $H(s)$ can be computed from the impulse response $h(t)$ by integrating over the impulse response multiplied with the complex exponential function $e^{- s \\tau}$. This constitutes an integral transformation, which is later introduced in more detail as [Laplace transform](https://en.wikipedia.org/wiki/Laplace_transform).\n", "Usually the temporal variable $t$ is then used\n", "\n", "\\begin{equation}\n", "H(s) = \\int_{-\\infty}^{\\infty} h(t) \\cdot e^{-s t} \\; d t\n", "\\end{equation}\n", "rather than $\\tau$ which remained from the convolution integral calculus.\n" ] }, { "cell_type": "markdown", "metadata": { "nbsphinx": "hidden" }, "source": [ "**Copyright**\n", "\n", "This notebook is provided as [Open Educational Resource](https://en.wikipedia.org/wiki/Open_educational_resources). Feel free to use the notebook for your own purposes. The text is licensed under [Creative Commons Attribution 4.0](https://creativecommons.org/licenses/by/4.0/), the code of the IPython examples under the [MIT license](https://opensource.org/licenses/MIT). Please attribute the work as follows: *Sascha Spors, Continuous- and Discrete-Time Signals and Systems - Theory and Computational Examples*." ] } ], "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.7.10" } }, "nbformat": 4, "nbformat_minor": 1 }