Jupyter Lab で Intel Fortran
先日、Jupyter Lab でエラーメッセージの情報を拾うことで Fortran の分割コンパイルができることが分かりました。 fortran66.hatenablog.com
カーネルを覗いて見ますと、少しいじれば、無理に実行するエラーなしで、自分の指定した名前で module のオブジェクトを作れそうだったので、週末の徒然に Python 分からないくせに、色々いじくってみました。またついでにコンパイラを intel fortran に変えてみました。
設定ファイルの類も、名前を連動して変えなければならないようで、エラーが出るたびにいじくっていたら、何となく出来ました。いじりが適当過ぎて、どこをいじったか分かんなくなってしまって好ましくないですw もう少し整理してみるつもりです。GitHub は使い方が謎過ぎて、zip で落として git で経過保存せずにいじってしまいましたw
なお WSL 上では intel fortran の coarray 利用プログラムは、コンパイルは出来ましたが、実行はエラーが出てうまくゆきませんでした。
実行例 1
10n (n=1..8) 以下の素数の個数を求めて、素数定理の見積もり と比較します。
素数の数は、ちゃんと書いた fortran プログラムで求めますが、Module と それを利用するメインプログラムは、別々に分割(分離)コンパイルします。
素数定理による見積もりは、Fortran の暗黙の型宣言を利用して、スクリプト的に書きなぐった Fortran プログラムで計算します。
出てきた結果を、Python のノートブックにコピペして、手動でリストに突っ込んで図示してみます。
図は重なり合って、ほとんど違いが分かりません。よい近似になっているようです。
- 作者: Michael Metcalf,John Reid,Malcolm Cohen
- 出版社/メーカー: Oxford Univ Pr
- 発売日: 2018/11/06
- メディア: ハードカバー
- この商品を含むブログを見る
実行例2
TVアニメ「だがしかし」エンディング主題歌 「Hey!カロリーQueen」(初回限定盤)(DVD付)
- アーティスト: 竹達彩奈
- 出版社/メーカー: ポニーキャニオン
- 発売日: 2016/01/27
- メディア: CD
- この商品を含むブログ (7件) を見る
元の Fortran 用カーネルは、テンポラリファイルの消去処理に問題があったので、元祖の C 用のカーネルを見て、丸写しで修正しました。いずれにせよカーネルを正常に終了させないと、テンポラリ・ディレクトリにゴミがどんどんたまってゆきます。
Fortran の module は、オブジェクトファイルの他に、インターフェースを .mod ファイルとして出力するので、再利用を考え、これらは Jupyter 起動ディレクトリに作るようにしてみました。この辺は、深く考えていません。
インデントがずれただけなのにエラー吐きまくりで、蛇マジむかつくw
ねんどろいど 邪神ちゃんドロップキック 邪神ちゃん ノンスケール ABS&PVC製 塗装済み可動フィギュア
- 出版社/メーカー: グッドスマイルカンパニー(GOOD SMILE COMPANY)
- 発売日: 2019/02/28
- メディア: おもちゃ&ホビー
- この商品を含むブログ (1件) を見る
邪神ちゃんドロップキック 邪神ちゃん 全高約135mm PVC製 塗装済み 完成品 フィギュア
- 出版社/メーカー: ベルファイン(BellFine)
- 発売日: 2018/09/30
- メディア: おもちゃ&ホビー
- この商品を含むブログ (1件) を見る