有限要素法のフリーのソフトウエア を試す

CAEで使われるフリーの有限要素法(FEM)ソフトウエアであるCalculixやOpenfoamを使ってみようとチャレンジしてたその足跡を残す。。。ついでに他のフリーソフトや商用ソフトの無償版にも手を出してみる。

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
  1. --/--/--(--) --:--:--|
  2. スポンサー広告

CalculiX Getting Startedでの境界条件設定

今回は、境界条件設定。

その前に、前回までサーフェイスに色がつかなかったのだが、パソコンを変えたら色がつくようになった。
(ビデオカードとOpenGLの相性の関係か???)

さて、境界条件を設定する節点のセットを作成するわけだが、
qadd→r→rでカーソールを大きくして、z=0の点を一挙に選択、としたわけだが、何故か一個しか選択されない。(-_-;

仕方がないので、一個一個選択する。

マニュアルでは、3通りの節点のセットを作成している。

次に荷重領域の選択。

分布荷重を設定するため、y=0の面を選択

要素の面ごとに選択するのだが、これを選択するのが慣れるまではなかなか難しい。

選択完了。

load-area

クリックすると大きくなります

最後にsendというコマンドを使って、メッシュや境界条件情報などをファイルに書き出す。

いろいろオプション指定があるが、詳しいことは後で調べるとして、まずはマニュアルどおりにやってみる。

これでcgxでの作業は完了。

次は、計算を行う方法です。


にほんブログ村 科学ブログ 技術・工学へ



[CalculiX Getting Startedでの境界条件設定]の続きを読む
スポンサーサイト

テーマ:自然科学 - ジャンル:学問・文化・芸術

  1. 2008/05/01(木) 00:38:12|
  2. Calculix 紹介 インストール
  3. | トラックバック:0
  4. | コメント:0

CalculiX Getting Startedでの解析、結果表示


それでは、前回まで作ったモデルを計算してみるが、

最後のセッティングは、テキストファイルで行うようだ。

MESHはINCLUDEで取り込み、材料、解析の設定は直接書き込む。

入力ファイルのフォーマットだが、基本的にはABAQUSのキーワードを(許可を得て)借用しているとのことである。

入力ファイルについては、今後研究していきたいと思う。

ここでは、マニュアルどおりに入力したファイル(マニュアルをコピペするだけだが)を作成。

さて作成したモデルは等分布荷重の単純支持はりである。

マニュアルの絵のとおりの結果となった。

sample-disp

クリックすると大きくなります


理論解は-0.536 シミュレーション結果は-0.539。

著名な市販のFEMソフトは少ない要素数でも片持ちはりのモデルはぴたり一致するので、それに比べると若干相違がある。

が、まあ勉強や研究用には十分だと思う。

にほんブログ村 科学ブログ 技術・工学へ

技術・工学ブログランキング



テーマ:自然科学 - ジャンル:学問・文化・芸術

  1. 2008/05/07(水) 22:50:26|
  2. Calculix 紹介 インストール
  3. | トラックバック:0
  4. | コメント:0

ccx(ソルバー)入力ファイルの確認


さて、今度はソルバー(ccx)への入力ファイルの中身を確認してみることにする。

ccxの入力ファイルは、いくつかのコマンドから成り立っているが、それらのコマンド名は、商用有限要素法ソフトウエアであるABAQUSに倣ってつけられている。

ただし、コマンドの中で設定するパラメーターの意味などについては違いがあるという話なので、ABAQUSと全く互換性があるわけではない。

もちろん、プログラムの中も全く異なるわけなので、同じ入力ファイルを使用して計算しても、結果はABAQUSと同じものが出てくるわけでない。

今後、コマンドの説明の話が出てくると思うが、それはあくまでもCALCULIXにおける話でであり、ABAQUSについてではないので、注意されたし。
(ABAQUSのコマンドのWEB検索でここに来る方もおられると思うので記しておきます)

さて、マニュアルどおりに入力しても、あまり面白くないので、今回からは自分で適当に問題を作ってみることにする。

使いはじめなので、もっとも単純な問題、1要素の引張る静解析を考えてみたい。
つまり、
大きさ 1X1X1 の立方体
6面体要素 1要素

境界条件、荷重条件は
ある一面を完全拘束
完全拘束された面の対面の4つの頂点に10ずつ引っ張り方向に付加。

1elem-test-model


材料物性は
ヤング率 1000
ポアソン比0.01

これくらいであれば、節点、要素の入力もテキストエディタはあれば簡単にできる。

にほんブログ村 科学ブログ 技術・工学へ

技術・工学ブログランキング







テーマ:自然科学 - ジャンル:学問・文化・芸術

  1. 2008/05/14(水) 16:07:07|
  2. Calculix 紹介 インストール
  3. | トラックバック:0
  4. | コメント:0

ccx入力ファイルの作成 節点、要素、材料編

まずは節点の定義だが、*NODEコマンドを使用する。
同時に節点のセット(グループ分けするようなもの)も定義できる

*NODE[,NSET=(節点セット)]
(節点番号),(x座標),(y座標),(z座標)



(必要な分入力)

ここでは、必要な8節点の定義を行い、それらが全部含まれるNALLというセットも同時に作成することにする。

*node,NSET=NALL
1,0,0,0
2,1,0,0
3,1,1,0
4,0,1,0
5,0,0,1
6,1,0,1
7,1,1,1
8,0,1,1

次に要素の定義である。

まずどんな要素を使うか決めなければならない。

要素のタイプはヘルプのCCX→Theory→Element Typesの中に書いてある。

ここでは一番上にあるC3D8(完全積分6面体1次要素)を使ってみる。

要素の定義は
*ELEMENT,TYPE=(要素の種類)[,(ELSET=(要素セット)]
(要素番号),(構成する節点番号),(構成する節点番号),(構成する節点番号)・・・・・



(必要な分入力)

ここでは、EALLというセット(といっても1要素しかないが)を作成する。要素のセットは、材料定義と要素を結びつけるときに必要になる。

*element,TYPE=C3D8,Elset=EALL
1,1,2,3,4,5,6,7,8

次に材料の定義であるが、先にコマンドを書くと、

*MATERIAL, Name=mat1
*ELASTIC
1000, 0.01

見てのとおり、mat1という名の材料に、ヤング率1000、ポアソン比0.01の弾性材料を定義するということである。

次にこの材料と、要素を関連付ける。

6面体の要素、つまりソリッド要素を使用しているので、*SOLID SECTIONコマンドを使う。

*SOLID SECTION,ELSET=(要素セット名),MATERIAL=(材料名)

よって、
*SOLID SECTION, Elset=EALL, Material=mat1

これらを適当な名前のテキストファイルに書き込めば、モデルの部分は完成である。

***これはフリー有限要素法ソフトウエアCalculixについての説明です。ABAQUSコマンドの説明ではありません***


にほんブログ村 科学ブログ 技術・工学へ

技術・工学ブログランキング




テーマ:自然科学 - ジャンル:学問・文化・芸術

  1. 2008/05/18(日) 20:17:47|
  2. Calculix 紹介 インストール
  3. | トラックバック:0
  4. | コメント:0

ccx入力ファイルの作成 境界条件編

つづいて、解析の準備。

Calculixは、主に非線形解析や動解析のために、ひとつの解析を何回かのステップに区切ることができる。

*STEPと*END STEPというコマンドでそれを行う。

今回は、弾性線形解析で、境界条件も1通りしかないので、STEPは1つのみでよいが、便宜上定義しておく。

次に、静解析か動解析かの指定を行うのだが、静解析なので、*STATICと指定

次に拘束条件の指定。

今回はz=0の平面上の節点4点を完全固定。

コマンドの書式は
*BOUNDARY
(節点番号),(拘束する最初の自由度番号),(拘束する最後の自由度番号)



(必要な分繰り返し)
もしくは
(節点セット名),(拘束する最初の自由度番号),(拘束する最後の自由度番号)



(必要な分繰り返し)
である。

今は全体座標系しか使っていないので、自由度番号は、全体座標系で
x - 1
y - 2
z - 3
となる。

完全拘束なので、1から3まで固定することになる。
*boundary
1,1,3
2,1,3
3,1,3
4,1,3
とすれば、節点1番、2番、3番、4番の自由度番号1から3まで同時に拘束となる。


次にz=1の面上の4節点に10の集中荷重をかける。

*CLOADコマンドを使うと集中荷重がかけられる。

*CLOAD
(節点番号),(荷重をかける自由度番号),(荷重値)



(必要な分入力)

自由度の定義は拘束条件のときと同じである。

よって、入力は

*CLOAD
5,3,10
6,3,10
7,3,10
8,3,10


***これはフリー有限要素法ソフトウエアCalculixについての説明です。ABAQUSコマンドの説明ではありません***


にほんブログ村 科学ブログ 技術・工学へ

技術・工学ブログランキング

テーマ:自然科学 - ジャンル:学問・文化・芸術

  1. 2008/05/20(火) 23:36:59|
  2. Calculix 紹介 インストール
  3. | トラックバック:0
  4. | コメント:0

ccx入力ファイルの作成 出力制御編

最後に出力制御、結果の書き出しについてということである。

cgxで表示させるための結果ファイル(frdファイル)への出力は、

節点に関連する出力(変位量など)
*NODE FILE[, NSET=(節点セット)]
(出力項目),(出力項目)・・・・

要素に関連する出力(応力など)
*EL FILE[, ELSET=(要素セット)]
(出力項目),(出力項目)・・・・

テキストファイルで数値結果を見たい場合は、

*NODE PRINT, NSET=(変位セット)]
(出力項目),(出力項目)・・・・

要素に関連する出力(応力など)
*EL FILE[, ELSET=(要素セット)]
(出力項目),(出力項目)・・・・

今回は、節点に関しては変位(出力項目はU)、要素に関しては応力(出力項目はS)とひずみ(出力項目はE)を、frdファイル、テキストファイル両方に出してみる。

*NODE FILE
U
*EL FILE
S, E
*NODE PRINT, NSET=NALL
U
*EL PRINT, ELSET=EALL
S, E

すべての入力コマンドは以下のようになる。

*node,NSET=NALL
1,0,0,0
2,1,0,0
3,1,1,0
4,0,1,0
5,0,0,1
6,1,0,1
7,1,1,1
8,0,1,1
*element,TYPE=C3D8,Elset=EALL
1,1,2,3,4,5,6,7,8
*MATERIAL, Name=mat1
*ELASTIC
1000, 0.01
*SOLID SECTION, Elset=EALL, Material=mat1
*STEP
*STATIC
*boundary
1,1,3
2,1,3
3,1,3
4,1,3
*CLOAD
5,3,10
6,3,10
7,3,10
8,3,10
*NODE FILE
U
*EL FILE
S, E
*NODE PRINT, NSET=NALL
U
*EL PRINT, ELSET=EALL
S, E
*END STEP

これを拡張子が.inpの適当な名前、ここではone_elem.inpで保存し、ccxに入力する。

Calculixのコマンドプロンプトで以下のとおり入力する。

ccx one_elem

入力時、.inpはいらない。

計算が始まり、Job finishedと表示されれば、計算が終了である。


***これはフリー有限要素法ソフトウエアCalculixについての説明です。ABAQUSコマンドの説明ではありません***


にほんブログ村 科学ブログ 技術・工学へ

技術・工学ブログランキング


  1. 2008/05/22(木) 21:26:24|
  2. Calculix 紹介 インストール
  3. | トラックバック:0
  4. | コメント:0

結果確認

計算が終わったら結果確認をしてみる。

テキストの結果は、.datの拡張子のファイルに書き出されている。

sta-file


つぎに、cgxを使って結果を確認する。cgxは-vオプションを使ってfrdファイルを立ち上げる。

cgx -v one_elem.frd

変位や応力、ひずみの結果が書き出されている。

disp1-one-elem


精度検証してみる。

ポアソン効果を無視すると、

応力:力/面積=40/1=40
ひずみ:応力/ヤング率=40/1000=0.04
変位:ひずみX辺の長さ=0.04x1=0.04

計算結果と一致する。

一要素を使って試したが、ccxの入力ファイルの構造は理解できた。

次回からはもう少し複雑なモデルで試してみたい。


にほんブログ村 科学ブログ 技術・工学へ

技術・工学ブログランキング


テーマ:自然科学 - ジャンル:学問・文化・芸術

  1. 2008/05/25(日) 23:33:31|
  2. Calculix 紹介 インストール
  3. | トラックバック:0
  4. | コメント:0

3点曲げ試験(両端支持はり)の問題をFEMで解いてみる

さて、今回から両端支持はりの問題をFEMで解いてみる。

断面は1x1の正方形、長さ40のはりを考える。

荷重ははりの中央にかける。(材料試験で言うと、3点曲げ試験になる)

荷重値は16とする。

材料物性はヤング率は200000 ポアソン比は0.1とする。

有限要素モデルは、1/4モデルとし、xとy方向に対称条件を設定する。

いわいるはり要素でシミュレーションできるが、今回は3次元ソリッド要素を使用する。


両端支持はり

クリックすると大きくなります。


***これはフリー有限要素法ソフトウエアCalculixについての説明です。ABAQUSコマンドの説明ではありません***

にほんブログ村 科学ブログ 技術・工学へ

技術・工学ブログランキング

テーマ:自然科学 - ジャンル:学問・文化・芸術

  1. 2008/05/27(火) 22:28:48|
  2. Calculix線形静解析
  3. | トラックバック:0
  4. | コメント:0

cgxによる両端支持はり(3点曲げ)モデル作成

今回はメッシュ(節点、要素)作成を行う。

メッシュ分割数だが、x方向に20分割、y方向に2分割、z方向に4分割にする。

要素は8節点完全積分ソリッド要素を使用する。

メッシュ作成にはせっかくなので、cgxを使用する。

まず、適当なファイル名(例ではbeam002.fbd)でcgxを立ち上げる。

cgx -b beam002.fbd

それから以下のようにコマンド打ちと操作をしてモデルを作成する。

なお、以下の説明では

***---*** → コメント(何をしているか)
アルファベットや数字で始まる行 → cgxに入力するコマンド
(---) → マウスなどの操作指示

である。

非常にラフで申し訳ないのだが、詳しく書くと相当な量になるのでご勘弁を(^^;

以前紹介したgettingStarted.pdfの例題とほぼ同じようにつくっているので、そちらのほうも参考にしてください。

また、いつかWEBページを作成して、メッシュデータを公開したいとも考えています。

考えるだけで終わるかも知れませんが。

何はともあれ、以下cgxコマンド説明です。


***ポイントの作成***

pnt p1 0 0 0
pnt p2 0 0.5 0
(rコマンドでカーソルの大きさを決める)
(p1をカーソルの中に入れて)
b
(p2をカーソルの中に入れて)
g
q
qadd se1
a
(rコマンドでカーソルの大きさを決める)
(ラインをカーソルの中に入れて)
l
q

***断面の作成***

swep se1 se2 tra 0 0 1
qadd se3
a
(rコマンドでカーソルの大きさを決める)
(面をカーソルで囲んで)
s
q

***はりの作成***

sewp se3 se4 tra 20 0 0

***メッシュ分割数の指定***

qdiv
(x軸に平行なラインのひとつを選ぶ)
20
(これをx軸にすべての平行なラインに繰り返す)
(y軸に平行なラインのひとつを選ぶ)
2
(これをy軸にすべての平行なラインに繰り返す)
(z軸に平行なラインのひとつを選ぶ)
4
(これをz軸にすべての平行なラインに繰り返す)

***メッシュ分割***

elty all he8
mesh all
plot n all
qadd fixx
a
(rコマンドでカーソールを大きくする)
(x=20面上の節点を囲う)
n
q

***境界条件用節点セットの指定***

qadd fixx
a
(rコマンドでカーソールを大きくする)
(y=0面上の節点を囲う)
n
q
qadd fixz
a
(rコマンドでカーソールを大きくする)
(x=0,z=0のライン上の節点を囲う)
n
q
plot na all

(x=20,z=1のライン上の節点番号のメモを取る)

***データの書き出し***

send all fbd
send all frd
send all abq
send fixx abq nam
send fixy abq nam
send fixz abq nam


***これはフリー有限要素法ソフトウエアCalculixについての説明です。ABAQUSコマンドの説明ではありません***

にほんブログ村 科学ブログ 技術・工学へ

技術・工学ブログランキング


テーマ:自然科学 - ジャンル:学問・文化・芸術

  1. 2008/05/27(火) 22:53:00|
  2. Calculix線形静解析
  3. | トラックバック:0
  4. | コメント:0

プロフィール

tsunodako

Author:tsunodako
tsunodakoのプロフィール
無料でCAE環境を構築に挑戦中。
が、現在少し休止中。そのうち復活します。
ご意見ご感想をブログコメント大歓迎です!!!
メールの場合は下のほうにあるフォームに入力していただくか

tsunodako[at]yahoo.co.jpまで([at]=@に変換してください)。
このブログにあるソフトやデータを使用して生じた結果は責任負いませんのであしからず。
静解析CAE技術者のための動解析講座は http://vibrationcae.blog.fc2.com/ に移動いたしましたのでよろしく。

ブログ内検索

カレンダー(月別)

04 ≪│2008/05│≫ 06
- - - - 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

最近の記事

カテゴリー

tsunodakoへのメールはここからでもOK

名前:
メール:
件名:
本文:

最近のコメント

最近のトラックバック

フリーエリア

にほんブログ村 科学ブログ 技術・工学へ
にほんブログ村

RSSフィード

リンク

このブログをリンクに追加する

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。