Emacs:fringe

emacsを使っていて、分割した時の画面と画面の間のことを何と言うか知らなかったんですけど、
http://www.bookshelf.jp/soft/meadow_26.html
のページを見て名前が分かりました。
fingeと言うそうです。

僕には必要無いので、emacsの設定ファイルに、

(fringe-mode 0)

と書いて消しました。

scipyで最小二乗法

python用の科学計算ライプラリscipyを使った最小二乗法用のテンプレを貼って置きます。
SciPy Cookbook — SciPy Cookbook documentation
を参考にしました。

    from scipy.optimize import *
    fitfunc = lambda p, x: p[0] * x + p[1]  #フィットさせる方程式
    errfunc = lambda p, x, y: pow((fitfunc(p, x) - y), 2) #方程式とデーター間の距離
    p0 = [0, 0]  #パラメーターの初期値
    p1, success = leastsq(errfunc, p0, args = (x, y))  #最適化するようなパラメーターを受けとる
    plot(x, y, x, fitfunc(p1, x))

pythonでファイルから数値を読み込む

c等で計算したデーターをpythonのmatplotlibを使って可視化したかったので、数値データーをテキストファイルから読み取る際の方法を調べました。
後でテンプレとして使える様にここにまとめて置きます。

Python: テキストファイルの読み込み - read()、readlines()、readline()メソッド | Yukun's Blog
を参考にしました。

テキストファイルが改行と空白文字によって区切られている場合

例えば、

1 2
3 4
5 6
...

という形式のテキストファイルの一行目を、配列x,二行目を配列として格納したい場合は、

x, y = [], []    
for l in open('test.txt').readlines():
    data = l[:-1].split(' ')
    x += [int(data[0])]
    y += [int(data[1])]

とします。

改行と、 ','によって区切られている場合
1, 2
3, 4
5, 6
...

という形式のファイルを扱うには、

x, y = [], []    
for l in open('test.txt').readlines():
    data = l[:-1].split(',')
    x += [int(data[0])]
    y += [int(data[1])]

もしくは、

for l in open('test.txt').readlines():
    data = eval('['+l[:-1]+']')
    x += [data[0]]
    y += [data[1]]

環境によってEmacsの挙動を変える

cocoa emacs でのフォントの設定 - daharuの日記の設定後
terminalからCocoa emacsを起動するとフォント関連のエラーが出てしまったので.emacsでのフォントの設定をGUIのときのみ適用するよう変更しました。
その際調べたことをまとめておきます。

自分のための日記: ターミナルから Emacs を起動すると Symbol's function definition is void: fixed-width-set-fontset のエラー
によると、変数 "window-system"を評価することによってemacsがどの環境で実行されたのかを知ることができるようです。

例えば、window-sytem "hoge" で、のみfugaを実行するには次の様に書きます。

(if (eq window-system 'hoge)
fuga
)


Cocoa EmacsGUIの時のみフォントの設定を適用するには、

;;; 日本語のフォント設定 
(if (eq window-system 'ns) (progn
(create-fontset-from-ascii-font "Menlo-12:weight=normal:slant=normal" nil "menlokakugo")
(set-fontset-font "fontset-menlokakugo" 'unicode (font-spec :family "Hiragino Kaku Gothic ProN" ) nil 'append)
(add-to-list 'default-frame-alist '(font . "fontset-menlokakugo"))
(setq face-font-rescale-alist '((".*Hiragino.*" . 1.2) (".*Menlo.*" . 1.0)))))

テンソル形式でのMaxwell方程式(cgs)

手元の本には、mks単位系のものしか乗っていなかったので、少し調べたことをまとめておきます。
テンソル形式でのMaxwell方程式(cgs)

hatena日記のtex記法が僕には使い辛かったので、evenote上のpdfへのリンクを貼っておきます。