Surface Science and Solid State Theory Laboratory

@surface


Archive for the ‘数値計算’


数値計算2014/6/3 0

Posted on 6月 02, 2014 by admin

6/3用の講義資料をアップロードしておきました。今回は代数方程式、特に非線形方程式の数値解法について講義します。一変数の場合は二分法が単純明快ですが、多変数になっても強力なニュートン法の考え方をぜひ身につけて下さい。第二回目のレポート課題も出ます。

数値計算2014/5/27 0

Posted on 5月 26, 2014 by admin

5/27用の講義資料をアップロードしておきました。今回はRC回路やLCR回路の過渡現象を例に、単位や次元といった数値計算の基本と、初等関数の組み合わせとして数式で表現できている関数の図示、および微分や差分について講義をします。初回のレポートの課題も出ます。レポートの書き方についても説明します。

数値計算2014/5/20 0

Posted on 5月 19, 2014 by admin

5/20用の講義資料をアップロードしておきました。今回は数の表現、誤差、単位、次元といったことについて講義をします。同時に大学の計算環境を使ってこの講義のレポートを作成する際にやくにたつTipsを紹介します。そこで、今回に限り講義を9学舎1階の計算機室で行います。一応いつもの教室にその旨板書しにだけは行きますが、9学舎1階に集合して下さい。

数値計算2014/4/29 0

Posted on 4月 28, 2014 by admin

4/29日の講義に向けてc言語のおさらいの講義資料を改訂・増補しました。この資料は連休明けにも使います。連休の間に忘れてしまわないように「コンピュータ実習」や「プログラミング基礎」でやった例題をもう一度9学舎1階の計算機室で実行してみておいて下さい。

数値計算2014/4/22 0

Posted on 4月 21, 2014 by admin

4/22日分の講義資料を用意しておきました。この資料は来週も使います。今週から何回かに分けてc言語の復習を行います。「コンピュータ実習」と「プログラミング基礎」とで既にc言語の基本的な部分はマスターしているはずですが、数値計算に必要な部分に絞ってもう一度講義します。最近のソフトウェア開発はc++やjavaで行われるのが主流になってきていますが、c言語は《技術者の教養》といえるプログラミング言語です。再度教科書を見直しておいてください。

数値計算2013/7/9 0

Posted on 7月 08, 2013 by kimi

7月9日分の講義資料をアップロードしておきました。今回はモンテカルロ法について説明します。

モンテカルロ法は乱数を用いた数値計算の手法の総称ですが、狭義には乱数を使って非常に多くの変数についての多重積分の値を近似的に求める方法を指します。数値積分以外でも正攻法では万策尽きたときの頼みの綱でもあります。同時に現在使われている疑似乱数生成法のいろいろについてもお話しします。

数値計算2013/7/2 0

Posted on 7月 01, 2013 by kimi

7月2日分の講義資料をアップロードしておきました。今回は行列の固有値・固有ベクトルについて説明します。

電子物性の基礎でお話しした時間に依存しないシュレディンガー方程式の解(定常状態)や導波管や光ファイバーの中のマイクロ波や光のモード解析などは最初の問題は微分方程式の顔をしていますが、フーリエ展開などように適当な基底関数を使って展開することによって行列の固有値と固有ベクトルを求める問題に焼き直すことができます。これ以外にも電気電子工学で重要になる問題のほとんどが実対称行列で表現される、もしくは適当な相似変換によって実対称行列の対角化に帰着出来る問題であり、ヤコビ法などの方法により固有値、固有ベクトルを求めることができます。

全ての固有値・固有ベクトルを求めるのではなく最大固有値(もしくは最小固有値)からいくつかの固有値・固有ベクトルを求めるだけで足ることも多く、最近では冪乗法と呼ばれる方法やその変形もよく使用されます。みなさんがこのような方法のコーディングをすることは滅多に無いかもしれませんが、数値計算ライブラリの中の適切なライブラリ関数を適切に使用するにはその中で何が起こっているかという知識が不可欠です。

