{"nbformat":4,"nbformat_minor":0,"metadata":{"anaconda-cloud":{},"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.6.9"},"colab":{"name":"06-ode_02_overview.ipynb","provenance":[],"collapsed_sections":[],"toc_visible":true}},"cells":[{"cell_type":"markdown","metadata":{"id":"PjY__WjDs3mE"},"source":["# はじめに:まずは微分方程式を眺めてみよう\n","初回で紹介したように、\n","無料の通信講座として展開している次の講座を Jupyter Notebook 形式にまとめ、編集して再録します。\n","\n","- [応用からの中高数学再入門 自然を再現しよう 中高数学駆け込み寺](https://phasetr.com/lp/mrrfa1/)\n","- [プログラミングで数学を 中高数学虎の穴](https://phasetr.com/lp/mpgh1/)\n","\n","いい復習にもなるので、もしあなたがこの講座をすでに受講していたとしても、ぜひもう一度眺めてみてください。\n","もちろん、何度も復習したから大丈夫というなら、次の章に進んで問題ありません。"]},{"cell_type":"markdown","metadata":{"id":"cNQyklJGkq1L"},"source":["## いろいろな常微分方程式とその近似解法\n","最初に近似解法と近似解と厳密解の比較をグラフにして簡単にまとめておきます。\n","特にあなたがこれを「応用からの中高数学再入門 自然を再現しよう」として受講されているなら、\n","細かいことは気にせず「こんなこともできるのか」と思いながら読み進めてください。\n","今の段階では式の展開など全体像を見る上での枝葉末節は完全にカットしています。"]},{"cell_type":"markdown","metadata":{"id":"9dcYTYCVhUgV"},"source":["## 一番簡単な常微分方程式\n","一番簡単な常微分方程式は $\\frac{dx}{dt} = 0$ です。\n","微分したら 0 になる関数なので $x = \\text{定数}$ が解です。\n","「微分したらこうなる」という条件から、その条件を満たす関数を求めるのが微分方程式でやりたいことです。\n","中学・高校では二次関数の解のように、関数がある条件をみたすような値を求める問題がメインでした。\n","微分方程式はある条件を満たす**関数**を求める問題を解くのです。\n","\n","もう 2 つ挙げておきます。\n","\n","- $\\frac{dx}{dt} = 1$:これをみたす関数は定数 C に対して $x(t) = t + C$。\n","- $\\frac{dx}{dt} = t$:これをみたす関数は同じく定数 C に対して $x(t)= t^2/2 + C$。\n","\n","これは微分法さえ知っていれば中高生でも簡単に解ける問題で、問題のための問題ともいえます。\n","\n","そこで実際の自然現象とも結びつく実用的な微分方程式を見てみましょう。"]},{"cell_type":"markdown","metadata":{"id":"GZ9xHghLkq1M"},"source":["## 1 階の線型常微分方程式\n","一番単純でしかも実際に使われる微分方程式として、\n","まずは 1 階の線型常微分方程式を考えます。\n","すこし不吉な例ですが**放射性物質の崩壊の方程式**を紹介します。\n","導出をしたければちゃんと物理を勉強する必要があります。\n","ここでは物理は省略して数学に集中します。\n","\n","具体的には次の微分方程式を考えます。\n","\n","\\begin{align}\n"," \\frac{dx}{dt} = - c x.\n","\\end{align}\n","\n","厳密解は $x(t) = C_0 e^{-ct}$ です:上の微分方程式に代入すればわかります。\n","初期値、例えば $t=0$ での値 $x(0)$ を設定すれば $C_0$ はそこから決まります。"]},{"cell_type":"markdown","metadata":{"id":"wSkPGwTwEeOI"},"source":["### 解をどう求めるか?\n","「解はこうだ」とさらっと書きしました。\n","しかし、もしあなたが初めて微分方程式を見たなら、\n","これをどうやって解けばいいのか、\n","解の公式のようなものはあるのか、\n","いろいろな疑問が出てくるはずです。\n","\n","ここでは詳しい話はしきれません。\n","結論だけ書くと、ごく簡単な場合には標準的な解法があってそれで処理できますが、\n","一般的には具体的に解を求められません。\n","解があることはわかっても具体的な解が何なのかよくわからない方が普通なのです。\n","もちろん解がないこともあります。"]},{"cell_type":"markdown","metadata":{"id":"9QGEwix7FHAP"},"source":["### 中高での方程式、代数方程式との比較\n","中高では 2 次方程式では解の公式がありました。\n","3 次や 4 次の方程式が出てくることもありますが、たいていの場合はちょっと勘を働かせれば解けるように作られています。\n","さらに、一般の $n$ 次方程式に対して、複素数まで行けば必ず解があることも勉強します。\n","\n","事情としてはこの最後の例が近いです。\n","つまり、関数を考える範囲を大きくすれば解があることくらいはわかるかもしれません。\n","しかし、その解が具体的に何かはわからないことばかりです。\n","適当に考えた 7 次方程式 $x^7 + 4x^4 + 2x +3 = 0$ の解が何かといわれても困るのと同じです。\n","\n","微分方程式の場合は解があるかどうかさえ怪しくなります。\n","これは特に連立 1 次方程式で出会います。\n","\n","ここでこれ以上細かいことは説明しません。\n","ただ、一般に正確な解(**厳密解**)が求められなくなることは、微分方程式論のいろいろなところに影を落としています。\n"]},{"cell_type":"markdown","metadata":{"id":"2dxjcHMiGcB3"},"source":["### せめて近似解がほしい\n","たいていの場合、厳密解は求められないと書きました。\n","実用の状況では必ずしも厳密な答えが欲しいわけではなく、真の解に近い解、近似解で十分なことも多いのです。\n","\n","精度などいろいろな問題はあります。\n","ここでは細かいことは気にせず、どうやって近似解を求めるかを考えていきます。\n","そして近似解をコンピューターによる計算で求めることがこの節の目的です。"]},{"cell_type":"markdown","metadata":{"id":"gMPT7eYUEjdB"},"source":["### 微分方程式の近似\n","微分方程式の議論では、近似解を求めるためにふつうは微分方程式自体を近似します。\n","細かい話はさておき、簡単に状況を眺めてみましょう。\n","微分法の復習でもあります。\n","\n","まず微分係数または導関数の**定義に則って** $dx/dt$ を次のように近似します。\n","\n","\\begin{align}\n","\\frac{dx}{dt}\n","\\simeq\n","\\frac{x(t+ \\Delta t) - x(t)}{\\Delta t}.\n","\\end{align}\n","\n","この近似を**離散化**と呼ぶことにしましょう。\n","実際にはいろいろな近似の仕方や離散化手法があります。\n","ここでは深いことは考えず、導関数を単純に離散化します。\n","初期時刻を $t=0$ として、$x(n \\cdot \\Delta t) = x_n$ と書くことにすれば、微分方程式は次のように近似的に離散化して書き直せます。\n","\n","\\begin{align}\n"," \\frac{x_{n+1} - x_{n}}{\\Delta t}\n"," =\n"," -c x_{n}.\n","\\end{align}\n","\n","$\\Delta t$ は $h$ と書くこともあります。\n","さらにこれを次のように整理します。\n","\n","\\begin{align}\n"," x_{n+1}\n"," =\n"," x_{n} - c (\\Delta t) x_{n}.\n","\\end{align}\n","\n","これで微分方程式が漸化式になりました。\n","この漸化式を解くのが離散化による近似解法です。\n","そして実際にこの漸化式に沿って計算したのがいわゆるオイラー法です。\n","次のセルではこれを素直にコードに落としています。"]},{"cell_type":"markdown","metadata":{"id":"U3KqQcUDEf6A"},"source":["### オイラー法のプログラム"]},{"cell_type":"code","metadata":{"scrolled":true,"id":"z74eaeRYkq1M","colab":{"base_uri":"https://localhost:8080/","height":265},"executionInfo":{"status":"ok","timestamp":1588377062128,"user_tz":-540,"elapsed":889,"user":{"displayName":"Yoshitsugu Sekine","photoUrl":"https://lh3.googleusercontent.com/a-/AOh14GimsNckrAflr-jMDGQwV_kIJ56EjAWYV8INkpUv=s64","userId":"13524401322013959426"}},"outputId":"be229cbe-2aac-4951-a985-e9dfc69a51e0"},"source":["import numpy as np\n","import matplotlib.pyplot as plt\n","\n","def radioactive_euler(nt, init = 10):\n"," dt = 2 / (nt - 1)\n"," # 初期条件設定\n"," x = np.zeros(nt)\n"," x[0] = init\n","\n"," for i in range(1, nt):\n"," x[i] = x[i-1] - c * dt * x[i-1]\n","\n"," return x\n","\n","# パラメータ設定\n","c = 1\n","nt = 101\n","init = 5\n","\n","# 近似解\n","x1 = radioactive_euler(nt, init)\n","plt.plot(np.linspace(0, 2, nt), x1)\n","\n","# 厳密解\n","t = np.linspace(0, 2, nt)\n","x2 = init * np.exp(- c * t)\n","plt.plot(t, x2)\n","\n","# 凡例\n","plt.legend(['approximation', 'exact'])\n","# 描画\n","plt.show()"],"execution_count":null,"outputs":[{"output_type":"display_data","data":{"image/png":"iVBORw0KGgoAAAANSUhEUgAAAWoAAAD4CAYAAADFAawfAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4yLjEsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+j8jraAAAgAElEQVR4nO3deXxM9/7H8dd3FglJLLFXEFq1RWyhxL7VUoK2WmtRtZSi6y16u1Bd7u2iV93e1l5tlVYv1UVvWxSxRIXYQmxNCEoEkVUyM9/fH5n6pRqRkJkzST7PxyMPk5lz5rxzcrwd33PmHKW1RgghhOcyGR1ACCFE3qSohRDCw0lRCyGEh5OiFkIIDydFLYQQHs7iijetVKmSDgwMdMVbCyFEsRQZGXlBa105t9dcUtSBgYHs2rXLFW8thBDFklIq7kavydCHEEJ4OClqIYTwcFLUQgjh4VwyRi2EcL+srCzi4+PJyMgwOorIg7e3NwEBAVit1nzPI0UtRDERHx+Pn58fgYGBKKWMjiNyobUmMTGR+Ph46tSpk+/58lXUSqlYIBmwAzatdcgtpRRCuExGRoaUtIdTSlGxYkUSEhIKNF9B9qi7aK0vFCyWEMKdpKQ93638jjzmYKItK4vty14kJnKj0VGEEMKj5LeoNfCjUipSKTUutwmUUuOUUruUUrsKulsPkJ6WTJ0Ty/H+7gky0lIKPL8QQgD06dOHy5cv3/b7REVF8f3331/7fu3atbz55pu3/b63Ir9F3V5r3QLoDUxSSnW8fgKt9XytdYjWOqRy5Vw/BZknv3L+nO/yNrUd8ez95G8Fnl8IUfzYbLYCz/P9999Tvnz521729UUdFhbGtGnTbvt9b0W+ilprfdr553lgNdDaFWGCOw1kh39/Wp1ZzpFff3LFIoQQLjRgwABatmxJ48aNmT9/PgC+vr489dRTNG7cmG7dul07kNa5c2emTp1Ks2bNCAoKYufOnQC88sorjBgxgnbt2jFixAhiY2Pp2rUrwcHBdOvWjZMnT5KUlET9+vWJiYkBYMiQISxYsADIvoTFhQsXiI2NpUGDBowaNYq7776bYcOG8fPPP9OuXTvq1at3bXk7d+6kbdu2NG/enNDQUGJiYsjMzOSll15i5cqVNGvWjJUrV7J06VKeeOIJgFwzAYwaNYopU6YQGhpK3bp1WbVqVaGs15seTFRK+QAmrXWy8/G9wKxCWXouGo98j9/nbKfM95PJaLQTb5+yrlqUEMXWzG8OEn3mSqG+Z6M7yvJyv8Z5TrN48WL8/f1JT0+nVatWPPDAA6SmphISEsKcOXOYNWsWM2fOZN68eQCkpaURFRXF5s2befTRRzlw4AAA0dHRhIeHU7p0afr168fIkSMZOXIkixcvZsqUKaxZs4Z58+YxatQopk6dyqVLlxg7duxf8hw7dowvv/ySxYsX06pVK5YvX054eDhr167l9ddfZ82aNTRo0IAtW7ZgsVj4+eefmTFjBl999RWzZs1i165d17IuXbr02vtOnjw510wAZ8+eJTw8nMOHDxMWFsaDDz542+s+P3vUVYFwpdReYCfwndb6h9te8g34lfMnodu7BOizHPj4KVctRgjhAnPnzqVp06a0adOGU6dOcfToUUwmEw8//DAAw4cPJzw8/Nr0Q4YMAaBjx45cuXLl2thyWFgYpUuXBmD79u0MHToUgBEjRlybv0ePHjRp0oRJkyaxcOHCXPPUqVOHJk2aYDKZru3RK6Vo0qQJsbGxACQlJTFo0CCCgoJ46qmnOHjw4E1/zhtlguz/VZhMJho1asS5c+fyve7yctM9aq31CaBpoSwtn5p26MfWvYNod/5LYrb1p35omDsXL0SRd7M9X1f45Zdf+Pnnn9m+fTtlypShc+fOuX5KMufpadefqvbH9z4+PjddnsPh4NChQ5QpU4ZLly4REBDwl2m8vLyuPTaZTNe+N5lM18a/X3zxRbp06cLq1auJjY2lc+fON/9h85BzmYV183CPOT3vek1HzSFW1aDCT0+SmpRodBwhxE0kJSVRoUIFypQpw+HDh9mxYweQXah/jNUuX76c9u3bX5tn5cqVAISHh1OuXDnKlSv3l/cNDQ1lxYoVAHz22Wd06NABgDlz5tCwYUOWL1/O6NGjycrKuuXcNWrUAP48vOHn50dycnKu89wok6t4bFH7+vqR3Hse/o5LHF060eg4Qoib6NWrFzabjYYNGzJt2jTatGkDZO8d79y5k6CgIDZs2MBLL710bR5vb2+aN2/OhAkTWLRoUa7v+/7777NkyRKCg4P55JNP+Ne//kVMTAwLFy7knXfeoUOHDnTs2JHZs2ffUu6//e1vTJ8+nebNm//pLJMuXboQHR197WDizTK5kiqsXfOcQkJCdGHdOGDTR0/T6ewiojvMo1G3EYXynkIUR4cOHaJhw4ZGx/gLX19fUlL++tmIzp078/bbbxMSUvKuSJHb70opFXmjy3N47B71H+4Z+TqHTXdRY8s0rpw7aXQcIYRwO48vam9vb9T98ymlMzn98aPgcBgdSQhRALntTUP2wceSuDd9Kzy+qAHqB7Vkx11P0zDtV/atfsvoOEII4VZFoqgBOgz5G7tKteLu/W+RcCLK6DhCCOE2RaaoLRYzVYYvJFWXJu3z0Tgy5S4WQoiSocgUNUCtWoEcCHmd2lknOPDJM0bHEUIItyhSRQ3Qse9wNpbtT/CpT4nd+Y3RcYQQbrBmzRqio6ONjmGYIlfUSimaPvo+x6mJ37rJpF8qnM/SCyE8lxR1EeRfvhyX+/wHX0cKJ5eMAhd8aEcIUXCffvoprVu3plmzZowfP56IiAiCg4PJyMggNTWVxo0bc+DAAVJSUujWrRstWrSgSZMmfP3119feY9myZQQHB9O0aVNGjBjBtm3bWLt2Lc899xzNmjXj+PHjBv6ExiiydyFv2boDP+yfTK9T73L467doMEBuNiDENeumwe/7C/c9qzWB3je+w8mhQ4dYuXIlW7duxWq1MnHiRGJiYggLC+Pvf/876enpDB8+nKCgIGw2G6tXr6Zs2bJcuHCBNm3aEBYWRnR0NLNnz2bbtm1UqlSJixcv4u/vT1hYGH379i2US4YWRUW2qAG6PPICEf8Mp3nUP7jQuAuV6rUyOpIQJdb69euJjIykVavsv4fp6elUqVKFl156iVatWuHt7c3cuXOB7KvKzZgxg82bN2MymTh9+jTnzp1jw4YNDBo0iEqVKgHg7+9v2M/jSYp0UXtZLVQZsYhLizriWDES+3MRmL39jI4lhPHy2PN1Fa01I0eO5I033vjT82fPniUlJYWsrCwyMjLw8fHhs88+IyEhgcjISKxWK4GBgbleElVkK5Jj1DnVqVWL6LbvUNV2hqNLxhsdR4gSq1u3bqxatYrz588DcPHiReLi4hg/fjyvvvoqw4YN4/nnnweyLy1apUoVrFYrGzduJC4uDoCuXbvy5ZdfkpiYeO09IO9LjpYERXqP+g+de97PD0c30fvcx/z28wLqdP/rLXmEEK7VqFEjZs+ezb333ovD4cBqtdK/f3+sVitDhw7FbrcTGhrKhg0bGDZsGP369aNJkyaEhITQoEEDABo3bswLL7xAp06dMJvNNG/enKVLlzJ48GDGjh3L3LlzWbVqFXfeeafBP617efxlTvMrOS2Do293o6HjKFljNlC2ZpBbly+E0Tz1Mqfir4rdZU7zy6+MN94PLyZNe5G8bDg6M9XoSEIIUSiKTVEDNKpfn53N36R6ZixHl04yOo4QQhSKYlXUAL36D+X78kO4+8xqTm7M/dY+QhRXrhjKFIXrVn5Hxa6olVK0e+wdIlUQVTZNI/nkPqMjCeEW3t7eJCYmSll7MK01iYmJeHt7F2i+YnHWx/Uq+JXB+vBikj/vgf2Tofg+sw3lXdboWEK4VEBAAPHx8SQkJBgdReTB29ubgICAAs1TLIsaILhBfb5r+Ta9IsdxYslY7pywApQyOpYQLmO1WqlTp47RMYQLFLuhj5z69BvEWv/R3HnuB07+8J7RcYQQ4pYU66JWStF17JtsNbfijohXSToSbnQkIYQosGJd1ADlynhRYdgizuiK2FeOxJ583uhIQghRIMW+qAEa1a3NoQ7/powtidMLBoPdZnQkIYTItxJR1AA9u9/LmoBnqXUlkrgv5NrVQoiio8QUNcCAUc/xrdd91I5ZxPnty42OI4QQ+VKiitrbaqbpYx8QRX3K/u9J0uML+Q4YQgjhAiWqqAFqVi5P+oDFXNGlSfn4IXTaJaMjCSFEnkpcUQO0bRbE5mbvUC7zHPELh4LDbnQkIYS4oRJZ1AD393+AlVWmUvPiNk6vmmZ0HCGEuKESW9Qmk2LgYy/wjbUXNaLnk7j9M6MjCSFErkpsUQP4elkIeuxDImmAz/+eIiMu0uhIQgjxFyW6qAHqVK1A+oClJGo/0j95GJ38u9GRhBDiT/Jd1Eops1Jqj1LqW1cGMkL7Zg3Z1up9vLKucG7+g5Alt60XQniOguxRTwUOuSqI0R68rzcrasygWvJ+znw6HuTi60IID5GvolZKBQD3AQtdG8c4SimGjp7M8jLDuCNuDed/+IfRkYQQAsj/HvV7wN8Ax40mUEqNU0rtUkrtKqp3mPC2muk67h1+VO2oFPEmV/asNjqSEELcvKiVUn2B81rrPE+J0FrP11qHaK1DKleuXGgB3a1a+dJUe2Qx+3VdSq0dT2b8HqMjCSFKuPzsUbcDwpRSscAKoKtS6lOXpjJYcJ1qnOuzhESHL2lLB6GvnDE6khCiBLtpUWutp2utA7TWgcBgYIPWerjLkxns3nuasqH5XCxZyVyYPxAyU42OJIQooUr8edR5Gd7/Pj4JeAX/5BjOLRku1wQRQhiiQEWttf5Fa93XVWE8jVKK0aPGschvAlXPbuD8V88ZHUkIUQLJHvVNeFvNPDBhJl9Y+lLl4CIubXzf6EhCiBJGijofKvp60XzMv1lPK8ptepHUfV8bHUkIUYJIUedTverl8Rm8hH2OO7GsHktW3E6jIwkhSggp6gJo06Amp3ot4ay9PBnLBqETjxsdSQhRAkhRF1C/0GB+afUBmTY7SQvCIKVofgpTCFF0SFHfgpF9u7H8zrfwSj9P4oL+cDXF6EhCiGJMivoWKKWYMOxh/lPlRcpfjiZx6WCwZxkdSwhRTElR3yKr2cT4xybyge8TVDy7hcTPx4HjhtesEkKIWyZFfRt8vCwMnvAiC61DqHjsv1xeO93oSEKIYkiK+jZV9vOi+7i3+UL1onzUhySvf8foSEKIYkaKuhAEVval4ej/sE63xW/LLNIiPjY6khCiGJGiLiRNavlTdsgiwh1N8F73JFf3y6cXhRCFQ4q6ELVrUIPkAUuIctTF9NUYbMc2Gh1JCFEMSFEXst4t6nGs+xKOO6ph/2wIjpO/Gh1JCFHESVG7wEMdg9nWdgFn7WXJ+Hgg+vf9RkcSQhRhUtQuMrpXG75t9h+SbFbSFoXBhWNGRxJCFFFS1C6ilGLSwK58Xn8u6Zk2khfcB5dPGh1LCFEESVG7kFKKqYP7siDwHRwZV0j+qDfIjXKFEAUkRe1iZpPi2UceZF6Nf0JaYnZZJ58zOpYQogiRonYDq9nEM6OH8l7V1zCnnOXK/D6Qmmh0LCFEESFF7SbeVjPPPjaKtyrOpNSVuOyyTrtodCwhRBEgRe1GpUuZeWb8WN4s/zJel49zZf59kH7J6FhCCA8nRe1mvl4Wnn58Am+U+zvel45wZUE/SL9sdCwhhAeTojZAWW8rT02YxOu+M/BOjCZ5oZS1EOLGpKgNUq6MlakTJ/Oa7wy8LhwkeUFfGQYRQuRKitpAFXxKMXXiFGb7zsAr8VD2h2LkAKMQ4jpS1Abz9ynFkxOn8KrvC3glxpCyQE7dE0L8mRS1B/D3KcVTE59gpt+LWC4eI2V+L0g5b3QsIYSHkKL2EP4+pXhu4kRmlXsF0+U4Uj/qCVfOGh1LCOEBpKg9SPkypXh+wnheLT8LfeUMqR/dKxdyEkJIUXuacmWsTH98DK/6v44tJZG0j3pA4nGjYwkhDCRF7YHKelt5acJIXqvyFmlpaaTP7wHnoo2OJYQwiBS1h/LxsjBr3GDevuNdkjIcXF3QE+J3GR1LCGEAKWoP5m01M3PM/cyt/T6/Z3qTubgv+sQvRscSQriZFLWH87KYmTXyPhbX/5ATtkrYPxmEPvSN0bGEEG4kRV0EWMwmXh7SldVN57PfXgu98hEcuz8xOpYQwk1uWtRKKW+l1E6l1F6l1EGl1Ex3BBN/ZjIppt3fls1tFhJub4xp7RPYtswxOpYQwg3ys0d9FeiqtW4KNAN6KaXauDaWyI1Siql9mnOs+yK+sbfBsv4VMte9AA6H0dGEEC5006LW2VKc31qdX9qlqUSeHu1Un8z+81lmv5dSEfPIWDUWbJlGxxJCuEi+xqiVUmalVBRwHvhJax2RyzTjlFK7lFK7EhISCjunuM4DIbWpMeR95jgexjt6FenLHoSryUbHEkK4QL6KWmtt11o3AwKA1kqpoFymma+1DtFah1SuXLmwc4pcdGtUjY5j/sFLTMR6cgvpC3rJHc6FKIYKdNaH1voysBHo5Zo4oqBa1q7AIxNn8LxlOjrhKBkfdoWEI0bHEkIUovyc9VFZKVXe+bg00AM47OpgIv/uquLHc5On8LzfG6SkXCFzfjeI2250LCFEIcnPHnV1YKNSah/wK9lj1N+6NpYoqGrlvHntiUeYXW0up676YF/aD71/ldGxhBCFID9nfezTWjfXWgdrrYO01rPcEUwUXFlvK/8c259F9T9kl/1O1FdjsG96C7ScpCNEUSafTCxmSllMvDa0E9tDF7LGHop542wyV0+S0/eEKMKkqIshpRRP9mpCZr+PmGcfSKl9n3F16QC5ca4QRZQUdTH2UOtaNHvkbabzBCo+goyPuslNCIQogqSoi7n29Srx6OPTeNJrJumXE8j8sAuc2GR0LCFEAUhRlwD1qvoxa/JYZlR6j9irvjiWDUTvXGh0LCFEPklRlxCVfL2YM2Egixss4Bd7E9T3z2D75mmwZxkdTQhxE1LUJYi31cwbQ0KJ6TqfBbb7sEQu4uqSMEhNNDqaECIPUtQljFKKx7vUp9aQd5nmmATxv3L1Px3h9/1GRxNC3IAUdQnVs3E1Rk+czhNer3E5ORXbgh5w4CujYwkhciFFXYLVr+bHP6eMZmb1f7MnqyasehT7//4OdpvR0YQQOUhRl3AVfEoxd2xvfgxZyDJbD8zb3ydz2UAZtxbCg0hRCyxmEy+ENcXvgfeYbp+AjttO5gcd4HSk0dGEEEhRixwGNg9g2IQZPF7qDc6nXMW+qCdELpWLOglhMClq8SdBNcrxztSRvFbjQ7ZmNYBvpmJf/ThkphkdTYgSS4pa/EUFn1LMe6w7O9t9xHu2+1H7VpD5UVe4cMzoaEKUSFLUIldmk+LZXo1pMuxNJjGd1MR4bB92lFP4hDCAFLXIU7eGVZkxZTJPlZ/L3sw7sk/h++YpyMowOpoQJYYUtbipmv5l+HBSf9Y2X8iHtr6YIxeTNb+bDIUI4SZS1CJfvK1mZg5sRo1BbzHR8TdSE2Kzh0L2rjQ6mhDFnhS1KJB+Te/g2clTmVxuHpGZNWH1OOz/fRyuphgdTYhiS4paFFjdyr4seCKMH1p8xL9sA1H7Pifrgw5wZo/R0YQolqSoxS3xtpp5eUAz6g9+k8d4mQuXk3As6A5b54LDYXQ8IYoVKWpxW3oFVWP2kxOYUe1DfrQ1h59exPZxf7hyxuhoQhQbUtTitt1RvjQLx/fgSKcPmG4bS1ZcBLZ5beDgGqOjCVEsSFGLQmE2KaZ0v5sHx77AGO93ic6oCF+OxPHf8ZCRZHQ8IYo0KWpRqFrWrsD8pwbzadBC5toGoPd9Qda8tvDbFqOjCVFkSVGLQufrZeGfD7XkroffZJR6ldPJdvTH/dA/TIesdKPjCVHkSFELl+nTpDrvPPUYr9Wczye27qgdH5D1QXuIl+tcC1EQUtTCpaqU9Wb+mI6Y+r7DGMcLJF68hGNRD/TPM8F21eh4QhQJUtTC5ZRSDG9Tm5emTuL5qvNZldUeFf4utv/IXWSEyA8pauE2tSv6sHhCN670fI+x9udJTEzAsbAH+qeXZexaiDxIUQu3MpsUj3Woy/QpU3i28kd8mdUBtfU9bB+0g7jtRscTwiNJUQtD1K3sy9LHe5Dccw6P2mfw+8Ur6CW90d89C1eTjY4nhEeRohaG+WPv+uUnn+CF6vNZYuuJ/nUhtvdbQcwPRscTwmNIUQvD1a7ow5JxXfDu9xbD9WyOJ1vg84dxrBwJyb8bHU8Iw0lRC49gMimG3lOLOc88xr/uXMBbWQ9hO/Qd9vdbwa+L5Ip8okSTohYepWpZbz54pC1NhrzKUOu77MioCd89jX1hDzi7z+h4QhjipkWtlKqplNqolIpWSh1USk11RzBRsvUKqsbiZ4bwvxYf8XTW4ySdOYL+qBN63TQ52ChKHKW1znsCpaoD1bXWu5VSfkAkMEBrHX2jeUJCQvSuXbsKN6kosaJOXeaNr7YTdmEBQywbcPhUxdLrNQh6AJQyOp4QhUIpFam1DsnttZvuUWutz2qtdzsfJwOHgBqFG1GIG2tWszyfTe5JZu93GKZnczilNHw1BvvHYZAQY3Q8IVzupnvUf5pYqUBgMxCktb5y3WvjgHEAtWrVahkXF1d4KYVwOnclg9e/PYDfwU953voFPuoqpjYToNPz4F3W6HhC3LK89qjzXdRKKV9gE/Ca1vq/eU0rQx/C1bYdu8A7a7bx4OXFPGz5BUeZSlh6zISmQ8Akx8hF0XNbQx/ON7ACXwGf3aykhXCH0Lsq8fmTfUm5912G6tc4kFIOvp6IfUE3OPWr0fGEKFT5OZiogI+Bi1rrJ/PzprJHLdzp/JUM/rEuGsfeL5hRagWVuYRu8hCq+ytQTg6niKLhtoY+lFLtgS3AfuCPTx3M0Fp/f6N5pKiFEfacvMSbayPp+PvHjLWsw2I2Y2o/FdpNhVI+RscTIk+FMkZdEFLUwigOh2b1ntN88sNmxmR8TD/zDmw+1bB0f9E5fm02OqIQubrtMWohigqTSfFAywCWP/cQRzu+zxD7TA6k+MLXk7B/2BGObzA6ohAFJnvUolg7m5TOWz8cJnPff5lmXUEA53HU7Yqpx0yoHmx0PCGukaEPUeIdOJ3EP77dy90nVzLF+jVlSYHgQaguf4cKtY2OJ4QUtRAAWmt+iUng/e930ePich61/A+rSWNqNQY6PAu+lY2OKEowGaMWguyb7HZpUIUvn+xNpQFv8FCpeazIbI89Yj72fzWFDa9BRpLRMYX4CylqUeKYTYpBITVZ+dyDpN77Lverd1mXEQSb/4l9TjCEvweZaUbHFOIaGfoQJV5SehaLtpxga/h6JrOCzqa92MtUxtzxGWg5GqzeRkcUJYCMUQuRDxdSrvLBxuNER/zIVNNK2pqisftWzy7sFo+AxcvoiKIYk6IWogDOJqXz743HiNu1jqnmVYSoGOx+NbILu/lwKWzhElLUQtyCUxfT+PeGo5zZ8wNTLatoqY5g970Dc8enofkIGRIRhUqKWojbcDIxjXkbjnA26n9MNX9FiCkGu09VzO2nQstRch0RUSikqIUoBKcupvHBxqOc2v0/JplXZ49he/tjDp0ErceCdzmjI4oiTIpaiEIUfymNjzad4Miun3lc/ZfO5r3YS/lhbv0YtJkIvlWMjiiKIClqIVzg/JUM5m8+we6ITTzKavqYd4K5FKbmwyF0MvjXMTqiKEKkqIVwoUupmSzdFsvGrdsYYlvDg5ZwLMoOjQag2k2BO5obHVEUAVLUQrhB6lUbn+88yddbIrkv7WtGWNbjQxqO2h2yb2BwV3dQyuiYwkNJUQvhRpk2B9/sPcMnm/bRKvEbxlp/oAoXsVesn33gMfhhObVP/IUUtRAG0Fqz6UgCizbFUCn2O8ZZ19FQxWIvXTH7wGPIGPCranRM4SGkqIUw2IHTSSzecoJz+9cz2vQdXc17wGRBNXkAdc8EGccWUtRCeIrfkzJYtj2W8IgIBmZ9x2DLJkqTgSOgNaZ7xkOj/mC2Gh1TGECKWggPk55pZ03UaVZsOUDLi98z2voTNfk9+xOPIaOzP/FYtrrRMYUbSVEL4aG01mw/nsjSrSewHfmRR0w/0tm8F4eyoBr2RbV6DALby9kiJYAUtRBFwKmLaXwWcZLtOyPol7WOhyxbKEsK9op3Y241Bpo+DKUrGB1TuIgUtRBFSEaWnW/3neWL7THUPvsDIyzrCVbHcZi9UEH3o0IehYBWspddzEhRC1FEHTidxGcRcRyJ2sr9jp8YaNlGGdKxV26IueUoCH4IyvgbHVMUAilqIYq45Iwsvo46w+odh6mX8CPDLBtook7gMJVCNQpDtRgBgR3BJLdBLaqkqIUoJrTW7D+dxOc7T3Ekaiv9HOt5wLIVP1Kxl62FucUwaDYUytcyOqooIClqIYqh1Ks2vtt/ljU7j1Ep/icesmwi1HQQBejADpiaD4OG/eTGBkWEFLUQxdyx8ymsioxnW+RuOqevZ5B1CzU5h93qg6lxf1TwYAjsIEMjHkyKWogSwmZ3sOXoBVZFnuLSoU2EsYl+lgh8SM++QW/Th7IvClWlodFRxXWkqIUogZLSsvhm3xm+232CivHrud+8hU7mfZhxYK8SlF3aQQ9AuQCjowqkqIUo8eISU1m95zS/7D5I06SN3G8Jp6k6DoCjViimJg9CowHgU9HgpCWXFLUQAsg+a2RvfBJr9pwmau9uOmT8wv2WbdRRZ9DKjK7bGVPQA9DgPihd3ui4JYoUtRDiL2x2B9tPJLJ2z2lOREfQ3baF/pYd3EECDlMpuLMrpqD7oX4vucO6G0hRCyHydNVmZ/ORC6yNOk3C4a10c2yjnyWCaiQ6S7sLpsYDoH5vud6Ii0hRCyHyLT3TzqYj5/l272kSD2+jm97GfZadVCcRh7JAnU6YGodB/T7gW8XouMXGbRW1Umox0Bc4r7UOys8CpaiFKB6ySzuB7/ed4XzMdjrbt9PHvJNa6hwahSPgHsyN+mWPafvXMTpukXa7RTUEYzIAAAnOSURBVN0RSAGWSVELUXJdtdnZeuwC6/adJfbQr4Rmbqe35VcaqJMA2Co1xNKob/aedvVm8uGaArrtoQ+lVCDwrRS1EAKyD0TujL3IjwfPceBAFE1Tt9HDHEkrUwxmHNh8qmFu0BtVvzfU6QjW0kZH9nhS1EIIl9Fac/DMFX6KPkfEgSPckbCF7ubddDHvozQZ2M3eqLqdMdXvCfV6QrkaRkf2SG4paqXUOGAcQK1atVrGxcXdUlghRNF25nI66w+d45foeBy/hdOJSLqb9xCgEgCwVW6EpX5PqHcvBLQGs8XgxJ5B9qiFEIZIvWpj67ELbDh0jtiY3QSnRdDVHEWI6QgW7Nisfpju6oqpXne4qzuUvcPoyIaRohZCGE5rTfTZK2w8fJ6dh2LxPRNORxVFF8s+qnIRgKyKDbDe3R3u7Aq1Q0vU2PbtnvXxOdAZqAScA17WWi/Kax4paiHEzSSlZbHlWAKbY85zKmY3Qem/0tG0j3vMhymFDbupFNRqi/murlC3M1QLLtZnksgHXoQQHk1rzZFzKWw5msCOmHhUXDj36H10MB+gvjoFgM2rAqa6nTDd2QnqdAL/usXqBr9S1EKIIiUjy05k3CW2HL3AwSMxVDq/g1B1gA7mA1RT2cMkmb41sN7ZEVWnE9TpUOQv1ypFLYQo0i6lZrLjRCLhRxM4dWw/tZJ+JdR0kLbmQ1QgGYDMsrWzizuwAwS2K3LFLUUthChWzials/14IjuOJXD+xB7qJu/mHtMh2pgPUY5UADJ9a2K5sz2m2u2yD0x6+FCJFLUQolg7dTGNiN8usvN4AgkndhOYvId7TIe5x3z4//e4S1fGHBiKuXYo1G4LVYPAZDY4+f+TohZClChnLqfza+xFIo5f4PcT+6h2eQ+tTYdoZTpCDXUBAJvFB10jBGtgW6h1D9QIAe+yhmWWohZClGgXUzP5NfYikXGX+O34YfzO7aIZMbQyxVDfdAoTGo0is2IDSgW2QdVsDQGtoOJdbhsukaIWQogcMrLs7D11mV1xl4j+7RT2U7uon3mIlqYjNDcfw490ALJKlYcaLbHWbp29x12jBZTxd0kmKWohhMiD1poTF1LZHXeJqJMXuRC7nwqJUTRTR2lmOs7dpnhMZHdlRtk6WGuFYA5wFne1JoXyCUopaiGEKKCUqzb2xycRdeoyh2LjscXvJjD9EM1Mx2hqOk5VdRkAh7Jw1b8+XrVaYqrRAlqMvKVPUEpRCyFEIfg9KYOoU5fYG5/EqbhjmM/uoZ7tKMHqBMGmE9jMZaj44lHULYxr51XUcn1BIYTIp2rlvOlVrjq9gqoDDXA47iPuYhr7Tyfx71OXcKRe4EUXHHyUohZCiFtkMinqVPKhTiUfwpq67hKtxfdSVEIIUUxIUQshhIeTohZCCA8nRS2EEB5OiloIITycFLUQQng4KWohhPBwUtRCCOHhXPIRcqVUAhB3i7NXAi4UYpzCIrkKRnIVjOQqmOKYq7bWunJuL7ikqG+HUmrXjT7vbiTJVTCSq2AkV8GUtFwy9CGEEB5OiloIITycJxb1fKMD3IDkKhjJVTCSq2BKVC6PG6MWQgjxZ564Ry2EECIHKWohhPBwbitqpVQvpVSMUuqYUmpaLq97KaVWOl+PUEoF5nhtuvP5GKVUTzfnelopFa2U2qeUWq+Uqp3jNbtSKsr5tdbNuUYppRJyLP+xHK+NVEoddX6NdHOuOTkyHVHKeWM5XL6+FiulziulDtzgdaWUmuvMvU8p1SLHa65cXzfLNcyZZ79SaptSqmmO12Kdz0cppQr13nb5yNVZKZWU4/f1Uo7X8twGXJzruRyZDji3KX/na65cXzWVUhudXXBQKTU1l2lct41prV3+BZiB40BdoBSwF2h03TQTgQ+djwcDK52PGzmn9wLqON/H7MZcXYAyzseP/5HL+X2KgetrFDAvl3n9gRPOPys4H1dwV67rpp8MLHb1+nK+d0egBXDgBq/3AdYBCmgDRLh6feUzV+gfywN6/5HL+X0sUMmg9dUZ+PZ2t4HCznXdtP2ADW5aX9WBFs7HfsCRXP5Oumwbc9cedWvgmNb6hNY6E1gB9L9umv7Ax87Hq4BuSinlfH6F1vqq1vo34Jjz/dySS2u9UWud5vx2BxBQSMu+rVx56An8pLW+qLW+BPwE9DIo1xDg80Jadp601puBi3lM0h9YprPtAMorparj2vV101xa623O5YL7tq/8rK8buZ1ts7BzuXP7Oqu13u18nAwcAmpcN5nLtjF3FXUN4FSO7+P56w95bRqttQ1IAirmc15X5sppDNn/Yv7BWym1Sym1Qyk1oJAyFSTXA87/Yq1SStUs4LyuzIVziKgOsCHH065aX/lxo+yuXF8Fdf32pYEflVKRSqlxBuRpq5Taq5Rap5Rq7HzOI9aXUqoM2WX3VY6n3bK+VPawbHMg4rqXXLaNyc1t80kpNRwIATrleLq21vq0UqousEEptV9rfdxNkb4BPtdaX1VKjSf7fyNd3bTs/BgMrNJa23M8Z+T68mhKqS5kF3X7HE+3d66vKsBPSqnDzj1Od9hN9u8rRSnVB1gD1HPTsvOjH7BVa51z79vl60sp5Uv2Pw5Paq2vFOZ758Vde9SngZo5vg9wPpfrNEopC1AOSMznvK7MhVKqO/ACEKa1vvrH81rr084/TwC/kP2vrFtyaa0Tc2RZCLTM77yuzJXDYK77b6kL11d+3Ci7K9dXviilgsn+HfbXWif+8XyO9XUeWE3hDfndlNb6itY6xfn4e8CqlKqEB6wvp7y2L5esL6WUleyS/kxr/d9cJnHdNuaKgfdcBuItZA+g1+H/D0A0vm6aSfz5YOIXzseN+fPBxBMU3sHE/ORqTvbBk3rXPV8B8HI+rgQcpZAOquQzV/UcjwcCO/T/H7j4zZmvgvOxv7tyOadrQPaBHeWO9ZVjGYHc+ODYffz5QM9OV6+vfOaqRfZxl9DrnvcB/HI83gb0cmOuan/8/sguvJPOdZevbcBVuZyvlyN7HNvHXevL+bMvA97LYxqXbWOFtnLz8YP2IftI6XHgBedzs8jeSwXwBr50brQ7gbo55n3BOV8M0NvNuX4GzgFRzq+1zudDgf3ODXU/MMbNud4ADjqXvxFokGPeR53r8Rgw2p25nN+/Arx53XyuXl+fA2eBLLLHAMcAE4AJztcV8G9n7v1AiJvW181yLQQu5di+djmfr+tcV3udv+cX3JzriRzb1w5y/EOS2zbgrlzOaUaRfYJBzvlcvb7akz0Gvi/H76qPu7Yx+Qi5EEJ4OPlkohBCeDgpaiGE8HBS1EII4eGkqIUQwsNJUQshhIeTohZCCA8nRS2EEB7u/wCrj5mpDBQToQAAAABJRU5ErkJggg==\n","text/plain":["
"]},"metadata":{"tags":[],"needs_background":"light"}}]},{"cell_type":"markdown","metadata":{"id":"4v0qQoo7HZiy"},"source":["### グラフの説明\n","いまは厳密解が分かっているので厳密解と重ねてグラフを描きました。\n","2 つの曲線がよく一致している様子が見て取れるでしょう。\n","\n","もちろん「どのくらい一致しているか」といった事情も本当は詳しく調べなければいけません。\n","ここではそうした議論はせずに、「コンピューターに計算させることで近似解が求められそうだ」という気分を感じてもらうことをメインに据えて話を進めます。"]},{"cell_type":"markdown","metadata":{"id":"vMwblNDwkq1Z"},"source":["## 2 階の線型常微分方程式\n","次に 2 階の常微分方程式として高校の物理で出てくる**ばねの振動(単振動)**を紹介します。\n","項を増やすと減衰振動になったり、外力をつけたりいろいろなケースがあります。\n","まずは一番単純な式を考えましょう。\n","\n","\\begin{align}\n"," \\frac{d^2 x}{dt^2}\n"," =\n"," - \\omega^2 x.\n","\\end{align}\n","\n","ここでは $v = dx/dt$ という「中間変数」を置いて計算しましょう。\n","微分方程式を次のように書き直します。\n","\n","\\begin{align}\n"," \\frac{dx}{dt}\n"," =\n"," v, \\quad\n"," \\frac{dv}{dt}\n"," =\n"," - \\omega^2 x.\n","\\end{align}"]},{"cell_type":"markdown","metadata":{"id":"_MnpuQALnmNn"},"source":["### 単純に考えたときの罠\n","まずはオイラー法で**単純に**離散化して計算しましょう。\n","\n","\\begin{align}\n"," x_{n+1}\n"," =\n"," x_{n} + h v_{n}, \\quad\n"," v_{n+1}\n"," =\n"," v_{n} - h \\omega^{2} x_{n}\n","\\end{align}\n","\n","これをプログラムに落とします。"]},{"cell_type":"code","metadata":{"scrolled":true,"id":"JpdwNM9Dkq1a","colab":{"base_uri":"https://localhost:8080/","height":297},"executionInfo":{"status":"ok","timestamp":1588377062928,"user_tz":-540,"elapsed":1666,"user":{"displayName":"Yoshitsugu Sekine","photoUrl":"https://lh3.googleusercontent.com/a-/AOh14GimsNckrAflr-jMDGQwV_kIJ56EjAWYV8INkpUv=s64","userId":"13524401322013959426"}},"outputId":"f61d1a2b-d8cc-406f-f101-16947178f6e4"},"source":["import numpy as np\n","import matplotlib.pyplot as plt\n","\n","def harmonic_euler(nt, init = (5, 0)):\n"," dt = t_range / (nt - 1)\n"," # 初期条件設定\n"," x = np.zeros(nt)\n"," v = np.zeros(nt)\n"," x[0] = init[0]\n"," v[0] = init[1]\n","\n"," for i in range(1, nt):\n"," v[i] = v[i-1] - dt * (omega ** 2) * x[i-1]\n"," x[i] = x[i-1] + dt * v[i-1]\n","\n"," return (x, v)\n","\n","# パラメータ設定\n","omega = 2 * np.pi\n","nt = 101\n","t_range = 2\n","init = (5, 0)\n","\n","# 近似解\n","harm = harmonic_euler(nt, init)\n","t = np.linspace(0, 2, nt)\n","\n","# 厳密解\n","x_exact = init[0] * np.cos(- omega * t)\n","v_exact = - omega * init[0] * np.sin(omega * t)\n","\n","# グラフ描画\n","plt.subplot(3, 1, 1)\n","plt.title('x-t graph')\n","plt.plot(np.linspace(0, 2, nt), harm[0])\n","plt.plot(t, x_exact)\n","plt.legend(['x approximation', 'x exact'])\n","\n","plt.subplot(3, 1, 2)\n","plt.title('v-t graph')\n","plt.plot(np.linspace(0, 2, nt), harm[1])\n","plt.plot(t, v_exact)\n","plt.legend(['v approximation', 'v exact'])\n","\n","plt.subplot(3, 1, 3)\n","plt.title('phase space')\n","plt.plot(harm[0], harm[1])\n","\n","# 描画\n","plt.tight_layout()"],"execution_count":null,"outputs":[{"output_type":"display_data","data":{"image/png":"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\n","text/plain":["
"]},"metadata":{"tags":[],"needs_background":"light"}}]},{"cell_type":"markdown","metadata":{"id":"bL2v28Iqkq1f"},"source":["### 近似が悪い\n","オレンジが厳密な解で、青が実際に計算した近似解です。\n","グラフの横軸が時間になっています。\n","\n","見ての通り時間が進むごとに厳密解と近似解の誤差が大きくなります。\n","実は `nt` を大きくすると少しはましになります。\n","実際に上のコードで `nt` を大きくして再計算してみるとわかります。\n","ぜひ試してみてください。\n","他にもいくつか問題がありますが物理の話も必要になってくるのでここでは省略します。\n","\n","ここでは $v = \\frac{dx}{dt}$ を導入した上で**素直に**オイラー法で解くと問題が出ることに注目してください。"]},{"cell_type":"markdown","metadata":{"id":"s8KtVZac4-HH"},"source":["### 注意:近似・離散化の難しさ\n","はじめの 1 階化した単振動の方程式をオイラー法で解くと解がめちゃくちゃになる様子を見ました。\n","しかしこれは離散化の仕方がよくなかったために起きた現象とも言えます。\n","詳しいことはさておき、修正の仕方を紹介します。\n","\n","もともと次の方程式を考えていました。\n","\n","\\begin{align}\n"," \\frac{d^2 x}{dt^2}\n"," =\n"," - \\omega^2 x.\n","\\end{align}\n","\n","ここで $v = \\frac{dx}{dt}$ を導入して次のように書き換えます。\n","\n","\\begin{align}\n"," \\frac{dx}{dt}\n"," =\n"," v, \\quad\n"," \\frac{dv}{dt}\n"," =\n"," - \\omega^2 x.\n","\\end{align}\n","\n","先程はこれを次のように離散化(近似)しました。\n","\n","\\begin{align}\n"," v_{n+1}\n"," &=\n"," v_{n} - h \\omega^{2} x_{n}, \\\\\n"," x_{n+1}\n"," &=\n"," x_{n} + h v_{n}.\n","\\end{align}\n","\n","実は次のように離散化(近似)するべきなのです。\n","\n","\\begin{align}\n"," v_{n+1}\n"," &=\n"," v_{n} - h \\omega^{2} x_{n}, \\\\\n"," x_{n+1}\n"," &=\n"," x_{n} + h v_{n+1}. \\quad (\\text{$v_n$ を $v_{n+1}$ にした})\n","\\end{align}\n","\n","実際にこれで計算してみましょう。\n"]},{"cell_type":"code","metadata":{"id":"6fAUxWbS7MJw","colab":{"base_uri":"https://localhost:8080/","height":297},"executionInfo":{"status":"ok","timestamp":1588377063321,"user_tz":-540,"elapsed":2044,"user":{"displayName":"Yoshitsugu Sekine","photoUrl":"https://lh3.googleusercontent.com/a-/AOh14GimsNckrAflr-jMDGQwV_kIJ56EjAWYV8INkpUv=s64","userId":"13524401322013959426"}},"outputId":"c793b6cb-cb57-422c-cef0-5e25800ef5d9"},"source":["import numpy as np\n","import matplotlib.pyplot as plt\n","\n","def harmonic_euler(nt, init = (5, 0)):\n"," dt = t_range / (nt - 1)\n"," # 初期条件設定\n"," x = np.zeros(nt)\n"," v = np.zeros(nt)\n"," x[0] = init[0]\n"," v[0] = init[1]\n","\n"," for i in range(1, nt):\n"," v[i] = v[i-1] - dt * (omega ** 2) * x[i-1]\n"," x[i] = x[i-1] + dt * v[i] # ここを修正\n","\n"," return (x, v)\n","\n","# パラメータ設定\n","omega = 2 * np.pi\n","nt = 101\n","t_range = 2\n","init = (5, 0)\n","\n","# 近似解\n","harm = harmonic_euler(nt, init)\n","t = np.linspace(0, 2, nt)\n","\n","# 厳密解\n","x_exact = init[0] * np.cos(- omega * t)\n","v_exact = - omega * init[0] * np.sin(omega * t)\n","\n","# グラフ描画\n","plt.subplot(3, 1, 1)\n","plt.title('x-t graph')\n","plt.plot(np.linspace(0, 2, nt), harm[0])\n","plt.plot(t, x_exact)\n","plt.legend(['x approximation', 'x exact'])\n","\n","plt.subplot(3, 1, 2)\n","plt.title('v-t graph')\n","plt.plot(np.linspace(0, 2, nt), harm[1])\n","plt.plot(t, v_exact)\n","plt.legend(['v approximation', 'v exact'])\n","\n","plt.subplot(3, 1, 3)\n","plt.title('phase space')\n","plt.plot(harm[0], harm[1])\n","\n","# 描画\n","plt.tight_layout()"],"execution_count":null,"outputs":[{"output_type":"display_data","data":{"image/png":"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\n","text/plain":["
"]},"metadata":{"tags":[],"needs_background":"light"}}]},{"cell_type":"markdown","metadata":{"id":"WWZDaMxL7UJv"},"source":["### 結果確認\n","オイラー法でもかなり精度がよくなったことがわかります。\n","\n","- **近似計算といっても適当に考えているとろくなことにならない。**\n","\n","ここではその教訓だけ胸に刻んでおいてください。"]},{"cell_type":"markdown","metadata":{"id":"qllECYG7kq1i"},"source":["## 連立の 1 階常微分方程式:ローレンツ方程式\n","カオスで有名な方程式です。\n","連立でしかも非線型なので厳密解は書けません:少なくとも現時点で知られていません。\n","scipy の関数の紹介もかねて紹介しておきます。\n","\n","\\begin{align}\n"," \\frac{dx}{dt}\n"," &=\n"," -px + py, \\\\\n"," \\frac{dy}{dt}\n"," &=\n"," -xz + rx - y, \\\\\n"," \\frac{dz}{dt}\n"," &=\n"," xy - bz.\n","\\end{align}\n","\n","実は常微分方程式については scipy に一般的なソルバー(関数)があります。\n","いったんここではそれを使って解いて図示しておきます。\n","有名な図なのであなたも見たことがあるかもしれません。\n","ここでは紹介だけに留めます。"]},{"cell_type":"code","metadata":{"scrolled":true,"id":"bBcoTLHYkq1i","colab":{"base_uri":"https://localhost:8080/","height":266},"executionInfo":{"status":"ok","timestamp":1588377064193,"user_tz":-540,"elapsed":2906,"user":{"displayName":"Yoshitsugu Sekine","photoUrl":"https://lh3.googleusercontent.com/a-/AOh14GimsNckrAflr-jMDGQwV_kIJ56EjAWYV8INkpUv=s64","userId":"13524401322013959426"}},"outputId":"0fb3f3a7-86f0-4c90-b52d-6aba85724a8c"},"source":["import numpy as np\n","from scipy.integrate import odeint\n","import matplotlib.pyplot as plt\n","from mpl_toolkits.mplot3d import Axes3D\n","\n","def func(v, t, p, r, b):\n"," return [-p*v[0]+p*v[1], -v[0]*v[2]+r*v[0]-v[1], v[0]*v[1]-b*v[2]]\n","\n","p = 10\n","r = 28\n","b = 8/3\n","v0 = [0.1, 0.1, 0.1]\n","t = np.arange(0, 100, 0.01)\n","\n","v = odeint(func, v0, t, args=(p, r, b))\n","\n","fig = plt.figure()\n","ax = fig.gca(projection='3d')\n","ax.plot(v[:, 0], v[:, 1], v[:, 2])"],"execution_count":null,"outputs":[{"output_type":"execute_result","data":{"text/plain":["[]"]},"metadata":{"tags":[]},"execution_count":4},{"output_type":"display_data","data":{"image/png":"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\n","text/plain":["
"]},"metadata":{"tags":[],"needs_background":"light"}}]},{"cell_type":"markdown","metadata":{"id":"jeTyj4ynkq1k"},"source":["## ソルバーと企業活動\n","世の中の人は必ずしもプログラムが書きたいわけではなく、\n","自分が解きたいと思った問題を自分が思うように解きたいのです。\n","そこですでにほかの人が作った一般的な関数やソフトを使うことはよくあります。\n","ローレンツ方程式を解くのに使った `odeint` もその 1 つです。\n","\n","偏微分方程式まで含めれば、微分方程式のソルバーはそれだけで何千億のレベルでお金・人が動く世界です。\n","例えば LS-DYNA というソルバーを開発している会社が 2019 年に約 800 億円で買収されました。\n","\n","- [構造解析ソフトウェアの開発元を買収、ソリューションを強化](https://monoist.atmarkit.co.jp/mn/articles/1910/16/news009.html)\n","\n","微分方程式の解の近似計算は世界でこのくらいのお金・人が動く巨大市場ですし、\n","ソルバー開発はそれだけ大変なことでもあるのです。\n","\n","既存のソルバーではうまくいかない場合、研究者自身で問題に特化したソルバーを書くこともあります。\n","これはそのための入門講座でもあります。"]},{"cell_type":"markdown","metadata":{"id":"RIQsoUJ2kq1l"},"source":["# アンケート\n","毎回アンケートを取っています。\n","質問や要望がある場合もこちらにどうぞ。\n","\n","- [アンケートへのリンク](https://goo.gl/forms/hn7bUP4sblqOkBcI3)\n","\n","アンケートは匿名なので気楽にコメントしてください。\n","直接返事してほしいことがあれば、\n","メールなど適当な手段で連絡してください。"]}]}