<紙>さんLOG

「パソコンヲタクの雑記帳」
 PC/Linux系/物理・化学で遊んでいます。
思いついたことを綴っています。

Python って、なに?

2009年03月22日 | Weblog
昨日までの累計アクセス数=102,045。 ご訪問ありがとうございます。


特定用途アプリ(4)」で、「CFD-ACE+」について書きましたが、
この CFD-ACE+ を使っているとき、Python と云う言葉が出てきていました。
何となく言語かなとは思いながら、CFD-ACE+ に含まれるものと思っていました。

最近、改めて「Python」で検索したところ、
日本Pythonユーザ会(PyJUG)」を見つけました。

これは、面白い言語だったんですね。

このユーザ会のサイトにある、「プログラミング言語 Python の紹介」には、

  Python は Guido van Rossum 氏による、フリーなオブジェクト指向プログラミング言語です。
  Red Hat 系 Linux ではインストーラや環境設定ツールの開発言語として利用されているので、
  Python スクリプトをご覧になったことのある方も多いのではないでしょうか。

  もちろん、Python は Red Hat 以外でも
  いろいろなアプリケーションの開発に使用されています。
  有名なフリーウエアをいくつかあげてみると
   ・ Sketch - ベクタードローツール
   ・ PySol - なんと数百種類(!)ものカードゲームが楽しめる、ソリテアゲーム集
   ・ Zope - WEB アプリケーションサーバ
   ・ MailMan - メーリングリスト マネージャ
  などがあります。
  この顔ぶれをみると、Python はシステム管理からデスクトップアプリケーション、
  サーバアプリケーションまで、幅広く応用可能なプログラミング言語である
  ことがわかると思います。
  また、上記のアプリケーションはそれぞれの分野で高く評価されているものばかりで、
  Python が実用的で生産性に優れたプログラミング言語であることを実証しています。

  また、Python は非常に習得しやすい言語で、
  初心者が学習するためにも最適な言語となっています。
  アメリカでは Python を学習用言語とするプログラミング教育プロジェクト
  CP4E(Computer Programming For Everybody)が、DARPA(米国防衛高等研究企画庁)
  からの出資を得て活動しています。

とあります。


入門者用に、簡潔に纏められたサイトとしては、
ニシキヘビを飼おう:Python入門」がありました。


また、Python 利用者の偏見(?)に依る比較サイト、
Perl, Python, Ruby の比較」もありました。


とりあえず、条件文を<紙>流に書いて並べてみました。
(段付けの空白は2B空白です。)


-- Active BASIC -- Windows 用フリーソフト

' Dim 文で、変数 x,y,z を宣言する。

If x = y Then
  z = 1
Else
  z = 0
End If


-- Perl ----- UNIX/Linux、Windows 用フリーソフト

if ( $x == $y ) {
  $z = 1;
} else {
  $z = 0;
}


-- Python ---- Mac OS X、UNIX/Linux、Windows 用フリーソフト

if x == y:
  z = 1
else:
  z = 0
# 次の文は、行の先頭から記述する。


使ってみようかナ。
何の為に・・・・・・そう、何が目的で使う(勉強する)のか???

当面は、幾つかを眺めてみるとしますか。

皆さんは如何でしょうか? 



見ていただきありがとうございました。
お帰りに投票して頂けると嬉しい。 ⇒ 日記@BlogRanking(「60代~」と「茨城」にエントリ)

人気BlogRanking ⇒ (「インターネット・・・・・」>「ウェブログ」にエントリ)
gooブログに貼れない窓はこちらにあります。

P-NETBANKING ⇒ (「パソコン・・・・・」と「茨城」にエントリ)

部活:MOPAC の勉強

2009年03月21日 | 理科部 部活
昨日までの累計アクセス数=101,230。 ご訪問ありがとうございます。


化学部活:エタノール」で導入した MOPAC を使うと
化学反応のシミュレーションができる?


いろいろ探して、s2k さんのサイト「Sn2 Reaction」を見つけました。


そこには、「反応機構解析」として、
  Sn2反応・・・有機化学専攻の人なら知らない人はいない、
  最もベーシックな反応機構です。
  ここでは、簡単な組み合わせとしてヨードメタンとフッ素アニオンで、
  Sn2をシミュレーションしてみたいと思います。
とありました。

さしずめ、PCの世界では、MBR(Master Boot Record)とか、
物理的なHDDの区画(パーティション)や
論理的なFATファイルシステムのようなこと かな?


化学反応としては、
 CH3I + F -> I + CH3F
と云うことでしょうか。

勉強しなくっちゃ!

