{ "cells": [ { "cell_type": "markdown", "metadata": { "toc-hr-collapsed": false }, "source": [ "# Chapter 4" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "from control.matlab import *\n", "import matplotlib.pyplot as plt\n", "import numpy as np\n", "\n", "plt.rcParams['font.family'] ='sans-serif' #使用するフォント\n", "plt.rcParams['xtick.direction'] = 'in' #x軸の目盛線が内向き('in')か外向き('out')か双方向か('inout')\n", "plt.rcParams['ytick.direction'] = 'in' #y軸の目盛線が内向き('in')か外向き('out')か双方向か('inout')\n", "plt.rcParams['xtick.major.width'] = 1.0 #x軸主目盛り線の線幅\n", "plt.rcParams['ytick.major.width'] = 1.0 #y軸主目盛り線の線幅\n", "plt.rcParams['font.size'] = 10 #フォントの大きさ\n", "plt.rcParams['axes.linewidth'] = 1.0 # 軸の線幅edge linewidth。囲みの太さ\n", "plt.rcParams['mathtext.default'] = 'regular'\n", "plt.rcParams['axes.xmargin'] = '0' #'.05'\n", "plt.rcParams['axes.ymargin'] = '0.05'\n", "plt.rcParams['savefig.facecolor'] = 'None'\n", "plt.rcParams['savefig.edgecolor'] = 'None'" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "def linestyle_generator():\n", " linestyle = ['-', '--', '-.', ':']\n", " lineID = 0\n", " while True:\n", " yield linestyle[lineID]\n", " lineID = (lineID + 1) % len(linestyle)" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "def plot_set(fig_ax, *args):\n", " fig_ax.set_xlabel(args[0])\n", " fig_ax.set_ylabel(args[1])\n", " fig_ax.grid(ls=':')\n", " if len(args)==3:\n", " fig_ax.legend(loc=args[2])" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "def bodeplot_set(fig_ax, *args):\n", " fig_ax[0].grid(which=\"both\", ls=':')\n", " fig_ax[0].set_ylabel('Gain [dB]')\n", "\n", " fig_ax[1].grid(which=\"both\", ls=':')\n", " fig_ax[1].set_xlabel('$\\omega$ [rad/s]')\n", " fig_ax[1].set_ylabel('Phase [deg]')\n", " \n", " if len(args) > 0:\n", " fig_ax[1].legend(loc=args[0])\n", " if len(args) > 1:\n", " fig_ax[0].legend(loc=args[1])" ] }, { "cell_type": "markdown", "metadata": { "toc-hr-collapsed": false }, "source": [ "## 伝達関数モデルのステップ応答" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 1次遅れ系" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "def cross_lines(x, y, **kwargs):\n", " ax = plt.gca()\n", " ax.axhline(y, **kwargs)\n", " ax.axvline(x, **kwargs)\n", " ax.scatter(T, 0.632, **kwargs)\n", "\n", "fig, ax = plt.subplots(figsize=(3, 2.3))\n", "\n", "(T, K) = (0.5, 1)\n", "P = tf([0, K], [T, 1])\n", "y, t = step(P, np.arange(0, 5, 0.01))\n", "ax.plot(t,y, color='k')\n", "\n", "cross_lines(T, 0.632, color='k',lw=0.5)\n", "ax.annotate('$(0.5, 0.632)$', xy=(0.7, 0.5))\n", "\n", "ax.set_xticks(np.linspace(0, 5, 6))\n", "plot_set(ax, 't', 'y')\n", "\n", "# fig.savefig(\"1st_step.pdf\", transparent=True, bbox_inches=\"tight\", pad_inches=0.1)" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots(figsize=(3, 2.3))\n", "LS = linestyle_generator()\n", "\n", "K = 1\n", "T = (1, 0.5, 0.1)\n", "for i in range(len(T)):\n", " y, t = step(tf([0, K], [T[i], 1]), np.arange(0, 5, 0.01))\n", " ax.plot(t, y, ls = next(LS), label='T='+str(T[i]))\n", "\n", "\n", "ax.set_xticks(np.linspace(0, 5, 6))\n", "ax.set_yticks(np.linspace(0, 1, 6))\n", "plot_set(ax, 't', 'y', 'best')\n", "\n", "# fig.savefig(\"1st_step1.pdf\", transparent=True, bbox_inches=\"tight\", pad_inches=0.0)" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots(figsize=(3, 2.3))\n", "\n", "T, K = -1, 1\n", "y, t = step(tf([0, K], [T, 1]), np.arange(0, 5, 0.01))\n", "ax.plot(t, y, color='k')\n", "\n", "ax.set_xticks(np.arange(0, 5.2, step=1.0))\n", "plot_set(ax, 't', 'y')\n", "\n", "#fig.savefig(\"1st_unstable.pdf\", transparent=True, bbox_inches=\"tight\", pad_inches=0.0)" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots(figsize=(3, 2.3))\n", "\n", "LS = linestyle_generator()\n", "\n", "T = 0.5\n", "K = [1, 2, 3]\n", "for i in range(len(K)):\n", " y, t = step(tf([0, K[i]], [T, 1]), np.arange(0, 5, 0.01))\n", " ax.plot(t,y,ls=next(LS), label='K='+str(K[i]))\n", "\n", "ax.set_xticks(np.arange(0, 5.2, step=1.0))\n", "ax.set_yticks(np.arange(0, 3.2, step=1))\n", "plot_set(ax, 't', 'y', 'upper left')\n", "\n", "# fig.savefig(\"1st_step2.pdf\", transparent=True, bbox_inches=\"tight\", pad_inches=0.0)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 2次遅れ系" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "ymax= 1.2538267219801087\n", "Tp= 0.6855517208472576\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "def cross_lines(x, y, **kwargs):\n", " plt.gca()\n", " ax.axhline(y, **kwargs)\n", " ax.axvline(x, **kwargs)\n", " ax.scatter(x, y, **kwargs)\n", " \n", "(zeta, omega_n) = (0.4, 5)\n", "\n", "fig, ax = plt.subplots(figsize=(3, 2.3))\n", "\n", "P = tf([0,omega_n**2], [1, 2*zeta*omega_n, omega_n**2])\n", "y, t = step(P, np.arange(0,5,0.01))\n", "ax.plot(t,y, color='k')\n", "\n", "ymax = 1 + 1 * np.exp(-(np.pi*zeta)/np.sqrt(1-zeta**2))\n", "Tp = np.pi/omega_n/np.sqrt(1-zeta**2)\n", "cross_lines(Tp, ymax, color='k',lw=0.5)\n", "\n", "ax.annotate('$(T_P, y_{max})$', xy=(1.2, 1.1))\n", "\n", "print('ymax=',ymax)\n", "print('Tp=', Tp)\n", "\n", "ax.set_xticks(np.arange(0, 5.2, step=1.0))\n", "ax.set_yticks(np.arange(0, 1.3, step=0.25))\n", "plot_set(ax, 't', 'y')\n", "\n", "# fig.savefig(\"2nd_step0.pdf\", transparent=True, bbox_inches=\"tight\", pad_inches=0.0)" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots(figsize=(3, 2.3))\n", "\n", "LS = linestyle_generator()\n", "\n", "zeta = [1, 0.7, 0.4]\n", "omega_n = 5\n", "for i in range(len(zeta)):\n", " P = tf([0, omega_n**2], [1, 2*zeta[i]*omega_n, omega_n**2])\n", " y, t = step(P, np.arange(0, 5, 0.01))\n", " \n", " pltargs = {'ls': next(LS), 'label': '$\\zeta$='+str(zeta[i]) }\n", " ax.plot(t, y, **pltargs)\n", "\n", "ax.set_xticks(np.arange(0, 5.2, step=1.0))\n", "ax.set_yticks(np.arange(0, 1.3, step=0.25))\n", "plot_set(ax, 't', 'y', 'best') \n", " \n", "# fig.savefig(\"2nd_step1.pdf\", transparent=True, bbox_inches=\"tight\", pad_inches=0.0)" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots(figsize=(3, 2.3))\n", "\n", "LS = linestyle_generator()\n", "\n", "zeta = [0.1, 0, -0.05]\n", "omega_n = 5\n", "for i in range(len(zeta)):\n", " P = tf([0, omega_n**2], [1, 2*zeta[i]*omega_n, omega_n**2])\n", " y, t = step(P, np.arange(0, 5, 0.01))\n", " \n", " pltargs = {'ls': next(LS), 'label': '$\\zeta$='+str(zeta[i])}\n", " ax.plot(t, y, **pltargs)\n", " \n", "ax.set_xticks(np.arange(0, 5.2, step=1.0))\n", "ax.set_yticks(np.arange(-4, 5, step=2))\n", "\n", "plot_set(ax, 't', 'y', 'lower left')\n", "\n", "# fig.savefig(\"2nd_step2.pdf\", transparent=True, bbox_inches=\"tight\", pad_inches=0.0)" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots(figsize=(3, 2.3))\n", "\n", "LS = linestyle_generator()\n", "\n", "zeta = 0.7\n", "omega_n = [1, 5, 10]\n", "for i in range(len(omega_n)):\n", " P = tf([0, omega_n[i]**2], [1, 2*zeta*omega_n[i], omega_n[i]**2])\n", " y, t = step(P, np.arange(0, 5, 0.01))\n", " \n", " pltargs = {'ls': next(LS)}\n", " pltargs['label'] = '$\\omega_n$='+str(omega_n[i])\n", " ax.plot(t, y, **pltargs)\n", "\n", "ax.set_xticks(np.arange(0, 5.2, step=1.0))\n", "plot_set(ax, 't', 'y', 'best')\n", "\n", "# fig.savefig(\"2nd_step3.pdf\", transparent=True, bbox_inches=\"tight\", pad_inches=0.0)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## ステップ応答の計算" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAHUAAAAfCAYAAADZa4KAAAAABHNCSVQICAgIfAhkiAAAA4tJREFUaIHt2UmIHFUcx/HPuOEyaMAtioiIivFiXAJRSRDXuKeDy8GDYwQlAUVBccFD41XUoAcDHpyIggejqJggLkmM6CVCglHBBTMq0YQYEvctxsO/mmlraqaXVFcvU1/4U9Wv3qv3b37v/d+/3huqVqtKBov9uu1AHXsb2GjXPOszDui2A3UcV3d/NZ5Jlf1erDv9Sy+J+kPd/a6MspIm6aXwW5ITpaid53o8hfX4SeQHzzfZ9ljswZOtdNhL4XdQeRhn4hd8h9NbaHudmHivtNJhOVObY0TMsAvbaHsPTsPhWNJi2wp+xHutNCpF7Txr8IUYFK1wBC7C6yIE17gW7+B7/ImtWIeltQqlqL3LVTgIL9eV3Y5XcYYQ+zGswiG4tVapXFN7lwp+xVt1ZXfgL7FGb0/VP6p206sz9SUMdduJLnIwFmA1/kg9+wd/Z7TZUbtJi7pF4+26ems2Ne8ntpj4P59Nnq3JeDbaAR8uw7CJWe8LOBSf4AksxNHpxunw+5WJI2MqtrZQt19Yhhmpstni82KFEL2ejR3woSLC7Bup8sfFjFyKu3C3GFjrcB82MFHUi9t0otXMrttMFdqXZZSNCFFHsTZ/d/7H/rgG72J3xvPnEpuB88UAWIw3MQvb80qUpvP6lzfzcaTGGw67ROa7SiyjizEPK3s1UZrOLMK/4tMlzQLZXyzHJNffTFKhHRqF3xUihHWa+WJtOUcc290gMulusjAxmJlczzOeYO3Avan6H2BbxrteFDnP+2JtHxKzcw4+wtvkJ2qnz0JHxZ+oNqh3GDaJbHXlPvaZF7NxS6rs5MRgzLioc3CCyGyzeACX42xcKQQew/14WvKpk5eozZ6FLhLCnCqE/hg3yh6V7bA6sbwZ1f6nS1XjwVijklwnW0+XJzYlRe4ozRTh40Exi4Yxt8D++4GKiDRf78tLihT1eBwo1rixpGxzgf33A7PyeEmR2e8mcbqwWYSXJcaztjQPifPHmt2cUTavw/72LUWKugeXii2wjbgNn4vN6TTLRYJRs9cyyjZ03uX+pOhTmr34MLFHxB7mTWIW17MzsRo/J7+/LMDHvqdIUefiErGdtQ1n4UR8mmMfwzil7vdJYlbvxDc59tPTFCnqblyAO8W+5bdituZ50nOuOEmp8WhyLWrzoyfohKiTnYV+hivafOdIk/XWTtL3tKLc+x1ASlEHkFLUAeQ/gzTLOxcU5A8AAAAASUVORK5CYII=\n", "text/latex": [ "$\\displaystyle - \\frac{T}{T s + 1} + \\frac{1}{s}$" ], "text/plain": [ " T 1\n", "- ─────── + ─\n", " T⋅s + 1 s" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import sympy as sp\n", "sp.init_printing()\n", "s = sp.Symbol('s')\n", "T = sp.Symbol('T', real=True)\n", "P = 1/((1+T*s)*s)\n", "sp.apart(P, s)" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAFMAAAAWCAYAAAC8J6DfAAAABHNCSVQICAgIfAhkiAAAAlVJREFUWIXt2E2IjlEUB/DfYKx8FCWz8VXe7Ngwpmh8lI2ZXmJhoUQ2k8UkZsViLElJZiNiFoSyQBHJRyFKFhYkpcbXRDMLo/E1FIv7jHnnNTPPPO+8M+8zef91Ok/n3Hvu6d957rn3VjQ3NyujOJhQ6gRKjLtoGcR3EkfwO0ZaeydMGr08xzUmoA5bcDDHXocTqMqxfev9+J/JbEVtJLsi23y0oRqVuI9fOXM+RfrDQAHzf/PNOIZ7+CyU8ZkRp51ONOIhTguVVoW3kS+Lq/oTGYv8ytyPxejGOywaQbJpRxd68NW/lZbFvqQB8ytzNzKYhoYCEiw1msU3jFUxMTKYhxtJF8+vzDtJA4wRqtGEFZiBj7iGA2jPGdeC8zGx3sT4s7iFL0mTHA8NaLvQQX/girCvLcRO1GO5PoI6IxkuejAxz5aVc9xJgrSTmcFxocPW4n2Obw1u4ig2Fhi/DcuE37pbILYamwoJlvZDe4NwRGnUn0i4LVRqPaYWGP+wUJ3P0YH1eCxsI4lR7Mpsw9wE489i6xD+mkjXYukA/llCNWXwJMG6vXiZswZcxqUhxl9ExWDOYpP5Ct8TjG+P8c+MdFPMuCkJ1hwKD3Cu0MnFJnNtkeN1RXq6cIkYbRwayeS075mPIr2ypFkME2knswU/hdebzAD+yVJEdP5vviESmB3pGn3nrk7sHf20/uIFduAUnuG60DQqMUcgskNKrr35ZC7BtjzbgkjgtbElk/DQ8hR7sBrrhNtJu9BdL4xxPoOiovzSXjykfc8cVyiTWUSUySwi/gCsxHeZb9eSRAAAAABJRU5ErkJggg==\n", "text/latex": [ "$\\displaystyle 1 - e^{- \\frac{t}{T}}$" ], "text/plain": [ " -t \n", " ───\n", " T \n", "1 - ℯ " ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" } ], "source": [ "t = sp.Symbol('t', positive=True)\n", "sp.inverse_laplace_transform(1/s-1/(s+1/T), s, t)" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$\\displaystyle - \\frac{w}{\\left(s + w\\right)^{2}} - \\frac{1}{s + w} + \\frac{1}{s}$" ], "text/plain": [ " w 1 1\n", "- ──────── - ───── + ─\n", " 2 s + w s\n", " (s + w) " ] }, "execution_count": 15, "metadata": {}, "output_type": "execute_result" } ], "source": [ "w = sp.Symbol('w', real=True)\n", "P = w**2/(s*(s+w)**2)\n", "sp.apart(P, s)" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAALwAAAAWCAYAAAB6zvYjAAAABHNCSVQICAgIfAhkiAAABHNJREFUeJzt21uIVVUYB/CfpllkFxKkIkwqpcuLRDcLc3Iq6kEs6CUosujFiiS6Qw/zWgQaGRFBTaRBYBFBFIQzY1amZUxBF4zqZBeipLKsbGq0h28NZ58zZ5rZM3vOzJnZf1isPWuvy7fW/7/X+r69z8zo6OhQosR0wcyJNmCSoQcbJtqIEg3RowBuSsGXmFYoBV9FJ5bjNhxKaQ1+x6xUZ1EqfyzT7iG81jQrpyc6DeZmIa6Sk58iBb8wDdZZYJ/NxFpsxzM4MaXncQTOTXXasBeXZtq1ieO22bhWELsNv4m13zgBdjQDjbj5Rsw9Fz/lDl/FPvThT/yQ0j58oLqAbXgUp2M+5uIcEyP4B3E7luC7CRi/mWjETT/2y8nPVBd8h+oROFRqG6aPnkyd5eJ4fC9dL8MB7BqFbatHOP5QuBOLcYxwvVoNHcbODTn5KUrwHfgqXd+o1ujV4knrw9t17Y5MBh3CDXX3bk3lN9eVX4DN4invE0fbkzipgV0bcOYwaecwc+vBxTgrzaMX3WJXacNb+HeYPsYD3fhcrNFkwkj5KYIbcvIza1Dz0aEHxwlf60O8nLnXK46enWIxjhaBhmTonHTdjucy7VakfEum7CY8hb/xiljMRbgFK3Eh9mTq701ppOjDYXVl25KN96brfjHfx4Xv/FKO/qc68vBTBDfk5KdIwVeE4HvFjl+PLiHwS/BqKmtPBr6ZrgcwUzydX+LrVLZY7BQVcVxl/dYVeEP4b9eMYR4VnC8C8P34WdVPvB73pXrvpDqzcccYxptKGG9+KgZzc1BOfprpww/s1Flhtwv/6kWcLBaNCMTmqd3d14gJrDU4SOsSO8pKcYKMFo+IneQT/IQFqbxb7C496e8D2IG/jM5/n4oYb36G4oYc/NTv8BWcksOITeLJGgm2JwMGBH+siKAfFgsi3dut6s50ZdovTflynNeg//li0ouNXoS7M+NkcX9KWbTl6Ldi6HXtblD2rIh9xhMVxXI93vwMxQ05+KkX/Bfi6Rgpvs9Rt08EEJeJyS8VC7AFn6a+2vFEyg+pFfy8lN8zzDhzc9jULKwXMU4WS7BKiLtSd6+3CTYVzXVL8FMv+PaGtYpDFy4XO/hFIrgZeHPTLb6czRGvkz7Gj5m2+1J+rAhGWgnrG5StFoLvNDHv8YvmuiX4KdKH7095o0h6AFk/foUQ+4HMveOFL3iUWv8d3k35sjFbWmI80BL8FCn4X4QbsuB/6uzCr2JnO1utqAeuH0h51p0h3tv+g3WqwW0Wh5vkiz3F0RL8FPVakng9tENMapMIMvpFdP5RqnMQW4XgqRX8HuFXnpbaba3r/zPxEepp4e68nsaYLR6yZSJ6P6PAOU1mXJ0SnJDypaq/ZdqLu5toT0vwU6Tgia+l63AlrsMMfKsqeELkq4Sf935d+y1C8LtUfcIsNooPW3eJL2lX4A8RUG3GCwXNoxWwRHzVzuLUlIjvF80UPC3Az4zyP55KTCdM9R+PlShRg1LwJaYVSsGXmFb4D/+dWlOiPfNcAAAAAElFTkSuQmCC\n", "text/latex": [ "$\\displaystyle - t w e^{- t w} + 1 - e^{- t w}$" ], "text/plain": [ " -t⋅w -t⋅w\n", "- t⋅w⋅ℯ + 1 - ℯ " ] }, "execution_count": 16, "metadata": {}, "output_type": "execute_result" } ], "source": [ "P = sp.apart(w**2/s/(s+w)**2, s)\n", "Pt = sp.inverse_laplace_transform(P, s, t)\n", "sp.expand(Pt)" ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$\\displaystyle \\frac{w^{2}}{p_{2} \\left(p_{1} - p_{2}\\right) \\left(p_{2} - s\\right)} - \\frac{w^{2}}{p_{1} \\left(p_{1} - p_{2}\\right) \\left(p_{1} - s\\right)} + \\frac{w^{2}}{p_{1} p_{2} s}$" ], "text/plain": [ " 2 2 2 \n", " w w w \n", "───────────────────── - ───────────────────── + ───────\n", "p₂⋅(p₁ - p₂)⋅(p₂ - s) p₁⋅(p₁ - p₂)⋅(p₁ - s) p₁⋅p₂⋅s" ] }, "execution_count": 17, "metadata": {}, "output_type": "execute_result" } ], "source": [ "p1= sp.Symbol('p1', real=True)\n", "p2= sp.Symbol('p2', real=True)\n", "P = w**2/(s*(s-p1)*(s-p2))\n", "sp.apart(P, s)" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$\\displaystyle \\frac{w^{2} \\left(- p_{1} e^{p_{2} t} + p_{1} + p_{2} e^{p_{1} t} - p_{2}\\right)}{p_{1} p_{2} \\left(p_{1} - p_{2}\\right)}$" ], "text/plain": [ " 2 ⎛ p₂⋅t p₁⋅t ⎞\n", "w ⋅⎝- p₁⋅ℯ + p₁ + p₂⋅ℯ - p₂⎠\n", "────────────────────────────────────\n", " p₁⋅p₂⋅(p₁ - p₂) " ] }, "execution_count": 18, "metadata": {}, "output_type": "execute_result" } ], "source": [ "sp.inverse_laplace_transform(P, s, t)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 練習問題" ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n", " s + 3\n", "-------------\n", "s^2 + 3 s + 2\n", "\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "P1 = tf([1, 3], [1, 3, 2])\n", "print(P1)\n", "\n", "fig, ax = plt.subplots(figsize=(3, 2.3))\n", "y, t = step(P1, np.arange(0, 10, 0.01))\n", " \n", "ax.plot(t, y)\n", "plot_set(ax, 't', 'y')" ] }, { "cell_type": "code", "execution_count": 20, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n", " 1\n", "---------------------\n", "s^3 + 2 s^2 + 2 s + 1\n", "\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "P2 = tf([0, 1], [1, 2, 2, 1])\n", "print(P2)\n", "\n", "fig, ax = plt.subplots(figsize=(3, 2.3))\n", "y, t = step(P2, np.arange(0, 15, 0.01))\n", " \n", "ax.plot(t, y)\n", "plot_set(ax, 't', 'y')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 状態空間モデルの時間応答" ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [], "source": [ "A = [[0, 1],[-4, -5]]\n", "B = [[0], [1]]\n", "C = np.eye(2)\n", "D = np.zeros([2, 1])\n", "P = ss(A, B, C, D)" ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[-1. -4.]\n" ] } ], "source": [ "print(np.linalg.eigvals(P.A))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 零入力応答" ] }, { "cell_type": "code", "execution_count": 23, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "Td = np.arange(0, 5, 0.01)\n", "X0 = [-0.3, 0.4]\n", "x, t = initial(P, Td, X0) #ゼロ入力応答\n", "\n", "fig, ax = plt.subplots(figsize=(3, 2.3))\n", "ax.plot(t, x[:,0], label = '$x_1$', color='k')\n", "ax.plot(t, x[:,1], ls = '-.', label = '$x_2$', color='k')\n", "\n", "ax.set_xticks(np.linspace(0, 5, 6))\n", "ax.set_yticks(np.linspace(-0.4, 0.6, 6))\n", "plot_set(ax, 't', 'x', 'best')\n", "\n", "#fig.savefig(\"res_ss_initial.pdf\", transparent=True, bbox_inches=\"tight\", pad_inches=0.0)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 行列指数関数の計算" ] }, { "cell_type": "code", "execution_count": 24, "metadata": {}, "outputs": [ { "data": { "text/latex": [ "$\\displaystyle \\left[\\begin{matrix}\\frac{\\left(4 e^{3 t} - 1\\right) e^{- 4 t}}{3} & \\frac{\\left(e^{3 t} - 1\\right) e^{- 4 t}}{3}\\\\\\frac{4 \\left(1 - e^{3 t}\\right) e^{- 4 t}}{3} & \\frac{\\left(4 - e^{3 t}\\right) e^{- 4 t}}{3}\\end{matrix}\\right]$" ], "text/plain": [ "⎡⎛ 3⋅t ⎞ -4⋅t ⎛ 3⋅t ⎞ -4⋅t⎤\n", "⎢⎝4⋅ℯ - 1⎠⋅ℯ ⎝ℯ - 1⎠⋅ℯ ⎥\n", "⎢────────────────── ────────────────⎥\n", "⎢ 3 3 ⎥\n", "⎢ ⎥\n", "⎢ ⎛ 3⋅t⎞ -4⋅t ⎛ 3⋅t⎞ -4⋅t⎥\n", "⎢4⋅⎝1 - ℯ ⎠⋅ℯ ⎝4 - ℯ ⎠⋅ℯ ⎥\n", "⎢────────────────── ────────────────⎥\n", "⎣ 3 3 ⎦" ] }, "execution_count": 24, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import sympy as sp\n", "import numpy as np\n", "sp.init_printing()\n", "\n", "A = np.array([[0, 1],[-4, -5]])\n", "\n", "s = sp.Symbol('s')\n", "t = sp.Symbol('t', positive=True)\n", "G = s*sp.eye(2)-A\n", "\n", "exp_At = sp.inverse_laplace_transform(sp.simplify(G.inv()), s, t)\n", "exp_At" ] }, { "cell_type": "code", "execution_count": 25, "metadata": {}, "outputs": [ { "data": { "text/latex": [ "$\\displaystyle \\left[\\begin{matrix}0.00898392864506275 & 0.00224598164597728\\\\-0.00898392658390913 & -0.00224597958482366\\end{matrix}\\right]$" ], "text/plain": [ "⎡0.00898392864506275 0.00224598164597728 ⎤\n", "⎢ ⎥\n", "⎣-0.00898392658390913 -0.00224597958482366⎦" ] }, "execution_count": 25, "metadata": {}, "output_type": "execute_result" } ], "source": [ "exp_At.subs(sp.exp(-t), np.exp(-5))" ] }, { "cell_type": "code", "execution_count": 26, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[ 0.00898393, 0.00224598],\n", " [-0.00898393, -0.00224598]])" ] }, "execution_count": 26, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import scipy\n", "A = np.array([[0, 1],[-4, -5]])\n", "t = 5\n", "scipy.linalg.expm(A*t)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 零状態応答" ] }, { "cell_type": "code", "execution_count": 27, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "Td = np.arange(0, 5, 0.01)\n", "Ud = 1*(Td>0) #ステップ入力\n", "\n", "# yst, tst, x0st = lsim(P, udata, tdata) #ゼロ状態応答\n", "x, t = step(P, Td) #ゼロ状態応答\n", "\n", "fig, ax = plt.subplots(figsize=(3, 2.3))\n", "ax.plot(t, x[:,0], label = '$x_1$', color='k')\n", "ax.plot(t, x[:,1], ls = '-.', label = '$x_2$', color='k')\n", "\n", "ax.set_xticks(np.linspace(0, 5, 6))\n", "ax.set_yticks(np.linspace(-0.4, 0.6, 6))\n", "plot_set(ax, 't', 'x', 'best')\n", "\n", "#fig.savefig(\"res_ss_zero.pdf\", transparent=True, bbox_inches=\"tight\", pad_inches=0.0)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 完全応答" ] }, { "cell_type": "code", "execution_count": 28, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAagAAACeCAYAAABn5p7EAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjEsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy8QZhcZAAAgAElEQVR4nO29e1xU1f7//1wIeENFhdCAFEkN7yalZl7LNLUsL6llR+x0vGUe7ePPsk/ZUfum3eurlqcssXtpF8tuZicry/uFoxAqKCKIchGEERgY5v39A5gfIuoAM7MHZz0fj/2Y2TNrr9dae+33vOe99tprKRFBo9FoNBp3w8voAmg0Go1GUxXaQWk0Go3GLdEOSqPRaDRuiXZQGo1Go3FLtIPSaDQajVuiHZRGo9Fo3BK3cFBKqeFKqcNKqQSl1BOXSHOfUipOKRWrlPrI1WXUaOoC2pY0VxPK6OeglFL1gCPAUCAF2A1MEpG4CmnaA58BQ0QkWyl1jYikG1JgjcZN0bakudpwhwjqZiBBRI6JSBHwCTC6Upp/AKtEJBtAG5RGUyXaljRXFe7goIKBkxX2U8o+q0gHoINS6g+l1A6l1HCXlU6jqTtoW9JcVXgbXQBAVfFZ5X5Hb6A9MAgIAX5XSnURkZwLMlJKz9ukcToiUtU16w44xJa0HWlcgT125A4RVAoQWmE/BDhVRZqNIlIsIseBw5Qa2UWIiMu3hIQEQ3Q9VdvIOrs5DrMlT7umPPV6NkrbXtzBQe0G2iulwpRSvsBE4OtKab4CBgMopQIo7aY45tJSXoYWLVpobQ/QrQNoW6qD2p5YZ3sx3EGJiAWYDfwI/AV8JiKxSqklSqm7y5L9CGQppeKAX4D/T0SyjCnxxeTn52ttD9B1d7Qt1U1tT6yzvbjDPShE5Dvgu0qfLarwXoDHyja3w8vLOD/vidpG1tnd0bZU97Q9sc724hYOqq7j4+OjtT1AV+N8jGxbLy8vjh8/TmFhoUt1S0pKyMnJuXLCOqjdoEEDQkJCatyu2kE5AJPJREBAgNa+ynU1zsfIts3MzCQoKIi2bduilOsGaprNZurXr+8yPVdpiwhZWVmkpKQQFhZWozzcO76rIxj5Y+mJ2to5Xb0Y2bZKKVq2bOlS5wTg7W1cnOBM7fLzWZuIVDsoB5CSkqK1PUBX43yMbFuLxeJy5wRQVFTkck1Xadf2fGoH5QCuv/56re0BuhrnY2TbGhXJNGjQwBBdo7XtQTsoBxAbG6u1PUBX43yMbNvi4mJDdAsKCqr8XESwWq2GaLsL2kE5gO7du2ttD9DVOB8j29bX19cQ3UaNGtneJyUlERERwaxZs7jxxht5//336du3LzfeeCPjx4/HZDIB8MQTT9CpUye6devG/PnzAYiKimLGjBn079+fDh06sGnTJgAKCwuZOnUqXbt2pWfPnvzyyy8AREdHM3nyZIYPH0779u1ZsGABUDqyLyoqii5dutC1a1deffVVABITExk+fDi9evWif//+xMfHO/3c6FF8DmDv3r306tVLa1/luhrnY2TbVrwfM3fuXA4cOODQ/Hv06MFrr7120efnz5+ncePGtv3Dhw+zdu1alixZwpgxY9iyZQuNGzfm+eef55VXXmH27Nl8+eWXxMfHo5S6YJh4UlISv/76K4mJiQwePJiEhARWrVoFwMGDB4mPj+eOO+7gyJEjAOzfv58DBw5Qv359OnbsyKOPPkp6ejqpqakcOnQIwJb/tGnTWL16Ne3bt2fnzp3MmjWL//znPw49R5XRDsoBGPlj6Yna2jldvRjZtkZFUBWdE0CbNm3o06cPmzZtIi4ujn79+gGlDrRv3740bdqUBg0a8PDDDzNy5EhGjRplO/a+++7Dy8uL9u3b065dO+Lj49m2bRuPPvooADfccANt2rSxOajbb7+dZs2aAdCpUydOnDhB586dOXbsGI8++igjR47kjjvuwGQy8eeffzJ+/Hibltlsdup5Ae2gHIInRjFGausI6urFXSKoqiIdZ1E5gip/LyIMHTqUjz/++KJjdu3axc8//8wnn3zCypUrbZFM5VFzSqnLTs5acSaJevXqYbFYaN68OTExMfz444+sWrWKzz77jNdeew1/f3+HR5VXQt+DcgCeGMUYqa2d09WLjqD+f/r06cMff/xBQkICUDpv3pEjRzCZTJw7d44RI0bw2muvXeA01q9fj9VqJTExkWPHjtGxY0cGDBjAhx9+CMCRI0dITk6mY8eOQNUzd2RmZmK1Whk7dixLly5l3759NG3alLCwMNavXw+UOs+YmBiHnoeq0A7KARw8eFBre4CuxvkY2bZGPY90qQlbAwMDiY6OZtKkSXTr1o0+ffoQHx9PXl4eo0aNolu3bgwcONA2iAGgY8eODBw4kDvvvJPVq1fToEEDZs2aRUlJCV27dmXChAlER0fbZo+wWCwX6aampjJo0CB69OhBVFQUy5YtA+DDDz/knXfeoXv37nTu3JmNGzc64WxciKrO2hzujlJKjKjP1TpVibtqG1nnsi4Td12w0CEYZUdgbNvGxcXRqVMnl+tarVaHTNoaFRXFqFGjGDdunMu1L8dff/1FRETEBZ/Za0c6gnIAycnJWtsDdDXOx8i2rSqacAVX80wStcUtHJRSarhS6rBSKkEp9cRl0o1TSolSKtKV5bsSQUFBWtsDdOsC2pZqTr169QzRddQM7tHR0dWKnhyp7SwMd1BKqXrAKuBOoBMwSSl1UZytlGoCzAF2uraEV8aoqfI9VdvIOrszjrYli8VCenq6S4YTl2Nk2zp71oZLYVTkZrS2PRjuoICbgQQROSYiRcAnwOgq0i0FXgBcu1iLHXjqXFpGabv7/GEG4jBbGjNmDH5+fgQFBdGgQQMiIyN5+eWXyc3NdU7JyzCybY2YKBb0goWXwx1KFwycrLCfUvaZDaVUTyBURDZdKTOllG17/PHHSUxMpKCggLi4OKxWK/v27QNKn7cA2LdvH1arlbi4OAoKCkhMTCQ7O5vU1FTS0tLIzMwkKSkJk8lEfHw8FovFNryyPI+jR48CpSOQzGYzR48eJTc3l+TkZNLT00lPTyc5OZnc3FyOHj2K2Wy2jVYqz6P8NSYmBovFQnx8PCaTiaSkJDIzM0lLSyM1NZXs7OwL6iQiTqlT+evl6pSenu6UOl2pncxms9PqdKV2cnMcZktffvmlLXLq27cvJSUlzJ8/n9DQUN5880327NkDuP6ac5YdWa1WWzRx/vx526uIUFBQgNVqpbCwEIvFQlFREUVFRRQXF2M2mykpKaGgoAARsY3Iq5gHlI7UK8+jpKQEs9lMcXExxcXFWCwWSkpKKCwsxGq1XjaP8vJUzKO8PBaLxZZHeXkq51G5TuX6jq5TeR6FhYWISM3tSEQM3YDxwJoK+w8CKyrsewFbgbZl+1uByEvkJUZw4sQJQ3Q9VdvIOpddY4bbTVWbo2wJkKlTp15U9127dsngwYMFkP79+8vJkycdcEYvxMi2/e9//2uIbmFhoSG6rtKOi4u76DN77cgdIqgUILTCfghwqsJ+E6ALsFUplQT0Ab52p5u7/v7+WtsDdOsADrOlr7766qJ7TzfddBM///wza9euZf/+/fTs2ZOffvrJoRUwsm2N6u4yesHCAwcO8N13310xrb3pHIk7OKjdQHulVJhSyheYCHxd/qWInBORABFpKyJtgR3A3SKyx5jiXsyZM2e0tgfo1gEcZkvZ2dlV/hgppYiKimLPnj0EBQUxbNgwVq5c6bAKGNm2JSUlhug6YpmPmpa9uLjYrR2U4d0SpdEeI4AjQCLwv2WfLaHUeCqn3YqbdfFd7SG6u2kbWWfcuItPHGRLgLRu3VpGjhx52XNhMplk9OjRAsj//M//SElJSc1OagWMbNvY2FhDdMvP25tvvindu3eX7t27S9u2bWXQoEEiIvLjjz9Knz59pGfPnjJu3DjJy8sTEZE2bdrI4sWLpV+/fvLxxx/L/v37pXfv3tK1a1e555575OzZsxdpffbZZ9K5c2fp1q2b9O/fXwoKCiQ0NFQCAgKke/fu8sknn8jOnTulb9++0qNHD+nbt6/Ex8eL2Wy+KJ3JZJKpU6dKZGSk9OjRQ7766qsq61ebLj7DDcqRm1EOyqi+a0/VNrLO7u6gHLEBsmjRIlFKSWJi4mXPh8VikdmzZwsg48aNk4KCguqd0EoY2bYHDhy4YH/gwIEXbatWrRIRkfPnz1f5/dq1a0VEJCMj46LvLsX58+cv2C8qKpJbb71Vvv76a8nIyJD+/fuLyWQSEZHly5fL4sWLRaTUQT3//PO247p27Spbt24VEZGnn35a/vnPf16k1aVLF0lJSRERkezsbDl//rysXbtWHnnkEVuac+fOSXFxsYiI/PTTTzJmzBgRkYvSLVy4UN5//31bXu3bt7eVsyJ1/R5Unadr165a2wN0PYnp06dTr1493njjjcumq1evHv/3//5fXn75ZTZs2MDw4cNr9SyTkW3rDgsWAvzzn/9kyJAh3HXXXezYscO25EaPHj1Yt24dJ06csKWdMGECAOfOnSMnJ4eBAwcCMGXKFH777beLtPr160dUVBRvv/02JSUlF2mX5zV+/Hi6dOnCvHnzLrnK8ebNm1m+fDk9evRg0KBBFBYWOn4mEHu8WF3ZMCiC2rNnjyG6nqptZJ3xkAhKROS+++4Tf3//Kv8VV8VHH30kPj4+0q1bNzl16pRdx1TGyLatHEG5iornd+3atTJixAhbt9/XX38tEydOrPK4Nm3aSEZGhoiI5OTkSGhoqO27hIQE6dmzZ5XH7dixQ55++mkJCQmREydOXBQZTZkyRV5//XURETl+/Li0adPGVraK6W688UaJj4+/Yv10BGUwnrjkhZHaerkN1zB37lxycnJYu3atXeknTZrEt99+S2JiIrfccottUbzq4MnLbezdu5eXXnqJDz74wDai8FJLblSmWbNmNG/enN9//x2A999/3xZNVSQxMZHevXuzZMkSAgICOHv2LE2aNCEvL8+W5ty5cwQHlz4+Fx0dbfu8crphw4axYsWK8j817N+/vzanoWrs8WJ1ZUNHUB6hrSMo19nR559/Xu37Srt375bAwEAJCAiQXbt2VetYT46goqKipHXr1raBEn//+99FROTnn3+WyMhI6dq1q3Tt2lU2btwoIhdGUCJywSCJ0aNHVzlI4t5775UuXbpI586dZc6cOZKXlydZWVkSGRlpG/zw559/Svv27eWWW26Rp556yhZBVU6Xn58v06ZNs+V3qUE1tYmg9HIbGk010Mtt2MfRo0cZNmwY6enpfPHFF9xxxx0OKp3zqGpZCE3t0cttGIwrVpbU2sbreirffPMNt9xyi22KG3to3749f/zxB9dffz0jR47ko48+sus4I9vW3RYsvNq17UE7KAfQuXNnre0Bup5KixYtKCkpISMjo1rHtW7dml9//ZVbb72VBx54gNdee+2KxxjZtkYtPdGwYUNDdI3WtgftoBxA+Q1MrX1163oq/fr1Y8eOHbRt27baxzZr1ozvv/+esWPHMm/ePJ544gku131oZNsatfREYaFxCzQYqW0P2kE5gJCQEK3tAbqejFKKjIwM3nrrrWof26BBAz799FNmzpzJ888/z9SpUy85vY+RbWvUgoVGjR40WtsetINyAJmZmVrbA3Q9nXfffZfp06fz+eefV/vYevXqsWrVKhYvXsy6deu49957q7z/YWTb6gUL3Q/jptG9ivDz89PabqIrUrrWTfm6NOWbn5+f7V5KfHw8VquVkpIS23bttdcSEhJCYWEhv//+u21tnPJ1csLDwz0+cnvsscdYv349M2bMoH///lxzzTXVOl4pxaJFiwgKCmLWrFncdtttbNq0iZYtW9rSGHk96wUL3Q/toByAI2Yjvpq0c3NzOXfuHHl5ebatUaNG3HLLLQB88MEHpKenU1BQQGFhIQUFBXTo0IFp06YBMHXqVE6dOoXJZKKg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Vl6TycSECRP47rvveOqpp1iyZInb/TvxZEQEs9mMt7c33t7eFBcXc+7cOaxWK1arlZKSkgtey9+3bt2apk2bkpeXR0JCAu3bt8fPz4+MjAyOHDmC1WolNDSUsLAwd3ZQDrElpZRER0czZcoU11bgKsNqtZKbm2vbzp07R9OmTenatSsAr776KqGhoXTs2JG0tDSeffZZzp8/T2FhIc2aNaOgoIC0tDTy8vKwWCxYLBZCQ0Pp1asX77zzDs2bN6dnz54cP36c8+fPU1xcbFe5mjdvzg033MD27dvx8fGx+zhH4OXlRYMGDcjPz7fLjoy5M3chwcDJCvspQGWPYksjIhal1DmgJZBZObNPP/3U9n7GjBkEBARQUFDA8ePHueGGGzhw4AA33nij7d/Svn376NGjB/Hx8YSFhXHq1ClatGhBfn4+Xl5e+Pj4YDKZCAgIICYmhjlz5nDgwAFWr15NZGQkSil++uknhg4dysGDB+nQoQPJyckEBQWRk5NDgwYNACgsLMTf358zZ85w3XXXceTIEbp27WorR/lrTEwMnTt3JiEhgZCQEDIzM/Hz86O4uBir1UqjRo04e/Ys1157LcePH7eVs6Z1SklJ4frrryc2Npbu3btfVJ7L1Sk+Pp6IiAiOHz9OaGgomZmZdO3alX//+98MGjQIk8lEly5dWL58OS1atCA1NZX69euTnZ2NiJCfn09hYSElJSX07t2bGTNmcOjQIRYuXMgdd9zBggUL2LhxI8888wx5eXl4e3uTn59PUVERIkJJSQnFxcVYLBaefvppJk2aRGZmJjfddBMffvghnTt3Jisri9tuu+2KF+Hq1au599572bJlCw888AAffvghY8eOZc2aNTz55JMALFq0yN5r2igcZktRUVFERUUBsGDBAqZNm2a75mprR5e75gB8fX1dbkc33HADP//8M0OHDnVonRITE212FBkZSXJyMrm5ueTk5PDAAw8ApXbUp08f3nnnHbvr5OXlxZ9//klQUBANGzbk/PnzJCYmkpaWRqNGjcjJySEoKIjt27fj7+9PYmIizZs3p379+owYMQKLxcJPP/1ETk4O7du3JykpiR07dlBSUoK3tzfh4eHk5OSQlJTEuXPnbLYXERFBSEgI/fr1Y8WKFTRt2hSz2UxeXh6pqamICL6+vrbVBjIzSy+r8v8/jRs3pnPnzvz55592XdDuEEGNB4aJyMNl+w8CN4vIoxXSxJalSSnbTyxLk1UpryuO4qspaWlp3HbbbSQlJfHZZ58xatQop+i4EovFQnZ2NmfPnkVEuOGGGwB4//33adasGXfffTcAEyZMIDMzE5PJRF5eHiaTybaV//uaNGkSH330EQBNmjThH//4B6+88gomk4kmTZpcpN2wYUMaNGhg2/7xj3+wcOFC8vPzueOOO5g9ezYTJ04kNTWVWbNm4ePjY+syqOr9XXfdxYABA8jKyuKtt97innvuISIigpSUFL788ku8vLyoV6/eBa8V3/fr1482bdqQkZHBH3/8wa233kpAQABpaWkcPHiQevXqERYWRnh4uDtHUA6xJVcuW6PxTDy2i88Z9UlNTWXIkCGkpqayadMmBg0adMH3Bw8etIXtrqYqbZPJRHZ2NqGhoUDpaKW//vqL06dPc+bMGc6cOcPp06fJysqy/bPp3bs3O3bsAKB79+60bduWjRs3AjBkyBCKi4tt/dTlW0FBAe3atcPPz4+IiAiGDh0KwJ9//knr1q3Lu8M4efLkBc7Ix8enVt2iRp5vN78H5bAuPqN+F9zNlq5mXSO165KD8qb0xu5tQCqlN3bvF5HYCmkeAbpWuLE7RkTuqyIvhxtWcnIyQ4YMIT09ne+//77KwRBms9mlo53y8/NJSEjgyJEjHD16lFOnTpGXl0d0dDQAo0eP5tixYxw8eBCAfv36sX//flq1akVQUJDtNSgoiMDAQJo3b05oaKhtIbqcnBwaNWp0xWe5XF1vo3XB7R2UQ2zJSAdlZNt64vVslLbDFyx05gaMoNSwEoH/LftsCXB32fsGwHpK5y/bBbS7RD7iSNLS0iQ8PFyaNWsmO3bsuGQ6Z88a8c0338jMmTPltttus80XWHHz9/eXHj162Kal+emnny5YHqGwsNAp86m5arYMd9EVsf8JeKM2R9iSo+2oOhjZtp54PRulba8dGR5BORJH/vPLzs5m0KBBJCYmsmXLFvr06XPJtLm5uTRt2rTGWiLC0aNHCQkJoVGjRnz44YcsWLCAw4cP4+fnxxNPPMG///1vOnToQMeOHenQoYNta9mypa0rz9XUtt51TRfcO4JyFEZGUEa2rSdez0Zp22tH7jCKz+04f/48o0aNIj4+nm+//fayzglKu8Sq08gmk4ldu3axfft2tm/fzo4dO8jKyuLnn39myJAhhISEcPvtt2MymfDz82Pp0qUsW7asyvs2ycnJ1a6fo6huveu6rsb5GNm2nng9u7staQdVieLiYsaNG8eOHTtYv349t99++xWPKR8CeymKiorYsWMHW7ZsYcuWLezatYuSkhIAIiIiGD16NH369KFz584ADBw4kIEDB9qO9/HxqbG2MzFK28g6a5yLvp49R9setIOqgIgwe/ZsfvjhB95++23GjBlT47xOnTpFfn4+119/PSdPnmTgwIF4eXlx00038fjjj9O/f3969+5N8+bNHVgDjUajuXrQDqoCr776Km+99RYLFy7k4Ycftvu4wsJCoHRC2mbNmiEi9OrVi4EDB/LJJ5/Qrl07vv32W2655RbbNCmOolzbCIzSNrLOGueir2fP0bYHPUiijK+//pp77rmHsWPH8umnn+Ll5WXXcZmZmaxbt47169dz+vRpjh07hpeXF99++y1hYWF06tSpRuWxF0+8waoHSTgXPUjCM3SN1LbXjuz7Fb7KiYmJYdKkSURGRrJu3borOier1crmzZu59957ad26NfPnz6egoIDZs2fbZlYYOXKk050TwJkzZ5yu4W7aRtZZ41z09ew52vbg8RFUdnY2vXr1oqioiN27d9O6detLps3JySE6Opo33niDo0ePEhgYyJQpU5gwYQKRkZG1LX6N8MSH/PSDus5FP6jrGbpGausIyg6sVisPPvggKSkprF+//rLOKT4+nuuuu4558+bRsmVLPvjgA06ePMmLL75o6Jo5R44c8ThtI+uscS76evYcbXvw6Ahq6dKlLFq0iJUrV/LII49c9P2pU6c4cOAAI0aMwGq18vjjjzNx4kTD1qvRGI+OoDSa2qMjqCvw448/8swzzzB58mRmzZpVZZp58+YxZcoUzGYzXl5evPjii1U6p/JlAozAE7WNrLPGuejr2XO07cEjI6jU1FS6detGcHAwO3bsoFGjRkBpl9+aNWsYPHiwbY0Uq9Wql3LX2NARlEZTe3QEdQlEhL///e8UFBSwYcMGm3M6dOgQt956K9OnT+e9994DoG3btnY5J0/9B+SJ/zg1zkVfz56jbQ8eF0G98cYbPPLII6xatYpZs2ZRVFTE4sWLeeGFF/D39+eVV15h8uTJehl3TZXoCEqjqT11IoJSSrVQSv2klDpa9nrRvD9KqR5Kqe1KqVil1H+VUhNqqnfkyBHmz5/PsGHDmDlzJocPH+aWW27hueeeY/LkycTHx/Pggw9W2znFxMTUtEi1xhO1jayzu+JqW3IW+nr2HG17MDSCUkq9AJwVkeVKqSeA5iLyeKU0HShdO+SoUupaYC8QISI5VeR3yX9+FouFfv36cfToUQ4ePMgPP/zAnDlzaNiwIe+88w6jR4+ucT0sFgve3sbMGuWJ2kbW2V0jKEfakpERlL6ePUO7TkRQwGhgXdn7dcA9lROIyBEROVr2/hSQDgRWV2jZsmXs2rWLN998k//zf/4PDz/8MH379uW///1vrZwTQEJCQq2O19p1Q9fNcZktORN9PXuOtj0YHUHliIh/hf1sEbnk9N5KqZspNb7OImKt4vsq//nt3buXPn36MH78eD766CNee+01MjIyWLp0qd1z7l2O8nWbjMATtY2ssxtHUA6zJSMjKH09e4a220RQSqktSqlDVWzVCluUUq2B94GpVTmnCuls2+OPP05sbCwPPPAAzZo1Y+LEiezbt4+5c+cyZswYvLy82LdvH1arlbi4OAoKCkhMTCQ7O5vU1FTS0tLIzMwkKSkJk8lEfHw8FovF1m9bPgKm/PXgwYOYzWaOHj1Kbm4uycnJpKenk56eTnJyMrm5uRw9ehSz2czBgwerzCMmJgaLxUJ8fDwmk4mkpCQyMzNJS0sjNTWV7OxsEhMTKSgoIC4ujoyMDPbt23dBHq6q05EjR5xSJ6vVetk6nTp1yrB2MhJX2lJlO6pO+9TmmsvMzDTEjpxZJ3BPOyooKOCvv/5yazsyOoI6DAwSkbQyo9kqIh2rSNcU2AosE5H1l8nvon9+c+fO5fXXX6dXr15kZWVx+PBhfH19HVqPzMxMAgICHJqn1nY/XXDrCMphtmRkBKWvZ8/QdpsI6gp8DUwpez8F2Fg5gVLKF/gSeO9yzqkqfv75Z15//XVmz57NN998w3fffedw5wTYZjA3Ak/UNrLOboxTbclV6OvZc7TtwWgHtRwYqpQ6Cgwt20cpFamUWlOW5j5gABCllDpQtvW4UsY5OTm2rr2lS5fSunVrIiIinFIJq/WSPY5OxxO1jayzG+M0W3Il+nr2HG17MHRFXRHJAm6r4vM9wMNl7z8APqhu3lFRUZw5c4aAgADy8vIcvpJtRcpnozACT9Q2ss7uijNtyZXo69lztO3B6AjKKaxdu5aNGzfSsGFDtm7dSmhoqFP1zp4969T8tbZ76Gqcj76ePUfbHq66qY5OnDhBeHg4JSUlbN26lQEDBjhdt6CggIYNGzpdR2sbqwvuO0jCkRg5SEJfz56hXVcGSTic/v37Y7FYeO6551zinACOHz/uEh2tbayuxvno69lztO3hqougAAYPHsx//vMfl+larVaHPPCrtd1bF3QE5Wz09ewZ2h4bQTVt2pTvv//epZoHDhxwqZ6naxtZZ41z0dez52jbw1UXQW3bto1+/foZXRTNVYqOoDSa2uOxEZQRzslTFxzzxAXeNM5FX8+eo20PV10EdTXVR+N+6AhKo6k9HhtBGUH5hIxa++rW1TgffT17jrY96AjKAXjiKBwjtfUoPueiR/F5hq6R2jqCciHx8fFa2wN0Nc5HX8+eo20POoJyAJ74JLiR2nomCeeiZ5LwDF0jtXUE5UJOnTqltT1AV+N89PXsOdr2oB2UA2jRooXW9gBdjfPR17PnaNuDoQ5KKdVCKfWTUupo2Wvzy6RtqpRKVUqtdGUZ7WHp0qVa2wN03RltS3VX2xPrbC9GL/n+AnBWRJYrpZ4AmovI45dI+zoQWJZ+9iXSGNJ3Xtaf6nJdT9V2gzq73T0oR9qSkfeg3KBtPUbXSO26cg9qNLCu7P064J6qEimlegFBwGYXlUujqWtoW9JcdRi6oi4QJCJpACKSppS6pnICpZQX8DLwIFWsGFpFeocX0h6M0vVUbSPr7KY41JY88ZoyUtsT62wPTndQSqktQKsqvvpfO7OYBXwnIievdCLdsetFo3EUrrIlbUcad8HpDkpEbr/Ud0qpM0qp1mX/+FoD6VUk6wv0V0rNAvwAX6WUSUSecFKRNRq3RNuSxtMwepDEi0BWhRu7LURkwWXSRwGRlxokodF4KtqWNFcjRg+SWA4MVUodBYaW7aOUilRKrbE3E6XUcKXUYaVUQplxugSl1LtKqXSl1CFXaVbQDlVK/aKU+kspFauU+qeLdBsopXYppWLKdBe7QrdSGeoppfYrpTa5UDNJKXVQKXVAKbXHVbrVQNtSzXQNsaMybUNtyQg7KtO125bq/FRHSql6wBFKjTIF2A1MEpE4F2gPAEzAeyLSxdl6lbRbA61FZJ9SqgmwF7jH2fVWpTcvGouISSnlA2wD/ikiO5ypW6kMjwGRQFMRGeUizSRKI45MV+gZgSfaklF2VKZtqC0ZYUdluknYaUtGR1CO4GYgQUSOiUgR8AmlQ26djoj8Bpx1hVYV2mkisq/sfR7wFxDsAl0REVPZrk/Z5rJ/OUqpEGAkYHdUoLEbj7Mlo+yoTM8wW6ordnQ1OKhg4GSF/RRcdIG5C0qptkBPYKeL9OoppQ5QeiP+JxFxiW4ZrwELAKsLNaH0h2OzUmqvUmqai7VdhUfbkqvtqEzTKFsyyo6gGrZ0NTioqobE1u1+y2qglPIDPgfmikiuKzRFpEREegAhwM1KKZd0ySilRgHpImLEOtX9RORG4E7gkbIuqasNj7UlI+wIjLElg+0IqmFLV4ODSgFCK+yHAO49Ra+DKOu3/hz4UES+cLW+iOQAW4HhLpLsB9xd1of9CTBEKfWBK4RF5FTZazrwJaXdYVcbHmlLRtsRuNyWDLMjqJ4tXQ0OajfQXikVppTyBSYCXxtcJqdTdoP1HeAvEXnFhbqBSin/svcNgdsBl6x6JiILRSRERNpS2s7/EZHJztZVSjUuu4GOUqoxcAfg8pGbLsDjbMkoOyrTNsSWjLIjqL4t1XkHJSIWYDbwI6U3OD8TkVhXaCulPga2Ax2VUilKqb+7QreMfpROWTOkbLjmAaXUCBfotgZ+UUr9l9IftJ9ExKXDVA0gCNimlIoBdgHfisgPBpfJ4XioLRllR6Bt6Yq2VOeHmWs0Go3m6qTOR1AajUajuTrRDkqj0Wg0bol2UBqNRqNxS7SD0mg0Go1boh2URqPRaNwS7aA8FKWUvypdF0ij0dQQbUfORTsoz8Wf0hVWNRpNzdF25ES0g/JclgPhZQ8mvmh0YTSaOoq2IyeiH9T1UMpmbt7k6nWsNJqrCW1HzkVHUBqNRqNxS7SD0mg0Go1boh2U55IHNDG6EBpNHUfbkRPRDspDEZEs4A+l1CF9c1ejqRnajpyLHiSh0Wg0GrdER1AajUajcUu0g9JoNBqNW6IdlEaj0WjcEu2gNBqNRuOWaAel0Wg0GrdEOyiNRqPRuCXaQWk0Go3GLdEOSqPRaDRuyf8Dft95ddCRV38AAAAASUVORK5CYII=\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "Td = np.arange(0, 5, 0.01)\n", "Ud = 1*(Td>0)\n", "X0 = [-0.3, 0.4]\n", "\n", "xst, t = step(P, Td) #ゼロ状態応答\n", "xin, _ = initial(P, Td, X0) #ゼロ入力応答\n", "x, _, _ = lsim(P, Ud, Td, X0) \n", "\n", "fig, ax = plt.subplots(1, 2, figsize=(6, 2.3)) \n", "\n", "for i in [0, 1]:\n", " ax[i].plot(t, x[:,i], label='response', color='k')\n", " ax[i].plot(t, xst[:,i], ls='--', label='zero state', color='k')\n", " ax[i].plot(t, xin[:,i], ls='-.', label='zero input', color='k')\n", " ax[i].set_xticks(np.linspace(0, 5, 6))\n", " ax[i].set_yticks(np.linspace(-0.4, 0.6, 6))\n", "\n", "\n", "plot_set(ax[0], 't', '$x_1$')\n", "plot_set(ax[1], 't', '$x_2$', 'best')\n", "\n", "fig.tight_layout()\n", "# fig.savefig(\"res_ss.pdf\", transparent=True, bbox_inches=\"tight\", pad_inches=0.0)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 練習問題" ] }, { "cell_type": "code", "execution_count": 29, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "Td = np.arange(0, 5, 0.01)\n", "Ud = 3*np.sin(5*Td)\n", "X0 = [0.5, 1]\n", "\n", "xst, tst, x0st = lsim(P, Ud, Td, [0, 0]) #ゼロ状態応答\n", "xin, tin = initial(P, Td, X0) #ゼロ入力応答\n", "x, t, x0= lsim(P, Ud, Td, X0) # y + yin\n", "\n", "fig, ax = plt.subplots(1, 2, figsize=(6, 2.35)) \n", "\n", "for i in [0, 1]:\n", "\n", " ax[i].plot(t, x[:,i], label='response', color='k')\n", " ax[i].plot(tst, xst[:,i], ls='--',label='zero state', color='k')\n", " ax[i].plot(tin, xin[:,i], ls='-.', label ='zero input', color='k')\n", " ax[i].set_xticks(np.linspace(0, 5, 6))\n", " ax[i].set_yticks(np.linspace(-1.2, 1.2, 7))\n", "\n", "plot_set(ax[0], 't', '$x_1$', 'best')\n", "plot_set(ax[1], 't', '$x_2$')\n", "\n", "fig.tight_layout()\n", "#fig.savefig(\"res_ss_sin.pdf\", transparent=True, bbox_inches=\"tight\", pad_inches=0.0)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 安定性" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 極" ] }, { "cell_type": "code", "execution_count": 30, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "P1: [-1.]\n", "P2: [1.]\n", "P3: [-0.025+0.99968745j -0.025-0.99968745j]\n", "P4: [0.025+0.99968745j 0.025-0.99968745j]\n" ] } ], "source": [ "P1 = tf([0,1],[1, 1])\n", "print('P1:', pole(P1))\n", "P2 = tf([0,1],[-1, 1])\n", "print('P2:', pole(P2))\n", "P3 = tf([0,1],[1, 0.05, 1])\n", "print('P3:', pole(P3))\n", "P4 = tf([0,1],[1, -0.05, 1])\n", "print('P4:', pole(P4))" ] }, { "cell_type": "code", "execution_count": 31, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots(figsize=(3, 3))\n", "\n", "P1pole = pole(P1)\n", "P2pole = pole(P2)\n", "P3pole = pole(P3)\n", "P4pole = pole(P4)\n", "ax.scatter(P1pole.real, P1pole.imag, s=50, marker='o',label='$P_1$', color='k')\n", "ax.scatter(P2pole.real, P2pole.imag, s=50, marker='^',label='$P_2$', color='k')\n", "ax.scatter(P3pole.real, P3pole.imag, s=50, marker='x',label='$P_3$', color='k')\n", "ax.scatter(P4pole.real, P4pole.imag, s=50, marker='*',label='$P_4$', color='k')\n", "\n", "ax.set_xlim(-1.2,1.2)\n", "ax.set_ylim(-1.2,1.2)\n", "plot_set(ax, 'Re', 'Im', 'best')\n", "\n", "\n", "#fig.savefig(\"pole_map.pdf\", transparent=True, bbox_inches=\"tight\", pad_inches=0.0)" ] }, { "cell_type": "code", "execution_count": 32, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[ 1. -0.05 1. ]\n", "[0.025+0.99968745j 0.025-0.99968745j]\n" ] } ], "source": [ "_, [[Dp]] = tfdata(P4)\n", "print(Dp)\n", "print(np.roots(Dp))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 位相面図" ] }, { "cell_type": "code", "execution_count": 33, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "固有値= [-1. -4.]\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "import numpy as np\n", "import matplotlib.pyplot as plt\n", "\n", "w = 1.5\n", "Y, X = np.mgrid[-w:w:100j, -w:w:100j]\n", "\n", "A = np.array( [[0, 1],[-4, -5]] )\n", "s,v = np.linalg.eig(A)\n", " \n", "print('固有値=',s)\n", "U = A[0,0]*X + A[0,1]*Y\n", "V = A[1,0]*X + A[1,1]*Y\n", "\n", "t = np.arange(-1.5, 1.5, 0.01)\n", "\n", "fig, ax = plt.subplots(figsize=(3, 3))\n", "\n", "# 固有空間のプロット\n", "if s.imag[0] == 0 and s.imag[1] == 0: #固有値が複素数の場合はプロットできない\n", " ax.plot(t, (v[1,0]/v[0,0])*t, ls='--', color='k', lw=2)\n", " ax.plot(t, (v[1,1]/v[0,1])*t, ls='--', color='k', lw=2)\n", " \n", "ax.streamplot(X, Y, U, V, density=0.7, color='k', linewidth=0.5)\n", "\n", "ax.set_xlim(-1.5,1.5)\n", "ax.set_ylim(-1.5,1.5)\n", "ax.set_xticks(np.arange(-1.5, 1.51, step=0.5))\n", "ax.set_yticks(np.arange(-1.5, 1.51, step=0.5))\n", "plot_set(ax, '$x_1$', '$x_2$')\n", "\n", "# fig.savefig(\"trajectory.pdf\", transparent=True, bbox_inches=\"tight\", pad_inches=0.0)" ] }, { "cell_type": "code", "execution_count": 34, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "固有値= [1. 4.]\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "w = 1.5\n", "Y, X = np.mgrid[-w:w:100j, -w:w:100j]\n", "\n", "A = np.array( [[0, 1],[-4, 5]] )\n", "s,v = np.linalg.eig(A)\n", " \n", "print('固有値=',s)\n", "U = A[0,0]*X + A[0,1]*Y\n", "V = A[1,0]*X + A[1,1]*Y\n", "\n", "t = np.arange(-1.5, 1.5, 0.01)\n", "\n", "fig, ax = plt.subplots(figsize=(3, 3))\n", "\n", "# 固有空間のプロット\n", "if s.imag[0] == 0 and s.imag[1] == 0: #固有値が複素数の場合はプロットできない\n", " ax.plot(t, (v[1,0]/v[0,0])*t, ls='--', color='k', lw=2)\n", " ax.plot(t, (v[1,1]/v[0,1])*t, ls='--', color='k', lw=2)\n", " \n", "ax.streamplot(X, Y, U, V, density=0.7, color='k', linewidth=0.5)\n", "\n", "ax.set_xlim(-1.5,1.5)\n", "ax.set_ylim(-1.5,1.5)\n", "ax.set_xticks(np.arange(-1.5, 1.51, step=0.5))\n", "ax.set_yticks(np.arange(-1.5, 1.51, step=0.5))\n", "plot_set(ax, '$x_1$', '$x_2$')\n", "\n", "#fig.savefig(\"trajectory2.pdf\", transparent=True, bbox_inches=\"tight\", pad_inches=0.0)" ] }, { "cell_type": "code", "execution_count": 35, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "固有値= [-0.70156212 5.70156212]\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "w = 1.5\n", "Y, X = np.mgrid[-w:w:100j, -w:w:100j]\n", "\n", "A = np.array( [[0, 1],[4, 5]] )\n", "s,v = np.linalg.eig(A)\n", " \n", "print('固有値=',s)\n", "U = A[0,0]*X + A[0,1]*Y\n", "V = A[1,0]*X + A[1,1]*Y\n", "\n", "t = np.arange(-1.5, 1.5, 0.01)\n", "\n", "fig, ax = plt.subplots(figsize=(3, 3))\n", "\n", "# 固有空間のプロット\n", "if s.imag[0] == 0 and s.imag[1] == 0: #固有値が複素数の場合はプロットできない\n", " ax.plot(t, (v[1,0]/v[0,0])*t, ls='--', color='k', lw=2)\n", " ax.plot(t, (v[1,1]/v[0,1])*t, ls='--', color='k', lw=2)\n", " \n", "ax.streamplot(X, Y, U, V, density=0.7, color='k', linewidth=0.5)\n", "\n", "ax.set_xlim(-1.5,1.5)\n", "ax.set_ylim(-1.5,1.5)\n", "ax.set_xticks(np.arange(-1.5, 1.51, step=0.5))\n", "ax.set_yticks(np.arange(-1.5, 1.51, step=0.5))\n", "plot_set(ax, '$x_1$', '$x_2$')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 零点の影響" ] }, { "cell_type": "code", "execution_count": 36, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots(figsize=(3, 2.3))\n", "\n", "Td = np.arange(0,5,0.01)\n", "Ud = 1 * (Td > 0.0)\n", "\n", "zeta = .4\n", "omega_n = 3\n", "\n", "LS=linestyle_generator()\n", "\n", "P = tf([ 0, omega_n**2],[1, 2*zeta*omega_n, omega_n**2])\n", "y, t, x0 = lsim(P, Ud, Td, 0)\n", "ax.plot(t,y, ls = next(LS), label='$P_1$', c='k')\n", "\n", "P = tf([ 3, omega_n**2],[1, 2*zeta*omega_n, omega_n**2])\n", "y, t, x0 = lsim(P, Ud, Td, 0)\n", "ax.plot(t,y,ls = next(LS), label='$P_2$', c='k')\n", "\n", "P = tf([-3, omega_n**2],[1, 2*zeta*omega_n, omega_n**2])\n", "y, t, x0 = lsim(P, Ud, Td, 0)\n", "ax.plot(t,y, ls = next(LS), label='$P_3$', c='k')\n", "\n", "ax.set_ylim(-0.5,1.5)\n", "plot_set(ax, 't', 'y', 'best')\n", "\n", "# fig.savefig(\"fig_step6.pdf\", transparent=True, bbox_inches=\"tight\", pad_inches=0.0)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 周波数応答" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### インパルスは余弦波の重ね合わせ" ] }, { "cell_type": "code", "execution_count": 37, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "t = np.arange(0, 3, 0.01)\n", "\n", "fig, ax = plt.subplots(1, 2, figsize=(6, 2.3)) \n", "\n", "u = 0 * t\n", "for i in range(0,10):\n", " u = u + (0.1/2/np.pi)*np.cos(t * (i+1))\n", "ax[0].plot(u, color='k')\n", "\n", "u = 0 * t\n", "for i in range(0,13000):\n", " u = u + (0.1/2/np.pi)*np.cos(t * (i+1))\n", "ax[1].plot(u, color='k')\n", "\n", "ax[0].set_xlim(-20, 300)\n", "ax[0].set_ylim(-0.05, 0.2)\n", "ax[0].grid(ls=':')\n", "\n", "ax[1].set_xlim(-20, 300)\n", "ax[1].set_ylim(-50, 300)\n", "ax[1].grid(ls=':')\n", "\n", "ax[0].set_xlabel('$t$')\n", "ax[1].set_xlabel('$t$')\n", "\n", "fig.tight_layout()\n", "#fig.savefig(\"impluse_cos.pdf\", transparent=True, bbox_inches=\"tight\", pad_inches=0.0)" ] }, { "cell_type": "code", "execution_count": 38, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots(2,2,figsize=(6,4)) \n", "\n", "zeta = 0.7\n", "omega_n = 5\n", "P = tf([0,omega_n**2],[1, 2*zeta*omega_n, omega_n**2])\n", "\n", "freq = [2, 5, 10, 20]\n", "Td = np.arange(0, 5, 0.01)\n", "for i in range(2):\n", " for j in range(2):\n", " u = np.sin(freq[2*i+j]*Td)\n", " y, t, x0 = lsim(P, u, Td, 0)\n", " \n", " ax[i,j].plot(t, u, ls='--', label='u', color='k')\n", " ax[i,j].plot(t, y, label='y', color='k')\n", " plot_set(ax[i,j], 't', 'u, y')\n", "\n", "ax[0,0].legend()\n", "fig.tight_layout()\n", "#fig.savefig(\"freq_resp.pdf\", transparent=True, bbox_inches=\"tight\", pad_inches=0.0)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 1次遅れ系のボード線図" ] }, { "cell_type": "code", "execution_count": 39, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "LS = linestyle_generator()\n", "\n", "K = 1\n", "T = [1, 0.5, 0.1]\n", "\n", "fig, ax = plt.subplots(2,1,figsize=(4,3.5))\n", "\n", "for i in range(len(T)):\n", " P = tf([0, K],[T[i], 1])\n", " gain, phase, w = bode(P, logspace(-2,2), Plot=False)\n", " \n", " pltargs = {'ls': next(LS), 'label': 'T='+str(T[i])}\n", " ax[0].semilogx(w, 20*np.log10(gain), **pltargs)\n", " ax[1].semilogx(w, phase*180/np.pi, **pltargs)\n", " \n", "bodeplot_set(ax, 3, 3)\n", "ax[1].set_ylim(-95,5)\n", "ax[1].set_yticks([-90,-45,0])\n", "\n", "fig.tight_layout()\\\n", "# fig.savefig(\"1st_bode.pdf\", transparent=True, bbox_inches=\"tight\", pad_inches=0.0)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 2次遅れ系のボード線図" ] }, { "cell_type": "code", "execution_count": 40, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "LS = linestyle_generator()\n", "\n", "fig, ax = plt.subplots(2,1,figsize=(4,3.5))\n", "\n", "zeta = [1, 0.7, 0.4]\n", "omega_n = 1\n", "\n", "for i in range(len(zeta)):\n", " P = tf([0,omega_n**2], [1, 2*zeta[i]*omega_n, omega_n**2])\n", " gain, phase, w = bode(P, logspace(-2,2), Plot=False)\n", " \n", " pltargs = {'ls': next(LS)}\n", " pltargs['label'] = '$\\zeta$='+str(zeta[i])\n", " ax[0].semilogx(w, 20*np.log10(gain), **pltargs)\n", " ax[1].semilogx(w, phase*180/np.pi, **pltargs)\n", "\n", "bodeplot_set(ax, 3, 3)\n", "ax[0].set_ylim(-90,10)\n", "ax[0].set_yticks([-80,-40,0])\n", "ax[1].set_ylim(-190,10)\n", "ax[1].set_yticks([-180,-90,0])\n", "\n", "fig.tight_layout()\n", "# fig.savefig(\"2nd_bode.pdf\", transparent=True, bbox_inches=\"tight\", pad_inches=0.0)" ] }, { "cell_type": "code", "execution_count": 41, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "LS = linestyle_generator()\n", "\n", "fig, ax = plt.subplots(2,1,figsize=(4,3.5))\n", "\n", "zeta = 0.7\n", "omega_n = (1, 5, 10)\n", "for i in range(len(omega_n)):\n", " P = tf([0,omega_n[i]**2],[1, 2*zeta*omega_n[i], omega_n[i]**2])\n", " gain, phase, w = bode(P, logspace(-2,2), Plot=False)\n", "\n", " pltargs = {'ls': next(LS), 'label': '$\\omega_n$='+str(omega_n[i])}\n", " ax[0].semilogx(w, 20*np.log10(gain), **pltargs)\n", " ax[1].semilogx(w, phase*180/np.pi, **pltargs)\n", " \n", "bodeplot_set(ax, 3, 3)\n", "ax[0].set_ylim(-90,10)\n", "ax[0].set_yticks([-80,-40,0])\n", "ax[1].set_ylim(-190,10)\n", "ax[1].set_yticks([-180,-90,0])\n", "\n", "fig.tight_layout()\n", "#fig.savefig(\"2nd_bode2.pdf\", transparent=True, bbox_inches=\"tight\", pad_inches=0.0)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 練習問題" ] }, { "cell_type": "code", "execution_count": 42, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n", " s + 3\n", "-------------\n", "s^2 + 3 s + 2\n", "\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots(2,1,figsize=(4,3.5))\n", "\n", "P1 = tf([1, 3], [1, 3, 2])\n", "print(P1)\n", "\n", "gain, phase, w = bode(P1, logspace(-2,2), Plot=False)\n", "ax[0].semilogx(w, 20*np.log10(gain))\n", "ax[1].semilogx(w, phase*180/np.pi)\n", "bodeplot_set(ax)" ] }, { "cell_type": "code", "execution_count": 43, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n", " 1\n", "---------------------\n", "s^3 + 2 s^2 + 2 s + 1\n", "\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots(2,1,figsize=(4,3.5))\n", "\n", "P2 = tf([0, 1], [1, 2, 2, 1])\n", "print(P2)\n", "\n", "gain, phase, w = bode(P2, logspace(-2,2), Plot=False)\n", "ax[0].semilogx(w, 20*np.log10(gain))\n", "ax[1].semilogx(w, phase*180/np.pi)\n", "bodeplot_set(ax)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 安定判別" ] }, { "cell_type": "code", "execution_count": 44, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "P: [-1.28781548+0.85789676j -1.28781548-0.85789676j 0.28781548+1.41609308j\n", " 0.28781548-1.41609308j]\n" ] } ], "source": [ "P = tf([0,1],[1, 2, 3, 4, 5])\n", "print('P:',pole(P))" ] }, { "cell_type": "code", "execution_count": 45, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[1 2 3 4 5]\n", "[-1.28781548+0.85789676j -1.28781548-0.85789676j 0.28781548+1.41609308j\n", " 0.28781548-1.41609308j]\n" ] } ], "source": [ "_, [[Dp]] = tfdata(P)\n", "print(Dp)\n", "print(np.roots(Dp))" ] } ], "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.6" }, "toc-autonumbering": false, "toc-showcode": false, "toc-showmarkdowntxt": false, "toc-showtags": false }, "nbformat": 4, "nbformat_minor": 4 }