Jump to content
Sign in to follow this  
アルテア福岡

繊維配向テンソルと繊維配向ベクトル

Recommended Posts

まず、Multiscale Designer が扱える繊維配向テンソルって何という話をします。

 

繊維配向テンソルは、繊維の主な3つの配向方向と、それらに配向している繊維の割合がテンソルで示されています。テンソルの3つの固有ベクトルが、主となる配向方向で、3つの固有値がそれぞれの繊維の割合です。応力テンソルに対する主応力の方向と大きさと同じ関係です。

 

例えば 下のテンソルの固有ベクトル v1, v2, v3 と固有値 g1, g2, g3 は

  |0.7 0   0  |
A=|0   0.2 0  |
  |0   0   0.1|
   |1|     |0|     |0|
v1=|0|, v2=|1|, v3=|0|
   |0|     |0|     |1|

g1=0.7, g2=0.2, g3=0.1 となります。これらは存在確率の強さを示します。固有ベクトルを連続的につなぐような形で、固有値を使って確立密度関数 (PDF) と言うのを作って、連続的に分布させます。

2019-02-20_9-58-56.png.e6d0cc527302dee1ad2d226242015096.png

 

決して

|0.7|
|0.2|
|0.1|

の方向に繊維が向いているという意味ではありません(私も最初勘違いしてました)。


 

このように、向きと割合という2つの情報を持てるのが繊維配向テンソルということになります。

Share this post


Link to post
Share on other sites

では、繊維配向ベクトルは何でしょう。繊維配向ベクトルには向きの概念のみあります。

|0.5|
|0.5|
|0  |

と言ったら、XY  平面で X を 0 度と考えれば 45 度に繊維が向いているという意味になります。割合という概念はありません。

 

テンソルが 6 成分で、ベクトルが 3 成分ですので、割合という情報の欠落は仕方ないところでしょう。

 

ベクトルはテンソルが持つ情報を持たないので、これはもう数学的に等価なテンソルに戻すすべはありません。しかし、等価ではなくとも、足りない3成分を利用者側が何かを仮定して補えば、何か似た感じのテンソルにはできるということです。

Share this post


Link to post
Share on other sites

繊維配向ベクトルを繊維配向テンソルに復元するアイデアその1です。

 

繊維配向ベクトルをそのまま X, Y, Z 方向に向いている繊維の割合と受け止めてしまうことです。たとえばベクトルが

|0.5|
|0.5|
|0  |

なら、テンソルを

  |0.5 0   0  |
A=|0   0.5 0  |
  |0   0   0  |

としてしまうことです。つまり 45度方向を向いていると解釈するのではなく、0 度と 90度が半分ずつあると解釈したわけです。

 

これは一見うまく行きそうで、とても簡単な方法ですが、ひとつ困ったことがあり、45度と -45度を区別できません。例えば、-45度のベクトル

| 0.5|
|-0.5|
| 0  |

に対しても、確率がマイナスなんてことはないので、全く同じ A をつくることになってしまいます。結果 45度と -45度で、同じ物性が与えられることになります。ものすごくあっちこっちの向きに繊維がちらばっているような製品には、これで十分かもしれません。簡単さの代わりに、情報をあきらめるということです。

 

Share this post


Link to post
Share on other sites

繊維配向ベクトルを繊維配向テンソルに復元するアイデアその2です。

 

繊維配向ベクトルの向きに繊維が 100% あり、その他の方向には、0% である、と解釈する方法です。面倒くさいですが、アイデア1の 45, -45度の違いも区別できます。順番に説明しましょう。

 

繊維配向ベクトルを v1 としたら、v1 に直交する v2, v3 を何とか見繕ってください。この3つが繊維配向テンソルの固有ベクトルということになります。そしたら繊維配向ベクトル行列を V=[ v1 v2 v3] と書いておきます。繊維配向テンソルの固有値が割合ですので、固有値は、1 0 0 と考えてしまいます。v2, v3 の方向には存在しないということですね。こちらも行列形式で次のように書いておきます。

  |1 0 0|
G=|0 0 0|
  |0 0 0|

 

そうするとあら不思議 A=V G VT  (T は転置行列、縦横入れ替えたもの)と言う形で、繊維配向テンソル A が逆算できてしまうんです。その考え方で私が書いてみた Compose の変換スクリプトはこちらです。

 

 

 

Share this post


Link to post
Share on other sites

ベクトルがテンソルに対して 3 成分の情報がないということは、逆に言えば、その部分を好きに解釈して、復元できるということです。ですので皆さんのアイデア、実装があればぜひ、投稿してください。

Share this post


Link to post
Share on other sites

今度は、HyperMesh で行った繊維配向テンソルのマッピングの結果を可視化する方法です。MultiScale Designer 全く関係なくて、HyperMesh と HyperView の作業になります。

 

マッピング自体は下の例題を参考に行ってください。これはマッピングが終わってからの説明です。

http://丈犖.跳.jp

 

マッピングが終わると、このように、テンソルの書かれたテーブルが出てます。これを HyperView でテンソル演算して、主方向を描かせると良さそうです。

image.png.606ce221f45f7398077975992806bab3.png

 

HyperMesh の Tables (表ですね) は Matrix Browser で扱えるので、Matrix Browser を立ち上げて、作業しましょう

image.png.261b062ee6df2fb3415fcadcfd3326fb.png

 

image.png.f3e87c65b462e8e80c2018f632864140.png

 

これで HyperView で読めるデータを作れます。

image.png.97a65fd765e9afffb8db1816ff9ffe64.png

 

image.png.f88b2625c2b82be56e2e677e2335e9d9.png

 

image.png.e722ec25d9c1e79a5864aaf24a3f2196.png

 

もう一息です。HyperView で可視化しましょう。

2018-12-25_13-25-17.png.055c74e7f0f184847cfc2b24b4c164e5.png

 

実は、テンソルではなくて、6個のばらばらなスカラーとして読み込まれてるので、テンソルとして扱わせます。

image.png.562534cc648dea769a75b680c6d0cfbe.png

 

image.png.7eb54e3ce4ceab7d898143e20332188b.png

 

image.png.5c24a322851dd0fea8e1c0e5c8fc992c.png

 

 

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
You are posting as a guest. If you have an account, please sign in.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

×
×
  • Create New...