flac3d自定义变量输出云图

定义单元体能量为微单元体的应变比能,即当应力和应变满足线性关系时,微单元体在三向应力状态下的应变比能为:

                                           (3.1)

下面代码为用户自定义云图显示变量。

 Flac3d Code

 1 new
 2 gen zone brick size 10 10 10 group lay-1
 3 mo el
 4 prop bulk 3e8 shear 1e8
 5 ini den 20e3
 6 set gravity 0 0 -9.8
 7 fix z range z 0
 8 solve
 9 config zextra 2
10 def _udf_zextra
11  p_z = zone_head
12  _u=0.3
13  _E=2.7e8 ;_E=9*bulk*shear/(3*bulk+shear)
14 loop while p_z # null
15    if z_group(p_z)='lay-1';只计算在组内的单元体
16     _sig1=z_sig3(p_z)
17     _sig2=z_sig2(p_z)
18     _sig3=z_sig1(p_z)
19     _a=_sig1^2+_sig2^2+_sig3^2
20     _b=2*_u*(_sig1*_sig2+_sig2*_sig3+_sig3*_sig1)
21     z_extra(p_z,1) =(_a-_b)/(2*_E);微单元体应变比能
22     z_extra(p_z,2) = z_sxx(p_z);自定义为单元体sxx应力
23    endif
24    p_z = z_next(p_z)
25 endloop
26 end
27 _udf_zextra
28 plot add axes
29 plot set plane nor 0 1 0 ori 0 5 0
30 plot con zextra 1 plane ;range 5 7,不能加range
31 ;plot add con zextra 2 plane

第二个变量取为sxx只是为了显示在一段代码中如何同时自定义两个变量。多个变量与此类似,不再祥述。

   

a Szz应力云图

a The szz stress cloud

b 应变比能应力云图

b Strain specific stress cloud

图3.3 自定义单元应力有关云图

Fig.3.3 The custom cloud map with zone stress

下面是节点变量: 

Flac3d Code

 1 new
 2 gen zone brick size 10 10 10 group lay-1
 3 mo el
 4 prop bulk 3e8 shear 1e8
 5 ini den 20e3
 6 set gravity 0 0 -9.8
 7 fix z range z 0
 8 solve
 9 config gpextra 2
10 def _udf_gpextra
11  p_gp = gp_head
12 loop while p_gp # null
13  gp_extra(p_gp,1) = sqrt((gp_xpos(p_gp)-xc)^ 2+(gp_zpos(p_gp)-zc)^ 2)
14  gp_extra(p_gp,2) = atan2((gp_xpos(p_gp)-xc),(zc-gp_zpos(p_gp)))
15  p_gp = gp_next(p_gp)
16 endloop
17 end
18 set xc=5 zc=5
19 _udf_gpextra
20 plot set background white
21 ;plot block gr
22 plot con gpextra 1
23 plot con gpextra 2
   

a 自定义节点云图1

a custom node cloud 1

b 自定义节点云图2

b custom node cloud 2

 

图3.4 自定义节点运动量有关云图

Fig.3.4 The custom cloud map with gridpoint movement

 

想看详细的.sav和fish代码请关注下面的二维码(flac3d自定义变量输出云图显示)。

 

 

 

Published by

风君子

独自遨游何稽首 揭天掀地慰生平

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注