1/16 信頼性課藤井 08/06/15 修正 09/04/19 すべり有 摩擦無 (SalomeMeca 2008.1) 目次 1. はじめに 2. モデルの読み込み 3. Entity の作成 4. メッシュの作成 5. Code_Aster の作成 6. Code_Aster の編集 6-1. 境界条件の編集 6-1-1. 通常の境界条件 6-1-2. 少しづつ負荷させる境界条件作成 6-1-3. 接触の境界条件作成 6-2. 接触の為のコード追加 6-3. 非線形解析方法の設定 6-4. Post 処理の修正 7. 解析の開始 8. 計算の強制終了 9. 計算方法の検討 10. 接触面積が増加するモデルの場合 10-1. モデルの読み込み 10-2. Entity の作成 10-3. メッシュの作成 10-4. Code_Aster の作成 10-5. 解析開始 10-6. 結果の確認 11. 接触面積が減少するモデルの場合 11-1. モデルの読み込み 11-2. Entity の作成 11-3. メッシュの作成 11-4. Code_Aster の作成 11-5. 計算 12. ソースコード 1. はじめに 2 ヶの Solid が接触した状態で 荷重や変位を相手に伝えて 変形していく問題を考える この問題は 接触面の状態が安定 ( 変形と共に接触位置や面積が変化しない ) している場合は Solid 同士を連結させて解析する事と同じ事になる しかし 実際は 接触面ですべりが生じたり 変形と共に接触位置が変わっていく この様な問題を解く為には 負荷 ( 荷重や変位 ) を少しずつ掛けていき その都度解を求めて最終的な解を求める方法をとる 非線形解析
2/16 この方法は CAELinux のホームページから接触の事例 (2 次元の接触解析 ) をダウンロードして 内容を確認し 今回作成している ここでの問題は 接触面の摩擦がなく すべりが発生する問題を考えている 接触判定 ( 接触しているかどうかの判定 ) は Tolerance を確認した結果 デフォルトで 5e-3 に設定されていた つまり 5μ m 以下で接触していると判定する 2. モデルの読み込み モデルは 連結問題で使用したモデルをそのまま使う multi-bar-1.stp を読み込む 解析は Bar の上面 (press 面 ) を -0.2mm Z 方向に変位させる接触問題として解析してみる 当初 press 面に圧力を掛ける方法を取ったが この方法では 接触面ですべりが発生するので Bar が拘束されず エラーが発生 Bar の拘束条件を取り入れる為 圧力ではなく 変位させる条件に変えた 解析は ~/CAE/contact-bar/ と言うフォルダを作りこの中で解析する 3. Entity の作成 連結問題と同様に解析で使用する Volume や Face をグループ化しておく ツリーの構造は下記 Bar press Geometry multi-bar-1.stp_1 Base *multi-bar-1.stp_1 fix contbase Bar *multi-bar-1.stp_1 contbar press Solid1(Base) 固定面 Base の接触面 Solid2(Bar) Bar の接触面荷重を付加する面 Base fix ( 裏面 ) 4. メッシュの作成 連結問題と同じ方法でメッシュを切る ツリーは 下記 Mesh Hypotheses Algorithms Mesh_1 *multi-bar-1.stp_1 Applied hypotheses *Automatic length 0.2 クリック 2 回分 *Quadratic Mesh 2 次メッシュ Applied aigorithms *Regular_1D *Quadrangle_2D *Hexa_3D 四角形のメッシュ
3/16 5. Code_Aster の作成 画面を Aster に変えて ウィザードを使って 通常通り Code_Aster を作成する この時 固定面は fix 面 荷重面は press 面で 0.1MPa としておく 材料定数は ベリ銅の値をそのまま使用 ヤング率 : 130300 MPa ポアソン比 : 0.343 Code_Aster の保存は フォルダ ~/CAE/contact-bar/ 内に multi-bar.comm として保存した 6. Code_Aster の編集 EFICAS を使って 作成された Code_Aster を接触問題が解けるように編集する 6-1. 境界条件の編集 境界条件は 1. 通常の境界条件 2. 負荷を少しづつ変化させる条件 3. 接触条件の 3 種類の条件に分けて設定する 以下に各々の境界条件設定法方について示す 6-1-1. 通常の境界条件 通常の境界条件は fix 面を固定する条件となる この境界条件は ウイザードが作成した境界条件を編集して 作成する press 面を Z 方向に -0.2mm 変位させるが XY 方向の拘束がないので XY 方向も拘束する必要がある ここ
4/16 で XY 方向を拘束する また ウィザードで入力した圧力の条件も削除する 下記参照 AFFE_CHAR_MECA CHAR ウイザードで作成された境界条件 MODELE MODE DDL_IMPO DDL_IMPO_1 GROUP_MA fix 固定する面 (fix) を固定 DX 0 DY 0 DZ 0 DDL_IMPO_2 GROUP_MA press 負荷を掛ける面 (press) の XY 方向を固定 DX 0 DY 0 6-1-2. 少しづつ負荷させる境界条件作成 press 面を Z 方向に -0.2mm 変位させるが この変位が接触面に直接影響を与えるので この変位を少しづつ変化させていくようにする必要がある この為 この境界条件を独立させて定義する 現在設定されている AFFE_CHAR_MECA の後に 以下を追加する AFFE_CHAR_MECA loadp 名称は任意で可 この名前を後で使用する MODELE MODE DDL_IMPO GROUP_MA press press 面を DZ -0.2 Z 方向に-0.2mm 変位させる 6-1-3. 接触の境界条件作成 接触の為の境界条件を追加する この為に同様にして AFFE_CHAR_MECA を追加し 下記のツリーを作成する 殆どデフォルトの条件に設定している AFFE_CHAR_MECA contact 名称は任意で可 この名前を後で使用する MODELE MODE CONTACT METHODE CONTRAINTE APPARIEMENT MAIT_ESCL RECHERCHE NOEUD_BOUCLE PROJECTION LINEAIRE 線形予測で解を求める b_notxfem GROUP_MA_MAIT contbase 接触する相手側の面 GROUP_MA_ESCL contbar 接触する側の面 b_active 6-2. 接触の為のコード追加 引き続き 次の行に 接触問題を解くためのコードを追加する
5/16 press 面の変位を 0 から 0.2mm まで徐々に変位させていく方法を取る為 0 0.2mm までの中間の値をどのように設定するか ( 線形 or 非線形で回帰 ) を設定する 普通に線形で回帰させる (ramp 制御 ) 方法とする この為のファンクションを下記の様に定義する 値は 倍率を表しており 1 は -0.2mm を示している DEFI_FONCTION ramp 名称は任意で可 この名前を後で使用する NOM_PARA INST 変数は VALE で入力 VALE (0,0,1,1) 原点 (0,0) から (1,1) までを線形で回帰する 座標の入力は X,Y の形式で XY のペアで入力する 次に 1.0(1.0 倍 ) までを何分割して解析するのかを定義する 下記参照 DEFI_LIST_REEL inst 名称は任意で可 この名前を後で使用する DEBUT 0.0 初期値を設定 INTERVALLE JUSQU_A 1.0 0 1 までを PAS 0.2 0.2 毎に 5 分割する 6-3. 非線形解析方法の設定 ここで今までに設定した条件 ファンクションを使って 非線形 ( 接触 ) 問題を解く方法を設定する ウィザードで設定した MECA_STATIQUE( 線形解析方法 ) の後に 非線形の解析方法 (STAT_NON_LINE) を追加し MECA_STATIQUE は削除する 以下のコードが STAT_NON_LINE の内容 STAT_NON_LINE RESU MECA_STATIQUE と同じ名前にする (MECAS_STATIQUE を削除後設 定 ) MODELE MODE モデルを指定 CHAM_MATER MATE 材料を指定 EXCIT EXCIT_1 CHARGE CHAR 通常の境界条件 (fix 面の固定 ) EXCIT_2 CHARGE loadp 少しづつ負荷させる条件 (press 面の変位 ) FONC_MULT ramp 中間の変位を線形で求める EXCIT_3 CHARGE contact 接触の境界条件 COMP_ELAS RELATION ELAS DEFORMATION GREEN PETIT 接触問題では PETIT を選択した方が収束が早い TOUT OUI b_not_resue INCREMENT LIST_INST inst 0.2 づつ増える NEWTON ニュートン法で収束させる REAC_INCR 1 MATRICE TANGENTE REAC_ITER 1 CONVERGENCE
6/16 ITER_GLOB_MAXI 30 収束するまで最大 30 回までトライする ARCHIVAGE PAS_ARCH 1 上記コードを追加した後 MECA_STATIQUE を削除する 最初の STAT_NON_LINE の名前 RESU は 元々設定してあった MECA_STATIQUE と同じ名前に設定する 名前の設定は 先に MECA_STATIQUE を削除した後 STAT_NON_LINE の名前を設定する事 削除する前は 同じ名前になるので設定できないので注意 別の名前でも構わないが MECA_STATIQUE を削除した時 これにリンクされている Post 処理側 (CALC_ELEM など ) がエラーになるので この再設定が必要 再設定時に名前を同じにしておくと 設定結果も同じになるので 誤解が少なくなる 6-4. Post 処理の修正 Post 処理側がエラーになっているので 修正する CALC_ELEM( 要素解 ) は コマンド名と OPTION がエラーになっているので これを修正 CALC_ELEM RESU 元の名前と同じ RESU に設定 MODELE MODE CHAM_MATER MATE RESULTAT RESU b_noil b_toutes OPTION EQUI_ELNO_SIGM 相当応力の要素解を設定 次の CALC_NO( 節点解 ) は エラーになっている箇所 (CALC_NO RESULTAT) に RESU を入力する CALC_NO RESU RESULTAT RESU OPTION EQUI_NOEU_DEPL,EQUI_NOEU_SIGM 節点解の相当歪 相当応力を指定 また 次の IMPR_RESU も上記の CALC_NO と同じくエラーになっている箇所に RESU と入力する IMPR_RESU FORMAT MED b_format_med UNITE 80 RESU MAILLAGE MAIL RESULTAT RESU b_info_med b_sensibilite b_extrac NOM_CHAM (EQUI_NOEU_SIGM,DEPL) 相当応力 変位を出力 c_cmp b_topologie 7. 解析の開始
7/16 通常通り 解析をスタートさせる 実行時にエラーがでた CPU 関係のエラーの為 計算の制限時間を増やす Object Browser ツリー上の LinearStatic_3DMesh_1 を右クリックして Edit Code_Aster case を選択 Case Parameters 画面の Parameters タグを選択し Time を 120 600(10 分 ) に変更する 再度計算をスタートさせる 警告はでるがエラーなく終了 計算時間は のべで約 18 分 CPU 時間で 1074 秒 (17.8 分 ) 掛かっている 長い Salome がバージョンアップされ 2007.1 から 2008.1 に変わっている 前記時間は 2007.1 の時の計算時間 今回 2008.1 で再確認するとのべで 7.7 分 CPU 時間で 252 秒 (4.2 分 ) でありバージョンアップで計算時間が早くなっている モデルのメッシュは 四角形の 2 次メッシュ節点 :4377 ヶ要素 :810 ヶで解析している ( 節点 要素の数は バージョンアップ前後で同じ数で解析している ) 結果を確認すると press 面の Z 方向の変位は 0.2000mm であり 条件どおりに変位 下図参照 尚 計算結果は press 面を-0.2mm 変位させるために 5 回に分けて 0.04mm づつ変位させ 最終的に解を求めている この計算過程の途中の解もツリーに表示されている 最終的な解は ツリーの最後にある 0.04mm おきに計算 計算過程が記録 Z 方向の変位 =-0.200mm 最終的な解 ( 変位 -0.2mm ) 8. 計算の強制終了 非線形解析は 時間が掛かる 理想は 計算が終了するまで待つ事だが 強制終了したい場合には 端末を表示させて ctl-c キーを入力することで 計算が中断され終了する 中断させると復帰はできないので さらに ctr-d を入力して Salome を強制終了することになる 強制終了すると 計算途中で作成された Temporary ファイルが削除されずにそのまま残ってしまう 線形解析であれば その容量も少ないが 非線形解析では Tem. ファイルの容量が 700MB を越す事もあるので 強制終了を 2 回繰り返すと 1.5GB を消費する事になり HDD の残容量が充分あれば問題ないが 殆ど無くなってしまうと 作動が不安定になる こうなってしまうとインストールしなおす事になるので 要注意 また 計算途中でエラー停止する場合も エラーの内容によると思うが Temp. ファイルが削除されない場合があるので HDD の残容量をこまめに確認する事が重要
8/16 Temp. ファイルは /tmp/ 内に作られる interactif.12345 の様なフォルダが出来上がっている場合は 削除する 9. 計算方法の検討 境界条件 AFFE_CHAR_MECA CONTACT 中の Projection を QUADRATIQUE(2 次予測 ) で当初は計算していた (6-1-3 項の Projection は LINEARE となっているが 当初は QUADRATIQUE で計算していた ) この実行結果が 7 項の計算時間である Linear( 線形予測 ) に変更して計算すると 実測で約 7 分 CPU 時間で 421 秒 (7 分 ) で終了 早い 最大相当応力は 5550MPa となる 単純な接触は 線形予測の方が計算時間が早くなる CONTACT の Method を CONTRAINTE LAGRANGIEN に変更した結果 計算時間は 443 秒でほぼ同じ 結果も 555 0MPa で同じ ( 予測は Linear)Method は 特に計算時間に関係ない? 上記内容は Salome-MECA-2007.1 の時に確認した内容 今回改めて バージョンアップされた 2008.1 で確認した結果 いずれもエラーが発生し計算できなかった また 連結問題を解析した時と同じ定義 (MAIT: Bar ESCL:contBase) で接触問題を計算させるとエラーが発生する 別な組合せでも確認したがエラーが発生する 計算可能な接触の定義は 今回計算した MAIT:contBase ESCL:contBar( 逆でも OK) だった どうもバージョンアップにより 動作が変わっている 10. 接触面積が増加するモデルの場合 前記のモデルは 接触するものが四角柱の為 変形しても接触面積は変化しない この為 接触面のエッジに R 面取りを施し 変形と共に接触面積が増加するモデルを作って解析してみる 10-1. モデルの読み込み モデルは multi-bar-1-r.stp を読み込む 接触面のエッジを R 面取りしたモデル 解析は ~/CAE/contacr-R/ のフォルダを作りこの中で解析する 10-2. Entity の作成 グループ化は まったく同じ様に実施 ただし Bar の接触面 (contbar) は 接触する平面と変形と共に R 面にも接触する事になるので 平面 +R 面を contbar としている R 面取り 10-3. メッシュの作成 メッシュは 四角形だと エラーが発生し メッシュが切れなかったので 三角形の 2 次メッシュとし Au tomatic Length=0.2( クリック 2 回分 ) とした 下記参照
9/16 最終的には 1 次メッシュで計算 10-4. Code_Aster の作成 同じ方法で作成 CONTACT は Method Projection で実施 CONTRAINTE LINEARE 10-5. 解析開始 計算開始させると 0.2 から 0.4 までは 時間が掛かる ( 約 20 分 ) ものの うまく収束していたが 0.6 から収束しなくなり Itaration No. が 15 を超えてしまう それまでは 多くても 5 回で収束していた R 付けしている為 収束し難いと思い INTERVALLE の PAS を 0.1 に変更し 0.1 毎に計算させるように変更したが 約 40 分たっても答えが出ない ( 途中で計算をキャンセル ) Projection を 2 次に変えても Method を変えても同じ結果 この為 メッシュを 2 次メッシュから 1 次メッシュに変更して 再トライした この結果 計算時間は 144 秒 (CPU 時間 75 秒 ) で計算が終了 驚くほど計算が早い 2 次メッシュは収束し難い 非線形の場合 メッシュは 1 次メッシュで細かいメッシュにする と言う事は事実だった 上記内容は Salome-MECA-2007.1 の場合であり 2008.1 では 確認していない 10-6. 結果の確認 最大応力は 5260MPa で R の根元部で発生 R の為 食い込みが少ないので 応力が下がる? 変形の様子を確認すると R 面に沿って Base 側が変形しているのがわかる ( 変形と共に接触面積が増える 非線型になっている ) 変位 相当応力
10/16 11. 接触面積が減少するモデルの場合 変形と共に接触面積が減少していくモデルを考える 下記のように変形と共に Plate の両端が持ち上がり 接触面積が減少していく場合を考える 下記モデルで解析し Plate の両端が持ち上がっている ( 接触面積が減少する ) かどうかを確認する 11-1. モデルの読み込み モデルは test-contact-1.stp を読み込む ~/CAE/contact-plate/ と言うフォルダを作りこの中で解析する Plate press 面 11-2. Entity の作成 contbase Base 基本的には 前記したモデルと同じ 違いは contbase が 2 ヶ所ある (2 平面をグループ化して contbase とした ) ことと press 面は Bar 中央の円柱の上面としていること 11-3. メッシュの作成 三角形の 1 次メッシュとした 細かさは クリック 1 回分 (2 次メッシュにはしていない ) 形状が複雑な分 メッシュが細かい
11/16 11-4. Code_Aster の作成 コード自体は 殆ど同じ press 面の変位は 持ち上がりが確認できるように 大きな値 (Y 方向に -0.5mm) に設定 11-5. 計算 形状が複雑な分メッシュが多くなってしまっているので 計算時間は 875 秒 ( 約 15 分 ) CPU 時間 474 秒であり 長く掛かった Salome-MECA-2007.1 の場合 2008.1 の場合は 186 秒 ( 約 6 分 ) CPU 時間 212 秒であり 約 2 倍の速さに変わっている 変位の結果を確認すると Bar の両端が持ち上がっているのが確認できる ( 下図参照 ) 正しく接触判定をして 計算している 変位 ( 倍率 2 倍で表示 ) 拡大 もち上がっている 12. ソースコード ------------------------ multi-bar.comm の場合 --------------------- DEBUT();
12/16 MA=DEFI_MATERIAU(ELAS=_F(E=130300.0, NU=0.343,),); MAIL=LIRE_MAILLAGE(FORMAT='MED',); MODE=AFFE_MODELE(MAILLAGE=MAIL, AFFE=_F(TOUT='OUI', PHENOMENE='MECANIQUE', MODELISATION='3D',),); MAIL=MODI_MAILLAGE(reuse =MAIL, MAILLAGE=MAIL, ORIE_PEAU_3D=_F(GROUP_MA='press',),); MATE=AFFE_MATERIAU(MAILLAGE=MAIL, AFFE=_F(TOUT='OUI', MATER=MA,),); CHAR=AFFE_CHAR_MECA(MODELE=MODE, DDL_IMPO=(_F(GROUP_MA='fix', DX=0.0, DY=0.0, DZ=0.0,), _F(GROUP_MA='press', DX=0.0, DY=0.0,),),); loadp=affe_char_meca(modele=mode, DDL_IMPO=_F(GROUP_MA='press', DZ=-0.2,),); contact=affe_char_meca(modele=mode, CONTACT=_F(METHODE='CONTRAINTE', APPARIEMENT='MAIT_ESCL', RECHERCHE='NOEUD_BOUCLE', PROJECTION='LINEAIRE', GROUP_MA_MAIT='contBar', GROUP_MA_ESCL='contBase',),); ramp=defi_fonction(nom_para='inst',vale=(0.0,0.0, 1.0,1.0, ),); inst=defi_list_reel(debut=0.0, INTERVALLE=_F(JUSQU_A=1.0, PAS=0.2,),); RESU=STAT_NON_LINE(MODELE=MODE, CHAM_MATER=MATE,
13/16 EXCIT=(_F(CHARGE=CHAR,), _F(CHARGE=loadP, FONC_MULT=ramp,), _F(CHARGE=contact,),), COMP_ELAS=_F(RELATION='ELAS', DEFORMATION='GREEN', TOUT='OUI',), INCREMENT=_F(LIST_INST=inst,), NEWTON=_F(REAC_INCR=1, MATRICE='TANGENTE', REAC_ITER=1,), CONVERGENCE=_F(ITER_GLOB_MAXI=30,), ARCHIVAGE=_F(PAS_ARCH=1,),); # 接触問題では PETIT の方が収束が早い RESU=CALC_ELEM(reuse =RESU, MODELE=MODE, CHAM_MATER=MATE, OPTION='EQUI_ELNO_SIGM',); RESU=CALC_NO(reuse =RESU, OPTION=('SIGM_NOEU_DEPL','EQUI_NOEU_SIGM',),); IMPR_RESU(FORMAT='MED', UNITE=80, RESU=_F(MAILLAGE=MAIL, NOM_CHAM=('SIGM_NOEU_DEPL','EQUI_NOEU_SIGM','DEPL',),),); FIN(); -------------------------- multi-bar-r.comm (R 面取りしたモデル )------------- DEBUT(); MA=DEFI_MATERIAU(ELAS=_F(E=130300.0, NU=0.343,),); MAIL=LIRE_MAILLAGE(FORMAT='MED',); MODE=AFFE_MODELE(MAILLAGE=MAIL, AFFE=_F(TOUT='OUI', PHENOMENE='MECANIQUE', MODELISATION='3D',),); MAIL=MODI_MAILLAGE(reuse =MAIL, MAILLAGE=MAIL, ORIE_PEAU_3D=_F(GROUP_MA='press',),); MATE=AFFE_MATERIAU(MAILLAGE=MAIL,
14/16 AFFE=_F(TOUT='OUI', MATER=MA,),); CHAR=AFFE_CHAR_MECA(MODELE=MODE, DDL_IMPO=(_F(GROUP_MA='fix', DX=0.0, DY=0.0, DZ=0.0,), _F(GROUP_MA='press', DX=0.0, DY=0.0,),),); loadp=affe_char_meca(modele=mode, DDL_IMPO=_F(GROUP_MA='press', DZ=-0.2,),); contact=affe_char_meca(modele=mode, CONTACT=_F(METHODE='CONTRAINTE', APPARIEMENT='MAIT_ESCL', RECHERCHE='NOEUD_BOUCLE', PROJECTION='LINEAIRE', GROUP_MA_MAIT='contBase', GROUP_MA_ESCL='contBar',),); ramp=defi_fonction(nom_para='inst',vale=(0.0,0.0, 1.0,1.0, ),); inst=defi_list_reel(debut=0.0, INTERVALLE=_F(JUSQU_A=1.0, PAS=0.2,),); RESU=STAT_NON_LINE(MODELE=MODE, CHAM_MATER=MATE, EXCIT=(_F(CHARGE=CHAR,), _F(CHARGE=loadP,), _F(CHARGE=contact,),), COMP_ELAS=_F(RELATION='ELAS', DEFORMATION='GREEN', TOUT='OUI',), INCREMENT=_F(LIST_INST=inst,), NEWTON=_F(REAC_INCR=1, MATRICE='TANGENTE', REAC_ITER=1,), CONVERGENCE=_F(ITER_GLOB_MAXI=30,), ARCHIVAGE=_F(PAS_ARCH=1,),); # 収束しない場合 PETIT にする RESU=CALC_ELEM(reuse =RESU, MODELE=MODE, CHAM_MATER=MATE,
15/16 OPTION='EQUI_ELNO_SIGM',); RESU=CALC_NO(reuse =RESU, OPTION=('SIGM_NOEU_DEPL','EQUI_NOEU_SIGM',),); IMPR_RESU(FORMAT='MED', UNITE=80, RESU=_F(MAILLAGE=MAIL, NOM_CHAM=('SIGM_NOEU_DEPL','EQUI_NOEU_SIGM','DEPL',),),); FIN(); ------------------------ multi-late.comm Plate のモデル ----------------- DEBUT(); MA=DEFI_MATERIAU(ELAS=_F(E=130300.0, NU=0.343,),); MAIL=LIRE_MAILLAGE(FORMAT='MED',); MODE=AFFE_MODELE(MAILLAGE=MAIL, AFFE=_F(TOUT='OUI', PHENOMENE='MECANIQUE', MODELISATION='3D',),); MAIL=MODI_MAILLAGE(reuse =MAIL, MAILLAGE=MAIL, ORIE_PEAU_3D=_F(GROUP_MA='press',),); MATE=AFFE_MATERIAU(MAILLAGE=MAIL, AFFE=_F(TOUT='OUI', MATER=MA,),); CHAR=AFFE_CHAR_MECA(MODELE=MODE, DDL_IMPO=(_F(GROUP_MA='fix', DX=0.0, DY=0.0, DZ=0.0,), _F(GROUP_MA='press', DY=-0.5,),),); loadp=affe_char_meca(modele=mode, DDL_IMPO=_F(GROUP_MA='press', DX=0, DZ=0,),); contact=affe_char_meca(modele=mode,
16/16 CONTACT=_F(METHODE='CONTRAINTE', APPARIEMENT='MAIT_ESCL', RECHERCHE='NOEUD_BOUCLE', PROJECTION='LINEAIRE', GROUP_MA_MAIT='contBase', GROUP_MA_ESCL='contPL',),); ramp=defi_fonction(nom_para='inst',vale=(0,0, 1,1, ),); inst=defi_list_reel(debut=0, INTERVALLE=_F(JUSQU_A=1, PAS=0.2,),); RESU=STAT_NON_LINE(MODELE=MODE, CHAM_MATER=MATE, EXCIT=(_F(CHARGE=CHAR,), _F(CHARGE=loadP, FONC_MULT=ramp,), _F(CHARGE=contact,),), COMP_ELAS=_F(RELATION='ELAS', DEFORMATION='GREEN', TOUT='OUI',), INCREMENT=_F(LIST_INST=inst,), NEWTON=_F(REAC_INCR=1, MATRICE='TANGENTE', REAC_ITER=1,), CONVERGENCE=_F(ITER_GLOB_MAXI=30,), ARCHIVAGE=_F(PAS_ARCH=1,),); # 収束しない場合 PETIT にする RESU=CALC_ELEM(reuse =RESU, MODELE=MODE, CHAM_MATER=MATE, OPTION='EQUI_ELNO_SIGM',); RESU=CALC_NO(reuse =RESU, OPTION=('SIGM_NOEU_DEPL','EQUI_NOEU_SIGM',),); IMPR_RESU(FORMAT='MED', UNITE=80, RESU=_F(MAILLAGE=MAIL, NOM_CHAM=('SIGM_NOEU_DEPL','EQUI_NOEU_SIGM','DEPL',),),); FIN();