LS-DYNA常见问题集锦
1 如何处理LS-DYNA中的退化单元?
在网格划分过程中,我们常遇到退化单元,如果不对它进行一定的处理,可能会对求解产生不稳定的影响。在LS-DYNA中,同一Part ID 下既有四面体,五面体和六面体,则四面体,五面体既为退化单元,节点排列分别为N1,N2,N3,N4,N4,N4,N4,N4和N1,N2,N3,N4,N5,N5,N6,N6。这样退化四面体单元中节点4有5倍于节点1-3的质量,而引起求解的困难。其实在LS-DYNA的单元公式中,类型10和15分别为四面体和五面体单元,比退化单元更稳定。所以为网格划分的方便起见,我们还是在同一Part ID下划分网格,通过*CONTROL_SOLID关键字来自动把退化单元处理成类型10和15的四面体和五面体单元。
2 LS-DYNA中对于单元过度翘曲的情况有何处理方法
有两种方法:
1. 采用默认B-T算法,同时利用*control_shell控制字设置参数BWC=1,激活翘曲刚度选项;
2. 采用含有翘曲刚度控制的单元算法,第10号算法。该算法是针对单元翘曲而开发的算法,处理这种情况能够很好的保证求解的精度。
除了上述方法外,在计算时要注意控制沙漏,确保求解稳定。
3 在ANSYS计算过程中结果文件大于8GB时计算自动中断,如何解决这个问题?
解决超大结果文件的方案:
1. 将不同时间段内的结果分别写入一序列的结果记录文件;
2. 使用/assign命令和重启动技术;
3. ANSYS采用向指定结果记录文件追加当前计算结果数据方式使用/assign指定的文件,所以要求指定的结果记录文件都是新创建的文件,否则造成结果文件记录内容重复或混乱。特别是,反复运行相同分析命令流时,在重复运行命令流文件之前一定要删除以前生成的结果文件序列。具体操作方法和过程参见下列命令流文件的演示。
4关于梁、壳单元应力结果输出的说明
问题:怎样显示梁单元径向和轴向的应力分布图(我作的梁单元结果只有变形图DOF SOLUTIN –Translation,但是没有stress等值线图,只有一种颜色)和壳单元厚度方向的应力、变形图(我们只能显示一层应力、变形,不知道是上下表层或中间层的结果)。
解答:如果想显示梁单元的应力等值线图,请打开实际形状显示功能(PLotCtrl->Style->Size and Shape->/ESHAPE选为ON),然后即可绘制。注意梁单元(如BEAM188,BEAM189)的应力结果是在单元坐标系中显示的,即SXX为轴向正应力,SXY,SXZ为截面剪应力,没有其他应力分量。另外,缺省情况下,只输出SXX,如果想观察SXY,SXZ,请将BEAM188或189的KEYOPT (4)选为Include both(以
这两个单元为例,其他单元可能不同,请看帮助文件,推荐使用BEAM188,BEAM189,这是功能最强的梁单元)。
至于壳的应力显示也类似,请打开实际形状显示功能,即可如同在实体上一样显示结果,您可以很清楚地看出不同位置、高度的应力值。当然如果你只想画出顶部、中部或底部的应力图也可以,以shell63为例,首先需关闭powergraphics(Toolbar上点POWRGRPH,选择OFF),然后进入General PostProc->Option for outp->SHELL中选择位置即可。
5 LS-DYNA求解有时为什么有负的滑动能
这是由于在建立模型时PART与PART之间有初始穿透,尤其是壳单元模型时很容易发生,应当避免这种情况的出现,否则容易在有初始穿透的地方产生塑性铰,原因是程序在求解的开始阶段给与穿透相应的接触力消除穿透,使材料发生局部塑性变形。解决方法见2002年11月的应用技巧。
6在DYNA中如何考虑材料失效
问题:在LS-DYNA的材料库中,能考虑失效的材料其失效模式往往比较单一,或者是应力失效,或是应变失效,如果材料本身较为复杂,在破坏过程中可能涉及多种失效模式,能否在一种材料中同时定义多种实效模式?
答:可以。LS-DYNA材料库中提供了专门定义失效准则的命令,即*mat_add_erosion,利用该命令,可以同时定义压力、主应力、等效应力、主应变、临界应力以及应力脉冲六种失效准则,在加载过程中满足任何一种失效准则都会使材料发生
破坏。
7在LS-DYNA中能否施加跟随力和跟随力矩?
答:能,对于一些应用,施加的载荷相对与坐标系不仅大小变化,而且方向变化,此时按照通常的施加力方向(X、Y、Z)不能满足要求,在LS-DYNA中,可以方便的施加跟随力和跟随力矩,在关键字*LOAD_NODE_OPTION中,对DOF选择4和8就可以施加跟随力和跟随力矩。
8如果在工程上遇到壳的厚度是坐标位置的函数时,这样的壳单元模型如何建立?
我们常用到等厚度的壳单元,如果在工程上遇到壳的厚度是坐标位置的函数时,这样的壳单元模型如何建立?要用到RTHICK命令。
/PREP7
ET,1,63
RECT,,10,,10
ESHAPE,2
ESIZE,,20
AMESH,1
EPLO
MXNODE = NDINQR(0,14)
*DIM,THICK,,MXNODE
*DO,NODE,1,MXNODE
*IF,NSEL(NODE),EQ,1,THEN
THICK(node) = 0.5 + 0.2*NX(NODE) + 0.02*NY(NODE)**2
*ENDIF
*ENDDO
NODE =
MXNODE =
RTHICK,THICK(1),1,2,3,4
/ESHAPE,1.0
/USER,1
/DIST,1,7
/VIEW,1,-0.75,-0.28,0.6
/ANG,1,-1
/FOC,1,5.3,5.3,0.27
EPLO
9不同自由度的单元在merge时,ANSYS如何处理自由度的不匹配问题
ANSYS可以将在给定容差(tolerance)内的节点通过merge可以合并到一起,它可以是不同的单元类型和不同的自由度(如:壳或梁(6自由度)与块单元(3自由度),ANSYS 在处理共节点的自由度关系使,类似于藕合自由度(Couple DOFs)而非约束方程,即只把相同的自由度联系起来,这样就可以方便的处理如柱销、铰链之类的约束问题。
10如何方便地建立压力容器的有限元模型?
在建立压力容器模型时,充分考虑模型的对称性,灵活利用ANSYS软件的工作平面和坐标系,利用合理的分网工具,可以得到漂亮的有限元模型,如下面的命令流所示:
/prep7
et,1,45
mp,ex,1,2e11
mp,nuxy,1,0.3
!
cylind,0.89,0.8,0,-1.7125,90,270, wpoff,0,0,-1.7125
wprot,0,90,
cylind,0.47/2,0.37/2,-1.5,0,90,180, vovlap,all
vsel,s,loc,x,-0.11,0
vdel,all,,,1
vsel,s,loc,y,0.3,0.5
vdel,all,,,1
vsel,s,loc,y,-0.3,0.3
vsbw,all
afillt,21,11,0.1
al,33,50,5
al,37,53,7
alls,all
va,15,13,25,24,11
kgen,2,35, , , ,-0.2, , ,0
lstr,35,15
adrag,54,,,,,,21
vsba,2,16
lsel,s,loc,y,1.5
lsel,u,length,,0,0.06
lesize,all,,,16,
alls,all
vsel,s,loc,y,0.9,1.5
vsweep,all
vsel,s,loc,y,0.89,0.99
vsweep,all
vsel,s,loc,y,0.8,0.89
vsweep,all
asel,s,loc,z,
asel,r,loc,y,0,1
asel,a,loc,y,0
accat,all
alls,all
vsel,s,loc,y,0,0.6
vmesh,all
vsel,s,loc,y,0,-0.6
vmesh,all
alls,all
!
WPCSYS,-1,0
wpoff,0,0,-1.7125
CSWPLA,11,0,1,1,
VSYMM,z,all,
nummrg,all
numcmp,all
wpoff,0,0,-1.7125
CSWPLA,12,0,1,1,
VSYMM,z,all,
nummrg,all
numcmp,all
!
wpoff,0,0,-3.425
wprot,0,-90
sphere,0.89,0.8,90,180,
csys,0
vsel,s,loc,z,-8.0,-6.85
vsbw,all
alls,all
nummrg,all
numcmp,all
vsel,s,loc,z,-8.0,-6.85
vsweep,all
11 ANSYS是否具有混合分网的功能?
ANSYS具有混合网格剖分的功能。例如两个粘在一起的面,可以对一个面进行三角形划分,再对另一个面进行四边形划分。过程见下列命令:
/prep7
et,1,42
rect,,1,,1
rect,1,2,,1
aglue,all
mshape,0,2d
amesh,1
mshape,1,2d
amesh,3
12在ANSYS中怎样给面施加一个非零的法向位移约束?
给面施加非零的法向位移约束的过程如下:
1) 在面上施加一个对称约束条件(DA,2,SYMM)
2) 将实体模型上的载荷传递到有限元模型(SBCTRAN)
3) 选择需要施加约束条件的面(ASEL,S,,,2)
4) 选择附在面上的节点(NSLA,S,1)
5) 创建节点组元(CM,AREA2_N,NODE)
6) 删除面上的对称约束条件(DADELE,2,SYMM)
7) 删除节点上的零位移约束(DDELE,AREA2_N,UY)
8) 在节点组元上施加一个非零的法向位移约束(D,AREA2_N,UY,.05)
9) 图示节点验证约束是否正确(NPLOT)
13如何得到径向和周向的计算结果?
在圆周对称结构中,如圆环结构承受圆周均布压力。要得到周向及径向位移,可在后处理/POST1中,通过菜单General Postproc>Options for Outp>Rsys>Global cylindric 或命令Rsys,1 将结果坐标系转为极坐标,则X方向位移即为径向位移,Y向位移即为周向位移。
14如何正确理解ANSYS的节点坐标系
节点坐标系用以确定节点的每个自由度的方向,每个节点都有其自己的坐标系,在缺省状态下,不管用户在什么坐标系下建立的有限元模型,节点坐标系都是与总体笛卡尔坐标系平行。有限元分析中的很多相关量都是在节点坐标系下解释的,这些量包括:
输入数据:
1 自由度常数
2 力
3 主自由度
4 耦合节点
5 约束方程等
输出数据:
1 节点自由度结果
2 节点载荷
3 反作用载荷等
但实际情况是,在很多分析中,自由度的方向并不总是与总体笛卡尔坐标系平行,比如
有时需要用柱坐标系、有时需要用球坐标系等等,这些情况下,可以利用ANSYS的“旋转节点坐标系”的功能来实现节点坐标系的变化,使其变换到我们需要的坐标系下。具体操作可参见ANSYS联机帮助手册中的“分析过程指导手册->建模与分网指南->坐标系->节点坐标系”中说明的步骤实现。
15如何考虑结构分析中的重力
在结构分析中,如何模拟结构自重和设备重量是一个经常遇到的问题,对于结构自重有两点要注意:
1.在材料性质中输入密度,如果不输入密度,则将不会产生重力效果。
2.因为ANSYS将重力以惯性力的方式施加,所以在输入加速度时,其方向应与实际的方向相反。
对于结构上的设备重量可以用MASS21单元来模拟,该单元为一个空间“点”单元。设备重量可通过单元实常数来输入。下面附上一个小例子(设重力方向向下)。
/prep7
et,1,42
et,2,21
r,2,10,10,10
mp,ex,1,2e5
mp,nuxy,1,0.3
mp,dens,1,1
rect,,10,,1
esize,.5
amesh,all
type,2
real,2
e,node(5,1,0)
fini
/solu
dk,1,all
dk,2,uy,
acel,,10
solve
fini
/post1
plnsol,u,sum,2
/SOLU
ANTYPE,MODAL
MODOPT,subspa,2,,,2,ON
MXPAND,2,,,YES
SOLVE
FINISH
/post1
set,1,1
etabl,kene,kene
ssum
*get,keneval1,ssum,,item,kene
*get,freqval1,mode,1,freq
eigen1=(2*3.14159*freqval1)**2
pmass1=2*keneval1/eigen1
set,1,2
etabl,kene,kene
ssum
*get,keneval2,ssum,,item,kene
*get,freqval2,mode,2,freq
eigen2=(2*3.14159*freqval2)**2
pmass2=2*keneval2/eigen2
finish
16对于具有高度不规则横截面的3D模型什么是最佳网格划分方法?
答:在横截面上自由划分四边形网格,然后在体内扫掠成六面体单元。在扫掠前可对四边形网格加密(如需要)。确认加密后生产的单元保持四边形以保证扫掠成六面体单元。(ANSYS5.6/FLOTRAN支持锲形单元,所以无此要求。)
set,1,1
etabl,kene,kene
ssum
*get,keneval1,ssum,,item,kene
*get,freqval1,mode,1,freq
eigen1=(2*3.14159*freqval1)**2
pmass1=2*keneval1/eigen1
set,1,2
etabl,kene,kene
ssum
*get,keneval2,ssum,,item,kene
*get,freqval2,mode,2,freq
eigen2=(2*3.14159*freqval2)**2
pmass2=2*keneval2/eigen2
17在交互方式下如何施加任意矢量方向的表面载荷?
答:若需在实体表面上施加任意方向的表面载荷,可通过在实体表面生成表面效应单元(比如SURF154单元)的方法来完成。
施加面载荷时,可施加在表面效应单元上,这样可以任意控制面力的方向。
加载过程中,选定表面效应单元,对话框中LKEY取值不同,则所加表面载荷的方向不同。(请仔细看一看surf154的单元手册)。
比如:LKEY=1(缺省),载荷垂直于表面;LKEY=2,载荷为+X切向;LKEY=3,载荷为+Y切向;LKEY=4,载荷垂直于表面;LKEY=5,则可输入任意矢量方向的载荷。
特别地:
LKEY=5,V ALUE 项为均布压力值
V AL2、V AL3、V AL4 三项的值确定矢量的方向。
18 LS-DYNA94版后(95和96)在爆炸及流固耦合方面的功能增强
在LS-DYNA中,处理爆炸和流固耦合单元一般采用ALE列式和Euler列式(也可采用Lagrange),从而克服单元严重畸变引起的数值计算困难,并实现流体-固体耦合的动态分析。
ALE列式先执行一个或几个Lagrange时步计算,此时单元网格随材料流动而产生变形,然后执行ALE时步计算:(1)保持变形后的物体边界条件,对内部单元进行重分网格,网格的拓扑关系保持不变,称为Smooth Step;(2)将变形网格中的单元变量(密度、能
量、应力张量等)和节点速度矢量输运到重分后的新网格中,称为Advection Step。用户可以选择ALE时步的开始和终止时间,以及其频率。Euler列式则是材料在一个固定的网格中流动,在LS-DYNA中只要将有关实体单元标志Euler算法,并选择输运(advection)算法。
LS-DYNA还可将Euler网格与全Lagrange有限元网格方便地耦合,以处理流体与结构在各种复杂载荷条件下的相互作用问题,并在95和96版中得到了极大的增强。
19 ANSYS坐标系总结
工作平面(Working Plane)
工作平面是创建几何模型的参考(X,Y)平面,在前处理器中用来建模(几何和网格)
总体坐标系
在每开始进行一个新的ANSYS分析时,已经有三个坐标系预先定义了。它们位于模型的总体原点。三种类型为:
CS,0: 总体笛卡尔坐标系
CS,1: 总体柱坐标系
CS,2: 总体球坐标系
数据库中节点坐标总是以总体笛卡尔坐标系,无论节点是在什么坐标系中创建的。
局部坐标系
局部坐标系是用户定义的坐标系。局部坐标系可以通过菜单路径Workplane>Local CS>Create LC来创建。
激活的坐标系是分析中特定时间的参考系。缺省为总体笛卡尔坐标系。当创建了一个新的坐标系时,新坐标系变为激活坐标系。这表明后面的激活坐标系的命令。菜单中激活坐标系的路径Workplane>Change active CS to>。
节点坐标系
每一个节点都有一个附着的坐标系。节点坐标系缺省总是笛卡尔坐标系并与总体笛卡尔坐标系平行。节点力和节点边界条件(约束)指的是节点坐标系的方向。时间历程后处
理器/POST26 中的结果数据是在节点坐标系下表达的。而通用后处理器/POST1中的结果是按结果坐标系进行表达的。
例如: 模型中任意位置的一个圆,要施加径向约束。首先需要在圆的中心创建一个柱坐标系并分配一个坐标系号码(例如CS,11)。这个局部坐标系现在成为激活的坐标系。然后选择圆上的所有节点。通过使用\"Prep7>Move/Modify>Rotate Nodal CS to active CS\选择节点的节点坐标系的朝向将沿着激活坐标系的方向。未选择节点保持不变。节点坐标系的显示通过菜单路径Pltctrls>Symbols>Nodal CS。这些节点坐标系的X方向现在沿径向。
约束这些选择节点的X方向,就是施加的径向约束。
注意:节点坐标系总是笛卡尔坐标系。可以将节点坐标系旋转到一个局部柱坐标下。这种情况下,节点坐标系的X方向指向径向,Y方向是周向(theta)。可是当施加theta方向非零位移时,ANSYS总是定义它为一个笛卡尔Y位移而不是一个转动(Y位移不是theta 位移)。
单元坐标系
单元坐标系确定材料属性的方向(例如,复合材料的铺层方向)。对后处理也是很有用的,诸如提取梁和壳单元的膜力。单元坐标系的朝向在单元类型的描述中可以找到。
结果坐标系
/Post1通用后处理器中(位移, 应力,支座反力)在结果坐标系中报告,缺省平行于总
体笛卡尔坐标系。这意味着缺省情况位移,应力和支座反力按照总体笛卡尔在坐标系表达。无论节点和单元坐标系如何设定。要恢复径向和环向应力,结果坐标系必须旋转到适当的坐标系下。这可以通过菜单路径Post1>Options for output实现。/POST26时间历程后处理器中的结果总是以节点坐标系表达。
显示坐标系
显示坐标系对列表圆柱和球节点坐标非常有用(例如, 径向,周向坐标)。建议不要激活这个坐标系进行显示。屏幕上的坐标系是笛卡尔坐标系。显示坐标系为柱坐标系,圆弧将显示为直线。这可能引起混乱。因此在以非笛卡尔坐标系列表节点坐标之后将显示坐标系恢复到总体笛卡尔坐标系。
20显式隐式分析转换的注意事项
运用ANSYS/LS-DYNA进行隐、显式分析时,由于隐、显式分析过程中所涉及的对象一般会有所不同,ANSYS/LS-DYNA使用手册中只介绍了一种方法,即下面所述的第一种。实际上,共有两种方法可以选择使用:
1、将隐、显式分析过程中涉及到的所有对象都在隐式分析前建好模型,把隐式分析不需要的对象的所有节点自由度都约束住,进行隐式求解,转换单元类型,进入显式求解阶段,将显式part的约束去除,执行动力松弛求解以便对相应part进行应力初始化,并按照需要施加新的边界和载荷条件,进行显式分析。
2、在隐式分析时只对隐式分析涉及的对象建模,而不考虑显式分析需要的part,完成隐式分析后,单元类型转换完成后,通过定义新的单元类型和材料,创建显式分析所需
的模型,生成新的part列表,选择所有节点,读入隐式求解结果文件进行动力松弛求解,对相应part进行应力初始化,施加必要的约束和载荷条件,执行显式求解。
实际上,动力松弛过程是执行一次稳态或是准静态分析,目的就是将隐式分析的结果中
的位移、温度结果作为体载荷施加到相关节点上,实现相应部件的应力初始化,作为后续分析的初始条件。需要注意的是,LS-DYNA中无高阶单元,所以在进行隐式求解时要选择缩减积分的低阶单元。如果隐式分析使用高阶单元,则程序无法自动转换单元类型,需要手动转换。
上面所述的是利用ANSYS作为隐式求解器时的操作方法。我们知道,近几年来,LSTC 公司不断加强LS-DYNA程序本身的隐式分析能力,所以我们也可以利用LS-DYNA本身的隐式求解器来完成隐式分析,也基本有两种方法:
1、进行隐式分析时,涉及的关键字主要有:
*control_implicit_solver
*control_implicit_general
*control_implicit_solution
*control_implicit_auto
*control_implicit_dynamics
等。在这些命令中,设置隐式求解的求解方法(波前、迭代)、时间步长等控制参数。
在dyna的输入文件中加入下列命令,
*interface_springback_nike3D
在该关键字中,声明需要进行应力初始化的part号,完成隐式求解后,生成一个nikin文件,包含了相关part的应力应变信息。
在后续的显式分析中,在input deck中加入下列命令,
*include
nikin
程序就会自动将存在应力、应变的相关part导入,进行显式分析。
2、另外,可以LS-DYNA的动力松弛方式来对某一构件进行应力初始化。
相关的关键字为:
*DEFINE_CURVE
将此卡片的SIDR参数设置为1即可启动动力松弛分析。
*CONTROL_DYNAMIC_RELAXA TION
此卡片在随后的显式分析中用来进行应力初始化操作。
*LOAD_BODY_RX(RY、RZ)等
运行后收敛的结果即为初始化应力,同时生成动力松弛文件drdisp.sif,该文件与drelax 文件结构、用法完全一致,只是精度上较差。
建议:使用ANSYS作为隐式求解器,因为它的隐式功能和计算精度都优于LS-DYNA。
21利用LS-DYNA进行接触分析应该注意的一些问题
在定义材料特性时确保使用了协调单位。不正确的单位将不仅决定材料的响应,而且影响材料的接触刚度。
确保模型中使用的材料数据是精确的。大多数非线性动力学问题的精度取决于输入材料
数据的质量。多花点时间以得到精确的材料数据。
对所给模型选择最合适的材料模型。如果不能确定某个part的物理响应是否应该包含某个特殊特性(例如:应变率效应),定义一种包含所有可能特点的材料模型总是最好的。
在两个接触面之间不允许有初始接触,确保在定义接触的地方模型没有任何重叠。
总是使用真实的材料特性和壳厚度值,接触面的材料特性和几何形状被用来决定罚刚度。
在相同的part之间不要定义多重接触。
对壳单元,除非需要接触力否则使用自动接触。
无论何时尽可能使用自动单面接触(ASSC),此接触是最容易定义的接触类型而不花费过多的CPU 时间。
在求解之前列示所定义的接触面以保证定义了合适的接触。
避免单点载荷,它们容易引起沙漏模式。既然沙漏单元会将沙漏模式传给相邻的单元,应尽可能避免使用点载荷。
在定义载荷曲线之后,使用EDLDPLOT 命令进行图形显示以确保其精确性.
因为LS-DYNA 可能会多算几个微秒,将载荷扩展至超过最后的求解时间(终止时间)常常是有用的。
对准静态问题,施加一个高于真实情况的速度常常是有利的,这能极大的缩减问题的求解时间。
不允许约束刚体上的节点,所有的约束必须加在刚体的质心(通过EDMP,RIGID 命令)。
22 LS-DYNA求解中途退出的解决方案
LS-DYNA在求解过程中由于模型的各种问题常发生中途退出的问题,归纳起来一般有三种现象:一是单元负体积,二是节点速度无限大,三是程序崩溃。
1.单元负体积:这主要是由于人工时间步长设置的不合理,调小人工时间步长可解决该问题。还有就是材料参数和单元公式的选择合理问题。
2.节点速度无限大:一般是由于材料等参数的单位不一致引起,在建立模型时应注意
单位的统一,另外还有接触问题,若本该发生接触的地方没有定义接触,在计算过程中可能会产生节点速度无限大。
3.程序崩溃:该现象不常发生,若发生,首先检查硬盘空间是否已满,二是检查求解的规模是否超过程序的规模。最后就是对于特定的问题程序本身的问题。
当然对于程序中途退出问题原因是比较复杂的,不过对于其他一些刚开始就中断的现象LS-DYNA都会提示用户怎样改正,如格式的不对,符号的缺少等等。
23液面晃动
液面晃动(sloshing)问题的研究在实际工程中有重要的意义,比如在石化工业中广泛应用的大型储罐,一般直径在几十米,甚至上百米。在地震或其他意外条件下液面的波动情况如何,是否存在安全隐患,都需要进行数值模拟研究。下面就ANSYS/LS-DYNA软件在这方面的应用。
众所周知,ANSYS/LS-DYNA在显式计算领域占据主导地位,随着各种新的算法的不断采用,在求解的广度、精度以及效率上,ANSYS/LS-DYNA具有同类软件所无法比拟的优势。针对液面晃动问题,ANSYS/LS-DYNA提供以下三种方法:
1、流固耦合
流固耦合是ANSYS/LS-DYNA计算流体和结构间相互作用的最常用的方法,包括单物质+空材料和多物质耦合两大类,流体单元有Euler 和ALE两种。其涉及的主要命令如下:
*control_ale
算法选择有两种2、3,分别为Euler和ale实质上此处二者没有区别,只是因为兼容性进行的设置;两种精度供选择-单精度、双精度。
*section_solid_ale
对单物质+空材料为12号算法,对多物质耦合为11号算法。
*ale_multi-material_group
进行多物质的定义,最多可以定义20种材料。可以根据物质间能否混合将各种材料定义在不同的材料组ID中。
* ale_multi-material_system_group
该命令决定流体物质的算法(Euler或Ale),或是在运算过程中切换使用两种算法,并可对流体物质进行自由度约束。该命令多与下列三个命令结合使用:
* ale_multi-material_system_curve
定义ale系统的运动曲线。
* ale_multi-material_system_node
通过一系列节点定义ale的运动参考坐标系统。
* ale_multi-material_system_switch
定义euler和ale参考系统的切换。
上述命令是流体物质涉及的关键字,而我们知道,结构采用Lagrange单元来离散,二者之间的耦合通过下列命令来实现:
*constrained_lagrange_in_solid
耦合算法分为两种:罚耦合和运动约束。前者遵循能量守恒,后者遵循动量守恒。一般令结构网格较流体网格密以保证界面不出现渗透,否则可以增大NQUAD参数值来增加耦合点,如设置该值为4或5。在970中,此命令第三行又增加了一个控制字ILEAK-0,1或2,一般可设置为1。
最后给出一个典型算例-水箱跌落的部分关键字:
*KEYWORD
*TITLE
boxwater2.k: dropping a water box onto a rigid platform
$========================================================================
$ [1] EXECUTION CONTROLS
$========================================================================
*CONTROL_TERMINATION
$ ENDTIM ENDCYC DTMIN ENDENG ENDMAS
0.0500000 0 0.0000000 0 0.0000000
*CONTROL_TIMESTEP
$ DTINIT TSSFAC ISDO TSLIMT DT2MS LCTM ERODE MS1ST
0.0000000 0.2000000 0 0.0000000 0.0000000 0 0 0
*CONTROL_ENERGY
$ HGEN RWEN SLNTEN RYLEN
2 2 2 2
$========================================================================
$ [3] OUTPUT CONTROLS
$========================================================================
*DATABASE_BINARY_D3PLOT
$ DT CYCL LCDT BEAM
0.0005000 0
*DATABASE_GLSTAT
0.0001000
$========================================================================
$ [5] |SECTIONS|PARTS| DEFs
$=================================================
=======================
*PART
water in the box
$ PID SECID MID EOSID HGID GRAV ADPOPT TMID
1 1 1 1 0 0 0 0
*SECTION_SOLID_ALE
$ SECID ELFORM AET
1 12
$ AFAC BFAC CFAC DFAC START END AAFAC
0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
$------------------------------------------------------------------------------- *MAT_NULL
$ MID RHO PC MU TEROD CEROD YM PR
1 1000.0000 -1.000+10 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
*EOS_LINEAR_POLYNOMIAL
$ EOSID C0 C1 C2 C3 C4 C5 C6
1 0.0000000 1.50000+9 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
$ E0 V0
0.0000000 1.0000000
$========================================================================
*PART
void portion in the box
2 1 1 1 0 0 0 0
*INITIAL_VOID_PART
2
$========================================================================
*PART
rigid box containing water
$ PID SECID MID EOSID HGID GRAV ADPOPT TMID
3 3 3 0 0 0 0 0
*SECTION_SOLID
$ SECID ELFORM AET
3 0
*MAT_RIGID
3 2000.0000 1.00000+8 0.0000000 0.0000000 0.0000000 0.0000000
0.0000000 0.0000000 0.0000000
0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
$========================================================================
*PART
rigid super-heavy platform
$ PID SECID MID EOSID HGID GRAV ADPOPT TMID
4 4 4
*SECTION_SHELL
$ SID ELFORM SHRF NIP PROPT QR/IRID ICOMP
4 0
$ T1 T2 T3 T4 NLOC
0.011 0.011 0.011 0.011
*MAT_ELASTIC
$ MID RHO E PR DA DB K
4 1000000.0 1.0000+14
$========================================================================
$ [8] BC's + IC's + BODY LOADS + FORCE FIELDS
$========================================================================
*INITIAL_VELOCITY
$ NSID NSIDEX BOXID
$ VX VY VZ VXR VYR VZR
0.0 -20.0 0.0
$------------------------------------------------------------------------------- *LOAD_BODY_Y
$ LCID SF LCIDDR XC YC ZC
1 1.00
*DEFINE_CURVE
$ LCID SIDR SFO OFFA OFFO DATTYP
1
$ X=abcissa Y=ordinate
0.0 981.0
1.0 981.0
$======================================================================== CONSTRAINTS, ...
$
[9]
LAGRANGIAN
CONTACTS
$======================================================================== $ SFS = scale fact on dflt SLAVE penal stifns (see CONTROLL_CONTACT)
$ SFM = scale fact on dflt MASTER penal stifns (see CONTROLL_CONTACT)
*CONTACT_AUTOMATIC_NODES_TO_SURFACE
$ SSID MSID SSTYP MSTYP SBOXID MBOXID SPR MPR
3 4 3 3
$ FS FD DC VC VDC PENCHK BT DT
$ SFS SFM SST MST SFST SFMT FSF VSF
100. 100.
$======================================================================== $ [10] EULERIAN & ALE CONTACTS CONSTRAINTS, ...
$======================================================================== *CONTROL_ALE
$ DCT NADV METH AFAC BFAC CFAC DFAC EFAC
2 1 4-1.0000000 0.0000000 0.0000000 0.0000000
$ START END AAFAC VFACT VLIMIT EBC
0.0000000 0.0000000 0.0000000 0.0
*ALE_REFERENCE_SYSTEM_GROUP
$ SID STYPE PRTYP PRID BCTRAN BCEXP BCROT ICOORD
1 0 5 1
$ XC YC ZC EXPLIM
因篇幅问题不能全部显示,请点此查看更多更全内容