DEBUT(); #JIS K7125の摩擦試験(STA10) #材料定数 kou=DEFI_MATERIAU(ELAS=_F(E=206e+3, #鋼材 NU=0.3,),); moku=DEFI_MATERIAU(ELAS=_F(E=7e+3, #木材 NU=0.4,),); #読み込みメッシュ形式 MAIL=LIRE_MAILLAGE(FORMAT='MED',); #MAIL=MODI_MAILLAGE(reuse =MAIL, # MAILLAGE=MAIL, # ORIE_PEAU_3D=_F(GROUP_MA='pue',),); #要素の設定 MODE=AFFE_MODELE(MAILLAGE=MAIL, AFFE=_F(TOUT='OUI', PHENOMENE='MECANIQUE', MODELISATION='3D',),); #材料定数と部材の対応 MATE=AFFE_MATERIAU(MAILLAGE=MAIL, AFFE=(_F(GROUP_MA='yuka', MATER=kou,), _F(GROUP_MA='hako', MATER=moku,),),); #マスター面とスレーブ面の選択 contact=DEFI_CONTACT(MODELE=MODE, FORMULATION='DISCRETE', FROTTEMENT='COULOMB', ZONE=_F(GROUP_MA_MAIT='mmen', #mesh粗、硬い 方の面 GROUP_MA_ESCL='smen', #mesh密、軟い 方の面 ALGO_CONT='PENALISATION', #ペナルティ法 E_N=7e3, #法線方向のヤング率(小さい方のヤング率) COULOMB=0.4, #摩擦係数 ALGO_FROT='PENALISATION', E_T=7e2,),); #接線方向のヤング率(よくわからない) #境界条件と荷重条件(抑えるだけ) osae=AFFE_CHAR_MECA(MODELE=MODE, DDL_IMPO=(_F(GROUP_MA='kotei', DX=0.0, DY=0.0, DZ=0.0,), _F(GROUP_MA='joumen', DY=0.0, DZ=-7.054673721e-7, #1.96N/(63mm*63mm)/7000MPa*10mm ),), # FORCE_FACE=_F(GROUP_MA='joumen', # FZ=-0.000493827,), #1.96N/(63mm*63mm) ); #境界条件と荷重条件(ずらす) zurasi=AFFE_CHAR_MECA(MODELE=MODE, DDL_IMPO=_F(GROUP_MA='saika', DX=16.6666667,),); #100mm/min=100/60=1.67mm/s これを10秒間 # FORCE_FACE=_F(GROUP_MA='saika', # FX=1.58730158,),); #100N/(63mm*10mm) #時間と荷重の割合の関係 masatu=DEFI_FONCTION( NOM_PARA='INST', VALE=(0.0,0.0, #開始時刻,荷重 10.0,1.0, #終了時刻,荷重の割合 ),); #計算時間と間隔 kankaku=DEFI_LIST_REEL(DEBUT=0.0, #開始時間 INTERVALLE=_F(JUSQU_A=10.0, #終了時間。上と一致させる NOMBRE=100,),); #時間の分割数 #計算 resu=STAT_NON_LINE(MODELE=MODE, CHAM_MATER=MATE, EXCIT=(_F(CHARGE=osae,), _F(CHARGE=zurasi, #ずらし に時間と荷重の割合の関係を適用 FONC_MULT=masatu,),), CONTACT=contact, COMP_ELAS=_F(RELATION='ELAS',), INCREMENT=_F(LIST_INST=kankaku,), CONVERGENCE=_F(ITER_GLOB_MAXI=500,), #計算の最大反復回数 SOLVEUR=_F(SYME='OUI',),); #要素解の計算 resu=CALC_ELEM(reuse =resu, MODELE=MODE, CHAM_MATER=MATE, RESULTAT=resu, OPTION=('SIEF_ELNO','SIEQ_ELNO',),); #節点解の計算 resu=CALC_NO(reuse =resu, RESULTAT=resu, OPTION=('SIGM_NOEU','SIEQ_NOEU',),); #出力の設定 IMPR_RESU(FORMAT='MED', UNITE=80, RESU=_F(MAILLAGE=MAIL, RESULTAT=resu, NOM_CHAM=('SIGM_NOEU','SIEQ_NOEU','DEPL',),),); FIN();