{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Discrete-time Hamiltonian matrix" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "3×3 Array{Float64,2}:\n", " 0.4 -0.01 -0.97\n", " 0.04 -0.37 -0.11\n", " 0.25 -0.73 -0.12" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "A = rand(-1.0:0.01:1.0, 3, 3)" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "3×2 Array{Float64,2}:\n", " 0.32 1.0 \n", " 0.18 -0.4 \n", " 0.72 0.11" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "B = rand(-1.0:0.01:1.0, 3, 2)" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "using LinearAlgebra" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "Q = diagm(0=>[1, 2, 3]); \n", "R = diagm(0=>[1, 2]);" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "6×6 Array{Float64,2}:\n", " 0.475283 -9.3587 4.73694 2.97091 -0.609903 1.61294 \n", " 0.300527 -2.575 -0.0688432 0.528069 -0.339632 -0.227404\n", " -0.838033 -3.83271 1.95409 0.598643 -0.101201 0.373246\n", " 0.475283 -9.3587 4.73694 3.37091 -0.569903 1.86294 \n", " 0.601054 -5.15 -0.137686 1.04614 -1.04926 -1.18481 \n", " -2.5141 -11.4981 5.86226 0.82593 -0.413603 0.999739" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "H = [inv(A) A\\B/R*B'; Q/A A'+Q/A*B/R*B']" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "6-element Array{Complex{Float64},1}:\n", " -3.587143389733393 + 0.0im \n", " -0.2787733556629091 + 0.0im \n", " 0.1630506541434094 - 0.14823448665418149im\n", " 0.1630506541434094 + 0.14823448665418149im\n", " 3.3577858926220427 - 3.0526689432947554im \n", " 3.3577858926220427 + 3.0526689432947554im " ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "h = eigvals(H)" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Plots.PyPlotBackend()" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "using Plots\n", "pyplot()" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "data": { "image/png": "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" }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" } ], "source": [ "scatter(h,aspect_ratio=1,label=\"λ(H)\")\n", "plot!(exp.(im*2*π*(0:.01:1)),label=\"\")" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [], "source": [ "using ControlSystems" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "data": { "image/png": "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com2bt1atd97772nNm3a6L///a927dqlXbt26fPPP9eiRYtUXl6uxYsXV93Q3rBhw5POk5+fr3Xr1iklJaXa471799bixYs1fPhwffzxx1WPb9myRZdcckmdXhMAAKibgC9Y0plLlhnlSpLmz5+va665Rm3btpUkjRgxQp988omio6OVmJhYtXTDyy+/rNtvv73aczt27KhmzZrpgw8+OOWxj9+DlZqaqu7du2vEiBG66aabTtqvV69eeueddzRixAgtX75ckvTRRx8pLS2tzq8LAACcvaBZaPR4eZr28+Kif5Z55UqSJk6cWG07Nja26hLf1KlTNXfuXM2ZM6eq+PzSt99+e8rHe/fureLi4tOe9/jN9Mf17NlThw4dkiQdPnxY69ev19/+9rfavgwAAGCCoClYUvWSlaXKe67MKFc1ueWWW3TgwAF5PJ5qa2HVtx07dmjevHkKCwvz2jkBAECQFSzpfyVr+vTpmvnww177mJz777/fK+c5Ubdu3bx+TgAAEIQFS6osWXz+IAAAqC9+eZO7w+GQJJWVlVmcxL8d//4d/34CAABz+OUMVlJSksLDwzVz5kw99NBD3GNUB2VlZZo5c6bCw8OVlJRkdRwAAAKKXxasuLg4vffeexo0aNBp35WHmoWHh+u9995TXFyc1VEAAAgoflmwJKlfv37av3+/du3aJbfbbXWcepOfn18vBcjhcCgpKYlyBQBAPfDbgiVVzmQF+irlubm5SkhIsDoGAAA4C355kzsAAIAvo2ABAACYjIIFAABgMgoWAACAyShYAAAAJqNgAQAAmIyCBQAAYDIKFgAAgMkoWAAAACajYAEAAJiMggUAAGAyChYAAIDJKFgAAAAmo2ABAACYjIIFAABgMgoWAACAyShYAAAAJqNgAQAAmIyCBQAAYDIKFgAAgMkoWAAAACazpGCVlpZq8ODBSk5OVmpqqvr3769du3ZZEQUAAMB0ls1gjR07Vtu2bVN2drZuvPFGjR071qooAAAAprKkYIWHh+uGG26QzWaTJHXv3l0//vijFVEAAABMF2J1AEl67rnnNHDgwNN+vbCwUC6Xq2rb6XTK6XR6IxoAAMBZs7xgzZo1S9u3b9eLL7542n169epVbXvKlCmaOnVqfUfzCXl5eVZHQB0wbv6LsfNPjJt/CqRxS0hIqLZtacF66qmnlJGRoczMTEVG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tzomfuHEcXvllVckSU899ZQyMjK0fPnyqkXn4LtatGihnJwcVVRUSKosV3v27AnYe0MCDT9v/iUrKysofr+x0KifSEpK0tKlS9WxY0ero6AGs2fP1j//+U9lZmaqQYMGVsdBLfXu3VujR4/W6NGjtXjxYj311FP66quvrI6FGvDz5v8C9fcbBctPBOp/gIEmJydHLVq0UJs2bRQTEyNJcjqdWrNmjcXJUJNt27Zp9OjROnLkiGJjY7Vw4UJ16NDB6lg4A37eAkOg/n6jYAEAAJiMe7AAAABMRsECAAAwGQULAADAZBQsAAAAk1GwAAAATEbBAgAAMBkFCwAAwGQULAB+YcaMGbLZbFV/GjVqpKuuukrLli2r8zGHDRum3/3ud2f1nEcffVTXXXddnc8JIDhQsAD4jYiICH355Zf68ssv9fe//11lZWUaOHCgvvjii7M+1rp167R06VL9/ve/P6vnTZgwQWvWrNHKlSvP+pwAgkeI1QEAoLbsdru6d+9etX3FFVfo/PPP18KFC3XllVee1bHS09PVv39/NWvW7KyeFx8fryFDhig9PV3XXHPNWT0XQPBgBguA32ratKkSExO1e/fuqscMw9BTTz2l5ORkOZ1OtWnTRs8880y15xUVFWnJkiUaNmxY1WMul0utWrXSzTffXG3f8ePHq0GDBsrJyal67Oabb9ayZct06NChenplAPwdBQuA3yosLFRubq4uuOCCqscmTZqkhx56SKNGjdKHH36o0aNHa+rUqXrxxRer9vniiy9UXFysHj16VD0WGxurBQsWaMmSJXr11VclSR9//LHmzp2ruXPnqnnz5lX79ujRQxUVFVq1alX9v0gAfolLhAD8SkVFhSRp3759+uMf/6jY2FhNmjRJkrRjxw698MILevHFFzV27FhJUt++fVVYWKiHH35YY8eOld1u1zfffKPo6Gi1bt262rH79Omj3/72t7r//vvVqVMn3XXXXfr1r3+t4cOHV9uvQYMGatmypdasWXPSjBcASMxgAfAjRUVFCg0NVWhoqFq2bKm33npLr776qi688EJJUmZmpiQpLS1NFRUVVX+uvfZa7d+/X3v27JFUWc4aNWp0ynPMmjVL559/ftW9XvPmzTvlfo0aNdL+/fvNfokAAgQFC4DfiIiI0Nq1a7VmzRq99tpratq0qe644w7t27dPknT48GEZhqFGjRpVFbHQ0FD1799fkqoKVmlpqZxO5ynPER4erqFDh+rYsWO6/fbb1aBBg9PuV1JSUg+vEkAg4BIhAL9ht9t12WWXSZK6du2qdu3aqWvXrpo5c6bmzZunhIQE2Ww2ffbZZwoLCzvp+SkpKZKkhIQEHT169JTn2Lhxo/7617+qc+fOev755zV69Gi1b9/+pP3y8vLUoUMHE18dgEBCwQLgt7p06aLhw4frlVde0fTp03XttddKko4cOaKBAwee9nkpKSk6dOiQioqKFBUVVfV4WVmZ7rjjDl122WVauXKlrrrqKt1xxx366quvFBoaWrWfx+PR7t27qwobAPwSlwgB+LVp06apvLxczz77rJKTkzV+/Hjdcccdeuyxx5SZmanly5crPT1dgwcPrnpOjx495PF49O2331Y71vTp07V9+3YtXLhQYWFhevXVV7VlyxbNnDmz2n6bN29WUVGRevbs6ZXXCMD/ULAA+LWUlBQNHz5c8+bNU35+vp577jk9+uijevPNNzVgwADdfvvtevPNN9WrV6+q5yQnJ+viiy/W8uXLqx774osv9OSTT+rpp5+uWvYhJSVFTz75pB5//HGtWbOmat9ly5apVatWuvzyy733QgH4FZthGIbVIQDA255//nk9++yz+uGHH2Sz2c7quZdeeqkGDx6shx56qJ7SAfB3zGABCEp33323SktL9e67757V87KysrRr1y5NnDixnpIBCAQULABBKSIiQgsWLFB5eflZPc/lcmnRokWKj4+vp2QAAgGXCAEAAEzGDBYAAIDJKFgAAAAm+//x4d0HhUNAXQAAAABJRU5ErkJggg==" }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "K = dlqr(A,B,Q,R)\n", "hk = eigvals(A-B*K)\n", "scatter!(hk,label=\"λ(A-BK)\",markershape=:diamond,markercolor=:red)" ] } ], "metadata": { "@webio": { "lastCommId": null, "lastKernelId": null }, "kernelspec": { "display_name": "Julia 1.3.1", "language": "julia", "name": "julia-1.3" }, "language_info": { "file_extension": ".jl", "mimetype": "application/julia", "name": "julia", "version": "1.3.1" }, "latex_envs": { "LaTeX_envs_menu_present": true, "autoclose": false, "autocomplete": true, "bibliofile": "biblio.bib", "cite_by": "apalike", "current_citInitial": 1, "eqLabelWithNumbers": true, "eqNumInitial": 1, "hotkeys": { "equation": "Ctrl-E", "itemize": "Ctrl-I" }, "labels_anchors": false, "latex_user_defs": false, "report_style_numbering": false, "user_envs_cfg": false }, "toc": { "base_numbering": 1, "nav_menu": {}, "number_sections": true, "sideBar": true, "skip_h1_title": false, "title_cell": "Table of Contents", "title_sidebar": "Contents", "toc_cell": false, "toc_position": {}, "toc_section_display": true, "toc_window_display": false } }, "nbformat": 4, "nbformat_minor": 2 }