DEXCS2015 for OpenFOAM(R) でSalome-Meca

先日(4/9)岐阜のオープンCAE勉強会にて、質問がありました。表題の環境にて、Salome-Mecaをインストール出来たものの、ジョブのSubmissionに失敗するとの事でした。

そこで、昨日のオープンCAE勉強会@広島にて、Salome-Mecaの講習会があったので、その場にてこの現象を確認、併せて以下の方法にて対処できることが判ったので、ここに記しておきます。

メニューで、Aster – Current study case – Edit を選択(下図、赤矢印部分)。

2016-04-17_0711

または、Asterモジュールを選択して、右クリックメニューからEditを選択(下図、赤矢印部分)

2016-04-17_0713そうすると、以下のパネルが現れる。
2016-04-17_0639

赤矢印部分、Interactive follow up のチェックマークを外す。⇒OKボタンを押す。

以上で、ちゃんと動くようになるはず。お試しあれ。

mixingElbow

先日(2016/3/11)のオープンCAE地方(長野)講習会での演習アイテムの一つに表題モデルの作成方法がありました。

このモデルは、OpenFOAMでは著名なサイトに紹介されているもので、FreeCADでの3Dモデル作成方法についても公開されていますが、講習で使用したDEXCS2015 for OpenFOAM®に搭載したFreeCADでは使えない機能があったので、講習会では代替方法を説明しました。

その後、DEXCSユーザーさんで困っている人がいるかもしれないかと思い、この演習部分だけですが要領を取り纏め公開しました。 ⇒ slideshare資料

ただ、その後の更なる調査によって、上述の問題はFreeCADの本質的なバグではなく、設定上の問題である事も判ってきたので、ここに対処方法を記しておきます。

設定の問題

メニューの「編集」⇒「設定」⇒標準(出力ウィンドウ)にて、

設定_494

上図、赤の矢印で示した部分にチェックマークを入れて、最下段「OK」した後、FreeCADを終了。再立ち上げすると問題は生じなくなります。

 



 

ひとりごと・・・

Python出力のレポートビューへのリダイレクトの有無によって、何で挙動が変化するのか意味不明・・・というか、やっぱバグじゃない? という気もするが、結果オーライということで。

上記の設定で対処できるとなったら、slideshare資料の公開は意味あるのかなぁ?・・・という感はありましたが、3D-CADの作成方法は必ずしもいつもベストの方法があるという訳ではないので「こういうやり方もある」の一例として公開する事としました。

 

FreeCAD FEM ワークベンチ


先の記事にて、表題の挙動が怪しいと記しましたが、その後の調査で依然不明点はいくつかあるものの、ある程度使えそうと判断するに至ったので、新たに判明した点と併せて、ここにまとめておきます。

計算例

とりあえず、このくらいの計算は、ちゃちゃっと出来そうです。

範囲を選択_101

同じ題材(パンテオン神殿)を使って、Salome-MecaとAdventureを比較した約4年前の記事がありましたが、あれらに比べて遜色ないというか、GUI操作は格段に楽チンです。いくつか課題もありますけどね・・・

Verの問題

このFEMワークベンチは、まだまだ開発途上のようです。件の書籍では、現時点の正式版(Ver-0.15)をベースの記事でしたが、簡単なモデルならともかく、上記例題のレベルになると、簡単に昇天してしまいます。⇒Pre-release版の使用を強く推奨します。本記事で使用したヴァージョンは以下の通りです。

Windows版、Linux-Mint版ともに 0.16-6420 (2016/2/12)

Mac版については検証していません(出来ません)ので悪しからず。

Linuxにおける問題

Linux版は、拙作のDEXCS2015 for OpenFOAM(R)の仮想マシンにて検証していますが、上記ヴァージョンの問題以前に、Calculixを自前でインストールする必要がある事が判明。当初、先達の経験談を聞いたり、自分でもCalculixのインストールガイドを読んで・・・諦めかけていたのですが、FreeCADのFEM Install というページがあって、Ubuntu系であればパッケージインストールも出来る事が判って即採用⇒OKでした。
コマンド端末にて、

sudo apt-get update

sudo apt-get install ccx

sudo apt-get install freecad

と入力すれば一発OKなんですが、あくまでコマンド入力は駄目!という人向け、GUI(パッケージマネージャ)を使ってやる方法は、こちらを参照。

また、DEXCS2014 (ubuntu 14.04 LTS)をお使いの場合には、