また、高速フーリエ変換でも余談で説明したように、FFTのルーティンとjacobi法のルーティンを自分で組むことができるようになれば、数値計算法としては免許皆伝です。(残念ながらこの半期の講義だけでは、達成目標がオイラー法とその仲間までで、初伝といったところですが。)ぜひ挑戦してみて欲しいと思います。正式な最終レポートの課題の発表と今後の講義計画についての説明も行います。

数値計算2013/6/25 0

Posted on 6月 24, 2013 by kimi

6月25日分の講義資料をアップロードしておきました。今回はフーリエ変換ついて説明します。

フーリエ展開は最も汎用的に用いられる直交関数展開であり、信号処理や画像処理にも欠かせない数学的な技法です。フーリエ展開、フーリエ積分、フーリエ変換、逆フーリエ変換と応用数学II(フーリエ解析)の時間にはいろいろ微妙に異なる定義になっていましたが、「連続」とか「無限」とかを原理的に扱うことができない計算機でこれを扱おうとすると実は一種類の離散フーリエ変換とその逆変換だけになってしまいます。計算自体は単純な定積分ですから、数値積分法を用いれば容易に計算することが可能ですが、似たような三角関数の計算と積和の計算を大量に実行する必要があります。そこでできるだけ計算すべき三角関数と積和の量を減らした高速フーリエ変換と呼ばれる技法が知られており、信号解析から量子力学の計算まで広く応用されています。口さがない人の中には「数値計算で有用なのは高速フーリエ変換だけだ」という人もいるぐらいです。
意欲のある人は是非最終課題の題材に選んでみてください。

数値計算2013/6/22 0

Posted on 6月 20, 2013 by kimi

6月22日分の講義資料をアップロードしておきました。世の中は土曜日だというのにこの空間だけ火曜日だぜ。今回は偏微分方程式の陽解法について説明します。

マクスウェル方程式からシュレディンガー方程式まで電気電子工学分野のほとんどの現象を記述するのに使われる偏微分方程式ですが、意外にこれを直接的に解くことはほとんどなくて、だいたいは変数分離して常微分方程式にして解いたり、適当な基底で展開して連立一次方程式や行列の固有値問題に書き直してから解いたりするのが主流です。そこで、今回はあまり顧みられることの無い陽解法について説明します。といっても結局のところ微分方程式を差分方程式化した時点でやっぱり数列の問題か連立一次方程式の問題になってしまうわけですが。

今回はレポートの問題は出ませんし、レポートの返却もありませんが、偏微分方程式というのは最終レポートのネタにするには恰好の題材です。まず第一に難しそうに見えるので競争相手がいない。所詮絵に描けるような問題は2変数関数で、2変数の問題は講義でやってしまっている(プログラムが流用できる!)にもかかわらず境界条件が変わると答えもがらりと変わるのでバリエーションが出せる。つまり問題としての考察もし易い。など、いいとこばっかりです。是非出席してください

その後の時間、普段なら皆さんは学生実験、私は卒研ゼミですが、午後3時を過ぎたあたりから徐々に土曜日になります。質問に来るには絶好の機会です。なお、質問の際には自分でつくったプログラムをUSBメモリに入れてくるのを忘れずに。

数値計算2013/6/18 0

Posted on 6月 17, 2013 by kimi

6月18日分の講義資料をアップロードしておきました。今回はこの講義のメインイベント、常微分方程式です。

シラバスの達成目標にも掲げられていますが、オイラー法のプログラムくらいはサクッと組んでパッと答えを出せるようになってください。実際には微分方程式を連立一次方程式か行列の固有値問題にして解くことの方が多いのですが、オイラー法は基本中の基本です。

レポートの課題も出ます。第二回目のレポートの返却もします。レポートの締切も続々来ます。なお、質問の際には自分でつくったプログラムをUSBメモリに入れてくると便利です。もちろん「講義資料」の印刷したものも忘れずに。



↑ Top