コンピュータを使って,物理,数学,工学上の問題を解く手法.解が解析的手法では得られない場合や厳密解の直感的意味が良く分からないときなどに威力を発揮する.
パソコン生活の中で通常出会うようなソフトウェアと違って、誤差を小さくすることに細心の注意が払われる。また、しばしば膨大なステップ数の計算を行うため精度を下げずに早くする方法も求められている。効率の良い計算を行うための手法の研究それ自身が一つの学問分野を成している。
ニュートン法とは、実数値関数の根を数値的に計算する代表的なアルゴリズムです。 実数値関数の根を求めるとは、例えば以下のような方程式の解を求めることです。 $$ x^{3} + x - 8 = 0 $$ 関数の根とは、f(x) = 0になるxの値のことです。たとえば、中学校の数学の方程式の授業では、x2 - 4 = 0を解け、というような問題が出ます。答えは、x = 2またはx = -2のときです。これらの点が、関数f(x) = x2 - 4の根になります。 方程式の解き方には、解析的に解くやり方と数値的に解くやり方があります。解析的に解く方法は、数式をきちんと立て、その数式を変形して正確な解を…
二重ばね振り子の運動方程式をオイラーラグランジュ方程式から導出し、それを基に数値計算を行います。まずラグランジアンを計算します。図を用意するのが面倒だったので、二重振り子の場合と同様の変数設定をしていると考えてください。ただし質点はばねでつながれていますのでは時間変化します。運動エネルギーは \begin{align} T&=\frac{1}{2}m_1(\dot{x_1}^2+\dot{y_1}^2)+\frac{1}{2}m_2(\dot{x_2}^2+\dot{y_2}^2)\\ &=\frac{1}{2}[m_1[(\dot{l_1}\cos\theta_1-l_1\dot{\thet…
数学の具体的な計算にPythonを使って、数学もPythonも同時に学んでしまいましょう。今回はPythonを使って、拡散方程式と呼ばれる偏微分方程式を調べたいと思います。偏微分方程式の数値的解法の導入、本記事で使っている記法の詳細については以下の記事で解説しています:pianofisica.hatenablog.comあわせて読んでみてください。 拡散方程式 熱核 熱核を用いた解 差分方程式 Pythonによる実装 解析解との比較 (adsbygoogle = window.adsbygoogle || []).push({}); 拡散方程式 上に引用した過去記事では、輸送方程式を考え、その…
数学の具体的な計算にPythonを使って、数学もPythonも同時に学んでしまいましょう。今回はPythonを使って、偏微分方程式の解を数値的に求めてみたいと思います。常微分方程式については以下の記事で扱っています:pianofisica.hatenablog.comあわせて読んでみてください。 偏微分方程式 輸送方程式(右進行波) 数値計算 変数の離散化 差分方程式 Pythonによる実装 計算精度の改善:前進差分・後退差分・中心差分 (adsbygoogle = window.adsbygoogle || []).push({}); 偏微分方程式 一般に、未知関数とその導関数を含んだ方程式…
数学・物理学の具体的な計算にPythonを使って、数学・物理学もPythonも同時に学んでしまいましょう。前回の記事pianofisica.hatenablog.comでは、Pythonを使って振動を表す運動方程式(2階常微分方程式)の解を数値的に求めました。またpianofisica.hatenablog.comでは、数値解によって記述される質点の運動の様子をアニメーションによって可視化してみました。今回の記事はこれらの続編・応用で、複数の質点が互いにバネでつながれた、いわゆる連成振動について取り上げてみたいと思います。 バネにつながれた1質点の運動(単振動) 解析的解法 数値的解法 バネに…
数学・物理学の具体的な計算にPythonを使って、数学・物理学もPythonも同時に学んでしまいましょう。前回の記事pianofisica.hatenablog.comでは、Pythonを使って振動を表す運動方程式(2階常微分方程式)の解を数値的に求めました。今回の記事では、その数値解によって記述される質点の運動の様子をアニメーションによって可視化してみたいと思います。本記事は以下の記事の続編的な位置付けになります。あわせて読んでみてください:pianofisica.hatenablog.com pianofisica.hatenablog.com 単振動の運動方程式とその数値解 アニメーショ…
数学・物理学の具体的な計算にPythonを使って、数学・物理学もPythonも同時に学んでしまいましょう。今回はPythonを使って、振動を表す運動方程式(2階常微分方程式)の解を数値的に求めてみたいと思います。最初にもっとも基本的な調和振動子を考え、徐々にそこから外れた場合について考察を進めてみます。本記事は以下の記事の続編的な位置付けになります。あわせて読んでみてください:pianofisica.hatenablog.com pianofisica.hatenablog.com 1次元調和振動子(復元力:変位の1次) 非線形な振動子(復元力:変位の3次) 非線形な振動子(復元力:変位の1次…
<最適化問題の概要> <最短経路問題の解説> <動的計画法の解説> |まとめ(最適化問題、最短経路問題、動的計画法) 数値計算は、コンピュータを利用して数値的な方法で数式やデータを解析し、問題の解決や最適化を行う手法です。 ここでは、数値計算の中で重要な要素となる「最適化問題」、「最短経路問題」、「動的計画法」の3つをそれぞれ解説していきます。 【令和5年度】 いちばんやさしい 基本情報技術者 絶対合格の教科書+出る順問題集 作者:高橋 京介 SBクリエイティブ Amazon <最適化問題の概要> 最適化問題とは、特定の目的を達成する際に、与えられた制約条件の下で最適な解を見つける問題のことで…
|待ち行列理論の概要 >ケンドール記法の解説 >M/M/1モデルの解説 |待ち行列理論のイメージの仕方 |「数値計算の待ち行列理論」における「ケンドール記法」と「M/M/1モデル」の実践的な活用 >ケンドール記法の実用例 >M/M/1モデルの実用例 ここでは、「数値計算」において重要な一環となる「待ち行列理論」について、その概要や「ケンドール記法」、「M/M/1モデル」、「待ち行列理論イメージの仕方」について解説します。 【令和5年度】 いちばんやさしい 基本情報技術者 絶対合格の教科書+出る順問題集 作者:高橋 京介 SBクリエイティブ Amazon |待ち行列理論の概要 待ち行列理論は、さ…
|数値解析の概要 |ニュートン法について解説 |ニュートン法のアルゴリズムについて解説 |「ニュートン法」の活用法 【令和5年度】 いちばんやさしい 基本情報技術者 絶対合格の教科書+出る順問題集 作者:高橋 京介 SBクリエイティブ Amazon 「数値計算」は、数学的な問題をコンピュータを用いて近似的に解析する手法を指します。 数値計算は実世界の複雑な問題に対して厳密な解法が存在しない場合や、解が複雑な数式で表される場合に有用です。 ここでは、「数値解析の概要」「ニュートン法の解説」「ニュートン法のアルゴリズムの解説」について解説します。 令和05年 イメージ&クレバー方式でよくわかる 栢…
前回の記事で私はこんなことを書きました. Lean で数値計算ができるようになればもっと多くの層が取り込めることが期待できるのですが,現状では難しそうです. seasawher.hatenablog.com 改めて考えてみると,数値計算は丸め誤差と打ち切り誤差がどうしてもついてまわるため形式証明とは相性が悪いはずで,Lean で数値計算ができるようになってもあまり嬉しくないかもしれません.ちょっと勘違いをしていました.すみません. 私個人としては静的型付け言語で数値計算をしたいなと思っている *1 ので,数値計算も Lean でやりたいモチベがあるんですが,Julia でやるより特段便利になる…
あのの、205ミリの紙コップでもの同じサイズじゃないものが今はようけあるし、新聞の数値計算も誤りがあるんで。 えっとの、今年売り上げ1位が500台として、去年は357台とする。去年との比率が40パーセントや。 今年売り上げ2位が400台とする。去年は307台とする。去年との比率が30パーセントになるやろ。 すると今年も去年も売り上げのランキングは同じよの。 せやけど、去年との比率とかを混ぜると分からんようになり、去年に2位のところが1位で、今年に抜かれたような内容の記事があったで。 去年との比率が大きいなるとそうなりやすいが、確かそこまで比率に差がなかったような気がしたで。せやから本来は間違え…
河合塾のテキストの予習をしていたら週末はあっという間に終わってしまいました。 何とか一週間分の予習の貯金を作れた... 予習でテキストを一通りやってみましたが、テキストにも難易、というかかかる時間の違いがかなりありました。以下、(誰のためにもならない、)基礎シリーズテキストの個人的評価を載せておきます。 ※誤った情報が含まれている場合があります。 国語 トップレベル古文論述 易 古文1~2題なのでそこまで時間はかからない 古文論述実戦演習 やってない 漢文総合 易 他のテキストに比べて明らかに文字がでかい トップレベル現代文論述 難 記述式の現代文で、かなり時間がかかる 現代文(共通テスト実戦…
Pythonは単なるプログラミング言語ではない Pythonの特徴 - シンプルで読みやすい Pythonの活躍分野 - データ分析の必須ツール Pythonの無限の可能性 Pythonは私たちの生活を変える可能性を秘めている Pythonは単なるプログラミング言語ではない Pythonは単なるプログラミング言語ではありません。それは私たちの生活を劇的に変えるツールなのです。この言語は、科学、人工知能、データ分析、自動化など、さまざまな分野で優れた能力を発揮します。例えば、天文学者たちがPythonを使って新たな惑星の発見に成功したり、医療分野でPythonベースのAIシステムが診断精度を飛躍…
リッジ回帰(Ridge Regression)とは リッジ回帰で値を予測するPythonの実装 コードの解説 1. 使用するライブラリのインポート 2. 仮データの準備 3. データの分割: 4. リッジ回帰モデルの作成と学習 5. モデルの評価 リッジ回帰の利用が向いている領域 1. 金融分野 2. 医療分野 3. マーケティング分野 4. 気象予測 5. エネルギー分野 まとめ リッジ回帰(Ridge Regression)とは リッジ回帰は、線形回帰の一種であり、特に多重共線性(複数の説明変数が強く相関している場合)があるデータセットに対して有効です。例えば、家の価格を予測するときに、部…
さて、みんなは仕事や家事育児の分担についてどのような考えを持っているだろうか。 この話題は、常に生活に密着していて散々揉めてトラブルの原因になる。うんざりしている人も多いことだろう。なぜ揉めるのか、それは、既婚の夫婦は基本的にみんな「パートナーより重労働をしたくない」からだ。自分の方が負担が大きいと感じると、損をしている気分になる。そして『その労働をこなすためのエネルギー・負荷力を正確に理解していない』と、解決が難しくなる。 この記事は、そういった夫婦の問題について正確なデータを元に解決策になるよう作成している。この記事は、2023年9月の記事<分担に役立つ!家事、育児、仕事の労働指数データ(…
偏微分方程式(以下PDE) 独立変数が複数になるので、ODEに比べ複雑さは桁違いだ。それでも適用アプリケーションが存在するので、できるだけ紹介していきたい。 方程式には1階、2階という階数があるが、自然界の法則を表現するPDEには2階が非常に多い。何故多いのかは上手く説明できないが、私的には2次関数の考え方をアナロジー的に利用しているからと思っている。これまで3次関数の延長線での応用など聞いた事が無いし、線形代数の公式も3次になると途端に面倒になるし、2から3へのステップアップは「数学の専門分野」の話になるのかもしれない。まずは整理されている2階線形からスタート。 2階線形PDEの分類 現在、…
2024/04/09 学部の実験が本格的に始まった。 事前に教科書にとりあえず目を通して、pythonで数値計算用の関数をいくつか作っていった。 1年生の時(1.5年前)にも理系共通の実験科目があったが、僕(と僕のペアの人)は実験がとても苦手で、毎回苦しんでいた。ちゃんと予習をした上で、遅刻もせず実験を開始したのに、進捗が遅すぎて振替実験をやることになったことがあり、(多分同期では他にそんな人はいない)かなりトラウマになっている。 今日は無事に時間内に実験を終えることができてhappy 2-3月に「cpuの創りかた」という本を読んで電子工作をしていた経験が生き、実験中のいくつかの問題(主に回路…
ばね定数 の鉛直ばねにつりさげられた質量 のブロックを支点とする質量 、長さ の振り子の運動を考察する。ポテンシャルエネルギーをどうとるかについて「知恵袋」に質問投稿された問題である。つり合い位置からのブロックの変位を 、鉛直下方からの振り子の角変位を とする。
Xで連載していた,著書の『いきものの「種」はどのように決まるんだろう』の内容の紹介を以下に示しておきます. https://www.amazon.co.jp/dp/B0CMQ5ZXJS ・表紙について 表紙の写真はブダイと,そのブダイに付着した寄生虫を食べるホンソメワケベラという魚です.これは2種が相利共生していることを示す生態展示になっています.京都大学白浜水族館で撮影しました. 魚類のうち結構な種類のものが,ホンソメワケベラを発見すると近寄って行きます.寄生虫を食べてもらう魚はその寄生虫を食べてもらいたい体の部分をホンソメワケベラに差し出したり,全身を硬直させてホンソメワケベラを受け入れま…
理想的な並行論理プログラミング言語 「論理プログラミング」、「論理計算と随伴関手」、「半環上のフラクタル代数」、「フラクタル代数言語 Fractal」、「一階述語論理」などの内容です。以下のようなことを考察します。 Prolog のプログラムを「プログラムを変換するもの」と考える 変換されたものを (再帰の深さ のものを ) ある の結果が真ならば証明できるか? これを使って無限に実行できるか? これを考えるために Prolog のプログラムを多項式に対応させることができるかどうかを考えます。多項式については答えてくれるようなので ChatGPT で質問してみます。以下は入力とそれに対する答え…
私が Lean 言語の名前を知って勉強し始めたのは去年の8月くらいなので,勉強を始めて8カ月程度が経過したことになります.全然きりはよくないですが,振り返り記事を書こうと思います. その間に私が達成できたことは,こんな感じです: タクティク逆引きリスト Lean と Mathlib にあるタクティク(定理証明を行うためのツール)が一覧できる資料を作りました.https://lean-ja.github.io/tactic-cheatsheet/ これは現在も開発中ですが,既にレファレンスとして十分な数のタクティクとコマンドを紹介できているかと思います.今後も Lean のアップデートは続くので…
昨日は体調が悪かったので早めに就寝した。 寒気がしていたので厚めの布団をかぶって寝た。そのせいか汗が滝のように出た。 おかげさまで朝起きたときはピンピンしていて昨日までの体調の悪さがウソだったのではと思った。きっと汗で身体の毒素が抜けたのだろう。 体調が良くなったのでジムに行き筋トレとバイクをおこなった。私はガリガリなので筋肥大を目的にしているがあまり身体が大きくなっている実感がない。まあまだ1ヶ月しかやってないのになに言ってんだって話なんだが。 食事も以前より多く食べ、運動後にはプロテインを飲むようにしている。電子書籍やYouTube で筋肥大の情報を観ていると、とにかく食えと言っている。と…
【学習動機】 科学哲学に関心があって、科学哲学の入門書を何冊か買って積んでいたが、読む時間がとれたので、読んでみた。加えて、直接的には科学哲学の本ではないが、関連していそうな本を読んで面白かったので、それらについて、ここに記録しておく。 amazonのリンクを貼っているが、少し小銭稼ぎが必要な時期なので、アフィリエイトリンクを利用しています。 【学習内容】 科学哲学の入門書 ・サミール・オカーシャ『哲学がわかる 科学哲学 新版』 哲学がわかる 科学哲学 新版 https://amzn.to/3PMO3xu 科学哲学に入門したくて、本文が160ページ程で少なめなので、一冊目として読んでみた。科学…