ProjectEuler復帰
10年分くらいにProjectEulerを再開してみました.
リハビリに最初からpythonでちまちま進めてます.
とりあえずProblem1-8まで.
いろいろ終わった
三つ目の学位を貰って学生生活が終わりました.ようやく卒業です.
とはいえPDになるので変わらず研究生活が続きます.
ほどほどに,頑張ります.
論文執筆環境
環境
TexLive
extractbb201401あたりでxbbファイル作成について少し修正があるので,それ以降のものを使った方が良い. 特にillustratorつかって複数ページのaiファイルからページ番号指定して読み込む場合など.
adobe illustrator
章ごと,あるいは節ごとにファイルを一つ作れば,そのままLaTeXから読み込めるのでこれで良い気がする. とくにスクリプト使って,illustratorから簡単にlatex形式な数式を読み込めるので,すごく楽にできる.TeX2imgが要らなくなった. aiファイル自体はpdfと同じなのでpdfを扱える適当なソフトがあればそっちでも良いかも. できればフリーで揃えたいところだけどなかなか難しい.
Mendeley
いつもの文献管理.
現在の所導入しているパッケージなど
booktabs
複雑な表組みのためにhere
図の出力位置を固定できるcolor
文字の色変更bm
ベクトルの変数を書くためにイタリックボールド体fancyhdr
ヘッダを編集するために. 現在の所,製本用に上部外側にページ番号を,偶数ページ内側に章番号及びタイトル,奇数ページ内側に節番号及びタイトル. さらに,執筆中はコンパイル日時が分かるようにヘッダの中央にコンパイル時刻を入れておく. また,章の最初のページはページ番号のみにする,目次や参考文献は章番号の代わりにそれらを表示するなど,かなり細かく変更できる.time
ヘッダの時刻取得のためunit
北野先生によるスタイルファイル. 添え字をローマン体にする点や,微分係数のdをローマン体にする,あるいは単位系を記述するときに容易になるようなコマンドが多数定義されてる.txfonts
数式フォントをComputer ModernからTimesへ.これは好みの問題.pxjahyper
pdfファイルを作成したときに,リンクを張れる.目次や引用した図,参考文献などがすべて自動的にリンクになるので大変便利.
Python2.7系と3.4系でそれぞれ64bitなscipyを使えるようにする@windows7
公開後にpath関連で少し修正しました.
2.7系列と3.4系列を同時に使えるようにするためのメモ.
Windows7 64bitで64bit版のpythonからnumpy+scipy+matplotlibを使えるようにする.
デフォルトは3.4系列を使う.
インストール
2.7系のインストール
2.7系はEnthought Canopy*1でインストール.インストール先はユーザーフォルダ以下で
C:\Users\<username>\AppData\Local\Enthought\Canopy\App
とかにいる.Canopyでインストールすればnumpyとかscipyは一緒にインストールされる.
64bitでも特に問題なし.
3.4系のインストール
3.4系列はpythonの公式HPからダウンロードしてインストール.64bit版を選ぶ.デフォルトだとインストール先は
C:\Python34\
numpy,scipy,matplotlibは個別にインストールする.ただし,公式は32bit版のインストーラしか用意されていない.
そこで,
Python Extension Packages for Windows - Christoph Gohlke
を利用させて貰う.過去はここで64bit用のexeが用意されていたみたいだけど,今はwhlファイルで配付されている.ここから各種whlファイルをダウンロードしてくる.インストールにはpipを使う.
python3.4以上はpipがデフォルトでインストールされている.3.3系の場合は別に入れてくる.
これらのインストール時は2.7系と3.4系で混じるとめんどくさい*2ので,
C:\Python34\Scripts\
にpip.exeがいるので,ここにダウンロードしたファイルを移動してから
$ pip install "numpy-1.9.2+mkl-cp34-none-win_amd64.whl" $ pip install "scipy-0.15.1-cp34-none-win_amd64.whl" $ pip install "matplotlib-1.4.3-cp34-none-win_amd64.whl"
みたいな感じでnumpyなどをインストールする.
環境の切り替え
エイリアスの設定
環境の切り替えを容易にするためにエイリアスを作る.
$ doskey python27="C:\Users\<usernamer>\AppData\Local\Enthought\Canopy\User\python.exe" $ doskey python34="C:\Python34\python.exe"
これでどこからでもpython27とpython34と打てば2.7と3.4を適切に使い分けられる.
ただし,doskeyの設定はコマンドプロンプトを一度閉じると消えてしまう.
そこで,コマンドプロンプトの起動時に自動でdoskey登録を行うように設定する.
上のコマンドを
C:\Users\Username\macros.txt
に保存する.
その後,レジストリエディタから
HKEY_CURRENT_USER\Software\Microsoft\Command Processor
に字列値「AutoRun」を追加して,データ値を
doskey /macrofile=%userprofile%\macros.txt
としておく.これでコマンドプロンプトの起動時にdoskeyが設定される.
確認
$ python27 $ python34
でそれぞれ2.7系と3.4系が呼び出せる.
C:\Users\<usernmae>>python27 Enthought Canopy Python 2.7.6 | 64-bit | (default, Sep 15 2014, 17:36:35) [MSC v .1500 64 bit (AMD64)] on win32 Type "help", "copyright", "credits" or "license" for more information. >>> import numpy >>> C:\Users\<usernmae>> C:\Users\<usernmae>>python34 Python 3.4.2 (v3.4.2:ab2c023a9432, Oct 6 2014, 22:16:31) [MSC v.1600 64 bit (AM D64)] on win32 Type "help", "copyright", "credits" or "license" for more information. >>> import numpy >>> ^Z C:\Users\<usernmae>>
こんな感じでコマンドラインも変化するはず.
*1:学生だとEnthought Canopyのアカデミックライセンスが無料で使えるのでお勧め
illustratorにtex数式を入れるスクリプト
図を作るのに,Adobe illustrator CCを使っており,数式を入れるのにtex2imgを使っていました.このソフトは大変便利ではき出されるのはいくつかの画像形式なので,ソフトを選ばずに使えます.
ただ,どうしても図中の数が多くなってくると毎回tex2imgからコンパイルしていくのは結構大変です.そこで,illustratorともっと簡単に連携できないかと探していたら,illustrator上でtexコマンドを打つとそのままeps化して埋め込んでくれるスクリプトを奥村先生のサイトで見つけました.
https://oku.edu.mie-u.ac.jp/~okumura/texwiki/?Illustrator#paf3cb46oku.edu.mie-u.ac.jp
こちらを参考にスクリプトを配置していけば良いんですが,どうやら最近Ghostscriptではepsのフォントをアウトライン化する方法が変わってしまっているようなので少し修正が必要です.
具体的には,Ghostscript9.15以降では,アウトライン化させるためには "-dNoOutputFonts" のオプションが必要です.したがって,
上の奥村先生のサイトにある,MakeEPS.batを
cd /d C:\AI\
uplatex -no-guess-input-enc -kanji=utf8 eq
dvips -Pdl -E eq -o eq.eps
rungs -q -sDEVICE=eps2write -r19200 -dNOPAUSE -dBATCH -dSAFER -dEPSCrop -dNoOutputFonts -sOutputFile=outline.eps eq.eps
のように書き換えてください.これできちんとアウトライン化されたepsファイルがillustrator上に埋め込まれます.