そこでの書き出しは
  まずはヨードメタンの最適化。
  Winmostarでメタンを作成し、一つの水素をヨウ素で置換します。
  キーワード「PM3 EF PRECISE」で最適化します。
  最適化されたヨードメタンのヨウ素の反対側に、
  [Add]ボタンを使って少し離し気味にフッ素を置きます。
  フッ素は図(省略)に示すように、炭素・水素・ヨウ素の順で結合関係を定義し直します。
  実はこれが重要だったりします(こうしないと変な形に収束し易い)。
  フッ素の結合距離を3.0ang にし、最適化フラグを0にして固定します。
です。

以下、自分流に要点をメモします。 s2k さん ごめんなさい。


キーワードに「CHARGE=-1」を忘れずに付ける。
最適化が終了すると、水素とフッ素が相互作用したような構造が得られる。
この構造を初期構造として、MEP計算を実行する。

フッ素の結合長の最適化フラグを -1 に設定し、
追加データ欄に「2.9 2.8 2.7 2.6 2.5 2.4 2.3 2.2 2.1 2.0」と入力。
データを保存し、MEP計算を実行。


出力 arcファイルのC-F結合長とエネルギーの値を見る。
2.9ang から2.7ang まではエネルギーが低下し、
そこから2.2ang まで緩やかに上昇し、その先で急激に低下している。
つまり、 2.2ang 付近にエネルギーの峠が存在する。


C-F=2.2ang の構造データを抽出し、これを遷移状態へ最適化する。
arcファイルの中のC-F=2.2ang の部分のz-matrixを切取、別名で保存。

候補構造を遷移状態へ最適化するには、キーワード「TS」を用いる。
抽出した候補構造の、フッ素の最適化フラグを1に戻し、
キーワード欄を「PM3 TS PRECISE CHARGE=-1」にする。
データを保存し、TS計算を実行。

計算が終わると、最適化された遷移状態が表示される。
C-F結合は凡そ2.16ang。


次に、振動計算を行う。
振動計算のキーワードは「FORCE」。
最適化構造の表示状態で、キーワード欄を「PM3 FORCE LET CHARGE=-1」とする。
「LET」は予備最適化しない指定。
(FORCE は振動計算の前に構造最適化を行おうとするのでこれを止める)
データを保存し、振動計算を実行。

虚振動 (MOPACでは負の値として出力される)が唯一つある。
その振動の成分は、C-H 変角とC-F 伸縮。
Sn2反応の遷移状態と見てとれる。


最後に、
最も正確に遷移状態を確認する方法:極限的反応座標(IRC)計算を実行する。
IRC計算は、遷移状態の振動に基づいてエネルギーの山を下り、
原系・生成系とをつなぐ計算。
この出力から正確なエネルギー・プロファイルを作成することができる。

入力ファイルは、遷移状態から原系へ向かう計算と、
生成系に向かう計算と両方必要。
キーワードは「PM3 IRC=1 LARGE=100 CHARGE=-1」と
「PM3 IRC=-1 LARGE=100 CHARGE=-1」。
LARGEキーワードは、IRC計算の何サイクル毎に構造を出力するかである。
この計算は最も時間のかかる計算。

MEP計算のときと同じように(arcファイルは出力されない outファイルから)、
ファイルの一番最後に近い構造(=グラフの端に当たる構造)を抽出し、確認。
IRC計算では、IRC=1が生成系、-1が原系に向かう。

IRC計算の出力をグラフに変換して見る。


以上で、
 CH3I + F -> I + CH3F
がシミュレーションできる!

と云うことで、化学部 部活9日目終了です。
s2k さん 有り難う御座いました。
非常に解りやすく勉強になります。
 

みなさん、何かの参考になりましたでしょうか??? 



見ていただきありがとうございました。
お帰りに投票して頂けると嬉しい。 ⇒ 日記@BlogRanking(「60代~」と「茨城」にエントリ)

人気BlogRanking ⇒ (「インターネット・・・・・」>「ウェブログ」にエントリ)
gooブログに貼れない窓はこちらにあります。

P-NETBANKING ⇒ (「パソコン・・・・・」と「茨城」にエントリ)

嬉しい! 10万PV達成

2009年03月20日 | Weblog
昨日までの累計アクセス数=100,454。 ご訪問ありがとうございます。


184日で5万PV越え」から85日目でした。 日数は、半分以下で!!!

開設当初は、1年以内で達成すれば嬉しいなと思っていました。
1年10万が適当な目標、と勝手に決めていました。

それが、9ヶ月以内で・・・・・何がどうなって・・・
それは、さておき素直に喜びます。
嬉しい! ウレシイ!


因みに、開設からの推移では、

---- 期間--通算-
 1万越: 61日( 61日)
 2万越: 41日(102日)
 3万越: 28日(130日)
 4万越: 30日(160日)
 5万越: 24日(184日)
 6万越: 17日(203日)
 7万越: 17日(220日)
 8万越: 17日(237日)
 9万越: 17日(254日)
10万越: 14日(268日)
でした。

もっと続けていかなければ、と改めて頑張ります


いつも、見ていただきありがとうございます

