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

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

スポンサーサイト

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

周囲支持板モデルABAQUS薄肉シェル要素の収束性


今度は薄肉シェルS8R5を使って計算してみます。

データは以下のように、all,mshの中

*ELEMENT, TYPE=S8R5, ELSET=Eall

TYPEをS8R5に変更します。

計算結果は以下の通り、1要素の状態からほぼ収束しています。

要素収束S8R5
クリックすると大きくなります。


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

技術・工学ブログランキング
↑もしよかったらクリックしてください。ランキングがあがります。。。


スポンサーサイト

テーマ:宇宙・科学・技術 - ジャンル:学問・文化・芸術

  1. 2009/04/01(水) 22:44:21|
  2. CalculiXとABAQUS
  3. | トラックバック:0
  4. | コメント:0

ABAQUS シェル1次要素でも計算してみる


CalculiXには1次要素のシェル要素がありません。

理論的には1次要素でシェルの曲げを定式化する方法はいくつか提案されていますが、

実際プログラムに実装するのは難しいです。

商用ソフトはさすが1次のシェル要素を使用できるものが多いです。

この辺でフリーソフトとの差が出てきてしまうのでしょうか。。。

さて、ABAQUSは1次のシェル要素もいくつか種類があります。

今回はもっとも原始的(?)だと思われるS4を使ってみます。

では、実際前回までと同じように要素数と収束性をグラフにしています。

なお、横軸を要素数にしています。

同じ要素数であれば2次要素より1次要素のほうが当然節点数が少なくなり、計算時間も短くなります。

要素収束性S4
クリックすると大きくなります。

1次要素にもかかわらず、CalculiXの2次要素とほぼ同じくらいの収束性を示しています。

よって、この板曲げの問題に対しては、ABAQUSで1次要素を使えば、CalculiXより効率よくほぼ同じ精度で解析できるということになります。


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

技術・工学ブログランキング
↑もしよかったらクリックしてください。ランキングがあがります。。。




テーマ:宇宙・科学・技術 - ジャンル:学問・文化・芸術

  1. 2009/04/02(木) 23:55:36|
  2. CalculiXとABAQUS
  3. | トラックバック:0
  4. | コメント:0

FEM構造解析ミニ講座 拘束条件-静解析の剛体移動をとめる


突然ですが、CAEソフトは高い!!!ということで、
とりあえずフリーのCAEソフトで試してうまくいったら商用ソフトを検討しようと考えている方は多いと思います。

そのような方がこのブログにやってきて、CalculiXを入手して、使い方がなんとなくわかったけど
、実用問題に適用してみようとすると、うまくいかない、ということは多いと思います。

FEMの専門家には、そんな簡単にできるほど甘くはない!、といわれる方もいるかと思いますし、
甘くはないのは事実なのですが、

それでもこのブログをみてFEMに興味もっていただいた方が、すぐあきらめてしまうのはもったいないと思いますし、

もう少しがんばって業務に少しでも役に立てば、ブログを書いている甲斐もありますので、

僭越ではありますが、解析講座ぽいものを書いてみたいと思います。

(セミナーの挨拶みたいになってしまった。。。)


前置きはこれくらいにして、今回は拘束条件について述べたいと思います。

FEMの解析の質を決める一番重要な要素は拘束条件を含めた境界条件であるといわれています。

原則は、実際の”もの”(解析対象物)の状態に従って設定するのが原則なのですが、

解析計算上、計算結果を得るために守っていただかなくてはならないルールがあります。


線形静解析の場合、一番重要なルールは、

剛体移動(運動)が起こらないように拘束する

ということです。

これがCAEベンダーのセミナーでは必ず説明があることで、

FEMシミュレーションについて書かれている本にもたいてい説明があるはずです。

(でもWEBを調べると、わかりやすく説明したものが意外とない。。。)

次回、まず3点曲げ試験(両端支持はり)をシミュレーションする場合を例に説明していきます。


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

技術・工学ブログランキング
↑もしよかったらクリックしてください。ランキングがあがります。。。


テーマ:宇宙・科学・技術 - ジャンル:学問・文化・芸術

  1. 2009/04/03(金) 23:54:06|
  2. 解析講座
  3. | トラックバック:0
  4. | コメント:2

構造解析 有限要素法 剛体移動での拘束不足エラーを防ぐ(1)

以下のような3点曲げ試験のモデル化を考えます。

拘束条件1
クリックすると大きくなります。

実物はもちろん3次元ですが、とりあえず2次元(奥行き方向は考えない)で考えます。

2点で試験片を支持して試験片中央を下向き(y方向)に押します。

このとき横(x)方向には”支え”がないので、
もし実際に力が加わると試験片は動いてジグから外れて、落ちてしまいます。

理論上は力がかかり続けると、試験片は変形せずにどこまでもx方向に移動し続けます。

よって、x方向の変位は無限大ということになります。

拘束条件2
クリックすると大きくなります。

でも、3点曲げではx方向には力がかからないし、実際3点曲げ試験ではx方向に移動しないので、問題ないのではないか、と考えてしまうのですが、

有限要素法の計算上は、ポアソン効果によりx方向にも変形が発生しますし、数値誤差の影響でx方向にほとんど0ではあるが、わずかな力がかかったような形になる可能性もあります。

拘束条件3
クリックすると大きくなります。

もしそうなった場合、支持点がない以上、わずかな力でも理論上は無限大の変位が発生してしまいます。

