20170403

FreeCADでせん断応力を図示したい

FreeCADの結果の表示では、せん断応力が見られない

せん断応力を図示したいのに、FreeCADの解析結果は、ミーゼス応力しか図示しない。
このままでは、勉強にならないと思い、方法を考えた。

結論だけ言うと、Calculixユーザーは、FreeCADを使わず、可視化はSciTEを使っているのではないか?という事を考えた。

応力は、コンター図で出すけれども、出力結果は、本当は行列で書いてある。

応力は、3×3行列で表す。

$$\left[ \begin{array}{ccc} \sigma_{xx} & \sigma_{yx} & \sigma_{zx} \\ \sigma_{xy} & \sigma_{yy} & \sigma_{zy} \\ \sigma_{xz} & \sigma_{yz} & \sigma_{zz}\end{array} \right]$$


xx, yy, zzとなっている成分が、垂直応力。
それ以外が、せん断応力。

「九つもあるのに、どの値を採用して図示するんだよ。」
「ミーゼスだけあれば十分だ。」
「これは何か『難しい事考える時』用の何かだ」

とか思っていたが、違った。ミーゼス応力は、この行列を使って計算しなければならない。

どこで、こんな行列手に入れるんだよ。

FEMの出力データにあった。

FreeCAD内の生データ(CalculiXの出力データ)はどうなっているのか

FreeCADは、FreeCAD自体がFEM計算をするわけではなく、計算はCalculiXというソルバーを使用している。

FreeCADは、CalculiXのインプットファイルを作っているだけ。計算は別のソフトでやっている。
そのインプットファイルは、*.inpとして生成されて、計算後も消されずに残っている。

CalculiXは、*.datファイルを出力する。FreeCADは、それを読み込んで、図示している。

FreeCADでモデル作成、材質、荷重、拘束の設定
↓ .inp
CalculiXでFEM計算
↓.dat
FreeCADで結果表示

*.datテキスト内では、

stresses (elem, integ.pnt.,sxx,syy,szz,sxy,sxz,syz) for set EALL and time  0.1000000E+01

149 1 2.716836E+02 1.636583E+00 -1.209653E+00 -5.855769E-01 -4.171179E+00 6.183829E-01
149 2 -6.877506E+01 -5.632153E+00 -5.479474E+00 1.210101E+00 -1.190165E+01 2.512731E-01
149 3 2.635816E+02 2.490188E+00 1.877574E+00 -1.603586E+00 -8.130017E+00 3.686474E-01
149 4 2.627190E+02 2.520706E+00 2.640285E+00 -1.261953E+00 -6.283733E+00 6.539424E-02
150 1 -2.372774E+02 1.866060E+00 1.133034E+00 -8.994780E-01 -7.004449E+00 1.373777E+00
150 2 5.221532E+01 -3.551561E+00 -4.135341E+00 1.551625E+00 -1.317854E+01 2.862696E-02
150 3 -2.487131E+02 2.278582E+00 1.991986E+00 -1.559371E+00 -7.045533E+00 6.754511E-03
150 4 -2.484582E+02 1.891874E+00 2.751451E+00 -8.892533E-01 -5.645305E+00 -2.644595E-01
151 1 3.291066E+01 -7.674390E-01 2.554677E+00 1.290808E+00 -1.132319E+01 -2.195519E-01
151 2 -2.760238E+01 -1.395607E+00 -3.006674E+00 9.515302E-01 -9.440192E+00 1.900550E+00
   ・
   ・
   ・

こんな感じで、316行分続く。
一つのエレメントに4個積分点があって4行消費している。
確かにこのモデルでは、ソリッドは79個分割されていた。合ってる。

敢えて日本語で
エレメント番号, 積分点, 応力xx, 応力yy, 応力zz, 応力xy, 応力xz, 応力yz…後は知らん。

垂直応力の成分は三つ。xyzの三つ。
せん断応力の成分は、sxy, sxz, syz(sxxとかもあるので、shear xyの略ではなく、 stress xyの略だと思う。)だけしかなくて、syx, szx, szyがない。反対方向側は、同じ値だから書かないらしい。

だから、6つしか応力成分がない(エレメント番号や、積分点番号を除く)が、3つ分省略されているので、ここのつあるという。
九つあるので、3*3の行列になる。

三角形メッシュで作った、四面体なので、一つのエレメントに対して、四つの応力があるのだろうと思っている。
応力の定義は、連続体内部に定義した微小面積(この場合、ソリッドの一面だろうか)に作用する、単位面積当たりの力。

面積は、出てこなかったが…大丈夫だろうか。

この場合、ミーゼス応力ってどこ?

上記の様に、行列で応力を表現した場合、ミーゼス応力ってどこなのか。
正解は、「まだ(計算してないから)無い。」だと思う。

