明後日の方向にただ全力スマートフォン用の表示で見る明後日の方向にただ全力この広告は、90日以上更新していないブログに表示しています。codeに徐々に移行していきます。インストールして、特に何か難しい操作もなく直感的にいろいろ遊べそう。Latex設定は少し手間取った。下のまとめで全て解決したけど。v2を使ってきたけど、特に人と共有して作業することもないので、オフラインでこっちで作業することにしても問題なさそう。codeに移行Tweet広告を非表示にするもっと読むコメントを書く2018-09-06Qiitaに移行することにしましたちょっと前までQiitaはニッチな情報系のエンジニア向けのサービスでしたが、最近は科学技術計算のエンジニアも結構Qiitaにいてて,まじめにFEMやマルチボディダイナミクスの定式化を紹介してたりします。自分もQiitaに移ろうと思います。練習がてら、すげー短い記事を書いてみました。qiita.comコードの埋め込みも簡単そうだし、数式も書けそうだし、悪くなさそうです。12:47Qiitaに移行することにしましたTweet広告を非表示にするもっと読むコメントを書く2017-05-14netcdfのインストール(C,C++,Fortran)netcdfは、日本のスパコンには標準装備でインストールされているようだ。汎用的なデータ保存用フォーマットとして便利そうなので、手元の環境にインストールした。configureのオプションだけまとめる。C版が基本になっており、C++とFortran版はC板のラッピングとなっている。checkが中々通らず苦労した。--disable-fortran-type-check何回かコンパイルに失敗し、ダメ元でフォルダを一度消して、tarファイルの解凍からやり直したらうまくいった。distcleanなどは行っていたのだが、何やらゴミが残っていたらしい。16:48netcdfのインストール(C,C++,Fortran)Tweet広告を非表示にするもっと読むコメントを書く2017-05-02Ubuntu16.04へのVTK7.1のインストール言わずと知れた可視化ライブラリVTKであるが、その機能はフリーソフトparaviewにより簡単にGUIで使用することができる。物好きでもない限りわざわざVTKを触る必要もない...と思っていた。paraviewを使用した単純作業を最低でも数百回やることになったら話は別である。最初はparaviewのpythonスクリプトでのり切ろうかと思ったが、どうもいろいろ制約が生じて面倒な予感。保険のつもりでVTKの最新版をインストールした。面倒なので、やった作業だけまとめておく。libncurses-devのインストール(apt-getでよい)cmakeの最新版のインストール(ソースコードから)端末を再起動させ、cmakeとccmakeのバージョンが一致している(3.8.0以上)であることを確認する。Libraryでの大規模疎行列の直接解法<実践>MKLは普通にLAPACKが使えるのだが、なぜか直接解法ソルバであるPARDISOがデフォルトで使用できる。inの削減(metisを使用している?)が行われている。数十万次元くらいの定常解析なら十分実用可能ではないかと期待している。PARDISOは下記の公式ページにマニュアルがおいてある。サンプルコードを見ればサブルーチンpardisoの使い方がわかるはず。Projectサブルーチンの引数などは下記をみればだいたいわかるので、正直余裕すぎて書くことがない...と、思っていたが、なぜかプログラムが動かない。サンプルコードは動くが、それをモジュール化して自分のコードに組み込むとセグメンテーション違反が生じる。仕方ないので調べたところ、/opt/intel/mkl/exampleにpardisoのサンプルコードが入っているらしい。iSUS確認したところ、公式のサンプルコードと内容が微妙に違う!頭を抱えつつMKLのサンプルを自分のコードにコピペして実行すると、正常に動作することを確認。MKLのバージョンは2016だけど、PARDISOのバージョンは多少古いのかもしれない。Libraryでの大規模疎行列の直接解法<動機>そこらの教科書による独学で力学分野における数値計算を学び、プログラム実装を行う場合、悲しいことに、連立方程式のソルバの検討に一番時間を食う。非定常反復法(CG法ベース)という流れになるのではないだろうか。日本語の教科書にはそのように書かれているし。計算対象が大規模になるにつれ、直接法より反復法、それもCGベースの非定常反復法が持て囃されていく。CGベースの方法は対角成分は他より相対的に小さい場合には、まー収束しない。ひどい場合は発散する。ただでさえ複雑な定式化、実装を抱えて疲弊しているのに。そんな理由から、数値計算として十分研究レベルになりうるレベルの計算を行う場合、普通の非定常反復法のさらにその先がほしくなる。その一番手っ取り早い方法がLU分解ベースの直接解法である。古くはスカイライン法やウェーブフロント法などがあるが、並列化効率のよいマルチフロンタル法が提案・実装されはじめ、欧米発のライブラリが結構世に出ている。libraryに付属しているPardisoも大規模疎行列の直接解法ソルバーである。ここではその使用方法を備忘録としてまとめておきたい。ま、マニュアルが相当充実してるので、その必要もないかもしれないけど...。理研のソフトウェアFXgenをUbuntuにインストールした。いえ、すでに実行ファイルが配布されているので特に難しくはない。2つほど動的ライブラリが見つからないと怒られたので、下記で対応した。libjpeg62解析のメインコードは自分で書きたくなるのが人情だけど、この手の便利な前処理のソフトは積極的に人に頼っていきたい。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。