#author("2022-04-13T15:33:19+09:00","default:kouzouken","kouzouken") #author("2022-09-30T17:43:40+09:00","default:kouzouken","kouzouken") #contents [[UEFI_BIOS]] ちなみに、Salome-Meca2018は、見た目、操作方法など、以下とほぼ変わらないと思います。 *資料 [#m539ac22] -[[SALOME-Mecaの使用法解説:http://opencae.gifu-nct.ac.jp/pukiwiki/index.php?SALOME-Meca%A4%CE%BB%C8%CD%D1%CB%A1%B2%F2%C0%E2]] -[[JSWG - Salome-Meca活用研究会:http://cae21.info/jswg/index.php/home_ja/introduction_div/]] --[[AsterStudyの使い方:http://cae21.info/jswg/index.php/download_file/view/73/136/]] *準備 [#wfcd5cd3] **インストール [#j06d6ad3] -[[Code_Asterのページ:https://www.code-aster.org/V2/spip.php?article303]]から、Salome-Meca 2017を"~/kouzou/.Salome-Meca"あたりにダウンロード。 --Salome-Meca-2017は2017/09リリースなのだが、その2ヶ月後にSalome-Meca2017.0.2にリリースされて、元のSalome-Meca2017がダウンロードページから消えてしまった。いつもなら古いバージョンもダウンロードページに残されるのに、それが消されているということは、9月リリースのSalome-Meca2017には何か致命的な欠点でもあるだろうか? [[Code_AsterのNews:https://www.code-aster.org/spip.php?article1043]]あたりをざっと探してみたが、理由が見当たらない。一応、ダウンロードページのSalome-Meca 2017.0.2のURLの".0.2"を消すと、元の2017がダウンロードできるみたいだけど。 -"$ tar xvzf alome-Meca-2017-LGPL-3.tgz"で、展開。 -"$ ./Salome-Meca-2017-LGPL-3.run"で、インストール開始、 -"Enter the salome_meca install directory [default=/home/kouzou/salome_meca] :"は、後でディレクトリごと動かせばいい(?)ので、とりあえず"Enter". -"salome_meca is in English, do you want to be in French ? [y/N] :"は、英語がいいので"N". -インストール終了後、アプリケーション -> 教育・教養 -> salome_meca V2017 で立ち上げる。 **unicode decode error [#yee0143c] これをやらないと日本語環境のUbuntuでは計算ができない。 (Salome-Meca2017での話で、Salome-Meca2017.0.2では試していないので分からない) [[sitecustomize.py:http://www.str.ce.akita-u.ac.jp/~gotouhan/j2017/kondo/tyousa/salome17/sitecustomize.py]]を"~/salome_meca/appli_V2017/lib/python2.7/site-packages/salome"にダウンロードする。 -Salome-Meca2019でこれをやると逆にエラーを誘発するかもしれない(大丈夫な場合もある)python3ではutf-8がデフォールトなので、utf-8を指定するとかえっておかしくなる。 --https://gr8developer.blogspot.com/2019/01/python3sitecustomizepy.html --参考URL ---https://twitter.com/mmer547/status/903788754506309632 ---https://twitter.com/freekaos/status/905068369237336066 -ちなみに、システム -> 設定 -> ユーザ向け -> 言語サポート -> 地域フォーマット -> 日付の表示:English -> システム全体に適用 -> 再起動 でも使えるようになる。 **日本語化 [#oae8436a] -file -> preferences -> SALOME -> Current language -> ja -> Apply -> OK -一旦Salome-Mecaを閉じて、また立ち上げる。 **不具合 [#i8ee4487] ***Ubuntu18(サーバー版)等で、Salome-Meca2019や2018が起動しない場合がある。 [#o862af5f] -https://www.code-aster.org/forum2/viewtopic.php?id=24470 salome_meca/appli_V2019.0.3_universalの中の実行ファイル(salome)を直接 起動した場合のエラーの最後の行は、 RuntimeError: Process 7208 for /Kernel/Session not found みたいな感じ。以下をインストールすると解決 sudo apt install libQt5* net-tools libnlopt0 ***hdfファイルを読み込むとエラー [#n775e1cf] Ubuntu18(クライアント版)のsalome-meca 2019にhdfファイルを読み込もうとしたら、 ドキュメントオープン中に不明な問題が発生しました のエラー。「ダウンロード」等、全角文字のディレクトリ内のhdfを読み込もうとすると出るようだ。Salome-Meca 2018だと大丈夫のようだが。 ***「メッシュを作成」の際にエラー [#keea8e4c] Salome Exception:liblapack.so.3:共有オブジェクトファイルを開けません: そのようなファイルやディレクトリはありません liblapack3をインストールすれば解決。 *片持ち梁 [#x698ff26] 10mm*10mm*100mmの直方体の梁(ヤング率は木材ぐらい)を作って、一端を''面拘束''の固定端、他端(自由端)を''載荷面''にして荷重をかけ、たわみが$\frac{P\ell^{3}}{3EI}$とどれくらい合うか確認してみる。 http://www.str.ce.akita-u.ac.jp/~gotou/kouzou/png/kata1.png 幅方向:x , 載荷方向:y , 軸方向:z とした。 **「geometry」で形状作成 [#m41049f3] -Salome-Mecaの起動:アプリケーション->教育・教養->salome_meca V2017 http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s01geometry.png -モデルの新規作成:SALOMEと書かれている上部プルダウンメニューからGeometryを選択-> 「モジュールのアクティブ化」ウィンドウが現れるので「新規作成」を選択 http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s02sinki.png -新しいエンティティ->基本図形->ボックス->「ボックスの作成」ウィンドウが現れる http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s03bokkusu.png -Dx, Dy, Dzに寸法を入れる。単位は自分で決められるが、mm(長さ)-N(力)系にするのがいいだろう(ここでは例えば、10*10*100とする)。後藤の好みでは、梁軸がz, たわみ方向がyとか(この辺は好み)。->「適用して閉じる」 http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s04b_tekiyou.png -オブジェクトブラウザーにBox_1(上でボックスにつけた名前)が現れる。 http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s05o_burauzaa.png -単純梁の場合[[「geometry」で形状作成:https://www.str.ce.akita-u.ac.jp/cgi-bin/pukiwiki/?cmd=read&page=Salome-Meca2017&word=geometry%E3%80%8D%E3%81%A7%E5%BD%A2%E7%8A%B6%E4%BD%9C%E6%88%90#m41049f3]]の続きはこっち。 ***境界条件、荷重条件などを設定する箇所をグループ化 [#v42be933] -目的とする物体(box1)を右クリックして、「create group(グループを作成)」 http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s06guruupu.png -点(+), 線(/), 面(□), 立体(立方体マーク)のどれかにチェックをいれて、固定や載荷をするところを選択。固定端の面固定なら、面を選択。 --後で何度もここを選択するので、名前の「Group_1」をfixとかkoteiとかの分かりやすい名前に書き換える http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s07kotei.png ---超重要:バージョンによる(Salome-Meca2013では)かもしれないが、名前は8文字以下にしないと原因不明のエラーが出る!! ---確か、Salome-Meca2015~16ぐらいからは大丈夫になった。 -固定したい面を選択するために、ボックスを回転させたり移動させたりする方法は、以下の「移動方法」を参照 ***移動方法 [#f90acc1f] -回転は、玉に回転矢印の書いてあるところをクリックしてから、左クリックを押しながら回転させる http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s08kaiten.png -回転は、cntlと右クリックを押しながら動かす -並進移動は、cntlとスクロールボタンを押しながら動かす -拡大縮小は、ただスクロールする。あるいはcntlと右クリックを押しながら動かす -座標の原点側を固定端にするのであれば、回転させて固定端面を選択してクリック->選択された水色の外枠線が白に変わったのを確認して追加 http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s09koteitan.png -「追加」すると「31」と数値が表示されるのを確認して(違う面を選択した場合は違う番号になる)->「適用して閉じる」 http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s10tuika31.png -一つのツリーにまとまっていればOK http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s11b_kotei.png -同様の手順で載荷面を作る --グループの名前はわかりやすく saika とする http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s12b_k_s.png -そうすると、グループを作成されていないボックスの側面が消えてしまったりすることがあるが、その場合は、オブジェクトブラウザーのボックスの目玉マークをクリックすれば表示される http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s13medama.png **「mesh」で要素分割 [#nec0ba9a] -オブジェクトブラウザーの(固定面や載荷線などを含んだ)ツリーの元(例えばBox_1)を選択してから「Geometry」が表示されている上部のプルダウンメニューをクリックして「Mesh」を選択する。 http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s14mesh.png -上部ツールバーの「メッシュ」->「メッシュを作成します」->「メッシュを作成」ウィンドウが現れる http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s15m_sakusei.png -名前はひとまずMesh_1でいい -オブジェクトブラウザー内の選択したいボックス(Box_1)を選択すると、「メッシュを作成」ウィンドウのジオメトリに Box_1みたいに表示されることを確認。 ***四面体要素を使う場合 [#tf7f2f67] 曲面を含む立体をなめらかに要素分割する場合は、通常は四面体要素を使う。 長方形断面の梁の断面の応力分布を等間隔の方眼に可視化したいといった目的がある場合は、直方体要素を用いることもできる(後述)。 --拘束線や載荷線を含めてメッシュ分割する場合は、Partitionを選択(単純梁の載荷線、拘束線などを作るとジオメトリがPartitionとなるが、Partitionが生成されていない場合は、ジオメトリにBox_1を選択すればよい) --詳細設定セットの割当->3D Automatic Tetrahedralization を選択 http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s16wariate.png --要素長設定ウィンドウ(Max Size)が出たら、ある程度の精度が必要な場合は長さ1を目安に設定し、「OK」->「適用して閉じる」 http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s17nagasa.png --オブジェクトブラウザーにMeshが追加される http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s18o_mesh.png --下の「メッシュを作成」に進む ***直方体要素を使う場合 [#fce211f6] 長方形断面の梁の断面の応力分布や変位等を等間隔の方眼に可視化したいといった目的がある場合の話(既に上記で四面体要素に分割している場合は不要)。 --3Dアルゴリズム:Hexahedron(i,j,k) --詳細設定セットの割当から3D Automatic Hexahedralization を選択。 --セグメントの数を適当に(適切に)設定 ---↑の方法だと軸方向の分割数だけ荒くなってしまうので,予めGeometryで辺ごとにグループを作っておいて,MeshのSubmeshで辺ごとの分割数を指定するのがいい.それが面倒なら,直方体のLengthを各辺の約数にするとか. ---適用して閉じる ***メッシュを作成 [#lce27f47] -Mesh_1を右クリックして「メッシュを作成」 http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s19o_m_sakusei.png -節点数や要素数などが計算されて、3D(ボリューム)とかの箱の中に、色々と数字が入っていれば、たぶん大丈夫。ノード以外の箱がほとんど0だったら、計算されてない。 http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s20m_keisan.png -拡大してメッシュ分割されているのを確認する。 http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s21m_kakudai.png ***「geometry」でグループ化したグループをメッシュに反映させる [#q051d274] -オブジェクトブラウザーのMesh_1を右クリックし、「ジオメトリーのグループを作成」を選択 http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s22g_g_sakusei.png -「ジオメトリからグループを作成」ウィンドウが開くので、オブジェクトブラウザーのBox_1で作った固定面や載荷面のグループ(kotei, saika)をクリックする(複数を1個ずつ選択する場合はcntlキーを押しながら。最初のグループを選択した後、最後のグループをshftキーで選択すれば、すべてまとめて選択できる) -ジオメトリにkoteiとsaikaが追加されたのを確認->適用して閉じる http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s23g_k_s.png -オブジェクトブラウザーのMesh_1のツリーにkoteiとsaikaの「Groups of Faces」が追加されたことを確認。 http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s24o_k_s.png ***以下は落ち穂拾い [#v66da5de] -ビューアーのタブで、geometry表示でない?方の「VTK scene:1 - viewer:1」みたいなもう一つのタブを開くとメッシュ分割が表示されている。 -デフォルトは、ノード表示で点々しか表示されないので、物体を右クリックして、表示モードを「網かけ」とかにすると物体表面のメッシュが表示される。 -ちなみに、メッシュ分割後も右クリックで「create group」できる。 --AsterStudyへ行く前にGeometryで作った固定面、載荷面などを「ジオメトリのグループを作成」などでグループ化しておく。 ---要素かノードか(要素の方が、面載荷などはやりやすい) ---固定面、載荷面など複数の面をグループ化する場合は、Cntlを押しながら、左のウィンドウから選択 --meshを右クリックして、「convert to quadratic」をクリックし、applyすると、(中間節点を設けた)2次要素になるので粗いメッシュでも精度がよくなる。 **「AsterStudy」で材料定数、境界条件、荷重条件などの設定 [#bdc9997f] -AsterStudyのアイコンをクリックしてAsterStudyを立ち上げる。 --プルダウンメニューからAsterStudyを選んでもよい http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s25aster.png -上記の[[geometry」でグループ化したグループをメッシュに反映させる:https://www.str.ce.akita-u.ac.jp/cgi-bin/pukiwiki/?Salome-Meca2017#q051d274]]作業は重要なためやったことを確認する。 --これをしないと、AsterStudyで境界条件、荷重条件などを設定するときに、グループ名が表示されない。 ***「AsterStudy」全般について [#u31cd70f] -右側のEdit comandウィンドウでは、最低限入力が必要なところには赤字で*が付いている。 -何かおかしな設定をしていたら、文字が赤く表示される。 -「適用」あるいは「OK」すると、左側下のInformationウィンドウにcommファイルに書かれる内容が表示される。 -後から設定を編集し直したいときは、"Data Settings"にある直したい項目をダブルクリックする。 -右の"?"を押すと公式ドキュメントが開かれる。ただし、フランス語で書かれているので、URLの …/fr/… を …/en/… にすると英語版になって読みやすいかも。 -Salome-Meca2020以降を使用する場合は、コマンド名がフランス語になっているので、[[こちら:https://www.str.ce.akita-u.ac.jp/cgi-bin/pukiwiki/?Salome-Meca%E6%BC%94%E7%BF%92_%E7%89%87%E6%8C%81%E3%81%A1%E6%A2%81%282021%29]]を参照。 ***入力ファイルを作る [#k8b66ba4] -ツールバーの右上の方にあるAdd stage("{}+"こんなマーク)をクリック。すると、Data SettingsにStage_1が追加される。 http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s26kakko.png -以下の作業では、左側のData Settingsウィンドウ内のStage_1を選択したまま、ツールバーの"メッシュ△▽"みたいなのをクリックする。Stage_1を選択していないと、"△▽"は押せない。 http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s27sankaku.png ***各種設定の手順 [#xa79cf4d] AsterStudy上部にならんでいる、「メッシュ」「Model Definition」「Material」のプルダウンメニューを順番に選択し、それぞれの項目について、以下の手順で設定していく。 -メッシュ -> Read a mesh --Salome-Meca2021でフランス語になっている場合は、read a meshはLIRE MAILLAGE http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s28read.png --Mesh file location->Mesh_1(Meshで作ったもの) --Mesh file format->Med http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s29mesh1med.png ---20='0:1:2:4'の意味はよくわからない(違う数字になる場合もある) --OKをクリックすると、左側のData Settingウィンドウにmesh Read a meshができる。設定内容は、下のinformationウィンドウに表示される。 http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s30meshrm.png -Model Definition -> Assign finite element --Salome-Meca2021でフランス語になっている場合は、AFFE_MODELE -メッシュ : mesh(LIRE_MAILLAGE) (Read a mesh で付けた名前)が自動的に選ばれる(ちなみに、LIRE MAILLAGEはRead a meshのフランス語) http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s30a_model.png --At Least One -> Finite element にチェック --"0 items +"の+をクリックすると、"1 item"に変わり、 http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s31edit.png --Editが現れるのでクリックする。 http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s32pheno.png ---Exactly One : Everywhere : Yes (1材料なら) ---(2材料以上なら):Group of element -> Edit -> … ---Phenomenon -> Mechanicを選択すると、 http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s33items.png ---"0 items +"が現れるので、"+"のところをクリックすると、"1 item +"に変わり、その下に空欄と▽プルダウンが現れるので、▽プルダウンをクリックすると、 http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s34item.png ---プルダウンメニューが現れるので3D (立体要素なら)を選択 http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s35_3d.png --OKをクリックすると、プルダウンが消えて"At Least One"の画面に戻るので、もう1回OKをクリックすると http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s36mesh.png --左側のData Settingsに"model"が追加される。それを選択状態にして, http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s37model.png -Material -> Define a material --Linear isotropic elasticity にチェック(線形弾性体なら) -> Edit... http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s38.png ---Young's modulus : ヤング率を入力 ---Poisson's ration : ポアソン比を入力 http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s39.png 「OK」で閉じる。 -Material -> Assign a material --At Least One : Model にチェック -> model(AFFE_MODELE) (Assign finite element で付けた名前) http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s40.png --Material assignement -> "+" -> Edit... ---Everywhere : Yes (1材料なら) ---Material -> "+" -> mater(DEFI_MATERIAL) (Define a material で付けた名前) http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s41.png 「OK」で全て閉じる。 -BC and Load -> Assign mechanical load http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s42.png --At Least One : Enforce DOF -> "+" -> Edit... ---At Least One : Group of element -> Edit... -> kotei (Geometryで付けた固定端のグループ名) -> 「OK」 ---At Least One : DX・DY・DZにチェックを入れ、0.0を入力する。 http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s43.png ---「OK」で閉じる。 --At Least One : FORCE_FACE (面載荷なら) -> "+" -> Edit... http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s44.png ---At Least One : Group of element -> Edit... -> saika (Geometryで付けた載荷面のグループ名) ---At Least One : FY(載荷方向)にチェックを入れ、$\frac{任意の荷重(ここでは100N)}{載荷面の面積}$の値を入力する。 ---FORCE_ARETE(線載荷)の場合は載荷線の長さで割る。 http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s45.png ---「OK」で閉じる。 --Model : model(AFFE_MODELE) (Assign finite element で付けた名前) http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s46.png ---「OK」で閉じる。 -Analysis -> Static mechanical analysis --At Least One : Material field : fieldmat(AFFE_MATERIAU) (Assign a material で付けた名前) --Model : model(AFFE_MODELE) (Assign finite element で付けた名前) --Loads -> "+" -> Edit... ---Load : load(AFFE_CHAR_MECA) (Assign mechanical load で付けた名前) http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s47.png ---「OK」で閉じる。 -Post Processing -> CALC_CHAMP --Result : reslin(MECA_STATIQUE) (Static mechanical analysis で付けた名前)Salome-Meca2019では、以下3項目が書かれている箱の下 --CONTRAINTE -> "+" -> "▽" -> SIGM_NOEU (節点の応力(6成分)) --DEFORMATION -> "+" -> "▽" -> EPSI_NOEU (節点のひずみ) --CRETERES -> "+" -> "▽" -> SIEQ_NOEU (節点の応力(ミーゼス応力や主応力など)) ---ちなみにNOEUは節点(NOEUd(フランス語))、ELGAはガウスの積分点(ELement GAuss point)、ELNOは要素(のどこか?)(ELement Node)だとかで、ParaVisでコンター図を描きたいときは Point Data であるNOEUを出力する必要がある。ELGAやELNOは、ParaVis上でSpredSheetViewを開き、Field Data や Cell Data を選択すれば値が見れる。 http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s48.png ---「OK」で閉じる。 -Output -> Set output results --Result file location : 計算結果のファイル名(.med)と保存場所を指定する。 ---'▽△' みたいなところではなく、右の '...'のところ --Format : Med (ParaVisで結果を見るのなら) http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s49.png --Results -> "+" -> Edit... ---At Least One : Result : reslin(MECA_STATIQUE) (Static mechanical analysis で付けた名前)にチェックを入れると,NOM_CHAMが現れる(チェックを入れないときのNOM_CMPと間違わないように) ---NOM_CHAM にチェック -> "+" -> "▽" -> DEPL (節点変位) http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s51.png ---一旦OKを押し、"Result file location"のFormatとResultsにチェックされたウィンドウに戻る。そこで、Resultsの1 itemになってるところをの+をクリックして2 itemsにして、以下の操作。 --Results -> "+" -> Edit... ---At Least One : Result : unnamed(CALC_CHAMP) (CALC_CHAMP で付けた名前) ---(以下は3itemsにするということかな?後藤)(そうです。「欲しい数だけ」itemsです。近藤) ---NOM_CHAM にチェック -> "+" -> "▽" -> EPSI_NOEU (節点のひずみ) ---NOM_CHAM にチェック -> "+" -> "▽" -> SIEQ_NOEU (節点の応力(ミーゼスや主応力など)) ---NOM_CHAM にチェック -> "+" -> "▽" -> SIGM_NOEU (節点の応力(6成分)) http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s52.png -この通りに作ると、commファイルが[[こんな風:http://www.str.ce.akita-u.ac.jp/~gotouhan/j2017/kondo/tyousa/salome17/0927.comm]]になる。 ***計算を実行する [#nbe2775a] -History View --Case_1を選択 -> □Stage_1 をクリック -> |>Run ---Basic -> Memory : メモリに余裕があるのなら上げる(というか、要素数によっては上げないと計算できない) ---Basic -> Time : 計算が長くかかりそうなら上げる --Run http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s53.png --計算が上手くいくと計算中に回転している砂時計が緑色、駄目だと赤色や黄色の○に変わる。 http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s54.png ---結果の一部は見られる(緑色になる)けど、何か致命的とまでは言えない間違い(警告)があるときは、logにこんなふう↓に書かれる。(正常なら"Success"のあとに"+Warn"は書かれない。) Stage "RunCase_1:Stage_1" calculation succeeded with state Success+Warn ---エラーや警告のメッセージ等は、LogをConsoleにするかShow message file を開くと見れる。ちなみに、エラーは"!"で括って書かれる. Salome-Meca2019では、砂時計の回転が現れて、すぐ終わる計算がしばらく終わらないようなときは、 右下の Output と Messages のタブを切り替えて見ると、既に計算が終わっていたりする。 ↑ Auto Refresh が no になっているため。 5s とかにすれば、Show message file が自動で更新される。 ***荷重条件等を変更して再計算する場合 [#ofe82da6] 既に計算できているモデルの荷重条件や境界条件等をAsterStudyで、修正する場合、 CaseView -> Data Settings の中の例えば、BC and Load の {}loadとかを右クリックして、Editを選択すれば、右側に設定ウィンドウが出てくるので、そこで、荷重等の修正を行う。それをOKで保存する。 その際、最初の{}loadの設定を削除せずに、新しい設定を作ると、たぶん、{}load0みたいな新しい名前の設定になるのではないかと思うが、そうすると、Data Settingsのウィンドウで赤くなっているところ、例えば、AnalysisのreslinのCHARGE=loadになっているところもload0に変更するといった修正が必要になる。 **「ParaVis」で計算結果を確認 [#e9b5218a] -AsterStudy -> Mesh -> ParaVis -パイプのブラウザーで右クリック -> Open -> AsterStudyのOutputで設定した出力ファイル(*.med)を選択する。 ***起動時に不具合が生じた時 [#bad550c4] 以下の方法でParaVisを開くと,不具合が生じることがある. ※解決策として、asterで計算してそのままParaVisを開かずmeshを経由すると何故か不具合が起きない。 -Case View --Data files --〇〇.med を右クリックして、Open in ParaVis -不具合が生じた時は,次のものを再び開いて,元に戻す. --表示 -> Windows ---パイプのブラウザー ---オブジェクトインスペクター ---カラーマップエディタ (<- 好みで追加) --表示 -> ツールバー ---Active Variable Controls ---Camera Controls (<- 好みで追加) ---Current Time Controls (<- 好みで追加) ---Common (<- 好みで追加) ***回転・並進移動・拡大縮小 [#u0be1203] SalomeとParaVisでは操作方法が異なり,基本的にマウス操作のみ. (ParaVisの元となっているParaViewとSalomeとで開発している機関が違うため.) -回転:左クリックを押したままマウスを動かす -並進移動:スクロールを押したままマウスを動かす -拡大縮小:スクロールを回すか,右クリックを押したままマウスを動かす -たまに物体がいなくなることがある.その時は次のようにすると元に戻る. --Set view selection to -○ (上の方にある+X, -X, +Y, -Y, +Z,http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s37model.png -Z のどれか) -> Reset(Set view selection の3つ左) ***変位図を描く [#g5ba1a15] -フィルター -> Common(Alphabeticalでもいい) -> Warp By Vector -DEPL(変位)を選択する(ベクトルになっているデータしか選択できないので,通常DEPLしか選択できない.) -scale(変形の倍率)を適宜変えて,Apply. ***コンター図を描く [#ua938784] -初期状態で上のほうに"● Solid Color"と書かれているところを見たいもの(変位なら 〇〇_DEPL とか)に変える. -その右隣の,Magnitude(ノルム)から見たいもの(Y方向変位なら DY とか)に変える. http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s55.png ***コンター図の色を変える [#m9cbb966] 初期状態の色は見難い? -オブジェクト インスペクターのColoring -> Choose Preset(ハートマーク) -> 好きなのを選んで,適用 --[[ここ:http://www.str.ce.akita-u.ac.jp/~gotou/programoj/#cgxppm]]的な見やすさを求めるのなら,"Gray scale"か"Linear YGB", "Linear Green", "Linear Blue" などがいいかも. ***コンター図の微調整 [#fb5bc86d] 例えば,鋼材と木材などの2種材料で計算すると,大抵鋼材の方が木材よりも応力の上限値が数倍も大きくなるので,木材の応力を確認しにくくて困ることがある. 他にも,全体の応力の上限値に対して着目している箇所の応力値が小さいために,添接板の応力伝達などの確認がしにくくて困ることもある. そんな時は,スケールバーの上下限値を適度に変えると見やすくなる. -オブジェクト インスペクターのColoring --C(rescale to custom data range):コンター図の範囲の上下限値を設定. --目(rescale to visible data range):今見えている範囲で,コンター図の範囲を丁度良くしてくれる.見たい箇所のみ表示させて使うと非常に便利. --e(Edit Color Legend Parameters):カラフルな棒(Scale bar)の大きさや向き(縦長か横長か),文字の大きさや数,フォント等を調整. -View -> Windows -> Color Map Editor --Number Of Table Values:色の分割数.適度に荒い方が見やすいときがある. ---Maximam Number of Labels と Number Of Table Values の数に合わせると、csvに出力しなくても大体の値が読み取れる。 ***背景を変える [#t14bc0cd] 論文や発表資料のための画像作りをしていて,背景を白色にしたいとき. -オブジェクト インスペクター -> Background(一番下にある) -> Colorを白っぽいのに -ちなみに,ここで Single color を Image に変更して画像ファイルを選ぶと,背景をその画像にすることもできる. ***Salomeで作ったグループのみ表示する [#o20a2a98] -Filter -> Alphabetical -> Extract Group -> 見たいグループだけにチェックを入れる ***断面を切る [#me3d4166] Salomeでグループを作っていなかった場合に便利. -パイプのブラウザーのrmedファイルを選択したまま、Filter -> Common -> Slice -見たい断面の、原点座標(origin)を入力し、面の法線(nomal)を選択する. ***とりあえず結果を出力する [#m4bc3e54] -Select Points ○○ (変位を見たい節点を選択する) -> 右上の"ロロ"("日"でもいい) -> Spreadsheet View -> (右上の方にある)Show only selected Elements. http://www.str.ce.akita-u.ac.jp/~gotouhan/j2017/endo/salome2017_setumei/ar2.png ***結果を表に出力する [#t132c448] 予め何かしらの方法(Extract Group や Slice など)で出力したい箇所だけ表示しておくと操作しやすい.表示も Surface から Points にしておくと,節点を選択しやすい. -Select Points 〇〇 -> 右上の"ロロ"("日"でもいい) -> Spreadsheet View -> Show only selected Elements. -> (File の)Export Secen --Select Points On : 表面の節点だけ選択する --Select Points Through : 内部の節点も選択する ***連続画像を出力 [#q07ffbd3] gif化(パラパラ漫画化)するまでの方法. -File -> Save Animation -> 細かな設定を色々.そのうち書く.(誰か書いて) -> pngとかjpgとかを選択 -その後,端末にて,ImageMagickを使う. --( convert -delay 10 moto*.jpg filename.gif --) --"-delay X"は再生コマ間隔がX/100秒となる。なくてもいい. ---画像と同じで"eog filename.gif&"で観られる. ---サイズも"convert -geometry 300 filename.gif"とかで後から変えられる(元のサイズのままだと,大きくて,重いので不便). ***ParaVis上で簡単なグラフ作成 [#yb902833] 手軽にParaVis上でグラフを描いて結果の妥当性を確認したい時に使える.論文や発表資料にはあまり使えない. -パイプのブラウザーのrmedファイルを選択したまま,Filter -> Data Analysis -> Plot Over Line -PropertiesのPoint1とPoint2は、線分の起点と終点なので、適宜座標値を入力。これでグラフの横軸が決まる。 --例えば、梁の中立軸の両端の座標値とかを入力。 -DisplayのSeries Parametersを見たい変位や応力(例えば、荷重方向の変位なら"〇〇_DEPL_DY"だけ)に選択。 -ViewのLeft Axis Lange(横軸)やBottom Axis Lange(縦軸)の値を変えて、グラフの範囲を適宜修正。 --チェックを外すと、自動で調度良い範囲になる。 *単純梁 [#v6481005] 10mm*10mm*120mmの直方体の梁(スパンは100mm, ヤング率は木材ぐらい)を作って、両端から10mmの位置を''線拘束''にして,支間中央に荷重(線載荷)をかけ、たわみが$\frac{P\ell^{3}}{48EI}$とどれくらい合うか確認してみる。 http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s62_tanzyun.png 幅方向:x , 載荷方向:y , 軸方向:z とした。 **「geometry」で形状作成 [#ue65b2ff] -片持ち梁の[[「geometry」で形状作成:https://www.str.ce.akita-u.ac.jp/cgi-bin/pukiwiki/?cmd=read&page=Salome-Meca2017&word=geometry%E3%80%8D%E3%81%A7%E5%BD%A2%E7%8A%B6%E4%BD%9C%E6%88%90#m41049f3]]と途中まで同じ。 --Box_1を作成するところまで(グループ化はまだ必要無い)。 --その後↓ ***拘束線や載荷線を作る [#u73a0071] 単純梁の曲げを解析する場合など、支点部分に拘束線を作ったり、載荷部分に載荷線を作る方法 -新しいエンティティ->基本オブジェクト->点 で点を2個作る --線が必要な場所の座標を考えて点を作るか、適当な場所に作ってから移動させる。 ---画面一番上のツールバー「操作」 -> 「変形」 -> 「変換」で移動させられる。 -新しいエンティティ -> 基本オブジェクト -> 線で点2個を結んで線を作る --これを必要な回数繰り返し線を作る。ここでは3個作った。 ---下の画像では見えないが、上面の支間中央に同じように載荷線がある。 http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s56.png -ここまでで、載荷線や拘束線は完成。ただし、まだモデルにくっついていないため↓の操作でくっつける。 -「操作」 -> 「パーティション」でオブジェクトにBoX_1を選び、 -ツールオブジェクトに拘束線や載荷線を選択 --複数選択する場合はSHFTもしくはcntlを押しながら選択 http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s57.png -適用して閉じる。 ***境界条件、荷重条件などを設定する箇所をグループ化 [#v73d0753] -オブジェクトブラウザーでさっき作成したPartition_1を右クリック -> グループを作成 --オブジェクトの種類 -> 線を選択 --グループの名前は、koteiとかわかりやすい名前に変更 --オブジェクトブラウザーからPartition_1階層下の拘束したい線(Line_1とか)を選択し、30とか40とかの数字が表示されたら「追加」をクリック -> 適用 --これを繰り返し必要な分グループを作成する。 ---ここではグループを3個(kotei_1, kotei2, saika)を作った。 ---拘束条件などが同じ場合は1つのグループに複数の面や線を選択して構わない。 http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s59.png -その他のテクニック --パーティションを作る際、高度なオプション(「グループとサブオブジェクトを継承します」「継承したサブオブジェクトの名前にプレフィックスを追加します」)の両方にチェックを入れておくと、自動でグループが作成されるんだったか、この辺に詳しい人、説明お願い。 オブジェクトで指定したオブジェクトで作成していたグループがそのまま継承されるため楽 **中立軸上に拘束線と載荷線を作成する. [#u9c77bf4] ジオメトリーの設定 -BOX1の作成 新しいエンティティ -基本オブジェクトの作成 –BOXの作成(10×10×120)を作成する. -BOX2の作成 新しいエンティティ -基本オブジェクトの作成 –BOXの作成(10×0.1×0.2)を作成する. -BOX2を孔をあける位置に移動する. 操作 –変形 –変換(オブジェクトの移動)でコピーの作成にチェックしないで移動させたい方向に数値を入れて設定する.(今回は底面を中立軸にしたいためZ軸方向4.9,Y軸方向10) -BOX2を移動させたら操作 –変形 –変換(オブジェクトの移動)で載荷位置と拘束位置にコピーしてBOX3,BOX4を作成する. -https://www.str.ce.akita-u.ac.jp/~gotouhan/j2020/idou1.png -https://www.str.ce.akita-u.ac.jp/~gotouhan/j2020/idou2.png -BOX1にカットを利用して孔をあける. 操作 -ブーリアン –カットを選択する.メインオブジェクト(BOX1)ツールオブジェクト(BOX2,BOX3,BOX4)選択する. -https://www.str.ce.akita-u.ac.jp/~gotouhan/j2020/cut1.png -https://www.str.ce.akita-u.ac.jp/~gotouhan/j2020/cut2.png -拘束線,載荷線を作成する. 新しいエンティティ –基本オブジェクト –点の作成で拘束線両端の点を作成する. 新しいエンティティ –基本オブジェクト –線で作った両端の点を選択して拘束線を作成する. 操作 –変形 –変換(オブジェクトの移動)で拘束線のコピーを作成(載荷線と拘束線) -パーテーションで拘束線,載荷線をモデルと一体化させる. 操作 –パーテーションする.オブジェクト(BOX1)ツールオブジェクト(拘束線,載荷線の3オブジェクト) -グループの作成 Cutを選択してグループの作成をする.Kotei1,kotei2,saica1を作成する. **「mesh」で要素分割 [#tad402bd] -片持ち梁の[[「mesh」で要素分割:https://www.str.ce.akita-u.ac.jp/cgi-bin/pukiwiki/?cmd=read&page=Salome-Meca2017&word=geometry%E3%80%8D%E3%81%A7%E5%BD%A2%E7%8A%B6%E4%BD%9C%E6%88%90#nec0ba9a]]と同じ。 --ただし、この単純梁のように拘束線や載荷線がある場合、直方体要素できれいに要素分割をするには追加で作業が必要になる場合がある。後々書いていく予定。 **「AsterStudy」で材料定数、境界条件、荷重条件などの設定 [#xd0526f7] -片持ち梁の[[「AsterStudy」:https://www.str.ce.akita-u.ac.jp/cgi-bin/pukiwiki/?cmd=read&page=Salome-Meca2017&word=geometry%E3%80%8D%E3%81%A7%E5%BD%A2%E7%8A%B6%E4%BD%9C%E6%88%90#bdc9997f]]と''BC and Load''以外は同じ。 ***入力ファイルを作る [#x0fb9e74] -ツールバーの右上の方にあるAdd stage("{}+"こんなマーク)をクリック。すると、Data SettingsにStage_1が追加される。 -以下の作業では、左側のData Settingsウィンドウ内のStage_1を選択したまま、ツールバーの"メッシュ△▽"みたいなのをクリックする。Stage_1を選択していないと、"△▽"は押せない。 ***各種設定の手順 [#ra83fc55] -メッシュ -> Read a mesh --Mesh file location : Mesh_1(Meshで作ったもの) --Mesh file format : Med -Model Definition -> Assign finite element --At Least One : Finite element にチェック -> "+" -> Edit... ---Exactly One : Everywhere : Yes (1材料なら) ---Phenomenon -> Mechanic -> "+" -> 3D (立体要素なら) --メッシュ : mesh(LIRE_MAILLAGE) (Read a mesh で付けた名前) -Material -> Define material --Linear isotropic elasticity にチェック(線形弾性体なら) -> Edit... ---Young's modulus : ヤング率を入力 ---Poisson's ration : ポアソン比を入力 -Material -> Assign a material --At Least One : Model にチェック -> model(AFFE_MODELE) (Assign finite element で付けた名前) --Material assignement -> "+" -> Edit... ---Everywhere : Yes (1材料なら) ---Material -> "+" -> mater(DEFI_MATERIAL) (Define a material で付けた名前) -''BC and Load'' -> Assign mechanical load --At Least One : Enforce DOF -> "+" -> Edit... ---At Least One : Group of element -> Edit... -> kotei1 (Geometryで付けた支点1のグループ名) -> 「OK」で閉じる。 ---At Least One : DX・DY・DZにチェックを入れ、0.0を入力する。 -> 「OK」で閉じる。 http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s60.png --At Least One : Enforce DOF -> "+" -> Edit... ---At Least One : Group of element -> Edit... -> kotei2 (Geometryで付けた支点2のグループ名) ---At Least One : DX・DYにチェックを入れ、0.0を入力する。 http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s61.png --At Least One : ''FORCE_ARETE'' (線載荷なら) -> "+" -> Edit... ---At Least One : Group of element -> Edit... -> saika (Geometryで付けた載荷線のグループ名) ---At Least One : FY(載荷方向)にチェックを入れ、$\frac{荷重}{載荷線の長さ}$の値を入力する。 --Model : model(AFFE_MODELE) (Assign finite element で付けた名前) -Analysis -> Static mechanical analysis --At Least One : Material field : fieldmat(AFFE_MATERIAU) (Assign a material で付けた名前) --Model : model(AFFE_MODELE) (Assign finite element で付けた名前) --Loads -> "+" -> Edit... ---Load : load(AFFE_CHAR_MECA) (Assign mechanical load で付けた名前) -Post Processing -> CALC_CHAMP --Result : reslin(MECA_STATIQUE) (Static mechanical analysis で付けた名前) --CONTRAINTE -> "+" -> "▽" -> SIGM_NOEU (節点の応力(6成分)) --DEFORMATION -> "+" -> "▽" -> EPSI_NOEU (節点のひずみ) --CRETERES -> "+" -> "▽" -> SIEQ_NOEU (節点の応力(ミーゼスや主応力など)) -Output -> Set output results --Result file location : 計算結果のファイル名(.med)と保存場所を指定する。 --Format : Med (ParaVisで結果を見るのなら) --Results -> "+" -> Edit... ---At Least One : Result : reslin(MECA_STATIQUE) (Static mechanical analysis で付けた名前)にチェックを入れると,NOM_CHAMが現れる(チェックを入れないときのNOM_CMPと間違わないように) ---NOM_CHAM にチェック -> "+" -> "▽" -> DEPL (節点変位) --Results -> "+" -> Edit... ---At Least One : Result : unnamed(CALC_CHAMP) (CALC_CHAMP で付けた名前) ---NOM_CHAM にチェック -> "+" -> "▽" -> EPSI_NOEU (節点のひずみ) ---NOM_CHAM にチェック -> "+" -> "▽" -> SIEQ_NOEU (節点の応力(ミーゼスや主応力など)) ---NOM_CHAM にチェック -> "+" -> "▽" -> SIGM_NOEU (節点の応力(6成分)) -この通りに作ると、commファイルが[[こんな風:http://www.str.ce.akita-u.ac.jp/~gotouhan/j2017/kondo/tyousa/salome17/0928.comm]]になる。 --ちなみにこれは関塚さんの実験(PLA白の120x5x5の曲げ試験)に合わせて作ったものだが、結果がちゃんと合う。 ***計算を実行する [#d6e7ff04] -片持ち梁の[[計算を実行する:https://www.str.ce.akita-u.ac.jp/cgi-bin/pukiwiki/?cmd=read&page=Salome-Meca2017&word=geometry%E3%80%8D%E3%81%A7%E5%BD%A2%E7%8A%B6%E4%BD%9C%E6%88%90#nbe2775a]]と同じ。 **「ParaVis」で計算結果を確認 [#hbe55182] -片持ち梁の[[「ParaVis」で計算結果を確認:https://www.str.ce.akita-u.ac.jp/cgi-bin/pukiwiki/?cmd=read&page=Salome-Meca2017&word=geometry%E3%80%8D%E3%81%A7%E5%BD%A2%E7%8A%B6%E4%BD%9C%E6%88%90#e9b5218a]]と同じ。 *他 [#ed1569d3] **Mesh関係 [#u865a29a] ***Mesh分割時の要素数の上限を変更する [#y6bde269] 初期状態でSalomeは50万要素までしか分割できない(まあ、大体がこれで十分だけど)。この上限を変更する方法。 -Mesh -> File -> Preferences -> Size limit (elements) … 適度に値を上げる -> Apply ***Mesh分割をしやすいモデルに自動で直す [#p6ce6791] 実構造物に忠実にモデル化しようとすると、小さな溝や孔のせいでMesh分割ができない。そのような原因となる箇所を自動で修正する機能。 -Geometry -> Repair -> 各種 -参考:https://www.youtube.com/watch?v=lg1Jpd4wbow **Aster関係 [#q57f18ae] ***commファイルのバージョンを変換する(Salome-Meca2018の情報) [#iea0abba] -Tools(上の方)-> Plugins -> code_aster -> Syntax translator ***ASTK [#vff14a32] 人によっては便利なジョブマネジャー.使い方はそのうち書く.Salome-Meca2017になって消えてしまったかと思いきや,プラグインになっていた. -AsterStudy -> Tools -> Plugins -> Salome-Meca -> Run astk