FC2ブログ

Anaconda 学習:conda と pip を混ぜると?

2018-10-10 :  PCクリニック
前回(2018-09-26)の記事:
Anaconda 学習:SciLab はどうか?
を書いている時に、

“onoz000's blog”の、
condaとpip:混ぜるな危険」を見つけた。

  Anaconda環境下でpipを使う場合のリスクについて、
  日本語で書かれたページがほとんど見つからなかったので覚え書き。

  ひとことで
  Anaconda下でpipを使うと予期せず環境が破壊され、
  最悪の場合Anaconda自体の再インストールが必要になる。
  pipは慎重に使いましょう。


  condaとpip
  pipはPython環境で様々なパッケージを管理するための標準ツール。
  例えば、pip install numpyというコマンド一発で(依存関係も含め)
  PyPI(配布サイト)からnumpyをダウンロード・インストールすることができる。

  一方、特にデータサイエンスのためにPythonを使う人に人気なのが、
  Anaconda, Inc.社の提供するAnacondaというPythonのディストリビューション。

  Anacondaにはcondaという独自のパッケージマネージャーが付属しており、
  仮想環境の管理やpipの代わりの役割などを果たしている。
  例えば、conda install numpyからnumpyをインストールできる。

  なぜAnaconda?

  ・・・・・
  ・・・・・

  condaの仕組み

  ・・・・・
  ・・・・・

  pipとcondaの衝突

  ・・・・・
  ・・・・・

  どうすれば良いか

  今までの説明からconda install X でパッケージが見つからなかった場合
  に安易にpipから入れるのは危険だということがわかる。
  リスクを減らすためには例えば次の様な手順を踏む。

  1.anaconda search X でXを提供しているチャネルがないか探す。
   あればconda install -c channel X等の方法でインストールする
   (この場合もチャネルの優先順位など、様々な注意が必要。
    詳しくは公式ドキュメント参照)。

  2.pipから入れたい場合、まずPyPIのサイトから該当するパッケージを探し、
   依存関係を調べておく。依存するパッケージのうち、
   condaからインストール可能なものは予めインストールしておく。

  3.依存関係を満たしたらpip install --no-deps XでXをインストールし、
   動作確認する。

  あるいは別の選択肢として、

   ・ pipからしか入れられないパッケージを入れたい場合、
     新しいcondaの環境を作る(conda create -n env python)。
     その環境内ではconda installは一切用いない。

   ・ Anacondaを使うのをやめる。Python公式サイトのPythonを使い、
     パッケージはpipで導入する。
     仮想環境についてはvenvやvirtualenvを用いる。

  自分のconda環境は大丈夫?

  既に構築済みの自分のconda環境でpipとcondaの衝突があるか
  確かめたい場合は、conda listを実行する。
  同じパッケージがpip経由とconda経由で入っている場合重複して表示される。
  何かがおかしくなっている可能性が高い。

  参考

  ・ wheelのありがたさとAnacondaへの要望 - YAMAGUCHI::weblog
  ・ Conda documentation, 特にManaging packagesのページ


殆ど引用(流用?) と云うか、丸写し(?)だが、
本日はここまで。


そう云えば、
今年2月(2018-02-02)の記事:
Anaconda 学習:cufflinks って何?」で、
  ・・・・・
  ・・・・・
  conda じゃ無くて、pip で導入するときについて
  若干学習した?
  ・・・・・
  ・・・・・
と書いている。



そして、
今年5月(2018-05-18)の記事:
Anaconda 学習:PyAutoGUI 導入
で書いた、

  ・・・・・
  ・・・・・
  先日(2018-05-02)の記事「Tiny C compiler:64-bit 版」の時、
  tinycc を、pip でインストールしていた。
  この時、リストを出力していなかった。
  ・・・・・
  ・・・・・

このころから、
conda listの結果に不審な点が見られる???




Anaconda ( Python ) 学習は続く。


見ていただいた序でとは厚かましい限りですが、
お帰りに投票して頂けるとなお嬉しいです。 ⇒ blogram投票ボタン


180909
スポンサーサイト

Anaconda 学習:SciLab はどうか?

2018-09-26 :  PCクリニック
SciLab」については、
ブログ内search:SciLab
  2013/07/06 : PDL:Perl Data Language
  2013/06/26 : Algorithm::CurveFit : これで決まりかナ?
  2013/04/27 : Scicos: ブロック線図作成・シミュレータ
  2012/12/28 : 平成23年、24年、そして25年
  2012/12/03 : 2012年前半の記事
  2012/09/12 : R 学習:vs MATLAB
  2012/08/19 : 「R」で決まり(?)
  2012/06/11 : ImageMagick:画像形式変換ツール
  2012/05/22 : Scilab 関連サイトを2つ
  2012/05/09 : Scilab に SIVP 導入
  2012/04/28 : Scilab 導入しました
  2012/04/25 : PBM/PGM/PPM:画像データ表現形式
  2012/04/24 : Scilab つかってみようかナ
の如く、
5年前~6年前に記事にしている。


今年初め(2018-01-03)の記事:
GSL Shell から、Python に
で書いた:

  訳あって、GSL Shell から足を洗う?ことになった。

  代替は、GSL Shell にのめり込む前の、Python でしょうか?

  ・・・・・
  ・・・・・

  Anaconda
  では、
    “Anaconda 5.0.1” ( Python 2.7 version )
  として、2種類あり:
    64-Bit Graphical Installer (500 MB)
    32-Bit Graphical Installer (403 MB)
  しかも、バージョンは、2.7.14 と最新のものである。

  殆どのパッケージが含まれており、

  ・・・・・
  ・・・・・

  これに決め でしょうか?

  早速、
  「Anaconda2-5.0.1-Windows-x86.exe」 2017-10-15 付 403MB
  をダウンロードして、

  ・・・・・
  ・・・・・

の如く、
主たるプログラミング言語は“Anaconda ( Python )”に成っている。



ここで、「Python Scilab」で検索してみた。


“Interoperability - Scilab - Home - Scilab”の、
Python / Call Scilab from other languages
がみつかる。

  Python

  Sciscipy, originally developed by Vincent Guffens,
  extends Python by providing all the features of Scilab.

  Thus, since the Python interpreter, it is possible to access seamlessly
  any Scilab function.

  For example, the following Python code shows the call to Scilab function
  for generating random numbers rand () use to create a matrix of size 20x20
  and then performs some simple calculations on this data:

  from scilab import Scilab
  sci = Scilab()
  x = sci.rand(20, 20)
  y = x*x.transpose()
  y_inv = sci.inv(y)

  Sciscipy transparently manage data conversions
  (both Python and Numpy types).

===

  Python

  元々Vincent Guffensによって開発されたSciscipyは、
  Scilabのすべての機能を提供することでPythonを拡張しています。

  したがって、Pythonインタプリタのため、Scilabの機能にシームレスに
  アクセスすることが可能です。

  例えば、次のPythonコードは乱数を生成するためのScilab関数の
  呼び出しを示しています。rand()はサイズ20x20の行列を作成し、
  このデータに対して簡単な計算を行います:

  from scilab import Scilab
  sci = Scilab()
  x = sci.rand(20,20)
  y = x * x.transpose()
  y_inv = sci.inv(y)

  Sciscipyは、データ変換(PythonとNumpyの両方のタイプ)
  を透過的に管理します。



取り敢えず、“Anaconda Cloud”で、“SciLab”を検索したら、

Win-64 用として、
petrush / packages / scilab2py 0.6
  Python to Scilab bridge
が見つかる。

でも、“Sciscipy”は見つからない???



“Sciscipy”を Web 検索では?

PyPI の、
scilab2py 0.6.1」が見つかる。

  Scilab2Py is a means to seamlessly call Scilab functions
  and scripts from Python.

  It manages the Scilab session for you, sharing data behind
  the scenes using MAT files.

  Usage is as simple as:
>>> sci = scilab2py.Scilab2Py()
>>> x = sci.zeros(3,3)
>>> print x, x.dtype
[[ 0. 0. 0.]
[ 0. 0. 0.]
[ 0. 0. 0.]] float64
...
  ・・・・・
  ・・・・・

===

  Scilab2Pyは、Scilabの関数とスクリプトをPythonから
  シームレスに呼び出す手段です。

  Scilabセッションを管理し、MATファイルを使用して
  舞台裏でデータを共有します。

  使い方は次のように簡単です:
