1、这个例子模拟三峡库区的水位涨落时,涉水土质滑坡的渗流场分布情况的,是以前做的,蛮好玩的。如果大家关心些新闻的话,三峡库区有涨水、蓄水、排水、枯水这个一年一次循环的周期,关键问题就在于怎么在数值模拟中考虑这个涨水、排水,并且是和实际时间对应起来。1401501601701800 50 100 150 200 250 300 350 400时 间 t/天水位高度h/m图 1 水位涨落周期变化曲线时间单位这里用的是“天” ,任何问题,只要把单位统一化,就可以实现自己所定义的单位系统下的问题,这个大家应该是很熟悉的了。t=2 天 t=4 天t=8 天 t=16 天t=20 天 t=26 天图 2 浸润
2、线位置随涨水时间 t 变化图数值模拟中实现这个问题,需要对边界条件上加载孔隙水压力的方式动手脚了,首先把时间定下来,然后把每个时间对应的水位高度定下来,然后就是写对应的程序了,关键就在于,需要在各个位置的节点处定义不同的 pp_t 幅值曲线。这个问题使用子程序会很方便,也可以不用,只需要定义一堆关键字吧,但是 GUI 方式是完全没法实现的。其实软件关键字的背后也就是他的脚本语言,就好像是 FLAC 里写一句 struct cable,这个命令本身只有给你看懂那么一个傻瓜意义意义。看看关键字怎么定义的:*AMPLITUDE,name=down1,VALUE=ABSOLUTE0,0,30,-300
3、,180,-300*AMPLITUDE,name=down2,VALUE=ABSOLUTE0,10,1,0,30,-290,180,-290*AMPLITUDE,name=down3,VALUE=ABSOLUTE0,20,2,0,30,-280,180,-280*AMPLITUDE,name=down4,VALUE=ABSOLUTE0,30,3,0,30,-270,180,-270*AMPLITUDE,name=down5,VALUE=ABSOLUTE0,40,4,0,30,-260,180,-260*AMPLITUDE,name=down6,VALUE=ABSOLUTE0,50,5,0,30
4、,-250,180,-250*AMPLITUDE,name=down7,VALUE=ABSOLUTE0,60,6,0,30,-240,180,-240*AMPLITUDE,name=down8,VALUE=ABSOLUTE0,70,7,0,30,-230,180,-230*AMPLITUDE,name=down9,VALUE=ABSOLUTE0,80,8,0,30,-220,180,-220*AMPLITUDE,name=down10,VALUE=ABSOLUTE0,90,9,0,30,-210,180,-210*AMPLITUDE,name=down11,VALUE=ABSOLUTE0,10
5、0,10,0,30,-200,180,-200*AMPLITUDE,name=down12,VALUE=ABSOLUTE0,110,11,0,30,-190,180,-190*AMPLITUDE,name=down13,VALUE=ABSOLUTE0,120,12,0,30,-180,180,-180*AMPLITUDE,name=down14,VALUE=ABSOLUTE0,130,13,0,30,-170,180,-170*AMPLITUDE,name=down15,VALUE=ABSOLUTE0,140,14,0,30,-160,180,-160*AMPLITUDE,name=down1
6、6,VALUE=ABSOLUTE0,150,15,0,30,-150,180,-150*AMPLITUDE,name=down17,VALUE=ABSOLUTE0,160,16,0,30,-140,180,-140*AMPLITUDE,name=down18,VALUE=ABSOLUTE0,170,17,0,30,-130,180,-130*AMPLITUDE,name=down19,VALUE=ABSOLUTE0,180,18,0,30,-120,180,-120*AMPLITUDE,name=down20,VALUE=ABSOLUTE0,190,19,0,30,-110,180,-110*
7、AMPLITUDE,name=down21,VALUE=ABSOLUTE0,200,20,0,30,-100,180,-100*AMPLITUDE,name=down22,VALUE=ABSOLUTE0,210,21,0,30,-90,180,-90*AMPLITUDE,name=down23,VALUE=ABSOLUTE0,220,22,0,30,-80,180,-80*AMPLITUDE,name=down24,VALUE=ABSOLUTE0,230,23,0,30,-70,180,-70*AMPLITUDE,name=down25,VALUE=ABSOLUTE0,240,24,0,30,
8、-60,180,-60*AMPLITUDE,name=down26,VALUE=ABSOLUTE0,250,25,0,30,-50,180,-50*AMPLITUDE,name=down27,VALUE=ABSOLUTE0,260,26,0,30,-40,180,-40*AMPLITUDE,name=down28,VALUE=ABSOLUTE0,270,27,0,30,-30,180,-30*AMPLITUDE,name=down29,VALUE=ABSOLUTE0,280,28,0,30,-20,180,-20*AMPLITUDE,name=down30,VALUE=ABSOLUTE0,29
9、0,29,0,30,-10,180,-10*AMPLITUDE,name=down31,VALUE=ABSOLUTE0,300,29.9,0,180,0*BOUNDARY,AMPLITUDE=down1Part-1-1.nod30,8,0*BOUNDARY,AMPLITUDE=down2Part-1-1.nod29,8,10*BOUNDARY,AMPLITUDE=down3Part-1-1.nod28,8,20*BOUNDARY,AMPLITUDE=down4Part-1-1.nod27,8,30*BOUNDARY,AMPLITUDE=down5Part-1-1.nod26,8,40*BOUN
10、DARY,AMPLITUDE=down6Part-1-1.nod25,8,50*BOUNDARY,AMPLITUDE=down7Part-1-1.nod24,8,60*BOUNDARY,AMPLITUDE=down8Part-1-1.nod23,8,70*BOUNDARY,AMPLITUDE=down9Part-1-1.nod22,8,80*BOUNDARY,AMPLITUDE=down10Part-1-1.nod21,8,90*BOUNDARY,AMPLITUDE=down11Part-1-1.nod20,8,100*BOUNDARY,AMPLITUDE=down12Part-1-1.nod
11、19,8,110*BOUNDARY,AMPLITUDE=down13Part-1-1.nod18,8,120*BOUNDARY,AMPLITUDE=down14Part-1-1.nod17,8,130*BOUNDARY,AMPLITUDE=down15Part-1-1.nod16,8,140*BOUNDARY,AMPLITUDE=down16Part-1-1.nod15,8,150*BOUNDARY,AMPLITUDE=down17Part-1-1.nod14,8,160*BOUNDARY,AMPLITUDE=down18Part-1-1.nod13,8,170*BOUNDARY,AMPLIT
12、UDE=down19Part-1-1.nod12,8,180*BOUNDARY,AMPLITUDE=down20Part-1-1.nod11,8,190*BOUNDARY,AMPLITUDE=down21Part-1-1.nod10,8,200*BOUNDARY,AMPLITUDE=down22Part-1-1.nod9,8,210*BOUNDARY,AMPLITUDE=down23Part-1-1.nod8,8,220*BOUNDARY,AMPLITUDE=down24Part-1-1.nod7,8,230*BOUNDARY,AMPLITUDE=down25Part-1-1.nod6,8,2
13、40*BOUNDARY,AMPLITUDE=down26Part-1-1.nod5,8,250*BOUNDARY,AMPLITUDE=down27Part-1-1.nod4,8,260*BOUNDARY,AMPLITUDE=down28Part-1-1.nod3,8,270*BOUNDARY,AMPLITUDE=down29Part-1-1.nod2,8,280*BOUNDARY,AMPLITUDE=down30Part-1-1.nod1,8,290*BOUNDARY,AMPLITUDE=down31Part-1-1.nod0,8,300以上是一部分关键字,其实根本问题就是找到对应节点,对各个节点附上与时间相关的边界。这个问题,其实只能算是半成品式的二次开发吧。用过LS-DYNA 可能更清楚我写的这个东西是怎么一回事。