紧急求助;关于流固耦合动力方面
在用ADINA求解结构和液体的耦合震动问题时(比如渡槽抗震),关于自由水面的晃动条件是否有非线性的解法和线性解法,该如何设置?;另外在ANSYS中,是否也存在这样的解法功能,请高手指点,万分感谢!!!回复:(xmh0213)紧急求助;关于流固耦合动力方面
本帖最后由 VibInfo 于 2016-4-21 15:11 编辑ansys是可以的,下面是一篇相关的文章,你可以看看
液面晃动(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
$========================================================================
$ 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
$========================================================================
$ OUTPUT CONTROLS
$========================================================================
*DATABASE_BINARY_D3PLOT
$ DT CYCL LCDT BEAM
0.0005000 0
*DATABASE_GLSTAT
0.0001000
$========================================================================
$ |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
$========================================================================
$ BC's + IC's + BODY LOADS + FORCE FIELDS
$========================================================================
*INITIAL_VELOCITY
$ NSID NSIDEX BOXID
0
$ 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
$========================================================================
$ LAGRANGIAN CONTACTS CONSTRAINTS, ...
$========================================================================
$ 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.
$========================================================================
$ 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
*SET_PART_LIST
$ SID DA1 DA2 DA3 DA4
1
$ PID1 PID2 PID3 PID4 PID5 PID6 PID7 PID8
1 2
*ALE_REFERENCE_SYSTEM_NODE
$ NSID
1
$ N1 N2 N3 N4 N5 N6 N7 N8
5 6 7
2、 SPH算法
SPH算法作为DYNA中第一种无网格(meshfree)算法,在连续体的破碎或分离分析中得到了广泛的关注和应用。在解决极度变形和破坏类型的问题上SPH有着其他方法无法比拟的优势,可以说无网格算法正在成为数值分析领域的研究热点,具有很好的发展前景。
我们知道传统的有限单元法中,单元的形状对结果的精度影响很大,如果单元因为变形过大可能造成矩阵奇异,使得精度降低甚至无法计算下去。而SPH算法则是把每个粒子作为一个物质的插值点,各个粒子间通过规则的内插函数计算全部质点即可得到整个问题的解。
主要的关键字如下:
*section_sph
提供算法选择,以及sph粒子的滑顺长度的定义;
*control_sph
提供sph算法的控制,如粒子排序后的循环次数、计算空间、中止时间以及维数;
处理sph粒子与其它结构的相互作用采用接触算法。
下面给出某一算例的部分命令流:
*KEYWORD
*TITLE
sph test
$
*DATABASE_FORMAT
0
$units:cm,gm,us
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
$ CONTROL OPTIONS $
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
$
*CONTROL_PARALLEL
1
*CONTROL_ENERGY
2 2 2 2
*CONTROL_SHELL
20.0 1 -1 1 2 2 1
*CONTROL_TIMESTEP
0.0000 0.9000 0 0.00 0.00
*CONTROL_TERMINATION
$1000.0000 0 0.00000 0.00000 0.00000
0.800E+05 0 0.00000 0.00000 0.00000
*CONTROL_SPH
2 0
$
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
$ TIME HISTORY $
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
$
*DATABASE_BINARY_D3PLOT
200.0E+00
$0.500E+00
*DATABASE_BINARY_D3THDT
0.8000E+02
*DATABASE_EXTENT_BINARY
0 0 3 1 0 0 0 0
0 0 4 0 0 0
$
$
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
$ SECTION DEFINITIONS $
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
$
*SECTION_SOLID
2 1
*SECTION_SPH
1
$
$
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
$ MATERIAL DEFINITIONS $
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
$
*MAT_RIGID
2 7.80 2.10 0.300000 0.0 0.0 0.0
1.00 7.00 7.00
*MAT_RIGID
3 7.80 2.10 0.300000 0.0 0.0 0.0
1.00 6.00 7.00
*MAT_RIGID
4 7.80 2.10 0.300000 0.0 0.0 0.0
1.00 6.00 7.00
*MAT_NULL
1 1.00
*EOS_GRUNEISEN
1 .1484000 1.9790000 .0000000 .0000000 .1100000 3.0000000 .0000000
.0000000
$
$
$
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
$ PARTS DEFINITIONS $
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
$
$
*PART
Part 1 for Mat 4 and Elem Type 1
1 1 1 1 0 0 0
$
*PART
Part 2 for Mat 2 and Elem Type 1
2 2 2 0 0 0 0
$
*PART
Part 3 for Mat 3 and Elem Type 1
3 2 3 0 0 0 0
*PART
Part 3 for Mat 3 and Elem Type 1
4 2 4 0 0 0 0
$
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
$ RIGID BOUNDRIES $
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
$
*LOAD_BODY_Y
2,1.0
*DEFINE_CURVE
2
0.0,9.8E-10
1.0,9.8E-10
$
*DEFINE_CURVE
1 0 1.000 1.000 0.000 0.000
0.000000000000E+00 1.000000000000E-04
1.000000000000E+05 1.000000000000E-04
*BOUNDARY_PRESCRIBED_MOTION_RIGID
3 2 0 1 -1.00 0 0.000 0.000
$
$
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
$ NODE DEFINITIONS $
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
$
*CONTACT_AUTOMATIC_NODES_TO_SURFACE
1 1 3 2 0 0 0 0
0.000 0.000 0.000 0.000 0.000 0 0.000 0.0000E+08
0.000 0.000 0.100 0.000 0.000 0.000 0.000 0.000
1 0.1000000 3
*SET_PART_LIST
1
2,3,4
*INCLUDE
mesh.k
*END
3、 ALE(接触算法)
采用接触算法分析流固耦合问题也是一种选择,在液面波动幅度较小时可以采用此种方法进行分析,流体用ALE算法描述,结构采用Lagrange算法;需要注意的一点:对ALE网格要进行滑顺处理,以控制网格形态,保证求解精度。
下面是某算例的部分命令流:
*KEYWORD
*TITLE
ALE
$
*DATABASE_FORMAT
0
$
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
$ CONTROL OPTIONS $
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
$
*CONTROL_PARALLEL
1
*CONTROL_ENERGY
2 2 2 2
*CONTROL_ALE
3 1 2 1.0000000 1.0000000 0.000000 1.0000000
1.0000e+9 0.000000 0.000000 2
*CONTROL_TIMESTEP
0.0000 0.9000 0 0.00 0.00
*CONTROL_CONTACT
0.0000000 0.0000000 1 0 2 0 0
0 0 0 0
*CONTROL_TERMINATION
0.100E+05 0 0.00000 0.00000 0.00000
$
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
$ TIME HISTORY $
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
$
*DATABASE_BINARY_D3PLOT
0.1000E+03
*DATABASE_BINARY_D3THDT
0.1000E+02
*DATABASE_EXTENT_BINARY
0 0 3 1 0 0 0 0
0 0 4 0 0 0
$
$
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
$ SECTION DEFINITIONS $
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
$
*SECTION_SOLID
2 1
*SECTION_SOLID_ALE
1 5
$
$
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
$ MATERIAL DEFINITIONS $
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
$
*MAT_RIGID
2 7.80 2.10 0.280000 0.0 0.0 0.0
1.00 7.00 7.00
*MAT_RIGID
3 7.80 2.10 0.280000 0.0 0.0 0.0
1.00 6.00 7.00
*MAT_RIGID
4 7.80 2.10 0.280000 0.0 0.0 0.0
1.00 6.00 7.00
*MAT_NULL
1 1.0000000 0.0000000 1.00000-8 0.0000000 0.0000000 0.0000000 0.0000000
*EOS_LINEAR_POLYNOMIAL
1 1.00000-6 1.92100-3 0.0000000 0.0000000 0.4000000 0.4000000 0.0000000
0.0000000 0.0000000
$
$
$
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
$ PARTS DEFINITIONS $
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
$
$
*PART
Part 1 for Mat 4 and Elem Type 1
1 1 1 1 0 0 0
$
*PART
Part 2 for Mat 2 and Elem Type 1
2 2 2 0 0 0 0
$
*PART
Part 3 for Mat 3 and Elem Type 1
3 2 3 0 0 0 0
*PART
Part 3 for Mat 3 and Elem Type 1
4 2 4 0 0 0 0
$
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
$ RIGID BOUNDRIES $
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
$
*CONTACT_SURFACE_TO_SURFACE
1 2 3 3 0 0 0 0
0.0000 0.0000 0.0000 0.0000 0.0000 0 0.00000.1000E+08
1.0000 0.0001 0.0000 0.0000 1.0000 1.0000 1.0000 1.0000
*CONTACT_SURFACE_TO_SURFACE
1 3 3 3 0 0 0 0
0.0000 0.0000 0.0000 0.0000 0.0000 0 0.00000.1000E+08
1.0000 0.0001 0.0000 0.0000 1.0000 1.0000 1.0000 1.0000
*CONTACT_SURFACE_TO_SURFACE
1 4 3 3 0 0 0 0
0.0000 0.0000 0.0000 0.0000 0.0000 0 0.00000.1000E+08
1.0000 0.0001 0.0000 0.0000 1.0000 1.0000 1.0000 1.0000
$
*DEFINE_CURVE
1 0 1.000 1.000 0.000 0.000
0.000000000000E+00 1.000000000000E-04
1.000000000000E+05 1.000000000000E-04
*BOUNDARY_PRESCRIBED_MOTION_RIGID
3 2 0 1 -1.00 0 0.000 5.00e3
*BOUNDARY_PRESCRIBED_MOTION_RIGID
4 2 0 1 -1.00 0 5.00e3 0.000
$
通常我们处理液面晃动采用上述方法,LS-DYNA求解器在下一个版本LS970中在MESHFREE功能上增加了更为稳定和高效的EFG技术,在解决此类问题上将给予我们更大的灵活性和更多的选择。
非常感谢,还要请教
本帖最后由 VibInfo 于 2016-4-21 15:12 编辑非常感谢,我已经明白了ANSYS/LS-DYNA提供了三种方法可以进行液固耦合的求解,但是,它们对液面的晃动分别是如何处理的,我还要请教?。因为,我们知道,就势流而言,自由液体表面的晃动条件包括运动学边界条件和动力学边界条件,而该两个条件都是非线性的,在实际计算处理当中,有将该非线性进行线性化的方法,那么ANSYS/LS-DYNA提供的三种方法是线性化了还是没有线性化处理?请指教,谢谢!
本身是
页:
[1]