>>> sci = scilab2py.Scilab2Py()
>>> x = sci.zeros(3,3)
>>> print x, x.dtype
[[ 0. 0. 0.]
[ 0. 0. 0.]
[ 0. 0. 0.]] float64
...
  ・・・・・
  ・・・・・


それで、
インストールの手順は、

  You must have Scilab 5.4 or newer installed and in your PATH.
  You must have the Numpy and Scipy libraries installed.

  To install Scilab2Py, simply:

  ・・・・・
  ・・・・・

===

  Scilab 5.4以上をPATHにインストールしておく必要があります。
  NumpyとScipyのライブラリをインストールしておく必要があります。

  Scilab2Pyをインストールするには、次のようにします。

  ・・・・・
  ・・・・・


と云うことでした。


本日はここまで。


Anaconda ( Python ) 学習は続く。


見ていただいた序でとは厚かましい限りですが、
お帰りに投票して頂けるとなお嬉しいです。 ⇒ blogram投票ボタン


180121

aria2:The next generation download utility

2018-09-19 :  PCクリニック
昨年6月(2017-06-07)の記事:
GNU Wget - Wget for Windows
で、

  「Wget for Windows - GnuWin32」

について書いている。


今年初め(2018-01-03)の記事:
GSL Shell から、Python に
で書いた:

  訳あって、GSL Shell から足を洗う?ことになった。

  代替は、GSL Shell にのめり込む前の、Python でしょうか?
  条件として、100本以上ある現状プログラムが使えること。
  そして、最新版であること。
  そうすると、Python 2.7.14 となる?

  ・・・・・
  ・・・・・

  Anaconda
  では、
    “Anaconda 5.0.1” ( Python 2.7 version )
  として、2種類あり:
    64-Bit Graphical Installer (500 MB)
    32-Bit Graphical Installer (403 MB)
  しかも、バージョンは、2.7.14 と最新のものである。

  殆どのパッケージが含まれており、
  追加したいのは、“menpo / packages / opencv3 3.2.0
  のみくらい???

  これに決め でしょうか?

  早速、
  「Anaconda2-5.0.1-Windows-x86.exe」 2017-10-15 付 403MB
  をダウンロードして、

  ・・・・・
  ・・・・・


の如く、
主たるプログラミング言語は“Anaconda ( Python )”に成っている。



ここで、「Python wget」で検索してみた。

もう一歩制限して、「Python wget ダウンロード」検索とした。


“Qiita”の、
Pythonでバイナリファイルを保存する
が見つかる。

  ・・・・・、その時にUNIX環境であれば、

  ・・・・・

  みたいに wget で簡単にできたんですが、windows環境だとwgetは使えません。
  なので、

  ・・・・・

  上記のように、requests モジュールの Response オブジェクトにある
  raw (urllib3を使ったHTTPResponseオブジェクト)を、
  shutil モジュールの copyfileobj 関数を使って ターゲットの
  ファイルオブジェクトにコピーすることで保存する 、・・・

  ・・・・・


ここで、

「conda wget」と検索してみたが、Linux のみ?


conda の「pywget」では???

“anaconda / pywget 2.2”か、
mjirik / packages / pywget 3.2”か?



最初の検索結果の続きから、
これも“Qiita”の、
PythonでWebからバイナリデータをダウンロードする時の速度の話

  はじめに
  Pythonでバイナリデータをダウンロードする際の速度について検証してみる。
  Webクローラーを作成する場合はこの辺の速度は気になるところである。
  普通にやるとこんな感じになると思う。

  ・・・・・
  ・・・・・

  もちろんこれでもいいのだが、高速になるならそれに越したことはない。

  検証方法
  ・requests+open
  ・wget
  ・curl
  ・aria2c
  これらのダウンローダーをPythonから使用してベンチマークテストを行った。
  requests+open以外はsubprocessから使用する。

  ・・・・・
  ・・・・・
  ・・・・・

  
  aria2cが圧倒的に速いという結果になった。
  この記事でも紹介されているように
  aria2cはwgetやcurlより高速なダウンロードツールである。
  とくに懸念がなければダウンロードにはaria2cを使えばいいのではないかと思う。
  そしてサイズの大きいデータをダウンロードする際はrequests+open
  は避けたほうがよさそうである。

  ・・・・・
  ・・・・・



この内、最初の3つ、

  ・requests+open

  ・wget

  ・curl

は知っていた。


4番目の、

  ・aria2c

は???


「pip aria2c」で検索(!)

aria2

  aria2
  The next generation download utility.

  aria2 is a lightweight multi-protocol & multi-source command-line
  download utility.
  It supports HTTP/HTTPS, FTP, SFTP, BitTorrent and Metalink.
  aria2 can be manipulated via built-in JSON-RPC and XML-RPC interfaces.
===
  aria2は、軽量のマルチプロトコル&マルチソースコマンドライン
  ダウンロードユーティリティです。
  HTTP / HTTPS、FTP、SFTP、BitTorrent、Metalinkをサポートしています。
  aria2は組み込みのJSON-RPCとXML-RPCインタフェースを使って操作できます。


そして、

  Download
  Download version 1.34.0. There you can download source distribution
  and binaries for OS X, Windows and Android.

  The legacy releases earlier than 1.19.1 are available here.
===
  
  ダウンロード
  バージョン1.34.0をダウンロードしてください。そこでは、OS X、Windows、
  Android用のソース配布とバイナリをダウンロードできます。

  1.19.1より前のレガシーリリースがここで利用可能です。



また、

  Usage Examples

  Command-line scares you off? No, aria2 is really easy to use!!

  Download from WEB:
$ aria2c http://example.org/mylinux.iso
  ・・・・・
  ・・・・・


今後は、aria2c かナ?



本日はここまで。


Anaconda ( Python ) 学習は続く。


見ていただいた序でとは厚かましい限りですが、
お帰りに投票して頂けるとなお嬉しいです。 ⇒ blogram投票ボタン


180115

VMD:Visual Molecular Dynamics

2018-09-12 :  理科部 部活
Web検索を行っていたら、・・・・・

VMD - Visual Molecular Dynamics
を見つけた。

これは、
NIH ( National Institutes of Health : 国立保健研究所 )で提供されている?
アプリで、「What is VMD?」にある如く:
  VMD is designed for modeling, visualization, and analysis of biological
  systems such as proteins, nucleic acids, lipid bilayer assemblies, etc.
  It may be used to view more general molecules, as VMD can read standard
  Protein Data Bank (PDB) files and display the contained structure.
  VMD provides a wide variety of methods for rendering and coloring
  a molecule: simple points and lines, CPK spheres and cylinders,
  licorice bonds, backbone tubes and ribbons, cartoon drawings, and others.
  VMD can be used to animate and analyze the trajectory of a molecular
  dynamics (MD) simulation.
  In particular, VMD can act as a graphical front end for an external
  MD program by displaying and animating a molecule undergoing simulation
  on a remote computer.
===
  VMDは、タンパク質、核酸、脂質二重層アセンブリなどの生体系のモデリング、
  ビジュアライゼーション、および分析のために設計されています。
  VMDが標準のタンパク質データバンク(PDB)ファイルを読み込み、含まれる構造。
  VMDは、単純な点および線、CPK球および円柱、甘草結合、バックボーンチューブ
  およびリボン、漫画図面など、分子のレンダリングおよび着色のための
  さまざまな方法を提供します。 VMDを使用して、分子動力学(MD)
  シミュレーションの軌道をアニメーション化および解析することができます。
  特に、VMDは、リモートコンピュータ上でシミュレーション中の分子を表示
  およびアニメーション化することによって、外部MDプログラムの
  グラフィカルフロントエンドとして機能することができます。

そして、
  Key features of VMD include:
  ・Support for all major computer platforms
  ・Support for multicore processors
  ・Support for GPU accelerated computation
  ・・・・・
  ・・・・・
===
  VMDの主な機能は次のとおりです:
  ・すべての主要なコンピュータプラットフォームのサポート
  ・マルチコアプロセッサのサポート
  ・GPUによる高速計算のサポート
  ・・・・・
  ・・・・・


これは面白いナ と思ったが、・・・・・


色々調べてみると、

 高分子がメイン対象?

 ほぼ表示のみ?

 MD 計算用のソフトも提供されているが、
 当然ながら、実行時間が掛かるもの。



<紙>的には、ダメだ(イラナイ)ナ。



と云うことで、
本日はここまで。


見ていただいた序でとは厚かましい限りですが、
お帰りに投票して頂けるとなお嬉しいです。 ⇒ blogram投票ボタン


180510

Mery:フリーの国産テキストエディター

