{"cells":[{"cell_type":"markdown","metadata":{},"source":["<br />\n","\n","<div style=\"text-align: center;\">\n","<font size=\"7\">数値計算試験問題</font>\n","</div>\n","<br />\n","<div style=\"text-align: right;\">\n","<font size=\"4\">2025/07/09 実施</font>\n","<br />\n","<font size=\"4\">cc by Shigeto R. Nishitani 2025</font>\n","</div>"]},{"attachments":{"ex25_func_plot.png":{"image/png":"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"}},"cell_type":"markdown","metadata":{},"source":["# 2分法，Newton-Raphson法の収束性：25点\n","\n","以下の関数$f(x)$の解を区間$x=0..1$において\n","2分法とNewton-Raphson法で求めよ．\n","また，それぞれの収束挙動をlogで同時プロットし比較せよ．\n","$$\n","f(x) = {\\mathrm e}^{-x}-2 \\,{\\mathrm e}^{-2 x}\n","$$\n","\n","![ex25_func_plot.png](attachment:ex25_func_plot.png)\n","\n","<!---\n","![ex25_func_plot.png](https://ist.ksc.kwansei.ac.jp/~nishitani/CompAInfo/25s/num_recipe/ex25_func_plot.png)\n","-->"]},{"cell_type":"markdown","metadata":{},"source":["# グラム・シュミットの直交化法とQR分解：25点"]},{"cell_type":"markdown","metadata":{},"source":[" ## グラム・シュミットの直交化法 \n"," \n","与えられたベクトルから正規直交基底を作るアルゴリズムとして\n","グラム・シュミットの直交化法がある．\n","\n","その手順は，ベクトル$v_1,\\ldots,v_n$が与えられたとすると\n"," 1. $ u_1 = v_1 $\n"," 1. $ u_2 = v_2 - \\frac{u_1^{\\rm T} v_2}{u_1^{\\rm T} u_1} u_1$\n"," 1. $ u_n = v_n - \\frac{u_1^{\\rm T} v_n}{u_1^{\\rm T} u_1} u_1 - \n","\\frac{u_2^{\\rm T} v_n}{u_2^{\\rm T} u_2} u_2 - \\cdots $\n","$- \\frac{u_{n-1}^{\\rm T} v_{n}}{u_{n-1}^{\\rm T} u_{n-1}} u_{n-1} \n","= v_n - \\sum_{i=1}^{n-1}\\frac{u_{i}^{\\rm T} v_{n}}{u_{i}^{\\rm T} u_{i}} u_{i} \n","$\n","\n","で互いに直交した基底を求め，これらを\n","$$\n","e_i= \\frac{u_i}{(u_i^{\\rm T} u_i)^{1/2}}\n","$$\n"," \n","によって正規化すれば，$\\{e_1, e_2, \\ldots, e_n\\}$ が正規直交基底となる．\n","\n","次の$\\mathbb{R}^4$ベクトルから正規直交基底を作れ．\n"," \\begin{equation*}\n","    v_1=\\left(\n","    \\begin{array}{@{\\,}c@{\\,}}\n","      1 \\\\\n","      1 \\\\\n","      0 \\\\\n","      0\n","    \\end{array}\n","    \\right),~\n","    v_2=\\left(\n","    \\begin{array}{@{\\,}c@{\\,}}\n","      0\\\\\n","      1\\\\\n","      1\\\\\n","      0\n","    \\end{array}\n","    \\right),~\n","    v_3=\\left(\n","    \\begin{array}{@{\\,}c@{\\,}}\n","      0\\\\\n","      0\\\\\n","      1\\\\\n","      1\n","    \\end{array}\n","    \\right)\n","  \\end{equation*}\n","\n"," \n"," "]},{"cell_type":"markdown","metadata":{},"source":["## QR分解\n","\n","次の行列AのQR分解を求めよ．\n","\n"," \\begin{equation*}\n","    A=\\left(\n","        \\begin{array}{@{\\,}rrr@{\\,}}\n","         1 & 0 & 0\\\\\n","         1 & 1 & 0\\\\\n","         0 & 1 & 1\\\\\n","         0 & 0 & 1\\\\\n","        \\end {array}\n","\\right)\n","  \\end{equation*}\n","\n","Gram-Schmidtで求めた正規直交基底と比べよ．"]},{"cell_type":"markdown","metadata":{},"source":["# 常微分方程式：25点\n","フォーミュラEと呼ばれるEV車(電気自動車)のレースでは，\n","停止時から毎時100キロメートルまでの加速時間は1.86秒となる．\n","これは，普通のF1よりも3割速いらしい．\n","日経(2025/6/4)\n","\n","1. 空気抵抗などの規格化した抵抗が速度の0.5として，この加速性能を達成するためには何G程度の推力が必要となるか小数点以下二桁程度で求めよ．\n","1. F1で使われる車両とフォーミュラEで使われる車両の重量はほぼ同じである．\n","抵抗も同じとして，クラッチロスなどがないと仮定して，F1車の推力を求めよ．\n","1. 結果を検討せよ．\n","\n","注: 例えば「2Gの推力」とは機体(普通はロケット)の自重の2倍の力で推進していることを表し，加速度は重力加速度(9.8m/sec^2)の2倍になるとします．"]},{"attachments":{"moores_law_plot.png":{"image/png":"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fRITE5k5cyZPPPEE9913H7fffjsffPABP/vZz7jxxhsDHn/s2LH07t2bxYsXU1JSwuHDh5kxYwbZ2dlkZWUBsHLlSnbu3Mknn3yCc47rrruO1atXk5iYyIIFC8jKyuLYsWOkp6fTqVOnWrdZRAIr7Yh+asNTfH3ka85NPJdx6eNiooMaYjVAQJ0twXv++efTq1cvAG655RaefvppAN8v/I8//pitW7f69ikqKqJHjx5s376d5ORkLrzwQt9r586de9LxP/jgA1555RXAc4vTM844g/3795fZZ+XKlaxcuZKOHTsCcPjwYXbu3MmhQ4cYPHgwp556KuC5dCUideva1tfGTEAoL3YDRB0twWtmAZ+XLrrnnKNv377Mnz+/zH6lf/0Hg3OOiRMncuedd5Ypf/LJJ4N2DhGR2OyDqMMleL/44gvWrl0LwKuvvsqll15aZnv37t356KOP2LVrFwBHjhxhx44dtGnThtzcXD777DOAkwJIqZ///Of8+c9/Bjwd3gcPHjxpyfD+/fszb948X99Gfn4+BQUFXH755SxZsoTCwkIOHTrEW2+9Vev2ikj9FZsBog6X4E1JSeG5556jbdu27N+/n7vvvrvM9mbNmpGRkcGIESNITU31XV6Kj49n7ty5XHvttaSnp9O8efOAx3/qqaf417/+Rfv27enUqRNbt26ladOm9OrVi0suuYTx48fTr18/brrpJnr06EH79u0ZOnQohw4dIj09nRtvvJG0tDSuvvpqunTpUuv2ikj9peW+qyE3N5eBAweSnZ0d1nqEQyS8/yJSOS33LSIiIaEAUQ2tWrWql9mDiNRPChAiIhKQAoSIiASkACEiIgEpQIiISEAKENVgZtxyyy2+58eOHaNZs2a+ZbtLrVu3joYNG/LGG2/U6jgiIuEUswGiLm4DmJiYSHZ2NoWFhQC89957JCUlldmnpKSE+++/n379+tXqOCIi4RaTAaL0NoB7juzB4Xy3AQxGkLjmmmtYtsxznPnz5zNixIgy25955hluuOGGCmdKV+U4n3zyCT169KBjx4707NnTt2z3nDlzGDVqFACbN2/mkksu4Ycffqh1m0REAonJAFGXtwEcPnw4CxYs4OjRo2zatIlu3br5tuXn57N48eKTlt+o7nHatGnDhx9+yMaNG/njH//IAw88AMC4cePYtWsXixcvZuTIkbzwwgu+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"}},"cell_type":"markdown","metadata":{},"source":["# ムーアの法則：25点\n","\n","次の図の青点は13種類のマイクロプロセッサの発売年と，それぞれに含まれるトランジスタ数$N$を対数スケールで表示している．\n","\n","![moores_law_plot.png](attachment:moores_law_plot.png)\n","<!--- \n","![moores_law_plot.png](https://ist.ksc.kwansei.ac.jp/~nishitani/CompAInfo/25s/num_recipe/moores_law_plot.png) \n","-->\n","\n","それぞれのデータは次の配列で与えられる．\n"]},{"cell_type":"code","execution_count":14,"metadata":{},"outputs":[],"source":["import numpy as np\n","\n","list_year=[1971,1972,1974,1978,1982,1985,1989,1993,1997,1999,2000,2002,2003]\n","list_cpu_num=[2250,2500,5000,29000,120000,275000,1180000,3100000,7500000,\n","         24000000,42000000,220000000,410000000]"]},{"cell_type":"markdown","metadata":{},"source":["このデータに対して，以下のモデルを用いて最小二乗法による直線当てはめを求めよ．\n","$$\n","\\log_{10}N = \\theta_1 + \\theta_2(t-1970)\n","$$\n","ここで，$t$は年，$N$はトランジスタ数である．\n","なお，$\\theta_{1}$ はモデルが予測する1970年におけるトランジスタ数の対数，\n","$10^{\\theta_2}$はモデルが予測する毎年のトランジスタ数の増加率である．\n","\n","1. そのモデルを用いて2024年のマイクロプロセッサ中のトランジスタ数を予測せよ．\n","1. Apple M4 Max(2024)のトランジスタ数(約100億，$100\\times10^9$)と比較せよ．\n","\n","この予測は「集積回路のトランジスタ数は1年半から2年でおよそ2倍になる」というムーアの法則を満たしている．\n","\n"]},{"cell_type":"markdown","metadata":{},"source":["## 逆行列の求め方のヒント\n","最小二乗法のデザイン行列($AA$)の逆行列の求め方にはいろいろあるがどれもこの問題では一致する．\n","どれか好きなのを使ってください．\n","\n","### 正規⽅程式(Normal Equations)による解\n","テキストで紹介している方法．\n","$$\n","AA^{-1} = (AA^{\\rm T}. AA)^{-1}\n","$$\n","\n","ただし，$Ax=b$の解$x$は，\n","$$\n","x= AA^{-1} (AA^{\\rm T} b)\n","$$"]},{"cell_type":"markdown","metadata":{},"source":["### QR分解による解\n","\n","先ほどのQR分解を用いると以下の通り求められる．\n","\n","$$\n","AA = Q.R \\\\\n","AA^{-1} = R^{-1} Q^{\\rm T} \\\\\n","x = AA^{-1} . b\n","$$\n"]},{"cell_type":"markdown","metadata":{},"source":["### pseudo inverseによる解\n","linalgには優決定方程式(縦長行列)の (Moore-Penrose) 擬似逆行列(pseudo-inverse of a matrix)を計算する関数としてpinvが用意されている．内部ではSVD(singular value decomposition)を使っている．\n","``` python\n","pseudo_inv = np.linalg.pinv(AA)\n","```\n","で求めたpseudo_invを$b$に左から掛けると求められる．ん？そうか．"]},{"cell_type":"markdown","metadata":{},"source":["Apple M4 Max(最新のTSMC 3nmで作られたプロセッサー)においても，外挿値の0.4倍程度であり，2025年時点でもトランジスタ数は予測通りに増加している．"]},{"cell_type":"code","execution_count":null,"metadata":{},"outputs":[],"source":[]}],"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.8.5"},"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":true}},"nbformat":4,"nbformat_minor":4}