実際に計算してみると、やはりエラーでとまったり、大きな変形が起きたりすることが多いです。
(うまく力のバランスがとれて、計算がうまくいうこともありますが)

ではどのようにモデル化すればよいかというと、どこかx方向を拘束すればよいのですが、

このモデルの場合は荷重点の下はx方向には移動しない、というのは妥当性があるので、

そこをx方向方向に拘束するのがよいと思います。

また、対称条件を使って、対称面をx方向に拘束し(ソリッド要素の場合)、荷重を半分にするとモデルの節点数、要素数を減らすことができます。

拘束条件4
拘束条件5
クリックすると大きくなります。

ただし、荷重が試験片中央ではなく、ずれたところに書ける場合は、荷重の対称性が崩れるので、境界条件を慎重に考える必要があります。

とにかく、構造解析有限要素法の静解析では、荷重条件に関係なく剛体移動がおきないように拘束条件を設定しなければなりません。

それでは、x、y、zの方向に1点ずつ止めればよいのかな、と単純に考えてしまうのですが、実はそれではうまくいかないことが多い、という話を次回します。



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

技術・工学ブログランキング
↑もしよかったらクリックしてください。ランキングがあがります。。。





テーマ:宇宙・科学・技術 - ジャンル:学問・文化・芸術

  1. 2009/04/04(土) 12:16:07|
  2. 解析講座
  3. | トラックバック:0
  4. | コメント:0

構造解析 有限要素法 剛体移動での拘束不足エラーを防ぐ(2)

前回は、有限要素法静解析では剛体移動を完全にとめる拘束条件が必要だと書きました。

これは、どのような荷重条件に対しても、

荷重方向ではない方向にも拘束条件が必要です。

さて、剛体移動をとめるには、x,y,zの3方向をとこで一箇所ずつ拘束すれば、

剛体運動がとまると考えてしまうのですが、それがそうでもありません。

2次元で考えた場合、例えば下の図で、節点1をx、y方向に固定すれば、確かにx、y方向は止まるのですが、

節点1の回りに回転移動する剛体運動が止まらずに、残ってしまうのです!!

拘束条件6
クリックすると大きくなります

節点は回転するんかい、というと、残念ながら回転するのです。。。

(節点の自由度をご存知の方であれば、節点1の回転自由度をとめればよいのではないかと思われるかもしれませんが、残念ながら2次元解析では計算上は通常回転自由度を存在しないので、とめられません。。。(また回転自由度が存在しないのと節点が回転するのは別問題です。。。))

よって、並進方向をつかって、回転の剛体移動を止めなければなりませんので、例えば下図のようにもう一箇所とめなければなりません。

さらに3次元の場合は最低3箇所とめなければなりません。

拘束条件7
クリックすると大きくなります

次回実際CalculiXを使って、拘束不足の場合どのようになる見てみたいと思います。


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

技術・工学ブログランキング
↑もしよかったらクリックしてください。ランキングがあがります。。。




テーマ:宇宙・科学・技術 - ジャンル:学問・文化・芸術

  1. 2009/04/05(日) 23:11:18|
  2. 解析講座
  3. | トラックバック:0
  4. | コメント:0

剛体移動が起きてしまう例題 その1

今回は2次元の熱膨張の問題で、拘束条件が不足した場合の計算を行ってみます。

下図のようなモデルを考えます。

剛体熱膨張例題2D
クリックすると大きくなります

回転を考えなければ上図(A)でよいはずなのですが、実際に計算してみると剛体回転運動がおきます。

以下計算データです。

*NODE, NSET=Nall
1,0.000000000000e+000,0.000000000000e+000,0.000000000000e+000
2,5.000000000000e-001,0.000000000000e+000,0.000000000000e+000
3,5.000000000000e-001,5.000000000000e-001,0.000000000000e+000
4,0.000000000000e+000,5.000000000000e-001,0.000000000000e+000
5,2.500000000000e-001,0.000000000000e+000,0.000000000000e+000
6,5.000000000000e-001,2.500000000000e-001,0.000000000000e+000
7,2.500000000000e-001,5.000000000000e-001,0.000000000000e+000
8,0.000000000000e+000,2.500000000000e-001,0.000000000000e+000
9,5.000000000000e-001,1.000000000000e+000,0.000000000000e+000
10,0.000000000000e+000,1.000000000000e+000,0.000000000000e+000
11,5.000000000000e-001,7.500000000000e-001,0.000000000000e+000
12,2.500000000000e-001,1.000000000000e+000,0.000000000000e+000
13,0.000000000000e+000,7.500000000000e-001,0.000000000000e+000
14,1.000000000000e+000,0.000000000000e+000,0.000000000000e+000
15,1.000000000000e+000,5.000000000000e-001,0.000000000000e+000
16,7.500000000000e-001,0.000000000000e+000,0.000000000000e+000
17,1.000000000000e+000,2.500000000000e-001,0.000000000000e+000
18,7.500000000000e-001,5.000000000000e-001,0.000000000000e+000
19,1.000000000000e+000,1.000000000000e+000,0.000000000000e+000
20,1.000000000000e+000,7.500000000000e-001,0.000000000000e+000
21,7.500000000000e-001,1.000000000000e+000,0.000000000000e+000
*ELEMENT, TYPE=CPS8, ELSET=Eall
1, 1, 2, 3, 4, 5, 6, 7, 8
2, 4, 3, 9, 10, 7, 11, 12, 13
3, 2, 14, 15, 3, 16, 17, 18, 6
4, 3, 15, 19, 9, 18, 20, 21, 11
*MATERIAL, Name=steel
*ELASTIC
28000, 0.001
*EXPANSION,ZERO=273.
1.E-6
*SOLID SECTION, Elset=Eall, Material=steel
*INITIAL CONDITIONS,TYPE=TEMPERATURE
NALL,273.
*STEP
*STATIC
*boundary
1,1,2
*TEMPERATURE
NALL,373
*NODE FILE
U
*NODE PRINT, NSET=Nall
U
*EL PRINT
S, E
*EL FILE
S, E
*END STEP