sudo add-apt-repository ppa:freecad-maintainers/freecad-daily

と、レポジトリを追加する必要があります。

 

使い物になる!と思った点

CAE教育を主用途として開発し、拙が共著「はじめてのオープンCAE」に同梱の「DEXCS2010 for Adventure」がありまして、本格的なCAE(弾性解析だけですが・・・)を簡単に使えるという意味で、これまでこれを超えるものは存在しないと自負しておりましたが、本ツールを使えばもっと簡単に出来そうです。特に優れていると感じた箇所は2点。

  1. 境界条件設定が楽チン
  2. 固有値解析も出来る

特に拘束面を指定する操作は、CADモデルを直接対象として、Faceレベルで区分けが出来てさえいれば、ほとんどストレスなく操作できます。強いて言えば、さすがに広い範囲の面を指定すると、負荷になる(待ち時間が長くなる)ようなので、複数面指定の際には、広い大きな面は一番最後に指定する事くらいでしょうか。

また、固有値の計算結果例を以下に掲載しておきます。

範囲を選択_102

 

 

ざっくりとした操作手順

まずは形状データ(入手先はこちら)のインポート。

範囲を選択_078

ワークベンチを切り換えます

範囲を選択_079

モデル②を選択して「解析ケース作成」ボタン③Fem Analysis.svgを押します

範囲を選択_080

デフォルトのままでもメッシュ作成は可能ですが、本例の場合は、①2次要素のチェックマークを外し、②をデフォルトの「中程度」から「細かい」レベルに変更しました(理由は後述)。

範囲を選択_081

約5分ほど待って、メッシュ完成です。

範囲を選択_082

問題なければ「OK」ボタンを押します。

範囲を選択_083

次に、「拘束面作成」ボタンFem ConstraintFixed.svgを押して拘束面を設定します。

範囲を選択_084

3D画面上でマウスを移動すると、選択候補面がベージュ色に変わるので、固定したい拘束面が選択できたらクリック。⇒選択済の部分は赤いピンのようなマークが付与されます。場所を変えて、続いてクリックしていくだけで複数箇所を設定できます。

範囲を選択_085

全部選択できたら、「OK」ボタンを押して完了。この場合は、パンテオン神殿の接地面をすべて固定拘束しています。

範囲を選択_086

続いて、「荷重設定ボタン」Fem ConstraintForce.svgを押して、設定メニューを起動します。

範囲を選択_087

拘束の場合の時と同様ですが、複数面に設定したい場合は、その都度「参照を追加」ボタン①を押す必要があります。また荷重方向は、「方向」ボタン③を押してから、3D画面上で方向に相応するエッジを選択します。

設定が終わったら、「OK」ボタン④を押して完了。

範囲を選択_088

最後に、「材質設定」ボタンFem Material.svgを押して、材料定数の設定メニューを起動します。

範囲を選択_089

「素材」のプルダウンメニューにて・・・

範囲を選択_090

下の図はLinux版の場合。Windows版では、こんなに多くない。

範囲を選択_092

下図には直接見えていませんが、縦スクロールバーにて、最下部にヤング率、ポアソン比、材料密度の具体的な値を確認でき、直接変更も可能です。⇒問題なければ「OK」ボタンを押す。

範囲を選択_093

以上で、解析条件が全て整ったので、「計算実行」ボタンFem NewAnalysis.svgを押します。

範囲を選択_094

まずは「Write .inp file」のボタンを押して、Calculix計算用の入力ファイルを作成します。

範囲を選択_095

入力ファイルが出来上がると、「Edit .inp file」「Calcuilx を実行」ボタンが使えるようになります。

範囲を選択_096

「Calcuilx を実行」ボタンを押した後、この問題では約1分後、計算終了で、下記のようなメッセージが出力されます。

範囲を選択_097

「Close」ボタンを押す。

範囲を選択_098

最後に、「結果表示」ボタンFem Result.svgを押して、計算結果を可視化します。

範囲を選択_099

表示したい変数(変位または応力)を選択するだけです。

範囲を選択_100

 

 

FEMツールバー

FreeCADのヴァージョンアップに伴って、FEMツールバーも大きく変わりました。

  • Ver-0.15

範囲を選択_103

  • Ver-0.16

範囲を選択_104

追加されたボタンは、いくつかありますが、

  • Fem ConstraintPressure.png 圧力を設定
  • 範囲を選択_105 強制変位を設定

あたりは、すぐにでも使えそうなボタン。但し、強制変位指定は少し怪しい。

その他、

  • Fem BeamSection.svgビーム要素設定
  • Fem ShellThickness.svgシェル要素設定

や、また、従前からの謎のツールボタン

  • Fem ConstraintBearing.svgベアリング拘束
  • Fem ConstraintGear.svgギア拘束
  • Fem ConstraintPulley.svgプーリー拘束

などあって、どうやって使うのか・・・今後の調査がお楽しみ・・・です。

 

とは言え、

課題もいくつか

ありそうなので、以下に記しておきます。

  • 計算結果の再読み込みは出来るのか?

計算の終わったモデルをファイル保存して、FreeCADを終了。FreeCADを再立ちあげして上記モデルを読み込むと・・・メッシュや拘束条件、結果はモデルツリー上に残っているが、FEMツールバーが有効にならず、結果を表示出来ない?!

範囲を選択_106

MexhanicalAnalysisのタグを選択してマウス右クリックすると・・・

範囲を選択_107

Activate analysis がありました! ⇒ これにて結果表示がOKとなります。

  • メッシュ作成ダイヤログの疑問

メッシュ作成ダイヤログはデフォルトで、

範囲を選択_109

通常は、上部の3項目(最大サイズの指定、2次精度のチェック有無、細かさ指定)で事足りる。ただNetgenを使った経験上、細かさの程度に応じて、見え消しになっている「増加率」や「・・・セグメント数」が変わったという記憶なんだが、これらの数字が、細かさの程度を変更しても変化しない。メッシュそのものは確かに変わっているので、この数字が連動していないということのようだ。

「細かさ」をユーザー定義にすれば、これらの数字を直接変更できるので、問題があるということではないのだが・・・

範囲を選択_110

  • メッシュ作成の成功/不成功問題

ここに取り上げたパンテオンの問題では、メッシュパラメタによっては、メッシュが出来なくて先へ進めない場合もあれば、メッシュは出来たものの、いざ計算実行するとエラーで止まるという状況もあった。問題は後者で、エラーメッセージは以下のようなもの。

*ERROR in e_c3d: nonpositive jacobian determinant in element 132183

これって、メッシュを作成した時点で検出できないのかしらん?・・・と思ってはみたものの、根っ子は深そうで、FreeCADのフォーラムでも何かと話題になっているようです。⇒解決策があるのかないのか?・・・自分の英語力では理解不能でした。

  • 拘束や荷重条件の表示問題

拘束面には赤い画鋲のようなマーク、荷重面には赤い矢印マークが表示されるが、そのサイズが解析モデルの大きさに対して、なんともアンバランス。

解析モデルとして角柱の片持ち梁を想定、角柱のサイズを変えたらどうなるかを比較表示してみた。

範囲を選択_111

範囲を選択_114

範囲を選択_115

角柱の長さとして、上から順に10,100,1000 mmと変えてみた。

拘束や荷重マークのサイズが一定の大きさになっているわけではないようだが・・・お粗末ですね。

もっともこれらは、Ver-0.15の場合。最新版(Ver-0.16)ではもう少し改善されて、

範囲を選択_112

範囲を選択_113範囲を選択_116

という状況。3つのサイズの順番はVer-0.15で比較したのと同じ。

なんとか、許容レベル・・・かな?

 

パッケージマネージャの使い方

Synapticパッケージマネージャを起動します。

範囲を選択_064

①再読み込みしてから、「ccx」にて②クイック検索し、表示されたccxを③選択、マウスボタンを右クリックで、④インストール指定を選択。

範囲を選択_072

関連パッケージも併せて追加

範囲を選択_073

「適用」ボタンを押す

範囲を選択_074

範囲を選択_075

範囲を選択_076

ccxが緑色になってくれれば、めでたくインストール完了。

範囲を選択_077

また、DEXCS2015 for OpenFOAM(R)に搭載したFreeCADもそのままではヴァージョンが古くて使い物になりません。これもパッケージの最新版を再インストールが可能でした。

範囲を選択_067

何故か、「再インストール指定」のメニューは有効になってくれなかったので、まずは「削除指定」です。

範囲を選択_068

削除出来たら、今度は「インストール指定」

範囲を選択_069

範囲を選択_070

範囲を選択_071

FreeCADの起動はこれまで通り

範囲を選択_065

ヴァージョンの確認

範囲を選択_066

 

Customized FreeCAD for DEXCS

