31032012 家庭菜園
雨が降って畑にいけない。大根とか人参の発芽状況をチェックしたかったのに。
寝室の窓際で育てているズッキーニの苗。

オクラとか、ゴーヤもそろそろ種まきしないとなぁ。
31032012 家庭菜園
雨が降って畑にいけない。大根とか人参の発芽状況をチェックしたかったのに。
寝室の窓際で育てているズッキーニの苗。

オクラとか、ゴーヤもそろそろ種まきしないとなぁ。
バグフィックスしたり基底関数まわりを追加してバージョンをちょっとあげた。
一番大きな変更はデフォルトでrungmsを使わないようにしたことで 直接ddikickを叩くことにしたことか。それでgamessのパスをどうしようかなぁと。
とりあえずコンストラクタで直接指定してない場合は
それとは別にrungmsのpathを探したりもしている(僕の場合はrungmsを/usr/local/binに置いている)のでちょっとくどいやり方になってしまった。
それから、コンストラクタにオプションを渡せるようにしたんだけど、これだと、gamessのインプットいじるのと変わらないので、もう少しスマートな指定方法も用意したほうがいいかなぁと思った。
水分子を基底関数を変えながらエネルギーを計算する例。このくらいだったら対話環境でサクッとうごく。
>>> import pybel >>> from pygamess import Gamess >>> g = Gamess() >>> mol = pybel.readstring('smi', 'O') >>> mol.make3D() >>> g.run(mol).energy -74.96450135 >>> g.run_type('optimize') >>> g.run(mol).energy -74.9659012146 >>> g.basis_set('3-21G') >>> g.run(mol).energy -75.585959758 >>> g.basis_set('6-31G') >>> g.run(mol).energy -75.9853591564 >>> g.basis_set('6-311G') >>> g.run(mol).energy -76.0109546389 >>> g.basis_set('6-31G*') >>> g.run(mol).energy -76.0107465155 >>> g.basis_set('6-31G**') >>> g.run(mol).energy -76.0236150193
最近ちょっと困っているのが、構造最適化で収束しないのをどうやって収束させるかという。6-31G*くらいでmopacみたいなノリで計算できるようにしたい。
openbabelのコンバーターがバグってる。
>>> import pybel >>> from pygamess import Gamess >>> g = Gamess() >>> mol = pybel.readstring('smi','C') >>> mol.make3D() >>> nmol = g.run(mol) >>> nmol.OBMol.GetTotalSpinMultiplicity() 1882919584
30032012 drum
CAMO & KROOKEDはちょっとイケイケすぎるというか疾走感が強すぎて、聴き疲れしてしまうという理由から超好きというわけではないのだけど、remixは期待度大。
元ネタのほうは買ってない
29032012 music
jazzyなdrum'n'bass -> jazz -> technoっていう展開が気持ちよかった
Sentimental Moods / Makoto King Of Sunshine / Nicola Conte Ghost Song (Joris Voorn Remix) / Slam Pique-E / Tanzmuzik
ジャケと曲の構成が違う。自分のもっているのはRisingHigh版だった。
最近(というかここ2,3年くらい)今の職場で、新しい挑戦はセクションの壁を超えてトピックブランチ的にワーキンググループを作って自主的に議論して上に提案するというスタイルが普通になった。
これはやる気がある人が積極的に議論に加わるので、調子がいいし議論も生産的で楽しい。
が、あるワーキンググループの議論の中で「自分はその(別の)WGに参加してないからコンテクストが理解出来ない」みたいなことを言われたのでちょっと考えてしまった。
トピックブランチは他に影響を与えないで新しいことを試すので、WGも参加者以外には基本的に見えない。だからそういう発言になってしかるべきだし、それはあり方として正しい。一方で全然ワーキンググループに参加しないヒトは振る舞いや思想がメンテナンスブランチのそれに近くなってきているのではないかと。そもそも保守的な考えのヒトが多いからほっといたら保守化するわな、そりゃ。
昔はセクションのトップがそういうヒトにもある程度成長のためのチャレンジを促していたような気がするけど、プロジェクト色が強くなるとどうしても自主的に動けるかどうかが重要視されるよなぁと。
まぁサイエンティストだったら当たり前の感覚だろうけど、企業研究者の8割は単なる労働者でしょ?そういう状況で、こういうやり方が組織論的に正解なのかはよくわからん。
なぜnitrenium ionにする必要があるのかはここではふれないので、ココらへんを見てください。
import pybel smarts = pybel.Smarts("c[#7]([#1])[#1]") mol = pybel.readstring('smi', 'c1ccccc1N') mol.make3D() matches = smarts.findall(mol) mol.OBMol.DeleteAtom(mol.atoms[matches[0][2]-1].OBAtom) mol.OBMol.SetTotalCharge(1) print mol.write('mol')
分子に修飾をしたい時はpybelにメソッドがないので、OpenBabelのオブジェクトを直接触る必要があるのであまりスマートではない気がする。
28032012 git
gitにわかりやすい名前のコマンドを追加してくれる。
使いそうなものから
checkoutよりもswitchのほうがスイッチした感が得られますね。
各ブランチが色付きで表示されつつ、それがリモートにpublishされているかどうかもあわせて表示されるので便利。
Merge unpublished branch into current branch, then remove it.
ってなってるんだけど、トピックブランチを立ててマージした後に残ったブランチを削除するのも面倒なので こっちのコマンドのほうがいいのかなと思うんだけど。そういう用途向けじゃないのかな。
現在のブランチから新しいブランチを作る
リモートにブランチをパブリッシュ。
トピックブランチはリモートにpushしないのであまり使わないけど便利そう。
逆にこっちをgitのコマンドで実行するやり方がわからない。
よくわからん。というかrebaseをきちんと理解してないのを理解したので調べた
結果、単独開発の場合はあまり必要ない感じだった。
複数人で作業することはないのでほとんど使わなさそう
28032012 Python
for Humansなモジュールが気になったのでPyPiを探してみた
paperはちょっと気になるが、開発中。
28032012 life
なかなか、面白かった。
真面目な内容を期待すると裏切られた感が得られるが、行間とか内容の本質を考えながら読めばそれなりに得られるものがあると思う。
僕の場合は参考になることが多かった。