2018-09-05 :  PCクリニック
昨年(H29-02-03)の事ですが、・・・・・


H28-12-28 付「Yahoo! ニュース」から、

窓の杜 > オフィス・ドキュメント > テキストエディター > Windows
「Windows 10にまず入れる超定番無料アプリ」
今もなお進化を続けるフリーの国産テキストエディター「Mery」
を見つけた。

  プログラミングにも原稿執筆にも! 最新ベータ版では・・・
                     (2015/8/12 05:05)

   「Windows 10」のポテンシャルを引き出すためにまず入れておきたい
  定番ソフトを紹介する本集中連載。
  第3回となる今回は、多くの形式に対応した日本語に適した
  多機能テキストエディター「Mery」を紹介する。

  日本語に適した多機能テキストエディター「Mery」

   最近はWeb開発に適した「Sublime Text」「Atom」「Brackets」といった
  “モダン”なテキストエディターが人気だが、ソースコードの
  記述だけでなく、日本語での原稿書きにも適した万能なものがほしいならば、
  国産のテキストエディターに限る。しかし、国産のテキストエディター、
  とくに無償のテキストエディターは“枯れて”おり、事実上開発が停止
  してしまっているものも少なくない。

  ・・・・・
  ・・・・・



それで、

  関連リンク

  Mery - 窓の杜ライブラリ
  http://www.forest.impress.co.jp/library/software/mery/


を見に行った。


  プラグインやマクロも利用できる、Unicode対応の高機能かつ多機能な
  テキストエディター。拡張子別の色分け、単語補完、正規表現対応の
  検索・置換・GREP、さらにキーカスタマイズやカラー印刷など、
  テキストファイルを快適に編集するための便利な機能が数多く搭載されて
  おり、原稿執筆やソースコードの編集など幅広いテキスト編集に対応する。
  ・・・・・
  ・・・・・

  作者名   Kuro 氏
  公式サイト Haijin Boys Online
        http://www.haijin-boys.com/



と云うことで、

Mery

  Mery (テキストエディタ)
  Mery はフリーのテキストエディタです。
  Mery では日記、恋文、新聞記事、ソースコードなどのあらゆる
  テキスト文書を簡単に編集することができます。
  また、HTML、Java、PHP、SQL などの様々なプログラミング言語の
  色分け表示も可能です。
  ・・・・・
  ・・・・・


そして、

  レジストリを使用しない

  インストール不要、
  ZIP ファイルを解凍するだけですぐにご利用可能です。
  設定情報の保存にレジストリを使用しませんので
  アンインストールも簡単、ポータブル環境でも安心です。
  (ZIP 版のみ)



なので、

当時

  「Mery_2.5.6.zip」 2016-12-23 付  2.43MB

をダウンロードして、
展開した。( 所定の、D:¥TOOL¥ に )



だが、未だにまともに使っていない???



現時点(H30-09-05)では、Ver 2.6.7
そして、ベータ版 Ver 2.6.11

ですネ。




本日はここまで。


見ていただいた序でとは厚かましい限りですが、
お帰りに投票して頂けるとなお嬉しいです。 ⇒ blogram投票ボタン


170203

Haxe:オープンソースの高級プログラミング言語

2018-08-29 :  PCクリニック
前回(2018-08-22)の記事:
Cling:CINT後継」に関連して、・・・・・


“Qiita”の
Haxe3.2でPython出力を試す
を見つけた:

  Haxe 3.2からPython出力が可能になったので、試してみます。

  ・・・・・
  ・・・・・



それで、Hexaって何?

“Weblio辞書”では、
haXeとは
  haXe(ヘックス、発音記号は /heks/)はコンピュータ・プログラム用言語の
  1つであり、対応するウェブサイト上でなら汎用言語として使用でき、
  オープンソースで汎用性の高いクロスプラットフォームの
  高級プログラミング言語である。
  言語は ActionScript 3 から派生していて類似している。
  API も NME により Adobe Flash と同等のものが提供されている。

  以下のアプリケーションを生成できる

   ・ Adobe Flash アプリケーションとゲーム
   ・ デスクトップアプリケーション (Microsoft Windows, Linux, Mac OS X)
   ・ モバイルアプリケーション (Android, iOS, HP webOS, BlackBerry)
   ・ HTML5 アプリケーション
   ・ サーバーサイド ウェブアプリケーション

  単一の無修正の1つのコードベースから全てのプラットフォーム向けの
  プログラムを haXe 開発環境内で生成できる。

    目次
  1 出力ターゲット
  2 言語
  3 コンパイラの実装とパフォーマンス
  4 統合開発環境
  5 参照
  6 外部リンク

  ・・・・・
  ・・・・・


もう1つ
“ウィキペディア”では、
Haxe
  Haxe(ヘックス、発音記号は /heks/)はオープンソースの
  高級プログラミング言語、もしくはそのコンパイラである。

  言語としてのHaxeは静的型付きのオブジェクト指向言語であり、
  構文はActionScript3および標準化が中止されたECMAScript 4に似ている。
  Adobe Flashおよび独自のNekoVMで実行可能なバイトコードに
  コンパイルされるほか、JavaScript、ActionScript、C++、C#、Java、PHP、
  Python、Luaへのソースコードの変換が可能であるため、
  主にマルチプラットフォーム開発を目的として使用される。
  また、FlashからHTML5への移行にも使用される。

  2012年4月に表記がhaXeからHaxeに変更された。

  ・・・・・
  ・・・・・



元の記事に戻って、・・・・・

  インストール

   Haxe 3.2のインストール
   Haxe公式のDownloadsから最新版をダウンロードしてインストールします。
   Macでhomebrewを使っているなら下記でもOKです。
     $ brew install haxe --HEAD
   もしくは、Building Haxeを参考に自分でビルドします。

   Python3.xのインストール
   他にたくさん記事があるので省略。
   なお、いまのところHaxeが出力可能なのはPython3だけのようです。

  Haxe/Pythonチュートリアル

   Hello World
   公式のHello WorldでPython出力をしてみます。
   まずはHelloWorld.hxを下記の内容で作成。
HelloWorld.hx
class HelloWorld {
static public function main() {
trace("Hello World");
}
}

  上記をhaxeでhelloworld.pyにコンパイル。

  ・・・・・
  ・・・・・

  無事、Hello Worldが出力されました。

  なお、このとき出力されているhelloworld.pyは下記のようになっていました。

  ・・・・・
  ・・・・・



本日はここまで。


見ていただいた序でとは厚かましい限りですが、
お帰りに投票して頂けるとなお嬉しいです。 ⇒ blogram投票ボタン


180323

Cling:CINT後継

2018-08-22 :  PCクリニック
CINTについては、
10件ほど記事にしている。

中でも、
6年前(2012-11-28)の記事「CINT:C言語インタプリタ

  ・・・・・
  ・・・・・
  ふと気になった。
  「C言語」のインタプリタってあるのかな?

  探してみた。
  (当然ながら、Firefox で、Google 検索)

  「Cint C/C++インタプリタをUbuntuに入れてみた。」
  が見つかった。
  ブログ「Silfa and PC」の 2010/11/28 の記事。
  ・・・・・
  ・・・・・



久し振りに、
「Cインタプリタ」検索を行った。

“Qiita”の
C++11インタプリタ Clingのビルド
が見つかった。

  Cling
  CERNのROOTではCINTというC++インタプリタが使用されています。
  その存在を知ったときは興奮しましたが、CINTの情報が基本的に古く、
  そして極端に少なかったため、その存在をすっかり忘れていました。

  そのCINTの後継のものとしてLLVMを用いて作成されたClingが
  2011年に公開されていたようです。

  ・・・・・
  ・・・・・



Cling」検索では、・・・

GitHub - root-project/cling: The cling C++ interpreter
が見つかる:

  Cling - The Interactive C++ Interpreter
  The main repository is at https://github.com/root-project/cling

  Overview
  Cling is an interactive C++ interpreter,
  built on top of Clang and LLVM compiler infrastructure.
  Cling realizes the read-eval-print loop (REPL) concept,
  in order to leverage rapid application development.
  Implemented as a small extension to LLVM and Clang,
  the interpreter reuses their strengths such as the praised concise
  and expressive compiler diagnostics.
===
  概要
  Clingは、インタラクティブなC ++インタープリタであり、
  ClangとLLVMのコンパイラインフラストラクチャの上に構築されています。
  Clingは、迅速なアプリケーション開発を活用するために、
  REPL(read-eval-print loop)の概念を実現します。
  LLVMとClangの小さな拡張として実装されたインタープリタは、
  コンパイラの診断の簡潔で表現力豊かな診断などの強みを再利用します。

  See also cling's web page.

  Please note that some of the resources are rather old
  and most of the stated limitations are outdated.

  ・・・・・
  ・・・・・



