2013年7月28日日曜日

Fortran : subroutine 内の初期値設定

Fotranを用いて、プログラムを書くときにsubroutineを用いてプログラムを書くと見通しがよくなるのでできる限り用いるようにしている。
そんなときに、subroutine内で

real(8) :: i = 0.d0

の様に初期設定をしたとしよう。このsubroutineを何回もmainプログラムでcallしたとすると、初期設定の適用は一番最初にcallされたときのみしか使えない。なので、何回もsubroutineをcallするようなプログラムを書く場合は、初期値を型宣言時に設定するのではなく、後で初期設定をすることにするとよい。

2013年7月20日土曜日

数学公式

いつも忘れがちな数学公式
どこにいてもさっと目が通せるようにしておく
随時更新していく予定

3次元ラプラシアン

(1)  デカルト座標


\[ \Delta \psi(x,y,z) = \frac{\partial^2 \psi}{\partial x^2}+\frac{\partial^2 \psi}{\partial y^2}+\frac{\partial^2 \psi}{\partial z^2} \]

(2)  円筒座標


\(x=r\cos\theta, y=r\sin\theta, z=z\) として考えると、
\begin{eqnarray*} \Delta \psi(r,\theta,z) &=& \frac{1}{r} \frac{\partial}{\partial r} \left( r \frac{\partial \psi}{\partial r} \right) + \frac{1}{r^2}\frac{\partial^2 \psi}{\partial \theta^2}+\frac{\partial^2 \psi}{\partial z^2} \\ &=& \frac{\partial^2 \psi}{\partial r^2}+\frac{1}{r} \frac{\partial \psi}{\partial r} + \frac{1}{r^2}\frac{\partial^2 \psi}{\partial \theta^2}+\frac{\partial^2 \psi}{\partial z^2} \end{eqnarray*}

(3)  極座標


\(x=r\sin\theta\cos\phi, y=r\sin\theta\sin\phi, z=r\cos\theta \) として考えると、
\begin{eqnarray*} \Delta \psi(r,\theta,\phi) &=& \frac{1}{r^2}\frac{\partial}{\partial r} \biggl ( r^2 \frac{\partial \psi}{\partial r} \biggr) +\frac{1}{r^2\sin{\theta} }\frac{\partial }{\partial \theta} \biggl (\sin{\theta}\frac{\partial \psi}{\partial \theta} \biggr ) +\frac{1}{r^2\sin^2{\theta}}\frac{\partial^2 \psi}{\partial \phi^2}\\ &=& \frac{1}{r}\frac{\partial^2}{\partial r^2} \biggl( r \psi \biggr) +\frac{1}{r^2\sin{\theta} }\frac{\partial }{\partial \theta} \biggl (\sin{\theta}\frac{\partial \psi}{\partial \theta} \biggr ) +\frac{1}{r^2\sin^2{\theta}}\frac{\partial^2 \psi}{\partial \phi^2} \\ &=&\frac{\partial^2 \psi}{\partial r^2} +\frac{2}{r}\frac{\partial \psi}{\partial r} +\frac{1}{r^2}\frac{\partial^2 \psi}{\partial \theta^2} +\frac{1}{r^2}\mathrm{cot}\theta \frac{\partial \psi}{\partial \theta} +\frac{1}{r^2\sin^2{\theta}}\frac{\partial^2 \psi}{\partial \phi^2} \end{eqnarray*}

2013年7月17日水曜日

初めてのmac

macに触れ始めて3ヶ月たった。
Windows,Linuxは使ったことあったけど、Unixは初めて。
以下に設定内容のメモを残す。




(1)  homebrew

homebrewを導入した。macに入っていないコマンドを導入できる便利ツール。
ターミナルに

ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go)"

を入力するだけ。

(2)  gfortran

fortran90/95を使うのでgfortranをhomebrewにてinstall

(3)  Python

macにデフォルトでpython入ってたけどhomebrewで入れ直してみた
(あまり意味はないかもしれないが…)

(4)  gnuplot

描画ツールで使いやすいと思っているのがこれ。
やっぱりhomebrewで導入

(5)  \(\LaTeX\)

TeX wiki を読みながら導入
ファイルが馬鹿みたいに大きかったのでネットがつながりやすいところでダウンロードするのが一番だと思う。

TEST

TEST

Mathjaxによる数式の表示(参考 : http://genkuroki.web.fc2.com )

\[ \sum_{n=1}^\infty \frac{1}{n^2} = \frac{\pi^2}{6} \tag{3} \]