拘束は節点1をx方向とy方向に拘束したのみです。

結果を見てみると、x方向のコンター図が斜めになっています。

また、cgxのウインドウメニューからViewing→Toggle AddーDisplacementをクリックして、変位結果を実際の結果に反映させます。

変位が小さくてわかりにくいので、100倍にデフォルメします。

scal d 100

そうすると、以下のように回転しているのがわかります。

熱膨張剛体回転
クリックすると大きくなります。

小さいので影響少ないのでは、とも思えるのですが、

今回はたまたま小さかったのであって、条件が多少異なれば結果は大きく変わる可能性がありますし、

計算するコンピュータによっても結果が変わる可能性があるので、放ってはおけない問題です。

モデル(B)のようにもう一点固定(例えば節点10をx方向に固定)すれば、以下のようにx方向変位分布が縞模様になり

、変位を100倍しても回転していないことがわかります。

熱膨張剛体変位移動なし
クリックすると大きくなります。


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

技術・工学ブログランキング
↑もしよかったらクリックしてください。ランキングがあがります。。。


テーマ:宇宙・科学・技術 - ジャンル:学問・文化・芸術

  1. 2009/04/06(月) 22:01:18|
  2. 解析講座
  3. | トラックバック:0
  4. | コメント:0

剛体移動が起きてしまう例題 その2

さて最後に、3点曲げ(両端支持はり)のモデルを見てみます。

以下の様にモデルを作成しました。

3point-bend-model

断面積1x1、長さ20の梁です。

作り方によって節点番号が変わってしまうと思うのですが、

私のモデルではx=0,y=0の線上とx=20,y=0の節点をyfixというセットに入れました。

また節点番号57,58,237は、梁中央上部の節点で荷重点になっています。

以下にモデルデータを示します(要素、節点は省略)

(もし、ご自分でモデルを作られる方は、作ったモデルの節点番号に合わせて、
以下のモデル入力データを読み替えてください)

まず、荷重節点をz、x方向に固定した場合を示します。

この場合は正しい結果が出ます。

*INCLUDE, INPUT=all.msh
*NSET,NSET=yfix
279,283,130,137,129,198,202,197,321,318
*NSET,NSET=LOAD
237,57,58
*MATERIAL, Name=steel
*ELASTIC
28000, 0.3
*SOLID SECTION, Elset=Eall, Material=steel
*STEP
*STATIC
*boundary
load,1
yfix,2
57,3
*CLOAD
57,2,-1
237,2,-0.5
58,2,-0.5
*NODE FILE
U
*EL FILE
S, E
*END STEP

計算すると、ほぼ理論値のたわみが出てきます。

3点曲げ正しい拘束
クリックすると大きくなります。

次に、荷重節点の拘束をはずして計算してみます。

まず、3点曲げの計算をする前に、拘束のないx方向に荷重をかけてみます。

*boundary
yfix,2
*CLOAD
57,1,-1
237,1,-0.5
58,1,-0.5

とうぜん、x方向に吹っ飛びますが、計算はできたようです。

x方向大変位
クリックすると大きくなります。

単位系がkgf-mm系だとすると、

9.59E+9mm=9.59E+3km=9590km!!