なので、
cling's web pageを見に行った。

  Cling interprets C++
  Cling is built on the top of LLVM and Clang libraries.
  In addition to standard interpreters it has a command line prompt
  and uses just-in-time (JIT) compiler.
  This kind of software application is commonly known as
  an interactive compiler.
  Cling started off as a contemporary, high-performance alternative of
  the current C++ interpreter in the ROOT project - CINT.
===
  ClingはLLVMとClangライブラリの最上位に構築されています。
  標準インタプリタのほかに、コマンドラインプロンプトがあり、
  ジャストインタイム(JIT)コンパイラが使用されます。
  この種のソフトウェアアプリケーションは、一般に
  インタラクティブコンパイラと呼ばれます。
  ClingはROOTプロジェクト(CINT)の現行のC ++インタプリタの
  現代的で高性能な代替手段として始まった。

  ・・・・・
  ・・・・・



ところで、
このClingは、Windows で使えるのか?

Clingビルド 失敗の記録 - 檜山正幸のキマイラ飼育記 メモ編

  Clingビルド 失敗の記録

  LLVM/CLang上のC++インタプリタ Cling

  ・ https://root.cern.ch/cling

  Windows上のビルドはダメだった。いまいましいコマンドラインは:

  ・・・・・
  ・・・・・


どうもダメな様(存在しない様)だ?



本日はここまで。


見ていただいた序でとは厚かましい限りですが、
お帰りに投票して頂けるとなお嬉しいです。 ⇒ blogram投票ボタン


180323

XMedia Recode:動画変換ツール

2018-08-15 :  PCクリニック
先日(2018-08-08)導入した、
UniteMovie:動画の連結」では、
“FLV”対応で塩梅が悪い。

つまり、

UniteMovieでflvが結合できません。

等々にある様に、

  ・・・・・
  ・・・・・

  まず、UniteMovieはビットレート、フレームレート、画面サイズなどが
  同じでないと結合ができません。

  そしてメニュー欄(右端のアイコンをクリックで出ます)で
  「異なる形式のFLVを強制結合する」にチェックを入れないとできません。

  これらの条件を満たしても結合ができない場合は、
  結合するflvがflv5という比較的新しい形式のもので、
  unitemovieが対応していないんだと思います。

  ・・・・・
  ・・・・・



そこで、

“フリーソフト100”の
無料動画変換ソフト一覧

から、

XMedia Recode

  様々な種類のオーディオ、ビデオフォーマットの変換に対応

  ・・・・・
  ・・・・・

に注目してみた。

つまり、

  動画変換を行ったり、動画から音楽ファイルを抽出したり、
  音楽ファイルのフォーマット変換をしたりできる音楽・動画変換ソフト。
  DVD/Blu-ray も変換できます。
  対応しているフォーマットは豊富にあり、
  変換するフォーマットも同程度用意されています。

  XMedia Recode の使い方

  ・ ダウンロード
  ・ 使い方
   1.動画を変換する
   2.対応フォーマット
     2-1. 入力フォーマット
     2-2. 出力フォーマット
   3.対応言語

  ・・・・・
  ・・・・・


なお、
ダウンロードの為に、
提供元サイト
をみると、
  Portable
もある!



本日はここまで。


見ていただいた序でとは厚かましい限りですが、
お帰りに投票して頂けるとなお嬉しいです。 ⇒ blogram投票ボタン


180707

UniteMovie:動画の連結

2018-08-08 :  PCクリニック
「動画 連結」検索で、・・・・・

“k本的に無料ソフト・フリーソフト”の
おすすめの動画編集 ソフト
を見つけた。


その中から、

UniteMovie
  各種メディアファイルを、一つに連結結合してくれるソフト。
  ・・・・・
  ・・・・・
  各種メディアファイルから、指定した場面をロスレスで
  抽出してくれるソフト「CutMovie」も付いています。


つまり、
複数のメディアファイルを、一つに結合!「UniteMovie」。

  各種メディアファイルを、一つに連結結合してくれるソフト。
  mpg(MPEG-1)/ asf / wmv / avi / flv / mp4 / m4v / rm / ram /
  rmvb / mov / qt / 3gp / 3g2 / amc 形式の動画ファイル、
  または mp3 / wma / wav / m4a / ra 形式の音声ファイル を、
  それぞれ再圧縮なしで一つに連結結合することができます。
  各種メディアファイルから、指定した場面をロスレスで抽出してくれる
  ソフト「CutMovie」も付いています。

  「UniteMovie」は、シンプルなメディアファイル連結ツールです。
  複数の

  ・・・・・
  ・・・・・

に着目した。


それで、
「UniteMovie」検索で、・・・・・

“フリーソフト100”の
UniteMovie の評価・使い方

  ファイルをドラッグ&ドロップし、
  複数の動画を結合することができる動画結合ツール

  複数のファイル形式の動画、音声ファイルに対応しています。
  また同梱されているソフトの「CutMovie」は動画を時間・分・秒単位の
  指定した時間に切り取って編集することができます。
  ただし、「CutMovie」はMPEGやWAVに対応していません。
  【注意点】
  UniteMovie はファイル選択後、保存先のファイル名が表示されますが、
  ファイル名と拡張子の間に「.(ドット)」がなく、「xxxxwmv」のような
  ファイル名になります。
  手動で「.(ドット)」を追加して「xxxx.wmv」のようなファイル名
  にする必要があります。

を熟読(???)


特段問題はなさそうなので、・・・・・

ダウンロードした:
  「unitemovie.zip」  1.15MB  2007/07/07付


展開するのみで利用できる。


で、ドキュメントは、・・・・・

UniteMovieの使い方

ですネ。



本日はここまで。


見ていただいた序でとは厚かましい限りですが、
お帰りに投票して頂けるとなお嬉しいです。 ⇒ blogram投票ボタン


180521

お知らせ

2018-08-01 :  その他
今年に入ってから、記事の主なテーマは、
Anaconda ( Python ) 学習 でした。

しかしながら、最近は学習頻度が低下し、
記事にすべき内容が無くなってきた。

他に、
趣味の世界では、やはりGSL Shell ( Lua ) 学習 ですが、
こちらも、学習意欲の低下(?)で、ネタ切れ状態です。

そんな訳で、定期的なブログ記事投稿がままならなくなって来た。

今後は、
不定期更新、と云うか休止(開店休業)状態になりそうダ。


どうか、
よろしくお願い申し上げます。



本日はここまで。



見ていただいた序でとは厚かましい限りですが、
お帰りに投票して頂けるとなお嬉しいです。 ⇒ blogram投票ボタン


180801

OpenBabel 学習:原子間結合の計算

2018-07-30 :  理科部 部活
(最近の記事の中では)、先月(2018-06-22)の記事:
OpenBabel 学習:Sybyl Mol2 format ( ml2, sy2, mol2 )」で、

  ・・・・・
  ・・・・・
  「.xyz」形式から、結合情報を取得するなら、
  .mol2形式がシンプル(?)で宜しいのかナ。
  ・・・・・
  ・・・・・

と書いているが、・・・・・

OpenBabel で計算させようとすると、条件がある!


変換対象の元データとして、

上記記事中の「.xyz」ファイル形式のファイル:
5
NaNO3 : Sodium Nitrate
Na 2.170377 7.394214 0.000000
N 5.091654 7.394214 1.398583
O 4.016332 8.015051 1.398583
O 6.166976 8.015051 1.398583
O 5.091654 6.152539 1.398583
を変換した、
「.mol」形式ファイル:
NaNO3 : Sodium Nitrate
OpenBabel05241811033D

5 4 0 0 0 0 0 0 0 0999 V2000
2.1704 7.3942 0.0000 Na 0 0 0 0 0 0 0 0 0 0 0 0
5.0917 7.3942 1.3986 N 0 0 0 0 0 0 0 0 0 0 0 0
4.0163 8.0151 1.3986 O 0 0 0 0 0 0 0 0 0 0 0 0
6.1670 8.0151 1.3986 O 0 0 0 0 0 0 0 0 0 0 0 0
5.0917 6.1525 1.3986 O 0 0 0 0 0 0 0 0 0 0 0 0
1 3 1 0 0 0 0
2 3 1 0 0 0 0
2 4 2 0 0 0 0
2 5 2 0 0 0 0
M END
をベースにしてみる。