ミーゼス応力は、こっちの式が、いつも出てくるけど、σの下にxが付いていないのが、いっつも気にはなっていた。

$$\sigma_{mises}=\sqrt{\frac{(\sigma_{1}-\sigma_{2})^{2}+(\sigma_{2}-\sigma_{3})^{2}+(\sigma_{3}-\sigma_{1})^{2}}{2}}$$


σ1って、σxってことじゃないの?
σ1は、σxではありません。値も違う。
σ1は、xyz座標ではなく、せん断応力の部分が0になるような座標軸に変えたverの行列の、対角成分(0斜めの残った部分)の内、大小比較した末一番大きい成分の事。(3*3行列の11成分ではない。)
$$\left[ \begin{array}{ccc} \sigma_{uu} & 0 & 0 \\ 0 & \sigma_{vv} & 0 \\ 0 & 0 & \sigma_{ww}\end{array} \right]$$

いちいち、対角化しなくてもできる式は、こちら。

$$\sigma_{mises}=\sqrt{[(\sigma_{xx}-\sigma_{yy})^2+(\sigma_{yy}-\sigma_{zz})^2+(\sigma_{zz}\sigma_{xx})^2]/2+(\tau_{xy}^{2}+\tau_{yz}^{2}+\tau_{zx}^{2})\times 3}$$

↓間違った式(ウィキペディアに書いてあったことをうのみにしてしまった。)

$$\sigma_{mises}=\sqrt{3}\times\sqrt{-(\sigma_{xx}\sigma_{yy}+\sigma_{yy}\sigma_{zz}+\sigma_{zz}\sigma_{xx})+\tau_{xy}^{2}+\tau_{yz}^{2}+\tau_{zx}^{2}}$$

↑間違った式(ウィキペディアに書いてあったことをうのみにしてしまった。)

xyz座標系であった、せん断応力の影響もちゃんと入っている。

こんなこと分かっても、せん断応力は、…FreeCADで図示できないけどね。

Calculixの図示をしている絵を、何枚か見ている。

Calculixの図示を、FreeCAD以外でしている絵を、何枚か見ているので、*.datを図示する方法が絶対にあるはずなんだ。
秋田大のコレとか、どうやってんだよごちゃごちゃしててよく分からない。

Calculixでできるらしいという事が、動画で分かった。

FreeCADは使わず、CalculiXだけで計算する手順も気になるところだがやらない。やってる暇は今はない。
フーリエも中断中だ。

せん断応力、SciTEを使ってあっさり見れた

FreeCADよりも前に、bConverged CalculiXというのを、以前インストールしていた。
かなり前の事なので、詳細は、忘れた。

コマンドラインで扱うソフトだったので、「これ以上なんか覚えるのは、面倒だ」と思って、放置していた。
コマンドライン抜きで、扱えた。

前提

  • bConverged CalculiXがインストールされている
  • FreeCADで解析して、.inpと.datを出力している。

手順

  1. SciTEを起動
  2. ABAQUS input(inp) として、inpと.datを開く。(同時に開いてもいい)
    タブが二個開いて、エディタの様に使えるようになる。
  3. *inpのタブを開き、Tools→Post Processを押す
    モデル画像が図示される。
    左ドラッグで回転
    右ドラッグで移動
  4. 四角で囲われた画像の部分を避け、クリック→Datasets→ここで三択。
    ここで、選んだ1〜3に応じて、一番下(4番目)のEntityで選べる項目が変わる。

    1. DISP:これを選ぶと、変位が選べる
      大げさに描くには、
      クリック→Viewing → Toggle Add-Displacement
      クリック→Animate → Tune-Value → Tune 10とか(任意)
      Tune
      10はやればやるほど、積算されていくので、注意。

    2. STRESS :せん断応力、ミーゼス応力などなど

    3. TOSTRAIN :多分ひずみ。Eと書いてあるし。epsilonの事かと。
  5. 画像を保存するため、クリック→Hardcopy→任意のフォーマットで画像が、保存される。
    ブラウザは開かない。勝手に保存される。
    場所は、カレントディレクトリなのか何なのかに保存された。
20170402-01.png
20170402-02.png

20170402-03 hcpy_2.png

できる事が分かった時点で、時間切れ。
せん断応力では面白そうな図は描けないモデルだと気づいたので、ミーゼス+変位で描いた。
メッシュが三角だと、何か違和感がある。

成果

  • せん断応力は描ける(結局描かなかったが!)
  • ひずみも書けるようになった!
(20170409)式の間違いを修正
【FreeCADの最新記事】
posted by yuchan at 07:00 | Comment(0) | FreeCAD
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント: