693びぼーろく; 部分積分を使わないで積分したい時

被積分関数の形によっては一時的に複素数にすると便利だったりするかも。例えば以下のような場合。 $\displaystyle \int_0^L dx e^{-kx}\sin \frac{\pi x}{L} $ 正統的な方法としては部分積分だろうなと思うけど、一時的に複素数にすることで次のように計算できる。 $\displaystyle \int_0^L dx e^{-kx}\sin \frac{\pi x}{L}=\text{Re}\int_0^L dx e^{-kx}e^{i\frac{\pi x}{L}}=\text{Re}\frac{1}{-k+i\frac{\pi}{L}}\left[-e^{-kL}-1\right]=-\frac{k}{k^2+\frac{\pi^2}{L^2}}\left[1+e^{-kL}\right]$

336びぼーろく; 続 latex2htmlでmathjaxを使う

以前のエントリで、latex2htmlを実行してmathjaxを使えるようにスクリプトを書いた。
その時sedのエスケープシーケンスが面倒で大変だったけど、awkを使うとちょっと楽になるらしい。
ということで、ちょっと書きなおしてみた。

awkでの置換は awk '{gsub("置換前","置換後",$0); print $0}' でできる。ダブルクォートはエスケープする必要があるがそれ以外は不要みたいなので、 前に比べると楽なような気がする。 置換は一回しかしないので、gsubじゃなくてsubでも良いかも。

#! /bin/bash

export FILE=$1  ## 入力ファイルするtexファイル 
export DIR=$(echo $1 |sed s/\\.tex//) ## latex2htmlで作られるディレクトリ 

latex2html -noreuse $FILE ## latex2htmlを実行する
cd $DIR ## htmlがあるディレクトリに移動
for i in *.html;do
mv $i $i.OLD
cat $i.OLD| awk '{gsub("</HEAD>","<script type=\"text/javascript\" \n src=\"http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS_HTML\"> \n </script>\n</HEAD>",$0); print $0}' | awk '{gsub("<HEAD>","<HEAD>\n <meta charset=\"UTF-8\">",$0); print $0}' > $i rm $i.OLD
## ファイルの</HEAD>の上側をmathjaxを使うために書き換え。
## ファイルの<HEAD>のすぐ下側にutf-8を使うようにmetaタグで宣言する。
done
cd ../ ##元の場所へ戻る


#END


awkはフィールド毎に出力もしてくれるので便利。
例えば awk '{print $1}'で一番目のフィールドを出力してくれる。 dfで出力させて、sda1のマウント先を取り出すためにはdfの出力結果から6番目のフィールドを取り出せばOK。
df -lh |grep sda1|awk '{print $6}'
でうまく行くはず。これをcutでやるのはちょっとめんどくさそう。

これからはawkも使うようにしよう。 さて冬のボーナスも出たので自分のために2万の万年筆を購入した。 なんとなく書き味が良いような気がする。(値段のせい?)

コメント

このブログの人気の投稿

471びぼーろく; ffmpegの音・映像ずれ修正

329びぼーろく; latexでヤング図を書く

531びぼーろく; python上でのヤコビ楕円関数