初めに、結合情報を全て削除した:
NaNO3 : Sodium Nitrate
OpenBabel05241811033D

5 0 0 0 0 0 0 0 0 0999 V2000
2.1704 7.3942 0.0000 Na 0 0 0 0 0 0 0 0 0 0 0 0
5.0917 7.3942 1.3986 N 0 0 0 0 0 0 0 0 0 0 0 0
4.0163 8.0151 1.3986 O 0 0 0 0 0 0 0 0 0 0 0 0
6.1670 8.0151 1.3986 O 0 0 0 0 0 0 0 0 0 0 0 0
5.0917 6.1525 1.3986 O 0 0 0 0 0 0 0 0 0 0 0 0
M END
を入力としてみたら、
@MOLECULE
NaNO3 : Sodium Nitrate
5 0 0 0 0
SMALL
GASTEIGER

@ATOM
1 NA 2.1704 7.3942 0.0000 Na 1 UNL1 0.0000
2 N 5.0917 7.3942 1.3986 N.3 2 UNL2 0.0000
3 O 4.0163 8.0151 1.3986 O.3 3 HOH3 0.0000
4 O 6.1670 8.0151 1.3986 O.3 4 HOH4 0.0000
5 O 5.0917 6.1525 1.3986 O.3 5 HOH5 0.0000
@BOND
これでは、結合情報が得られない???


次に結合を1本のみ定義してみた:
NaNO3 : Sodium Nitrate
OpenBabel07231809263D

5 1 0 0 0 0 0 0 0 0999 V2000
2.1704 7.3942 0.0000 Na 0 0 0 0 0 0 0 0 0 0 0 0
5.0917 7.3942 1.3986 N 0 0 0 0 0 0 0 0 0 0 0 0
4.0163 8.0151 1.3986 O 0 0 0 0 0 0 0 0 0 0 0 0
6.1670 8.0151 1.3986 O 0 0 0 0 0 0 0 0 0 0 0 0
5.0917 6.1525 1.3986 O 0 0 0 0 0 0 0 0 0 0 0 0
1 3 1 0 0 0 0
M END
結果は:
@MOLECULE
NaNO3 : Sodium Nitrate
5 1 0 0 0
SMALL
GASTEIGER

@ATOM
1 NA 2.1704 7.3942 0.0000 Na 1 UNL1 0.0000
2 N 5.0917 7.3942 1.3986 N.3 1 UNL1 0.0000
3 O 4.0163 8.0151 1.3986 O.3 1 UNL1 0.0000
4 O 6.1670 8.0151 1.3986 O.3 2 HOH2 0.0000
5 O 5.0917 6.1525 1.3986 O.3 3 HOH3 0.0000
@BOND
1 1 3 1
定義した1本のみ。


では、余計に5本定義してみた:
NaNO3 : Sodium Nitrate
OpenBabel07231809263D

5 5 0 0 0 0 0 0 0 0999 V2000
2.1704 7.3942 0.0000 Na 0 0 0 0 0 0 0 0 0 0 0 0
5.0917 7.3942 1.3986 N 0 0 0 0 0 0 0 0 0 0 0 0
4.0163 8.0151 1.3986 O 0 0 0 0 0 0 0 0 0 0 0 0
6.1670 8.0151 1.3986 O 0 0 0 0 0 0 0 0 0 0 0 0
5.0917 6.1525 1.3986 O 0 0 0 0 0 0 0 0 0 0 0 0
1 3 1 0 0 0 0
2 3 1 0 0 0 0
2 4 2 0 0 0 0
2 5 2 0 0 0 0
1 2 1 0 0 0 0
M END
結果は:
@MOLECULE
NaNO3 : Sodium Nitrate
5 5 0 0 0
SMALL
GASTEIGER

@ATOM
1 NA 2.1704 7.3942 0.0000 Na 1 UNL1 0.0000
2 N 5.0917 7.3942 1.3986 N.pl3 1 UNL1 0.0000
3 O 4.0163 8.0151 1.3986 O.2 1 UNL1 0.0000
4 O 6.1670 8.0151 1.3986 O.2 1 UNL1 0.0000
5 O 5.0917 6.1525 1.3986 O.2 1 UNL1 0.0000
@BOND
1 1 3 1
2 2 3 1
3 2 4 2
4 2 5 2
5 1 2 1
5本ダ!



つまり、
結合情報を計算させるには、

「.xyz」形式の様な、
全く無いもの(定義できないもの)

を入力としないとダメ???


結合情報が定義できる形式では、
入力の情報を信用して(?)そのまま出力される。


本日はここまで。


Anaconda ( Python ) 学習じゃなくて OpenBabel 学習(?)続く。


見ていただいた序でとは厚かましい限りですが、
お帰りに投票して頂けるとなお嬉しいです。 ⇒ blogram投票ボタン


180507

Windows dirコマンド 学習:ファイル名一覧取得

2018-07-27 :  PCクリニック
これまでに(ダウンロードしたりして)入手してきた、
.cifファイルの一覧をリストアップしたい。

取り敢えず、カレントディレクトリ以下で十分か?


手段について、検索・・・・・


“@IT”のTech TIPS:
Windowsのdirコマンドでファイル名の一覧を取得する
で良いかなナ?

  解説
  ・・・・・
  ・・・・・
   このような場合は、
  コマンドプロンプトを起動してdirコマンドを実行し、
  その結果をファイルにリダイレクトすると、
  簡単にファイル名の一覧を取得できる。
   オプションを指定すれば、ファイル名だけとかフォルダー名だけを
  取り出すことも可能だ。
  ・・・・・
  ・・・・・

  操作方法

  ●dirコマンドでファイル/フォルダー名の一覧を表示・保存する

  「dir *.cif /b >out」:「/b」オプションでファイル名だけ取出


  ●ファイルあるいはフォルダーだけを列挙する

  「/a-d」:「/a」オプションで表示させたい属性を指定


  ●フォルダーツリーも含めて検索・列挙する

  「/s」:該当フォルダー以下のフォルダーツリー全体も含めて・・・



そうすると、
dir  *.cif  /b  /a-d  /s  >cif_file_list.txt
で行ける?



本日はここまで。


Anaconda ( Python ) 学習は続く。


見ていただいた序でとは厚かましい限りですが、
お帰りに投票して頂けるとなお嬉しいです。 ⇒ blogram投票ボタン


180602

ExeProperties:View exe & dll properties

2018-07-25 :  PCクリニック
前回(2018-07-23)の記事:
ClamWin Free Antivirus」で書いた、

  ・・・・・
  ・・・・・
  “k本的に無料ソフト・フリーソフト”に載っていた:
  「ClamWin Free Antivirus
  ・・・・・
  ・・・・・


k本的に無料ソフト・フリーソフト
を見ていたら、

システム

エクスプローラ 拡張
に、
ExeProperties
が載っている:

  EXE / DLL ファイルが、32bit なのか 64bit なのか「プロパティ」画面で
 確認できるようにするソフト。
  EXE / DLL / OCX / CPL / DRV / SCR / SYS ファイルの「プロパティ」画面上
 で、ファイルのタイプ(32bit 版か 64bit 版か)/ 最小のシステム要件(最小限
 必要な Windows のバージョン)/ ビルドしたアプリケーション(Visual Studio
 のバージョン)/ サブシステム(GUI か Console か)/ ビルドされた
 日時 / Large Address Aware の対応状況 を確認できるようにしてくれます。

詳細ページ
では、

  EXE / DLL ファイルが、32bit なのか 64bit なのか「プロパティ」画面上で
  確認できるようにする!「ExeProperties」。


  EXE / DLL ファイルが、32bit なのか 64bit なのか「プロパティ」画面で
 確認できるようにするソフト。
  EXE / DLL / OCX / CPL / DRV / SCR / SYS ファイルの「プロパティ」画面上
 で、ファイルのタイプ(32bit 版か 64bit 版か)/ 最小のシステム要件(最小限
 必要な Windows のバージョン)/ ビルドしたアプリケーション(Visual Studio
 のバージョン)/ サブシステム(GUI か Console か)/ ビルドされた
 日時 / Large Address Aware の対応状況 を確認できるようにしてくれます。

  「ExeProperties」は、その名の通り実行ファイルのプロパティを
 確認できるようにするソフトです。
  EXE / DLL / OCX / CPL / DRV / SCR / SYS ファイルの「プロパティ」画面上
 に「Exe / Dll Info」というタブを追加し、ここでファイルの

 ・タイプ(32bit 版か 64bit 版か)
 ・最小のシステム要件(最小限必要な Windows のバージョン)
 ・ビルドしたアプリケーション(Visual Studio のバージョン)
 ・サブシステム(Windows GUI か Windows Console か)
 ・ビルドされた日時
 ・Large Address Aware の対応状況

 といった情報を確認できるようにしてくれます。

 ・・・・・
 ・・・・・


 使い方

 対象ファイルの右クリックメニューに
 「Exe / Dll Info」というタブが追加され

 ・Type - タイプ(32bit 版か 64bit 版か)
 ・Min. Windows Version - 最小のシステム要件(Windows のバージョン)
 ・Built With - ビルドしたアプリケーション(Visual Studio のバージョン)
 ・Subsystem - サブシステム(Windows GUI か Windows Console か)
 ・Timestamp - ビルドされた日時
 ・Large Address Aware - Large Address Aware の対応状況

 を確認できる
 (表示された情報はコピーできない)

 ・・・・・
 ・・・・・