厚かましくも、お願いです。 

お帰りに投票して頂けると嬉しいです。 ⇒ 日記@BlogRanking(「60代~」と「茨城」にエントリ)

人気BlogRanking ⇒ (「インターネット・・・・・」>「ウェブログ」にエントリ)
gooブログに貼れない窓はこちらにあります。

P-NETBANKING ⇒ (「パソコン・・・・・」と「茨城」にエントリ)

自己ベスト更新:400IP越え!

2009年03月18日 | Weblog
昨日までの累計アクセス数=98,930。 ご訪問ありがとうございます。


350IPを越えたのは1月20日でした。「初めてです2 350IP越え

その後は、367IP、377IPと成る日もありましたが、300前後での推移から、
3月8日には、245IPまで落ちていました。

此処にきて、若干上向き傾向のようでしたが、遂に、皆さんのご訪問のお陰で、
昨日、念願の400IPを越えることができました。

goo 120万ブログ中でのランキングでも「263日で5万IP越え」の時の、
1,334位(369IP)を抜き、
1,235位に成れました。 PVベースでも過去最高の 929PV でした。






「gooあしあと」による訪問者推移でもここ数日は、300IP を越えているようです。






嬉しい限りです。

今後とも、頑張って参りますので、皆様宜しくお願い致します。


見ていただき本当にありがとうございました。
お帰りに投票して頂けると嬉しい。 ⇒ 日記@BlogRanking(「60代~」と「茨城」にエントリ)

人気BlogRanking ⇒ (「インターネット・・・・・」>「ウェブログ」にエントリ)
gooブログに貼れない窓はこちらにあります。

P-NETBANKING ⇒ (「パソコン・・・・・」と「茨城」にエントリ)

ROM と RAM って反対語?

2009年03月17日 | Weblog
昨日までの累計アクセス数=98,001。 ご訪問ありがとうございます。


ROM(Read Only Memory):リードオンリーメモリ、の反対語としては、大抵は、
RAM(Random Access Memory):ランダムアクセスメモリ、と云われいるようですね。

しかし、本当に反対語ですか?
正確には、
ROMの反対語は、RWM(Read write memory):リードライトメモリ。
一方RAMの反対語は、SAM(Sequential access memory):逐次アクセスメモリ、ですね。

このように、比較軸を統一しないで行うことは、現実世界では多いですね。

アクセスが(逐次かランダムか)と、データが(リードオンリかリードライトか)
で4通りの組み合わせができます。

例えば、PIC(ICチップマイコン)では、
いずれもランダムアクセスのリードオンリメモリとリードライトメモリが入っています。
それに外付けするROMは大抵、逐次アクセスのリードオンリメモリです。

逐次アクセスのリードライトメモリは存在価値が殆ど無いですね。
そんなものが有るのか無いのかは定かではありません。


因みに、WiKi の「RAM」の項には、
  RAM は、アドレス信号によって番地情報を与えることにより任意の番地のメモリーセルに対して
  読み出しや書き込みといった操作が出来る記憶装置である。
  RAM とは異なり、磁気テープのように記憶情報が順番に格納されていて所要の番地への
  操作を行なうには順番待ちをしなければならない記憶装置があり、これらは SAM と呼ばれる。
とあります。

そして、
  RAM という言葉自体に読み書き可能という意味はないが、読み書き共にランダムアクセスが
  可能なものに限って RAM と呼び、製造時や使用初期に一度書き込まれた情報は、
  以後は読み出しのみが可能となる読み出し専用メモリ(ROM)と対比されることが多い。
  また、半導体ROM も広義の RAM であるため、ROM と区別する意味で RWM と呼ばれることもある。
となっています。


なお、さらに、
  ROMは電源を供給しなくても記憶内容を保持する不揮発メモリ(NVM: Non Volatile Memory)であるが、
  RAMはほとんどが(MRAM, FeRAMなどを除き)電源の供給を絶つと記憶内容が
  失われる揮発メモリ(Volatile Memory)である。
ともあります。

この「不揮発」、「揮発」と云う言葉は、PC自作派は「スタティック」、「ダイナミック」と呼びますね。

不揮発メモリを、SRAM:Static Random Access Memory(スタティック ランダム アクセス メモリ)
と呼び、
揮発メモリは、DRAM:Dynamic Random Access Memory(ダイナミック ランダム アクセス メモリ)
と呼びますね。

何かの参考になりましたら、幸いです。



見ていただきありがとうございました。
お帰りに投票して頂けると嬉しい。 ⇒ 日記@BlogRanking(「60代~」と「茨城」にエントリ)

人気BlogRanking ⇒ (「インターネット・・・・・」>「ウェブログ」にエントリ)
gooブログに貼れない窓はこちらにあります。

P-NETBANKING ⇒ (「パソコン・・・・・」と「茨城」にエントリ)