2013-01-01から1年間の記事一覧
AmberTools13を以下の場所からダウンロードしてきてインストールしました。名前や所属等を聞かれますがすぐにダウンロードできます。古いバージョンが欲しい場合は下にリンクがあります。http://ambermd.org/ http://ambermd.org/AmberTools-get.htmlやり方…
前回のものはibsetやibclrが無かったので、改めて作りました。 C言語でいうsizeof関数の代わりにfortranではsize関数がありますが、配列の長さを確かめることにしか使えません。bit_sizeを使えばデバッグに役立ちそうだと思いました。 ! bit operations prog…
Fortranでビット演算をするサンプルスクリプトを作りました。余りソースが無いので、サンプルを動かしながら動作を確かめた方が理解が早そう。 program main implicit none integer :: i, j, b1, b2, h1, h2, o1, o2 o1 = 5 o2 = 21 b1 = b'00000101' b2 = b…
国産の有名なライブラリである反復解法ライブラリLisをWindowsアプリケーションで使用した際に躓いたのでメモ。 http://www.ssisc.org/lis/index.ja.html以下の環境でWindows版のLisをコンパイルして使用すると、メモリのアクセス違反が頻発して使い物になり…
国産の有名なライブラリである反復解法ライブラリLisをWindowsアプリケーションで使用した際に躓いたのでメモ。 http://www.ssisc.org/lis/index.ja.html以下の環境でWindows版のLisをコンパイルして使用すると、メモリのアクセス違反が頻発して使い物になり…
久々のメモです。Pythonでsubprocessを用いてコマンドを実行した際の標準出力を、リアルタイムで取得してきて表示するサンプルプログラムです。良く見られるサンプルプログラムだと、きちんとコマンドが終了してからの出力を変数に取得する方法しか載ってな…
Linuxで使用メモリを知りたい時などはpsコマンドを良く使います。普段はその出力をgrepで抜き出していたのですが、それをもっと便利に使いたいということで、psgrepというコマンドで簡単に特定のコマンドをチェックできるようにしました。psgrep #!/bin/bash…
DoxygenでFortranのソースコードをドキュメント化してみた。その時のDoxyfileのDiffを晒します。 158c158 < JAVADOC_AUTOBRIEF = NO --- > JAVADOC_AUTOBRIEF = YES 354c354 < EXTRACT_ALL = NO --- > EXTRACT_ALL = YES 512c512 < GENERATE_TODOLIST = YES …
なじみの薄い配列構成子ですが、うまく使えばコードが綺麗になりそうだったので、サンプルコードを書いてみた。 program main implicit none integer, pointer :: arr_p(:) integer :: arr(3) integer, parameter :: n = 3 allocate(arr_p(n)) arr_p = (/ 1,…
Fortran90で行列を扱ってみます。配列ではそれぞれの配列要素の演算を簡単な記述で表すことができます。main.f90 program main integer(kind=8), pointer :: matrix(:,:) integer(kind=8), parameter :: nele = 3 allocate(matrix(nele, nele)) call set_mat…
コマンドが使えるかどうかを確認するシェルスクリプトを作成しました。実行すると、こういう出力を返してくれます。 vi = True (/bin/vi) cmake = True (/usr/local/cmake/bin/cmake) ifconfig = True (/sbin/ifconfig) reboot = True (/usr/bin/reboot) asd…
Wikipediaの「学問の一覧」から数学のところを抜き出してきて、それぞれ英訳してみた。調べ方は、リンクをたどって英語表記をコピペするだけ。リンクがない場合は適当にググって補完しました。数学だけでもこれだけあるのですね。全然聞いたことのない分野も…
久しぶりにMac portsを使おうとすると、こんなWarningが出ていることに気づきました。 Warning: port definitions are more than two weeks old, consider using selfupdateということで、言われている通りport selfupdateを実行して、さらにport upgrade ou…
前のcmakeのインストールに関連して。 MacのportコマンドでなぜかOpenSSLが更新できずにしばらく詰まってしまったので、その原因と解決方法。 bash-3.2$ sudo port install openssl Password: ---> Computing dependencies for openssl ---> Installing open…
Mac OSX (10.7.5)にGromacsを入れようと思ったので、Linuxにインストールした際の過去の記事を参考にインストールを試みました。そのときの記録です。CMAKEのダウンロード先: Download | CMake 参考記事: http://d.hatena.ne.jp/guest/20130403/1364959490 c…
Mac Book Airにpythonの2.7.4をソースコードからインストールしてみました。全くLinuxと同じです。 cd ~ mkdir -p apps/src cd apps/src curl -O http://www.python.org/ftp/python/2.7.4/Python-2.7.4.tgz tar xzvf Python-2.7.4.tgz cd Python-2.7.4 ./con…
モジュール(プラグイン、パッケージともいうのかな)を利用するpythonスクリプトを配布する際に、それを実行する前にパッケージが使えるかどうかをチェックしてあげると親切ですね。python自体が出すエラーでも分かる人にはわかるのですが、きちんとしたス…
超シンプルな再帰処理のサンプルです。Fortran90ではrecursiveをつける必要があります。C言語とC++は再帰の方法に違いはありませんが、念のため。recursion.f90 program main implicit none integer :: i = 0 call recursion(i) end program main recursive …
fortran90のポインタの使い方がよくわかっていないので、テストプログラムを作成して実証してみる。2つのファイルを用意して、モジュールのprivateな変数の演算結果をサブルーチンの引数を通して取得できるかテスト。main.f90 program main use calc implici…
古いpythonをインストールする必要があったので、2.6をインストールしました。自分のホームフォルダにインストールしています。ダウンロード先:Python 2.6.8 Release | Python.org mkdir -p ~/apps/src cd ~/apps/src wget http://www.python.org/ftp/pytho…
GitHubを使い始めました。プライベートなリポジトリを作成するにはお金を払えば可能のようですが、今は簡単なスクリプトでお試し中です。https://github.com/leetmikeal使うための最初の作業をざっとまとめると GitHubに新規登録 sshクライアントで公開鍵を…
subversionを最初に使ってはまったエラー。checkoutはできるのにcommitしようとした時にエラーが発生。 Transmitting file data .svn: Commit failed (details follow): svn: Can't open file '/var/svn/repos/db/txn-current-lock': Permission deniedデー…
Fortran90で任意のファイル名(文字列)から拡張子を取得するサブルーチンを作りました。ちょっとだけググってそれらしいものが無かったので。モジュールの形にして別ファイルにしています。extension.f90 module m_extension implicit none public parse_file…
よく言われているように、FortranではC言語とは違い第1次元目が先にループするので、メインメモリからレジストやスタックに呼び出される際の効率の問題から(この辺、まだよくわかってません)、For文で計算する際は気をつけなければいけません。それでどれ…
Fortran90で乱数を使用するサンプルプログラムです。乱数の種(random seed)の設定方法が少しわかりづらかったので、微妙に条件を変えて3通りやってみました。ちょっと変に思ったのは、seedが配列である必要があること。random_seed関数でnrandにサイズを代…
Fortran90でmoduleを使ってみました。Makefileもあります。 注意としては、最後に実行ファイルをコンパイルする際に、モジュールのオブジェクトファイル.oも一緒にリンクしないといけないという事です。そうしないと、 undefined reference to `matrix_mp_pr…
Fortran90のテストプログラムです。配列をサブルーチンに受け渡す方法と、メモリの動的確保の方法を整理するために簡単なテストプログラムを作りました。 簡単なプログラムなのでコメントはありません。 適当な2次元配列をセットするset_matrixとプリントす…
pymol 1.6をソースコードからインストールしてみました。ダウンロード先:PyMOL Molecular Graphics System download | SourceForge.netバイナリはシュレディンガーという会社が商用化しているみたい。アカデミックはバイナリでも無料。 PyMOL | www.pymol.o…
注)LinuxのディストリビューションはRed Hat系(CentOS、Fedora、Scientific Linux)を想定しています。Virtual BoxにLinuxをインストールしたら、いつもアップデートしてGNUコンパイラやカーネルソース等を入れています。 yum install check-update yum in…
ソースダウンロード先:Google Code Archive - Long-term storage for Google Code Project Hosting.gitの1.8.2.1をソースからコンパイルする際にエラーが発生しました。 make[2]: `GIT-VERSION-FILE' is up to date. GEN git-instaweb SUBDIR git-gui SUBDI…