【讨论】移动热源的加载,出错,请指教
学习对圆形的移动热源进行数组加载,加载后执行就报错,仔细看了,不知问题在哪儿,请高手指教/UNITS,SI
/PREP7
!设置单元类型
ET,1,SOLID90
!设置材料特性
MP,EX,1,1.2E11 !弹性模量
MP,ALPX,1,7.962E-6 !热膨胀系数
MP,REFT,1,20 !参考温度
MP,PRXY,1,0.3 !泊松比
MP,DENS,1,4000 !密度
MP,C,1,1.5 !比热
MP,KXX,1,0.4 !热传导系数
BLOCK,0,40,0,40,0,2!生成实体
SAVE
!MSHAPE,1,3D
!MSHKEY,0
ESIZE,1
/SOLU
MAX_TIME=41
RADIUS=2
MAX_X=2*RADIUS+1
MAX_Y=2*RADIUS+1
Qmax=1000
V=1
ELETH=1 !单元长度
TIMESTEP=ELETH/V
K=1 !能量集中系数
*DIM,FLUX2,TABLE,MAX_TIME,MAX_X,MAX_Y,TIME,X,Y
*DO,K,1,MAX_TIME,1
*DO,I,1,MAX_X,1
*DO,J,1,MAX_Y,1
DISTANCE=SQRT((RADIUS-J)**2+(RADIUS-I)**2)
*IF,DISTANCE,LE,RADIUS,THEN
FLUX2(I,J,K)=Qmax*EXP(-K*DISTANCE**2)
*ELSE
FLUX2(I,J,K)=0
*ENDIF
*ENDDO
*ENDDO
*ENDDO
回复: 【讨论】移动热源的加载,出错,请指教
很简单,FLUX2的定义不对,维数不对。自己仔细看看。回复: 【讨论】移动热源的加载,出错,请指教
维数有什么问题?*DIM,FLUX2,TABLE,MAX_TIME,MAX_X,MAX_Y,TIME,X,Y
MAX_TIME对应TIME,
MAX_X对应x,
MAX_y对应y
问题在哪儿?
请指教
回复: 【讨论】移动热源的加载,出错,请指教
我找到问题了,是数组赋值时,参数的顺序错误,应该是FLUX2(K,I,J)=1000
还是如下这个程序,我只对平面上y轴0-8的宽度上的节点赋值,循环一次后,结果显示,整个平面上的温度都升高了,不知这是什么原因,请指教!
UNITS,SI
/PREP7
!设置单元类型
ET,1,SOLID90
!设置材料特性
MP,EX,1,1.2E11 !弹性模量
MP,ALPX,1,7.962E-6 !热膨胀系数
MP,REFT,1,20 !参考温度
MP,PRXY,1,0.3 !泊松比
MP,DENS,1,4000 !密度
MP,C,1,1.5 !比热
MP,KXX,1,0.4 !热传导系数
BLOCK,0,40,0,40,0,2!生成实体
SAVE
!MSHAPE,1,3D
!MSHKEY,0
ESIZE,1
VMESH,ALL
/PNUM,DEFA
EPLOT
FINISH
/SOLU
MAX_TIME=41
MAX_X=41
MAX_Y=8
*DIM,FLUX2,TABLE,MAX_TIME,MAX_X,MAX_Y,TIME,X,Y
*DO,K,1,MAX_TIME,1
*DO,I,1,MAX_X,1
*DO,J,1,MAX_Y,1
FLUX2(K,I,J)=1000
*ENDDO
*ENDDO
*ENDDO
ANTYPE,TRANS !定义为暂态分析
TRNOPT,FULL
TUNIF,20 !设定初始所有节点温度
KBC,1 !步长的增加方式(stepped or ramped)
*SET,DELT,1
TIMINT,ON
AUTOTS,OFF
*DO,TM,1E-6,1,1
/VIEW, 1 ,1,1,1
/ANG, 1
/REP,FAST
FLST,2,1,5,ORDE,1
FITEM,2,2
/GO
!*
TIME,TM
AUTOTS,0
DELTIM, , , ,1
KBC,0
!*
TSRES,ERASE
FLST,2,1,5,ORDE,1
FITEM,2,2
/GO
!*
!*
SFA,P51X,1,HFLUX, %FLUX2%
/STATUS,SOLU
SOLVE
OUTRES,ALL,ALL,
/PSF,HFLUX,,2
/REPLOT
*ENDDO
OUTRES,ALL,ALL,
FINISH
回复: 【讨论】移动热源的加载,出错,请指教
把你的点选命令变成正规的命令流,这样便于阅读。回复: 【讨论】移动热源的加载,出错,请指教
to:风之子 后面的点选部分我就把你以前贴的一个帖子中的内容复制过来的没有什么改动,也就是选择方块的上表面加载%flux2%,应该是在指定宽度上有热流才对,不知道为什么整个平面内都均匀充满了。请指教!!!是数组的初值赋的有问题吗?
UNITS,SI
/PREP7
ET,1,SOLID90
MP,EX,1,1.2E11
MP,ALPX,1,7.962E-6
MP,REFT,1,20
MP,PRXY,1,0.3
MP,DENS,1,4000
MP,C,1,1.5
MP,KXX,1,0.4
BLOCK,0,40,0,40,0,2
SAVE
!MSHAPE,1,3D
!MSHKEY,0
ESIZE,1
VMESH,ALL
/PNUM,DEFA
EPLOT
FINISH
/SOLU
MAX_TIME=41
MAX_X=41
MAX_Y=8
*DIM,FLUX2,TABLE,MAX_TIME,MAX_X,MAX_Y,TIME,X,Y
*DO,K,1,MAX_TIME,1
*DO,I,1,MAX_X,1
*DO,J,1,MAX_Y,1
FLUX2(K,I,J)=1000
*ENDDO
*ENDDO
*ENDDO
ANTYPE,TRANS
TRNOPT,FULL
TUNIF,20
KBC,1
*SET,DELT,1
TIMINT,ON
AUTOTS,OFF
*DO,TM,1E-6,1,1
/VIEW, 1 ,1,1,1
/ANG, 1
/REP,FAST
FLST,2,1,5,ORDE,1
FITEM,2,2
TIME,TM
AUTOTS,0
DELTIM, , , ,1
KBC,0
TSRES,ERASE
FLST,2,1,5,ORDE,1
FITEM,2,2
/GO
SFA,P51X,1,HFLUX, %FLUX2%
/STATUS,SOLU
SOLVE
OUTRES,ALL,ALL,
/PSF,HFLUX,,2
/REPLOT
*ENDDO
OUTRES,ALL,ALL,
FINISH
回复: 【讨论】移动热源的加载,出错,请指教
*DIM,FLUX2,TABLE,MAX_TIME,MAX_X,MAX_Y,TIME,X,Y*DO,K,1,MAX_TIME,1
*DO,I,1,MAX_X,1
*DO,J,1,MAX_Y,1
FLUX2(K,I,J)=1000
*ENDDO
*ENDDO
*ENDDO
这是这种加载方式最核心的部分,MAX_TIME是时间,MAX_X是加载区域的X坐标,MAX_Y是Y 坐标,表数组你没有完全看懂。你先好好看一下这个数组的帮助。你上面的命令流,没有和你的加载区域定义相联系起来。这个FLUX2定义实际上就是加载区域每个点在不同时间的载荷植。因此对于一个点,在不同时刻它的载荷是不同的。
可能你还没有明白我说的意思,你可以把数组维数减到7,这样你可以看一下你所赋植的数组内容。
回复: 【讨论】移动热源的加载,出错,请指教
好的,我一定在好好研究一下,谢谢
页:
[1]