東京からだとロンドンくらいまでいけるでしょうか(参考

すごい剛体移動ですが、私は月まで飛ばしたこともあります。。。


さて、3点曲げの例題に戻ります。

*boundary
yfix,2
*CLOAD
57,2,-1
237,2,-0.5
58,2,-0.5

と入力します。

y方向の変位をみてみると、

拘束条件不足y方向変位
クリックすると大きくなります。

何と正しい結果が得られました。

しかし、z方向変位を見てみると、

拘束条件不足z方向変位
クリックすると大きくなります。

結果が対称になっていないので、剛体移動してしまったことがわかります。

このように、実際は特に荷重方向以外の拘束がない場合はうまくバランスが取れて、一見結果がおかしくない様に見えることが多いです。

しかし、少し条件を変えて計算してみたりすると、突然巨大な変位が発生しまうことがあり、これがいやらしいところであります。

また、解析ソフトがバージョンアップした時に、今まで計算できたモデルが計算できなくなったという話をよく聞くのですが、

バージョンアップにより若干プログラムが変わった(収束性や精度を上げるためなのですが)ため、

今までのバージョンではバランスがとれたものが、最新のバージョンではバランスがとれなくなり、

計算結果が大きく変わってしまうということもありますので、注意が必要です。


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

技術・工学ブログランキング
↑もしよかったらクリックしてください。ランキングがあがります。。。


テーマ:宇宙・科学・技術 - ジャンル:学問・文化・芸術

  1. 2009/04/07(火) 21:36:06|
  2. 解析講座
  3. | トラックバック:0
  4. | コメント:0

SALOMEをマニュアルを見ずにてきとうに動かしてみる

さて、LinuxにSalomeとかCalculiXとかインストールしましたが、

その後放ったままにしていますので、そろそろ触ってみます。。。

まず立ち上げですが、salome_appli_3.2.6の中にある

runAppli

というのが実行ファイルらしいです。

salome_3.2.6というディレクトリもできているのですが、その中にはアプリケーション起動ファイルはないようです。

(私はその中を一生懸命探したのですが。。。)

これを起動するとSALOMEが立ち上がります。

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

次に、下図の様にSalomeと表示してある隣の下向きボタンを押して、Geometry(形状)作成モードにします。

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

すると、Geometryを作成するか、開くかロードするか聞いてきます。

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

新たに作成するのでNewを押します。

形状作成画面になります。

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

3D-CADやプリプロセッサーを使い慣れている方であれば、ここまでくれば何とかモデルが作れそうな感じがするはずです。

例えば、上部のメニューで右側に立方体や円柱などの形状が書いてあるボタンがあるので、

これを押せば、その形状が作れるような感じがしませんか??(私だけかな?)

押してみます。

salome326-start05

上図のようなウインドウが出てきました。

どうやらポイント番号を指定する様なので、ポイントを作らなければダメのようです。

しかしここで諦めずによく見てみると、Boxと書いてある欄の中にもう一個ラジオボタンがありますので、押してみます。

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

x、y、z方向の大きさを入れると、箱が作れそうな気がします。

1x1x20の梁を目標に入力します。

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

一見何も変わりませんが、左側のウインドウに何らかのGeometryが作られたことを示す項目が表示されています。

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

ここでモデル表示のウインドウの上にある虫眼鏡ボタン押すと、

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

モデルが現れます。どうやら最初は小さすぎて見えなかったようです。

次回は多分メッシュを切ります。。。

まだマニュアル読んでいないので、細かいことは聞かないでください。。。

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

技術・工学ブログランキング
↑もしよかったらクリックしてください。ランキングがあがります。。。


テーマ:宇宙・科学・技術 - ジャンル:学問・文化・芸術

  1. 2009/04/08(水) 22:59:37|
  2. Salome
  3. | トラックバック:0
  4. | コメント:0

SALOMEをマニュアルを見ずにてきとうに動かしてみる その2


では、前回作成した形状にメッシュ切りを行ってみます。

まず、形状作成モードからメッシュ作成モードに切り替えます。

以下のようにプルダウンメニューからmeshを選択します。
salome-start10
クリックすると大きくなります

以下のように、ウインドウが黒い画面になり、メニューも変わります。

一番上のメニューバーに"Mesh"というメニューが出てきます。

それをクリックすると、プルダウンメニューが出てきますので、CREATE MESHを選択します。

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

Algorithm(アルゴリズム)などの選択のウインドウが出てきますので、

フリーでは有名なアルゴリズムプログラムであるNetgenを選択してみます。

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

OKを押しましたが、2Dのメッシュのアルゴリズムを指定してくださいと怒られてしまいました

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

しょうがないので2Dのアルゴリズムを指定します。

画面左側にあるObject Browserの中のMesh_1という項目を左クリックして、Edit Mesh/Sub Meshを選択します。
(もし、Mesh_1という項目がなかったら、Meshの項目をダブルクリックして展開してください)

すると、Algorithm(アルゴリズム)などの選択のウインドウが出てきますので、2Dのタブを押してください。

てきとうにNetgen 1D-2Dを使ってみます。

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

OKを押して、再びObject Browserの中のMesh_1という項目を左クリックして、Computeを選択します。

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

メッシュ作成情報が表示され、メッシュが切れました。

salome-start16
salome-start17
クリックすると大きくなります。


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

技術・工学ブログランキング
↑もしよかったらクリックしてください。ランキングがあがります。。。




テーマ:宇宙・科学・技術 - ジャンル:学問・文化・芸術

  1. 2009/04/10(金) 22:00:23|
  2. Salome
  3. | トラックバック:0
  4. | コメント:0

Salomeからメッシュデータを出力する

メッシュが切れたので、節点要素データを出力してみます。

メニューバーのFile→Exportを選択すると、4種類ほど出力データ形式が出てきます。

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

まずは一番上の.dat形式で出力してみます。(何のフォーマットかは不明)

出力された.datファイルの中身を見てみます。

93 440
1 0.000000e+00 0.000000e+00 1.000000e+00
2 0.000000e+00 0.000000e+00 0.000000e+00
3 0.000000e+00 1.000000e+00 1.000000e+00
4 0.000000e+00 1.000000e+00 0.000000e+00




節点数、要素数?のあとに、節点座標データが出力されています。



92 6.110433e+00 4.996922e-01 4.921792e-01
93 1.165561e+01 5.022535e-01 4.971097e-01
25 102 24 25
66 102 62 63
8 102 6 8




節点データの次ですが、2カラム目の102が共通で続いていて、その後番号が2つ続くので、

エッジのデータ(直方体の辺上の2Dデータ)のような気がします。(未確認)




53 102 51 50
14 102 13 14
39 102 38 37
99 203 22 23 40
137 203 76 59 75
107 203 30 29 13
91 203 14 15 31




さらに次ですが、今度は2カラム目の203が共通で続いていて、その後番号が3つ続くので、

エッジのデータ(直方体の辺上の2Dデータ)のような気がします。(未確認)




90 203 13 14 30
167 203 51 52 18
197 203 63 62 28
34 89 84 68
1 2 83 3
60 85 61 43
91 61 85 44
93 36 70 90




その次に続くのは、データが4つ続くものなので、これがテトラ(4面体)要素のデータのようです。


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

技術・工学ブログランキング
↑もしよかったらクリックしてください。ランキングがあがります。。。

テーマ:宇宙・科学・技術 - ジャンル:学問・文化・芸術

  1. 2009/04/12(日) 23:44:05|
  2. Salome
  3. | トラックバック:0
  4. | コメント:0

フリープリポストSalomeのGUI操作


前回はSalomeのdatファイルの中身を見てみました。

4面体要素を定義しているらしい部分は分かりましたが、実際そうかどうかをモデルを見て確認してみます。

そのためにはSalomeのGUI操作を確認しておかなければなりません。

まず、お決まりの平行移動、回転、拡大縮小ですが、

ctrlキーを押しながら、

右クリック 回転
真ん中クリック 平行移動
左クリック 拡大縮小

です。

次に節点番号表示方法です。

これはメニューバーにメニューがなかったので、見つけるのに時間がかかりましたが、

見つければ何のことはない、

モデル上で右クリック

Numbering→Display Node #

を選択すれば表示できます。

梁内部の構造が見にくいので、同じように右クリックからDisplay Modeを選択し、

Wireframeを選択すると、ワイヤーフレーム表示になります。


ここで、前回見たデータから、節点が見つけやすい

1 2 83 3

の要素を探してみると、

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

少し見にくいですが、確かにあるようです。


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

技術・工学ブログランキング
↑もしよかったらクリックしてください。ランキングがあがります。。。



テーマ:宇宙・科学・技術 - ジャンル:学問・文化・芸術

  1. 2009/04/13(月) 19:28:17|
  2. Salome
  3. | トラックバック:0
  4. | コメント:0

4面体テトラ1次要素を2次要素に変更する

次はCalculiXのデータに変換したいところなのですが、

4面体要素は2次要素でないと精度が悪いので、2次要素に変更したいと思います。

メニューバーを見ていくと、これの絵のボタンが怪しそうです。

Salome-start20

押してみます。

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

Convert to quadratic(2次要素への変換)と書いてありますので、

正解のようです!!

OKボタンを押すと、中間節点か生成されました。

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

.datファイルに出力してみると、




30 29 13 78 124 178 181 440 390 438
90 37 80 20 378 319 381 409 193 320
10 91 44 11 427 416 248 104 463 251
14 81 31 92 395 429 183 466 428 430
35 84 69 34 441 353 296 129 419 297
27 10 85 26 206 368 374 121 205 369
42 88 77 25 456 346 446 200 350 349
23 87 24 41 423 356 117 199 330 198
25 5 88 6 202 434 350 119 98 394




10節点のデータが書き込まれていますので、2次要素になったようです。

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

技術・工学ブログランキング
↑もしよかったらクリックしてください。ランキングがあがります。。。

テーマ:宇宙・科学・技術 - ジャンル:学問・文化・芸術

  1. 2009/04/14(火) 21:31:02|
  2. Salome
  3. | トラックバック:0
  4. | コメント:0

Salomeで作成したメッシュをCalculiX cgxに読み込む その1

やっと、CalculiXでSalomeで作ったデータを読み込ませるところまで来ました。

しかし、もう一つ確認しておく事があります。

要素を定義する節点の順番です。

前回、Gmshで読み込ませたときは、4面体2次要素の中間節点の入力順が変わってしまっていて、

そのままではうまく読み込めませんでした。

そこで、出力した要素データの中から、以下の要素の出力順を確認してみます。

1 2 9 83 94 102 203 361 470 412

モデルを見て、該当する要素を探します。

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

内部が見えないのでワイヤーフレーム表示にすると、

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

見にくいのですが、よく見てみると、以下の節点の順番で要素が定義されているのが分かります。

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

これはCalculiXのC3D10の節点の並び順と比較してみますと、

一見良さそうに見えますが、頂点の節点の並び順が違います。

対応させてみると
Salome - Calculix
1 - 1
2 - 3
3 - 2
4 - 4
5 - 7
6 - 6
7 - 5
8 - 8
9 - 10
10 -9

となっていますので、入れ替えなくてはなりません。

どちらにしろ、この.datファイルとCalculiXのデータフォーマットは異なりますので、

データ変換はしなければなりません。


データ変換する方法としては、

1.手動で変換する(テキストエディタやEXCELなどの表計算ソフトなどを使って)

2.変換プログラムを作成する

3.変換プログラムが既に作られていないか探す

が考えられます。


今回は、とりあえず1番の方法でやってみます。

SalomeはLinux上で動いているので、同じくLinux上で動くOpenOfficeのCalcを使って変換してみたいと思います。(タダだし。。。)

実務上使うためには2.か3.の方法になると思いますが、変換プログラムを作るためには、

データの構造を確認した方がよいので、一度手動で変換して、それを自動化するプログラムを考えていくのが王道だと思います。

3.の変換プログラムが既にないか、ということについては、実はあるようなのですが、よく調べていないので、確認次第紹介したいと思います。

手動変換の具体的な方法は次回述べます。



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

技術・工学ブログランキング
↑もしよかったらクリックしてください。ランキングがあがります。。。


テーマ:宇宙・科学・技術 - ジャンル:学問・文化・芸術

  1. 2009/04/15(水) 22:21:29|
  2. Salome
  3. | トラックバック:0
  4. | コメント:0

OPEN OFFICE CALCを使ってSALOMEのデータをCalculiXのデータに書き換える

それでは、SALOMEデータをCalculiXに手動で変更します。

まず、Open Office Calcを開きます。

次に.datファイルを読み込みます。

読み込み方はファイル→開くを選択し、出てきたウインドウのファイルの種類の中からcsvフォーマットを選択します。

フィルターがかかって、.datファイルは見えなくなってしまいますが、

ファイル名のところに.datファイルの名前を(強引に)入れて開きます。

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

するとテキストのインポート画面が出てきますので、区切りのオプションで、スペースを選択してOKを押します。

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

ちなみに、普通に開くと文書扱いになりWriterが開いてしまいます。

後は以下のとおり編集します。

1. 1行目を消す

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


2. エッジ、面のデータを消す
(2列めのデータが103、206になっている部分)
salome-start28
クリックすると大きくなります


3.節点の座標表示の桁数を増やす
節点座標データをすべて選択して、
書式→セルを選択し、出てきたウインドウの数のタブで、分類欄を科学にして、
書式コードの欄で小数点以下の0を増やします
###の表示になってしまったら、セルの幅を大きくすると、正しく表示されます。
salome-start29

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

4. 要素番号を挿入する
salome-start30
クリックすると大きくなります。


5. 要素データの節点番号順を入れ替える
salome-start31
クリックすると大きくなります。


文章で書くと簡単なのですが、実際やってみるとちょっと大変です。

細かく説明すると、それだけで1週間ぐらいかかりそうなので、ご自分で行う方は図を参考にチャレンジしてください。。。

出力とcgxへの読み込みは次回説明します。

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

技術・工学ブログランキング
↑もしよかったらクリックしてください。ランキングがあがります。。。

テーマ:宇宙・科学・技術 - ジャンル:学問・文化・芸術

  1. 2009/04/16(木) 21:53:33|
  2. Salome
  3. | トラックバック:0
  4. | コメント:0

SalomeのメッシュデータをCalculiX用に変換してcgx読み込ませる

さて、前回までOpenOffice Calc上でデータの並びをCalculiXに対応させました。

今回は出力して、cgxに読み込ませます。

まず、OpenOffice Calcでファイル→名前をつけて保存とします。

ファイルの種類はテキストcsvを選択します。

さらにここで、フィルタ設定を編集するにチェックを入れます。

いれないと、スペース区切りで出力され、cgxで読み込むことができません。

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

ここで保存を押すと、テキストのエクスポートというウインドウが出てきますので、フィールドオプションのフィールド区切り記号を

, (コンマ)

に指定します。

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

ファイルガ出力できたら、Open Officeは終了します。

次にできたcsvファイルをテキストエディタで開きます。

まず1行目に節点データのヘッダをいれます。

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

次に、節点データと要素データの間に要素データのヘッダを入れます。

要素タイプは10節点4面体要素なので、C3D10となります。

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

これでファイルを保存します。

ファイル名は変えてもよいし変えなくてもよいのですが、ここではtest..mshというファイル名で保存したとします。

ここで、cgxを立ち上げます。

cgx -c test.msh

要素が正しく読み込まれました。

境界条件、荷重条件がつけば計算もできます。

salome-start36
salome-start37
クリックすると大きくなります



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

技術・工学ブログランキング
↑もしよかったらクリックしてください。ランキングがあがります。。。

テーマ:宇宙・科学・技術 - ジャンル:学問・文化・芸術

  1. 2009/04/19(日) 21:06:11|
  2. Salome
  3. | トラックバック:0
  4. | コメント:0

フリーソフトSalomeの3D-CAD機能(形状作成機能)をさぐる

さて、なぜLinuxのSalomeをわざわざインストールしたかというと、

3D形状作成機能が強力そうにみえたからです。

わたしが思うに、3D-CADの基本的な形状作成機能は以下の3段階あると思っています。

1.基本的な形状から積み上げて作っていく
点から線を作成し、線から面を作成し、面から立体を作成する、といった感じです。
基本ではあるのですが、実際の製品の3次元図面この手順で作ろうとすると、非常に大変です。。。

2.押し出し機能を使う
断面が一定の立体に限られてしまいますが、点と線から立体をつくるよりはかなりラクです。

3.Boolean機能(ブーリアン演算機能)を使う
これができれば、3D-CADとしては結構なもの、なのではないでしょうか。
他のCADソフトでかかれれたデータをメッシュが切りやすいように分割する事も可能になります。


押し出し機能とブーリアン演算はプログラム的にもなかなか難しいそうで、これがフリーの3D-CADやモデラーが少ない原因かもしれません。。。

ところで、SalomeをGeometryモードにしたときに現れるアイコンを見ると、

Salome-3DCAD-BASIC-ICON
これらは点、線などの基本的な図形を使うときに使いそうです。

Salome-3DCAD-Extrude-ICON
これらは押し出し機能を表しているようです

Salome-Extrude-BOOLEAN-icon
これらはブーリアン演算しそうな感じです

ということで、上の3機能が揃っているように見えます。

マニュアル読むのが面倒なので、実際に形状作りながら試してみたいと思います。



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

技術・工学ブログランキング
↑もしよかったらクリックしてください。ランキングがあがります。。。

テーマ:宇宙・科学・技術 - ジャンル:学問・文化・芸術

  1. 2009/04/20(月) 20:42:46|
  2. Salome
  3. | トラックバック:0
  4. | コメント:0

フリーのプリポストSalomeボルトのような形状を作ってみる(1)

それでは、まずブーリアン演算機能を見てみたいと思います。

下図のようなボルトみたい構造物を作りながら、Salomeの機能を探っていきたいと思います。
salome-bolt0
クリックすると大きくなります。

まず、直径10、高さ50の円柱を作成します。

押し出しで作ってもよいですが、ここではプリミティブを利用します。

円柱の形をしたボタンを押します。

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

”Cylinder”の枠の中にある右側のラジオボタンを押します。

これは原点を起点にして高さ方向がz方向になるような円柱を作るモードです。

Radius 10
Hight 50

を入力します。

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

OKを押すと円柱が出来上がります。

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

次に円柱の上面に合わせて半径30、高さ10の円柱を作ります。

前と同じように円柱のボタンを押します。

今回は左側のラジオボタンを押します。

これは、起点となる点、高さ方向のベクトルと、半径、高さを入力して円柱を作ります。

よって、起点となるポイント、ベクトルを作成する必要があります。

起点を現在の円柱の上面の中心、高さ方向をz方向の負の方向にします。

つづく


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

技術・工学ブログランキング
↑もしよかったらクリックしてください。ランキングがあがります。。。

テーマ:宇宙・科学・技術 - ジャンル:学問・文化・芸術

  1. 2009/04/21(火) 22:10:28|
  2. Salome
  3. | トラックバック:0
  4. | コメント:0

フリーのプリポストSalomeボルトのような形状を作ってみる(2)

前回からのつづき。。。

まず、円柱の上面の中心座標(0,0,50)にポイントを打ちます。

ポイントを打つボタンは

salome-bolt11.png
です。

次のウインドウが出てきますので、座標を入力します。

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

Apllyをおして、次は原点座標(0,0,0)を入力します。

OKを押して2つのポイントができています。

次に、ベクトル作成ボタンを押します。

salome-bolt06
クリックすると大きくなります
以下のようなウインドウが出てきますので、

point1にVertex_1

Point2にVertex_2

を選択します。

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

選択は画面右側のObject BrowserのGeometryを"+"をクリックして展開するとVertex_1、Vertex_2が出てきますので、それをクリックすると選択できます。

最初は選択の仕方に戸惑うと思いますが、なれればできるようになります。。。。

OKを押すとベクトルが作成されます。

これで2つ目の円柱を作る準備ができましたので、円柱ボタンを押して、以下のように入力します。

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

OKボタンを押すと2つ目の円柱ができたことが分かります。

上のメニューバーのViweing→Display mode→Shadingを選択するとシェイディング表示されます。

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

しかし、これでは1つ目の円柱と2つ目の円柱が重なった部分が存在します。

その部分にBoolean演算をしてみたいと思います。


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

技術・工学ブログランキング
↑もしよかったらクリックしてください。ランキングがあがります。。。

テーマ:宇宙・科学・技術 - ジャンル:学問・文化・芸術

  1. 2009/04/22(水) 21:28:09|
  2. Salome
  3. | トラックバック:0
  4. | コメント:0

フリープリポストSalomeの3D形状作成機能でブーリアン演算(和)を行ってみる

今回は重なっている2つのソリッド(立体)をひとつにします。

ブーリアン演算で言うところの”和”です。

CADの使用者が計算しているわけではないのに”演算”というのは個人的には違和感があるのですが。。。

Salomeではまず、Fuseのアイコンを押します(下図)

salome-3Dcad-fuse01
クリックすると大きくなります。

ちなみに、日本語ではヒューズと読み、電気機器のヒューズと同じで、溶けるという意味です。

CAD上で2つソリッドが溶けて、ひとつになるというイメージでしょう。

アイコンを押すと、以下のようなウインドウが出てきますので、2つの立体(Cylinder1とCylinder2)を指定します。

salome-3Dcad-fuse02
クリックすると大きくなります。

OKを押すとObject BrowserにFuse1という形状が出てきます。

salome-3DCAD-fuse03
クリックすると大きくなります。

本当にできているか確認するために作成したFuse1のみ表示してみます。

以下のようObject Browser内のFuse1を右クリックして、Display Onlyを選択するとFuse1の未表示されます。

salome-3Dcad-fuse04
クリックすると大きくなります。

きちんとできているのがわかります。(マウスポインタを上におくとすべての部分選択されるのがわかります)

salome-3Dcad-fuse05
クリックすると大きくなります。

3D-CADの操作では、ここで前作った形状(Cylinder1,Cylinder2)はいらなくなるので、削除したいのですが、削除しようすると以下のようなメッセージが出て怒られてしまいます。。。

salome-3Dcad-fuse06
クリックすると大きくなります。

どうやら作った形状は残さなければならないようです。

メッシュはFuse1のみ切るように指定することができます。

salome-3Dcad-fuse07
クリックすると大きくなります。



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

技術・工学ブログランキング
↑もしよかったらクリックしてください。ランキングがあがります。。。

テーマ:宇宙・科学・技術 - ジャンル:学問・文化・芸術

  1. 2009/04/23(木) 19:53:42|
  2. Salome
  3. | トラックバック:0
  4. | コメント:0

フリーのプリポストSalomeの3D形状機能でブーリアン演算(差、積、断面)を使ってみる

Salomeで形状のブーリアン演算のつづきです。

まず、積の機能から見てみます。

積は2つの形状の共通部分を取り出します。

Salomeアイコン上ではcommon

common01

になります。

ボタンを押すと以下のようなウインドウが出てくるので、2つの円柱を選択します。

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

OKを押すとObject Browser上に作成した形状(common01)ができますので、それのみを表示すします。

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

以下のように、共通部分の形状が現れます。

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

次に差を見てみます。

差はCutで、重なっている部分を引き去ります。

アイコンは

cut01

です。

和と積は数学でも計算順を変えても結果は変わらないのですが、

差は引く方と引かれる方の順番を変えると結果が変わります。

以下のように設定すると、

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

上部の皿の部分から軸の部分が引かれてドーナツ方の形状が結果となります。

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

最後に断面ですが、重なっている部分の断面出しをします。

section01

以下のように指定すると、

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

以下のように断面境界が形状として得られます。

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


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

技術・工学ブログランキング
↑もしよかったらクリックしてください。ランキングがあがります。。。

テーマ:宇宙・科学・技術 - ジャンル:学問・文化・芸術

  1. 2009/04/26(日) 21:07:29|
  2. Salome
  3. | トラックバック:0
  4. | コメント:0

Salomeで押し出しソリッドを作成するための面を作成してみる

前回までは、CADのブーリアン演算機能を見てきましたが、

今回からは押し出し機能を見てみます。

押し出し機能もいくつかある様なのですが、

まずはアイコンで一番左側に表示されている

extrude01

を押してみます。

以下のような画面が現れます。

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

どうやら押し出される面と、押し出す方向を指定するベクトルが必要なようです。

ところが、面を作るアイコンが見当たりません。。。

しょうがないので、まず円(円周)を書くことにします。

円周は

extrude03

のアイコンからから書きますが、その前に原点と面の法線ベクトルが必要なので、

原点と(0,0,40)に点を作成し、その間でベクトルを作成しておきます。

点とベクトルを作成した後、アイコンを押し、

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

center pointに原点の点、vectorに作成したベクトルを指定し、Radiusは10とします。

OKを押すと円が現れます。

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

しかし、これは円周で円形の面ではありません。。。

この円周を面にする必要があります。

つづく。。。


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

技術・工学ブログランキング
↑もしよかったらクリックしてください。ランキングがあがります。。。




テーマ:宇宙・科学・技術 - ジャンル:学問・文化・芸術

  1. 2009/04/27(月) 23:02:26|
  2. Salome
  3. | トラックバック:0
  4. | コメント:0

Salomeで押し出しソリッドを作成してみる。

前回の続き。。。

円周までできたので、それを面にします。

そのメニューは、メニューバーから

New Entity → Build → Face

です。

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

以下のようなウインドウが現れます。

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

ObjectsにCircle1を選択してOKを押せば、円形の面が出来上がります。。。

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

あとは、

extrude01

のアイコンを押して、以下のように押し出しをすれば、

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

円柱を作成できます。

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


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

技術・工学ブログランキング
↑もしよかったらクリックしてください。ランキングがあがります。。。


  1. 2009/04/28(火) 21:04:34|
  2. Salome
  3. | トラックバック:0
  4. | コメント:0

Salomeその他の面押し出し機能

前回はベクトルと押し出し量を設定して面を押し出してソリッドを作りました。

その他にも押し出しのアイコンがあるので試してみます。

まずはRevolution

revolutiom01

いわゆる回転押し出しです。

以下のように押し出す面と、軸になる線(ライン)、回転角度をを指定すれば、作成できます。

revolution02

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


次はPipeです。

pipe1

パス(通り道)に沿って押し出す機能です。

パスは直線でも曲線でもよいようです。

下図の黄色い円を斜めの直線に沿って押し出します。

pipe3

アイコンを押すと以下のようなウインドウが出てきますので、押し出される図形とパスとなる線を指定します。
pipe2
クリックすると大きくなります

以下のような図形が作成されます

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


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

技術・工学ブログランキング
↑もしよかったらクリックしてください。ランキングがあがります。。。

テーマ:宇宙・科学・技術 - ジャンル:学問・文化・芸術

  1. 2009/04/29(水) 22:16:50|
  2. Salome
  3. | トラックバック:0
  4. | コメント:0

Salomeで線を押し出して面を作ってみる


押し出しは、面に対してだけではなく、線に対しても可能です。

例えば、下の赤いに対して、白いベクトル方向に押し出すことができます。

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

使用するメニューは、面の時と同じく
extrude01

です。

以下のように面が作成されます。

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

また、押し出しとは少し違うのですが、

filling01

のアイコンを押してfilling機能を使うと、

以下のような同一平面上にない3本のラインを

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

なめらかに結合した面を作成してくれます。

ラインを作成した後、

New Entity - Build - Compound

で面としてつなぐラインをすべて選択し、一体化しておく必要があります。

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

Fillingではその一体化したCommpoundを選択すれば、

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

面が作成されます。
filling05
クリックすると大きくなります。


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

技術・工学ブログランキング
↑もしよかったらクリックしてください。ランキングがあがります。。。


テーマ:宇宙・科学・技術 - ジャンル:学問・文化・芸術

  1. 2009/04/30(木) 22:41:07|
  2. Salome
  3. | トラックバック:0
  4. | コメント:0

プロフィール

tsunodako

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

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

ブログ内検索

カレンダー(月別)

03 ≪│2009/04│≫ 05
- - - 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 - -

最近の記事

カテゴリー

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

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

最近のコメント

最近のトラックバック

フリーエリア

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

RSSフィード

リンク

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

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