本日はここまで。


Windows ツール の学習は続く。


見ていただいた序でとは厚かましい限りですが、
お帰りに投票して頂けるとなお嬉しいです。 ⇒ blogram投票ボタン


180603

ClamWin Free Antivirus

2018-07-23 :  PCクリニック
昨年8月(2017-08-16)の記事:
GSL 学習:“gsl_a.lua”モジュール?
で書いた:
  Index of /pub/GNU/gsl

から、
Gnu.org」サイトを見ていたら、
“Open source GPL virus scanner”の、
Free Antivirus for Windows」が載っていた。

つまり、ClamWin Free Antivirus

それで、

  ClamWin is a Free Antivirus program for Microsoft Windows 10 / 8 / 7 /
   Vista / XP / Me / 2000 / 98 and Windows Server 2012, 2008 and 2003.

  ClamWin Free Antivirus is used by more than 600,000 users
   worldwide on a daily basis.
  It comes with an easy installer and open source code.
  You may download and use it absolutely free of charge.
  It features:

  ・・・・・
  ・・・・・

===

  ClamWinは、Microsoft Windows 10/8/7/Vista/XP/Me/2000/98および
   Windows Server 2012,2008,2003用の無料アンチウイルスプログラムです。

  ClamWin Free Antivirusは、世界中の60万人以上のユーザーが
   毎日使用しています。
  簡単なインストーラとオープンソースコードが付属しています。
  あなたはそれを絶対に無料でダウンロードして使用することができます。
  それは特色になる:

  ・・・・・
  ・・・・・


今使っているのは、
AVGセキュリティソフトを2つ入れた・・・
だが、・・・・・代わりになるかナ?


若干調べてみた。

“k本的に無料ソフト・フリーソフト”に載っていた:
ClamWin Free Antivirus

  監視型のシンプルなアンチウイルス!「ClamWin Free Antivirus」。

  非常駐監視型のシンプルなアンチウイルス。
  指定した単一 or 複数 のフォルダ(またはドライブ)を、
  手動でウイルスチェックにかけることができます。
  メモリスキャン、自動アップデート、メールスキャン、スケジュールスキャン
  などの機能が付いています。

  「ClamWin Free Antivirus」は、非常駐監視型のアンチウイルスです。
  システムをリアルタイムに監視&保護してくれるタイプのセキュリティソフト
  ではなく、自分が必要とした時のみウイルスチェックを行うことができる...
  というオンデマンドなウイルス対策ソフトです。

  ・・・・・
  ・・・・・



本日はここまで。


アンチウィルスソフト の学習は続く?


見ていただいた序でとは厚かましい限りですが、
お帰りに投票して頂けるとなお嬉しいです。 ⇒ blogram投票ボタン


180603

早大の政経学部入試で「数学」必須

2018-07-20 :  理科部 部活
去る7月7日(金) 16:50 頃 Kinza を立ち上げた。

「RSSリーダー」のフィード一覧に、

 殺人現場も話題スイーツも同じ Infoseek ニュース - 社会・政治
つまり、
 「SNSに写真公開は普通の行為に 事件現場もスイーツも同じ
    NEWSポストセブン / 2018年7月7日 16時0分
が載っていた。

面白そうなので、これを一通り読んだ。

その後、
ふと右の「社会トピックス」
を見たら、

 「早稲田政経の入試になぜ数学?

があった。

つまり:

 早大の政経学部入試で「数学」必須へ。加速する世界の「数学化」
   まぐまぐニュース! / 2018年6月29日 4時45分

本記事の主題はこの記事


  ・・・・・
  ・・・・・
  少々、辛口に過ぎたかもしれないが、今回の入試改革は、「初めの一歩」だ
  と考えれば、政経学部で数学を必須にしたこと自体は、大いに評価できる。
  実際、最新の経済学の教科書には、これまで物理学科でしか教わることの
  なかった「ラグランジアン」という関数が登場している御時世なのだ
  (ラグランジアンは経済学では、費用を意味する)。

  もはや、文系・理系という区分は無意味だ。
  世界はひたすら数学化(情報科、プログラミング化)されてゆく。
  誰もこの怒濤の流れから逃れることはできない。
  ・・・・・
  ・・・・・


と云うことで、
「ラグランジアン」で検索:


ラグランジアン (場の理論) - Wikipedia

とか、・・・・・

