DALAB情報発信用ブログ:OpenCAE+GPGPU+Peridynamics編

DALABで行っている研究活動の中で、OpenCAEやGPGPUや破壊解析の取り組みについてまとめてゆきます。

DEXCS2012-Salomeの有効活用:骨組解析OpenSeesの導入手順(1)

2013年07月05日 11時50分23秒 | OpenCAE活用
DEXCS-Salomeを利用する人は、多くが機械系CAEの利用者だと思うのですが、今後は建設系CAEも展開することを期待して、建築物などの骨組構造の地震応答解析を実現するOpenSeesの導入方法をまとめます。
実は以前にWindows版バイナリを用いてRC梁の弾塑性解析の検証を行ったことがあり、その時の情報を以下にまとめています。今回は研究開発での大規模高精度解析への展開を狙って、Ubuntu上でのソースコンパイルに挑戦してみます。
http://opencae.gifu-nct.ac.jp/pukiwiki/index.php

まず今回導入する骨組解析OpenSeesの公式サイトを以下に示します。並列処理による大規模解析や高度な構造工学問題への対応などが展開しており、継続的な研究開発が行われています。ちなみにバイナリのダウンロードではユーザー登録が必要ですが、ソースの入手は不要のようです。
http://opensees.berkeley.edu/
実はこの手順については、以下の資料を参考にしています。ここではUbuntuだけでなく、CentOSでの情報もまとめられています。後で調べると、OpennSeesは、相当に多様な環境で構築や動作が出来るようです。お手軽にWindowsでバイナリですぐに動作させることも出来るわけです。
http://y.dyndns.org/OpenCAE/index.php?OpenSees

ベースはDEXCS2012-Salome-D1-B1-64を用います。通常の手順で、DEXCS-Salomeを準備したら、ネットワークを有効にして、システムのアップデートを済ませておきます。もし以前に他のシステムの追加の構築などを行っている場合、以下の手順の中で不要な部分があると思います。

■ ソースプログラムの入手

ここでは、OpenSeesのソースプログラムを、subversionと言うソース管理システムを用いて入手します。そこで、アプリケーション→システムツール→システム管理→Synapticパッケージマネージャを利用します。最初に利用者のパスワードを入力して起動したら、左上の再読込を押してパッケージ情報を最新にします。以下の条件でインストールします。
検索:subversion インストール指定:subversion 適用:15個の新規パッケージを導入

アプリケーション→アクセサリから端末を起動して、ソースプログラムの入手作業を以下の手順で進めます。ここでは、ホームディレクトリにOpenSeesディレクトリを作って、そこにソースプログラムを保存します。
$ cd ~
$ svn co svn://opensees.berkeley.edu/usr/local/svn/OpenSees/trunk OpenSees

暫く待って、「…チェックアウトしました」と表示されたら終了です。中身を確認してみます。
$ cd ~/OpenSees; ls

先ずはREADMEを読んでみますが、要約すると以下の通りです。
・Makefileが、UNIX系システムにおいてmakeの設定になる
・この詳細な設定は、Makefile.defに指定することが必要
・なおインストールには、事前にTcl/Tkが必要であること
(多分多くのLinuxでは入っている。このUbuntuもそう)
・実際にmakeするまえに、~/bin, ~/libを作っておくこと
(ここでは$(HOME)として~(/home/dexcs)を設定してる)
・MAKEの中にMakefile.defの色々な例があるので選択する

それで、MAKEの中身を確認してみます。
$ cd MAKES; ls
色々あるのですが、今回のUbuntuに関連ありそうで、詳しい説明のあるMakefile.def.EC2-UBUNTUを用いることにするので、以下の様に、インストール用ディレクトリ~/OpenSeesにコピーします。
$ cp Makefile.def.EC2-UBUNTU ../Makefile.def

■ インストールの準備

まず忘れないうちに、先のREADMEにある準備をしておきます。このインストールの前提は以下の通りです。
インストールは、ユーザーのホームディレクトリ:/home/dexcs (~) → これをHOMEに設定する
ホームディレクトリのインストール先:~/bin  ホームディレクトリのライブラリ用:~/lib
$ cd ~
$ mkdir bin lib

構築環境の準備で、先に用意したMakefile.defを確認します。
$ cd ~/OpenSees
$ vi Makefile.def (任意のエディタで確認する)

まず、OpenSees, bin, libのあるディレクトリ(ホーム)を指定します。
HOME  = /home/dexcs (自分のホームディレクトリは、$ cd;pwdで確認)

次に、構築の前提となるツールを確認すると、初めの方で、apt-getで導入するツールが列挙されています。この中で追加が必要となるのはなくて、DEXCS2012-Salomeでは既に導入してあります。
※gcc,g++,gfortranなどの確認追記※

■ コンパイルの実行

準備が出来たので、実際にmakeでコンパイルを実行します。
$ cd ~/OpenSees
$ make
始めにライブラリを構築して、~/libに保存してから、コンパイルが進みます。結構な時間がかかるので待ちます。警告が沢山出ますが、取り敢えず気にしません。

エラーが表示されずに、「LIBRARIES BUILT ... NOW LINKING OpenSees PROGRAM」のメッセージが出たら、コンパイルは成功しています。作成された実行形式を確認します。「OpenSees」が完成しています。
$ cd ~/bin; ls

■ OpenSeesの動作の確認

骨組解析システムのOpenSeesは、建築物の地震応答の数値解析を目的に開発されており、非常に多彩で高度な機能を持っていますが、ここではインストール用のソースファイルの中にある簡単な例題を用いて、動作検証を行います。例題を確認します。
$ cd ~/OpenSees/EXAMPLES; ls

色々あるのですが、難しいものばかりなので、取り敢えずの動作確認を、verrificationにあるPlanarTruss.tclを用いて行います。OpenSeesの作業用ディレクトリOpenSeesWorkを作って準備します。
$ cd ~
$ mkdir OpenSeesWork
$ cd OpenSeesWork
$ cp ~/OpenSees/EXAMPLES/verification/PlanarTruss.tcl .

現時点では検証としてPATHは設定せずに、直接に実行してみます。
$ ~/bin/OpenSees PlanarTruss.tcl

直接に解析結果が表示されて、「PASSED Verification Test PlanarTruss.tcl 」として実行が終了します。具体的な例題の意味な活用については、また続きで…

最新の画像もっと見る

コメントを投稿

ブログ作成者から承認されるまでコメントは反映されません。