オープンCAEの世界では3D-CADとして定番のFreeCAD。この日本語解説本が出たので早速購入。
拙作DEXCS for OpenFOAM(R)の中でもFreeCADを使わせてもらっていますが、これまでは行きあたりばったりのカスタマイズ。本書を読んでカスタマイズの全般的な仕組みが判ってきたので、次期DEXCS2016では、もうちょっとスマートなカスタマイズ構想が芽生えてきました。

FreeCAD起動画面

範囲を選択_002

上図、右上赤枠部分がDEXCS用にカスタマイズしたメニューボタンです。

DEXCSで想定している解析シーンでは、3次元の形状モデル(3D-CADモデル)は、

  • 簡単なモデル(上図の2つの直方体ブロックなど)はFreeCAD上で作成
  • 上図のDexcsフォントモデルのような複雑なモデルは、ユーザーが使い慣れた3D-CADツールで作成し、STLまたはstep形式でエクスポートしたファイルをFreeCADにインポートする(step形式がベター)

としています。つまり、上図が典型的な形状モデルということになります。

DEXCS上でカスタマイズされたFreeCADでは、こうして作成された形状データに対して、下記の作業を支援出来るようにしています。

  • 解析用に面の区分け、名前付け(変更)を実施
  • メッシュ(cfMesh)作成用の設定ファイル(*.fms, meshDict)を自動作成

つまり、上図赤枠部のメニューボタンを使って、上記の作業が、以下のように簡単に出来てしまうということです。

 



 

面の分割

分割したいパーツ(windTunnel)を選択して、赤枠部の「ダウングレード」ボタンを押す。

範囲を選択_005

下図のように、6つのFaceに分割される。

範囲を選択_006

 

境界面の再構築

inlet, outlet は個別に名前変更。

範囲を選択_003

残りの4面をまとめて選択して、赤枠部「和集合作成」ボタンを押す。

範囲を選択_007

4つの面が一つのパーツ(fusion)になったので、この名前を変更し、見易くすべく色合いや透明度を変更して、下図のように解析モデルの完成です。

解析モデルの完成

範囲を選択_010

cfMesh用パラメタファイルの作成

赤枠部のボタンを押せば、一発で拙作のマクロが起動します(マクロの使い方はこちらを参照下さい)。

範囲を選択_011

ちなみにこれまでは、下図に示すように3アクション必要でした。

範囲を選択_012

マクロの名前なんて、、、説明するのも面倒でしたね^^;

 

また、面の区分けに使う「ダウングレード」や、再構築における「和集合作成」は、FreeCAD本来の機能で、これらを使うのにワークベンチを切り替えたりする必要があったのを1箇所のツールバーにまとめたというに過ぎません。それでもこうやって使えるようになってみると存外に便利なので・・・乞うご期待です。

 

ただ、やっぱりFreeCADはまだまだ開発途上のツールなんだな・・・と思わざる得ない面も多々ありますけどね。たとえば、、、

スタートアップ画面の問題

FreeCADには様々なワークベンチがあって、その機能をほとんど使えるのがCompleteワークベンチなのですが、正直ボタンがいっぱい有り過ぎてウザイ。またレイアウトが美しくない。

DEXCS用のカスタマイズでは、これまで下図のようなStartワークベンチにしていましたが、これにすると、、、

範囲を選択_013

右上赤枠部のツールボタンの中で、「ダウングレード」ボタンが表示されなくなってしまいます。

実は、この後で、Completeなり、Draftワークベンチに切り替えて、再度Startワークベンチに切り替えると、、、

範囲を選択_015

となるんですが、これじゃあねぇ・・・

FEMワークベンチ(応力解析機能)

これはFreeCADの日本語解説本を読んで初めて知ったんですが、Calculixという「FEMソルバー」が搭載されているとか。

この検証もやってみましたが、何かと挙動がおかしかったですねぇ。これに関してはまた別レポートします。

 



bubbleColumn Variations in OpenFOAM-3.0.0/tutorials

先日の第45回オープンCAE勉強会@関西に発表したものですが、発表資料と、発表動画が公開されましたので、ここにもアナウンスしておきます。

範囲を選択_999(443)



 

公開した発表資料はslideshareにアップしたものですが、今回初めての試みとして、YouTube動画も閲覧できるようにしてあります。

当日の発表も、本当はこの資料を使ってやっておれば、もうちょっとテキパキと説明できていたんですが、間に合いませんでした。発表動画の中で使っている資料とは異なる部分が多々あることをお断りしておきます。