多分、この記事:
ラグランジアンに意味は無い - 小人さんの妄想
が正解(?)でしょうか???


  ・・・・・
  ・・・・・

  広くて平らな草原のような土地で、スタート地点からゴール地点まで、
  最も経済的にたどりつく道筋は?
  どこを走っても構わないのであれば、一直線にまっすぐ進むのが
  最も済的な道筋でしょう。
  それでは、向かって左側が沼地になっていて進むのが困難、
  右側に行くほど地盤が固くて快適だったら?
  この場合は直線に進むよりも、いくぶん右よりにカーブして進んだ方が
  全体として得なわけです。
  だからといってうんと右側に曲がっていっては、
  かえって遠回りになってしまいます。
  結局のところ、路面の進みやすさに応じて、適度に右よりにカーブした
  道筋が一番よいということになるでしょう。
  道筋は途中に何があるかによって変わってきます。
  例えば、右手に火山のような障害物があって、できるだけ
  離れた場所を通りたい、あるいは、途中に風光明媚な湖があって、
  できれば近くを通って行きたい、などなど。。。
  実際の地図を眺めてみても、道というものは、いちばん良いところに
  自然に落ち着くように思えます。
  それでは、もし地形や状況を意のままに設定することができたら、どうなるか。
  きっと思った通りの道の形が自然にできあがるのではないか。
  例えば、放物線のカーブが描きたかったら・・・
  これがラグランジアンの発想です。


  ラグランジアンとは、解析力学に登場する、何とも得体の知れない数式の塊です。
  ・・・・・少なくとも、私にとってはそのようなものでした。
  物理に登場する量、例えばエネルギーとか、運動量といったものは、
  それなりに物理的なイメージを思い描くことができます。
  ところが、そうした具体的なイメージをラグランジアンに当てはめようとすると、
  どうもうまく行きません。
  ラグランジアンとは、
  何らかの物理的な意味を持ち合わせている量では無いのです。
  上記の道路と地形の例のような、
  「目的に適ったカーブを描き出すための状況設定」、
  それがラグランジアンの正体なのだと私は思っています。


  ラグランジアンを理解するのに最低限必要な知識は、次の3つです。
  1: 物体の位置の微分は速度、速度の微分は加速度。
    運動というものは2階の微分で表される。
  2:2変数関数の微分
    δとεがほんのちょっぴりだったら、
    f( x+δ, y+ε) - f(x + y) = (∂f/∂x)δ + (∂f/∂y)ε
  3: 部分積分
    たぶん高校で習うのだと思う。積の微分の逆。
     (fg)' = f'g + fg'   <-- 積の微分
     fg' = (fg)' - f'g
     ∫fg' = fg - ∫f'g   <-- これが部分積分だよ
    私は未だに覚えられず、部分積分が出る度に必ずこの3行を書いています。


  まず、最も経済的な道筋を計算する方法を考えてみます。
  思い当たるのは、前進するのにかかったコストを道沿いに足し合わせてみる、
  という方法。
  例えて言えば、消費したガソリンの量を道路1メートル毎に細かく
  足し合わせてゆく、といった感じです。
  この前進コストを L という記号で表すことにします。
  ある道筋にかかったトータルコストは、L をスタートからゴールまで
  足し合わせたものです。
    (トータルコスト) = ∫ L dt
  L と書いたから知れるのですが、この L こそがラグランジアンと
  呼ばれているものです。
  今はまだ具体的な中身の無い、未設定の状態です。
  ところで、L は何に依存しているのか。
  地図の例だといろいろあるでしょうが、
  力学の問題の場合は「物体の位置と速度」に依存します。
  物体の位置と速度は、いずれも時刻 t の関数なので、
     [物体の位置] = q(t)
     [物体の速度] = q'(t)
  と書くことにしましょう。
  (解析力学では x と書かずに q と書くのが習慣らしい)
  L が物体の位置と速度によって決まる、という意味で、
  改めて関数っぽく書き直すと
    (トータルコスト) = ∫ L( q(t), q'(t) ) dt
  となります。

  ・・・・・
  ・・・・・



本日はここまで。


ラグランジアン の学習は続く?


見ていただいた序でとは厚かましい限りですが、
お帰りに投票して頂けるとなお嬉しいです。 ⇒ blogram投票ボタン


180707

Anaconda 学習:スピログラフ

2018-07-18 :  PCクリニック
先月末(2018-06-29)の記事:
ライフゲーム:Conway's Game of Life
に続いて、
古い資料を整理していたら、
ActiveBasic」で自作した、
「old-graph.abp」プログラムのソースリストが出てきた:2007年4月印刷。

これは、5つの極小コードのまとまり。

それの中の1つに“スピログラフ”のコードがあった。


改めて、
「スピログラフ コード」で検索してみた。


こんな玩具」などのページ
が多くみつかるが、

プログラミング的には、

“シキノート”の
正多角形とスピログラフの数式
があった。

  1.・・・・・
  2.・・・・・
  ・・・・・
  ・・・・・
  5.トロコイド(2次元)
  ・・・・・
  ・・・・・

正に、
この5番目のもの:

  トロコイドと呼ばれる曲線があります[2]。
  これをgnuplotで書いてみましょう。
  数式は[2]を参考にして以下の通りです。
  ・・・・・
  ・・・・・

でした。



他のサイトでは、

良いもの。悪いもの。: スピログラフ

これも学習資料だナ?

  スピログラフに初めて触れたのは小学校に上がる前だった。
  当時はそれがスピログラフという名称であることを知らず、
  輪っかをぐるぐる回して綺麗な模様を描ける道具として
  お気に入りの玩具になっていた。
  自分はマンデルブロ集合やジュリア集合のような数学的に表現できる
  図形や模様にともて魅力を感じるのだが、
  幼少のころのスピログラフがその切っ掛けだったのかもしれない。

  長方形の定規に大きさの異なる3枚の歯車が付属しており、
  そして2つの円がくり抜かれている。
  さらに、矢印、五角形、半円などの型が子供心をくすぐったものだ。
  因みに、歯車と円に付いている歯数は刻印されており、
  3つの歯車はそれぞれ36、52、63、円の方は96、105の歯を持っている。

  幼少のころ以来、スピログラフを見かけることはなかったのだが最近に
  なって100円ショップでも売られているという噂を聞き、少し探ってみた。
  近くの100円ショップでは扱っていなかったが、「デザイン定規」
  という名称でネットで78円で売っていたので思わず購入してしまった
  (当然だが送料のほうが高くついた…)。

  ・・・・・
  ・・・・・

  ここでは、Pythonのソースコードも挙げておこう。
  せっかくなので少しだけmatplotlibの調整をしてみた。
  必ず縦と横のスケールが同じになるようにし、グラフ表示も正方形にした。
  コードを見てもらえばやり方はすぐに解るだろう。
  以下のコマンドで実行できる。

  ・・・・・
  ・・・・・

これなら、
昔々の「ActiveBasic」から
最近のAnacondaに乗り換えられる。


序でに、
「スピログラフ Python」で検索したら、
“Qiita”の
スピログラフをPythonで書いてみる
が見つかったが、

  上記:"正多角形とスピログラフの数式"
  を参考にしました。

とある。



本日はここまで。


Anaconda ( Python ) 学習は続く。


見ていただいた序でとは厚かましい限りですが、
お帰りに投票して頂けるとなお嬉しいです。 ⇒ blogram投票ボタン


180513

JSME Molecule Editor

2018-07-16 :  理科部 部活
先日(2018-06-22)の記事:
OpenBabel 学習:Sybyl Mol2 format ( ml2, sy2, mol2 )」に関連して、・・・・・

当ブログ内を「mol2」で検索したら、

8年前(2010-10-06)の記事「mol2ps とその周辺ソフト
が見つかった。

  「mol2ps」とは?
  本家のサイト によると、
    a freeware tool for 2D depiction of molecular structures
  と云うことは、
    分子構造を2Dで描写するためのフリーの道具
  ですか?

  いろいろ3D表示に拘って(?)いるのに、
  何を今更2Dにデグレード?って感じですが、
  2D図面もシンプルで役に立つことがある。

  過去記事(昨年8月、10月)に、
  「Symyx Draw 導入」「JMEエディタ?
  なんて云うのがありました。

  ・・・・・
  ・・・・・


と云うことで、・・・・・

今から9年前(2009-10-21)の記事「JMEエディタ?
を眺めてみた。

  ・・・・・
  ・・・・・
  JMEエディタ って?
  「JME Molecular Editor」これ、ですか?
    ・・・・・
    ・・・・・
  つまり
    ・・・・・
    ・・・・・
  と云うことのようです。
  ・・・・・
  ・・・・・


さらに、
JME Molecular Editor
に飛んでみた。

書き出しは、赤文字で、

  The development of JME editor applet has been discontinued.
  Try the JSME molecule editor in JavaScript instead.
  The JSME is based on the conversion of JME into JavaScript,
   has the same API, considerably extended functionality and
   runs in all browsers, touch devices and mobile phones.
  The following information about the JME applet has been retained
   for historical (and also some nostalgic) reasons.

===

  JMEエディタアプレットの開発が中止されました。
  代わりにJavaScriptでJSME分子エディタを試してみてください。
  JSMEはJMEのJavaScriptへの変換に基づいており、
   同じAPIを持ち、機能が大幅に拡張され、
   すべてのブラウザ、タッチデバイス、携帯電話で実行されます。
  JMEアプレットに関する以下の情報は、歴史的な(そして
   いくつかのノスタルジックな)理由のために保持されています。

とあった。


これは、

正に、
4年前(2014-01-17)の記事「Jmol から JSmol」と同様???


JaveからJavaScriptへの流れかナ???


JSME Molecule Editor
も少々学習かナ?



本日はここまで。


Anaconda ( Python ) 学習? 化学系の学習も続く???


見ていただいた序でとは厚かましい限りですが、
お帰りに投票して頂けるとなお嬉しいです。 ⇒ blogram投票ボタン


180506

Anaconda 学習:PyGSL パッケージ

2018-07-13 :  PCクリニック
以前(2018-07-04)の記事:
Anaconda 学習:Gohlkeさんのサイトから
で、
8つのパッケージをピックアップした。

今回は、

  Other useful packages and app… not currently available ・・・

に載っていた、

 ・PyGSL ・・・ interface for the GNU Scientific Library (GSL).

について。


リンク:Pygsl
先を見に行った:

  pygsl

  This project provides a python interface for
  the GNU scientific library (gsl).

  Please look out for our site at sourceforge.
  Detailed information are available in the README file
   that comes with the source distribution.
  See what's going on in the News section.
  Support requests and all other questions should be directed to
  pygsl-discuss@lists.sourceforge.net.

===

  このプロジェクトは、GNU科学ライブラリ(gsl)用の
  Pythonインタフェースを提供します。

  私たちのサイトをsourceforgeで見てください。
  詳細情報は、ソース配布に付属のREADMEファイルにあります。
  ニュースセクションで何が起こっているのか見てみましょう。
  サポートリクエストとその他の質問はすべて
  ・・・URL・・・に送付してください。


と云うことで、
our site at sourceforge
に飛んだ。

「Files」タブでは、

 ・pygsl  2017-10-07

 ・pyool  2006-05-22

とあるので、

pygsl
へ。

  最新版:

  ・pygsl-2.3.0  2017-10-09

では、
実質:pygsl-2.3.0.win-amd64-py3.6.msi
のみ。


一方、Python 2 版があるのは、

  最も古い版:

  ・pygsl-0.9.3  2008-07-10


pygsl-0.9.3_numpy.win32-py2.5.exe
しか無い?


<紙>が欲しいのは、
Python 2.7 版で、Windows 版で、64bit 版
そして、GSL では、2.0 以降の新しいもの。


そうすると、

(1)PyGSL は諦めて、GSL を直に使う。
   でも、GSL は、1.9 版(?)と古い。

(2)Python 3.6 に乗り換える。
   これなら、64ビット版で、GSL も 2.3 版と新しい。

の二者択一???



本日はここまで。


Anaconda ( Python ) 学習は続く。


見ていただいた序でとは厚かましい限りですが、
お帰りに投票して頂けるとなお嬉しいです。 ⇒ blogram投票ボタン


180504

Anaconda 学習:RDKit パッケージ

2018-07-11 :  理科部 部活
かれこれ3年前(2015-10-15)に、
Python 学習:RDKit パッケージ」を書いている。


今年(2018-01-08)になって、Anaconda2_x64 本格導入
したので、
RDKitを導入し、追加確認を行った。


conda では、
rdkit / packages / rdkit 2018.03.2.0
に、

  Home:RDKit: Open-Source Cheminformatics Software

  win-64  v2018.03.2.0

  To install this package with conda run one of the following:
   conda install -c rdkit rdkit
   conda install -c rdkit/label/attic rdkit
   conda install -c rdkit/label/beta rdkit
   conda install -c rdkit/label/testing rdkit

と4通りある。


1番目のコマンドで導入。

8ヶダウンロードし、
4ヶ新規インストールされた。(計71.3MB)
    boost、 cairo、 pixman、 rdkit
残りの4ヶは更新。
    conda:4.5.0→4.5.1、 oepnssl、 certifi、 ca-certificates

conda list
では、合計 260 ヶになった。


The RDKit Documentation
と、その中の
Getting Started with the RDKit in Python
をブックマークした。


Getting Startedでは、

以下の記述が参考になる。

  Working with 3D Molecules
  The RDKit can generate conformations for molecules using
  two different methods.
  The original method used distance geometry. [1]
   The algorithm followed is:

  1.The molecule's distance bounds matrix is calculated
    based on the connection table and a set of rules.
  2.The bounds matrix is smoothed using a triangle-bounds
    smoothing algorithm.
  3.A random distance matrix that satisfies
    the bounds matrix is generated.
  4.This distance matrix is embedded in 3D dimensions
    (producing coordinates for each atom).
  5.The resulting coordinates are cleaned up somewhat
    using a crude force field and the bounds matrix.

  Note that the conformations that result from this procedure
  tend to be fairly ugly.
  They should be cleaned up using a force field.
  This can be done within the RDKit using its implementation of
  the Universal Force Field (UFF). [2]

===

  3D分子を使った作業
  RDKitは、2つの異なる方法を用いて分子の立体配座を
  生成することができる。
  元の方法では距離ジオメトリを使用しました。 [1]
  続くアルゴリズムは次のとおりです。

  1.分子の距離境界マトリックスは、接続テーブルと一連のルールに
    基づいて計算されます。
  2.境界行列は、三角形境界平滑化アルゴリズムを使用して平滑化される。
  3.境界行列を満たすランダム距離行列を生成する。
  4.この距離行列は3D次元に埋め込まれている(各原子の座標を生成する)。
  5.結果の座標は、粗力場と境界マトリックスを使用して
    いくらか消去されます。

  この手順から生じる立体配座はかなり醜い傾向にあることに
  注意してください。
  彼らは強制フィールドを使用してクリーンアップする必要があります。
  これは、ユニバーサルフォースフィールド(UFF)の実装を使用して
  RDKit内で実行できます。 [2]

で、
備忘録要約は、

1.入出力可能なファイル形式は、「mol」「pdb」「smile」「InChI」

from rdkit import Chem

m = Chem.MolFromMolFile( 'hoge.mol' ) # 「.mol」ファイルを読み込む
Chem.MolToMolBlock( m, FileName ) # 「.mol」形式に変換?

OT = open( 'out.mol','w')
print >>OT, Chem.MolToMolBlock(m) # ファイル出力
OT.close()
但し、
結合情報が未定義ではダメ?


2.構造最適化するには:
from rdkit.Chem import AllChem

# m は、上記のサンプルコード相当
m2 = Chem.AddHs( m ) # 水素付加
AllChem.EmbedMolecule( m2 ) # 3D化
AllChem.MMFFOptimizeMolecule( m2 ) # 構造最適化:MMFFで
# AllChem.UFFOptimizeMolecule( m2 ) # 構造最適化:UFFで
留意点:
・水素原子の定義は、無くて良い。と云うか有っても無視される。
 “水素付加”処理が必要。
・“3D化”処理も必要。
・原子間結合は、正しく定義されていないとダメ?
 例えば、Na では丁度1本必要。


「Na-Cl」では、UFFであっても、
2.39874 オングストロームであるべき(?)ところ、
2.82 オングストロームとなった!?!



本日はここまで。


Anaconda ( Python ) 学習は続く。


見ていただいた序でとは厚かましい限りですが、
お帰りに投票して頂けるとなお嬉しいです。 ⇒ blogram投票ボタン


180421

Anaconda 学習:XML2Dict

2018-07-09 :  PCクリニック
前々回(2018-07-04)の記事:
Anaconda 学習:Gohlkeさんのサイトから
で、
8つのパッケージをピックアップした。

今回は、

その他もろもろ(?)Miscジャンルの

 ・XML2Dict-0.2.2-py2.py3-none-any.whl

について調べた。


Anaconda 5.0.1 : Windows 版 Python 2.7.14 ( 64bit 版 )
に、
含まれるパッケージ:「Packages for 64-bit Windows with Python 2.7
には、
載っていない。

さらに、
Anaconda Cloud
でも見つからない。



それで、
「XML2Dict」とWeb検索したら、
XML2Dict - PyPI
が見つかった。

  XML2Dict 0.2.2

  pip install XML2Dict


  Convert between XML String and Python Dict
===
  XML文字列とPython Dictの間の変換


  XML2Dict is inspired from Chen Zheng's [xml2dict](URL)

だが、
ここの URL は 404 だった。



それで、
上記「XML2Dict」検索で見つかった日本語サイト:

“fujishinko 雑記帳”の
Python xml2dictを使用して、xmlをdictionaryに変換する

  Python xml2dictを使用して、xmlをdictionaryに変換する

  常山日記さんの記事からてけらぼさんで記載されている
  エントリにたどり着きました。

  ・・・・・
  ・・・・・

  xml2dictというモジュールがあるとは・・・


  今までゴソゴソとPyanaや4Suite-XMLを調べていたのは、
  DB2に保存したXML列のデータを表示するとき、xml+xsltで
  構築すればカッコイイのでは?と思っていたからです。

  サンプルも書いてみたのですが、
  ・xsltの記述がつらい。(自分が理解できていないだけですが。)
  ・pylonsを使用するつもりなので、やっぱりmakoやwebhelperが使いたい
  の理由から、躊躇してました。

  xmlを解析してhtmlを構成するよい方法が浮かばず
  どうしたもんかと悩んでいたのですが、これを使えば
  楽にmakoやwebhelperと連携できそうです。

  さっそくインストール、と思ったのですが普通のpythonモジュールで
  提供されてました。

  ・・・・・
  ・・・・・


  として、ダウンロードし

  ・・・・・
  ・・・・・


  で解凍します。

  ・・・・・
  ・・・・・


  で移動し、中身をのぞいてみると

  object_dict.py
  xml2dict.py



  という2つのファイルがありますので、これを適当な場所に
  コピーします。

  コピーしたディレクトリと同じ階層に、こんなサンプルプログラムを
  書いて実行してみました。

  ・・・・・
  ・・・・・



これは使えそうダ。

頑張って学習しよう!



本日はここまで。


Anaconda ( Python ) 学習は続く。


見ていただいた序でとは厚かましい限りですが、
お帰りに投票して頂けるとなお嬉しいです。 ⇒ blogram投票ボタン


180419
おきてがみ/blogram
blogram投票ボタン



おきてがみ

最新記事
カレンダー
09 | 2018/10 | 11
- 1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31 - - -
月別アーカイブ
カテゴリ
最新コメント
検索フォーム
リンク
プロフィール

<紙>

Author:<紙>
ようこそ。
「パソコンヲタクの雑記帳」
もろもろなことを綴っています。
パソコン ヲタクってねくら?
画像は kami でなく kani です。

カウンター(fc2、i2i) /Google Analytics


i2i(from 2010-08-24)
Total =
Today  =  
Yesterday=
アンチエイジング

Google Analytics
ブックマーク