找回密码
 注册
Simdroid-非首页
查看: 1432|回复: 27

【讨论】还是关于移动热源的问题,不过是脉冲电流情况下的

[复制链接]
发表于 2004-2-12 10:58:34 | 显示全部楼层 |阅读模式 来自 北京
想请教各位脉冲电流情况下移动热源该如何加?
大家有什么想法请与我交流!
谢谢!
附件里是详细的说明,有兴趣的同仁请看一下。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×

评分

1

查看全部评分

发表于 2004-3-11 16:15:59 | 显示全部楼层 来自 辽宁抚顺

回复: 【讨论】还是关于移动热源的问题,不过是脉冲电流情况下的

Simdroid开发平台
我看了你的帖子,但是我不清楚你的feng和ji表是怎么写的,我现在也在作移动热源的内容。能否贴出来你的FENG表数组定义。
我的E-MAIL:jbzhang_cn@sina.com
  
我再仔细看一下你的程序。
%feng%
 楼主| 发表于 2004-3-15 09:18:23 | 显示全部楼层 来自 山东临沂

回复: 【讨论】还是关于移动热源的问题,不过是脉冲电流情况下的

我是用函数加载的方式,%feng%和%ji%指的是峰值电流和基值电流的函数表达式,即函数表达式为
200*24*0.6*100/{PI}/{PI}/  
(0.003^2)*exp(-1e6*100*({X}^2+({Z}-8.3e-3* {TIME})^2)),
我没有用数组的方法,我在论坛中看到一个用数组加载的例子,我觉得有错误,提出来了但没有得到答复。(我刚才找了一下,这个贴子已经没有了,以前是精华贴的)如果你有用数组加载的正确例子,麻烦你给我传一份,我们一起探讨。

评分

1

查看全部评分

发表于 2004-3-15 09:41:29 | 显示全部楼层 来自 大连理工大学

回复: 【讨论】还是关于移动热源的问题,不过是脉冲电流情况下的

sf,all,hflu,%feng%  
!其中%feng%为
200*24*0.6/{pi}/{pi}/(0.003^2)*exp(-1e6*100*({x}^2+({z}-8.3e-3* {time})^2))
  
我不知你最终是怎么作的,因为你提供的附件没有这个命令流。查ANSYS帮助sf,all,hflu,%feng% 就是一个表数组加载方式。你所说的函数加载我想是按照热源的表达式,对选出的节点计算其热流率,随着热源的移动下一步要删除上一步的热流载荷。但是这样作我拿不准,因为GAUSS热源的一个重要的特点就是载荷量与距圆心点位置有关,在半径范围内各点载荷不一样,如果按照函数加载你怎么保证在一个载荷步内,作用半径范围内的点的载荷不同,恐怕是随着循环半径的扩大,内层点加了好几次载荷。对吧。
你说的那个程序,我也看到了,确实不对。我也发了文,希望人们讨论,但没人回复,你可看一下。查标题:高斯热源。即可找到我的文章。
  
按照表数组加载的一个好处是各点严格按照GAUSS分布给出载荷,而且这个数组是与时间有关的。它不需要后续载荷步删除前一步的载荷。
  
你的那个例子我想应该是表数组加载,但是不全。
  
我正在作,想找个对照的。还没有做成。
 楼主| 发表于 2004-3-17 15:53:10 | 显示全部楼层 来自 北京

回复: 【讨论】还是关于移动热源的问题,不过是脉冲电流情况下的

sf,all,hflu,%ga% !加载热流密度,采用函数加载的方法,采用的公式为Q=Qmax*e^(-kr^2),而Qmax=k*q/3.14。函数中的ga=3*200*24*0.6/{PI}/(0.003^2)*exp(-3/0.003/0.003*({X}^2+({Z}-8.3e-3 *{TIME})^2)),3是热源集中系数,通常取热流密度衰减到最大值的0.05倍时的径向距离.200为电流,24是电压,0.6为热源的效率, {PI}*(0.003^2)是热源在表面上分布的面积,取半径为0.003m,后面exp括号里的即为(-kr^2),如果是固定热源,可以直接用x^2+Z^2表示,由于是移动热源,沿Z轴移动,所以Z采用({Z}-8.3e-3 *{TIME})^2),焊接速度是0.5m/min即8.3mm/s,焊接速度不同时将此处改一下即可。采用这种方式就可以不用循环语句,便能达到热源移动的效果,而且每次会把上一时刻加载的热源删除。
如果是简单的高斯分布,这种处理方法应该是很合理的,
具体施加方法如下:
1) Utility Menu->parameters->Functions->define/edit
将3*200*24*0.6/{PI}/(0.003^2)*exp(-3/0.003/0.003*({X}^2+({Z}-8.3e-3 *{TIME})^2))复制过去,存盘命名为ga,(生成.func文件,即文件夹中的ga.func,如果已有此文件,便可直接跳到第二步)
2) Utility Menu->parameters->Functions->read from file,找到要读入的文件,(注意此文件必须和程序所在的路径一致!)然后在table parameter name 中输入ga,此处输入的要和加载时的% %内的名称一致!
3) 在input窗口中输入“/input,文件名,inp”即可运行程序了!
不知你还有什么疑问,欢迎一起探讨。
如果你有数组加载的例子,我也想参考一下。

评分

1

查看全部评分

发表于 2004-3-19 08:32:08 | 显示全部楼层 来自 大连理工大学

回复: 【讨论】还是关于移动热源的问题,不过是脉冲电流情况下的

这是我作的一个东西,可以实现加载。还在测试阶段。你看一下,有何不妥的地方。
另外问一下我计算出变形场时(温度场没事),出现如下的警告信息,你看怎么回事,你碰到过没有。
*** WARNING *** CP= 411.156 TIME= 10:58:26  
There are 11 small equation solver pivot terms.  
  
!确定高斯热源热流率加载表定义
  
NUM_X=PF_EN+1
NUM_Y=PHL_EN+1
NUM_TIME=TIMEND/TINC+1
  
*DIM,FLUX3,TABLE,NUM_X,NUM_Y,NUM_TIME,X,Y,TIME
  
/COM: TIMSTEP=PF_ES/V    !每个加热区单元的尺寸
/COM: PHL_EN     !加热区的单元数
  
RADIUS=PFW_HR/2     !高斯热源作用的半径
  
*DO,K,1,NUM_TIME,1  
  
  *DO,J,1,NUM_Y,1              !列Y赋值   
  
    FLUX3(0,J,K)=(J-1)*PF_ES
  
  *ENDDO
  
  *DO,II,1,NUM_X,1          !  !行X赋值   
  
    FLUX3(II,0,K)=-0.5*(PF_EN*PF_ES)+(II-1)*PF_ES
  
  *ENDDO  
  
  YDIST=V*(K-1)*TINC
  
    *DO,J,0,TIMEND,TINC
      *DO,I,1,NUM_X,1       !X坐标
        
        YCOOR=V*J
                              
        XCOOR=-0.5*(PF_EN*PF_ES)+(I-1)*PF_ES
        
        R=SQRT((YCOOR-YDIST)**2+XCOOR*XCOOR)
        
        *IF,R,LE,RADIUS,THEN  
          
          GAUSS=QMAX/EXP(K*R*R/1000000)   
          FLUX3(I,J/TINC+1,K)=GAUSS                            !*10E5   
        
        *ENDIF
    
      *ENDDO
    *ENDDO
    
  FLUX3(0,0,K)=(K-1)*TINC                                 !页TIME赋值
  
*ENDDO

评分

1

查看全部评分

发表于 2004-3-24 15:11:09 | 显示全部楼层 来自 天津

回复: 【讨论】还是关于移动热源的问题,不过是脉冲电流情况下的

很好啊\\但是姐姐我怎么能看见彩虹象图啊
谢谢了
发表于 2004-4-24 18:51:05 | 显示全部楼层 来自 河南郑州

回复: 【讨论】还是关于移动热源的问题,不过是脉冲电流情况下的

经过斑竹的点拨,俺对这个问题有了点新的认识:
  Gauss热源的施加通常有两种办法:
1 定义数组,循环施加,在循环中删掉前一步加上的载荷;
2 函数加载,函数加载方式包含了TIME项,ANSYS在每个时间步上计算函数表达式,并按照计算结果加载,所以不需要循环。
  
平滑移动Gauss热源的函数加载方式,正确的使用方法如搂主给出的附件中的第一种方法。
在附件的第二种方法中,为了施加脉冲载荷,在循环内使用了函数加载方式,从上面给出的定义看,是出错的原因所在。
  
俺没想出来如何用函数方式加载脉冲Gauss热源,也许只能定义数组循环加载了。

评分

1

查看全部评分

发表于 2004-4-26 09:45:10 | 显示全部楼层 来自 大连理工大学

回复: 【讨论】还是关于移动热源的问题,不过是脉冲电流情况下的

看了大侠的回帖,我这几天又看了一些书。觉得有必要再说几句,请大家共同探讨:
  
关于table数组加载,这种加载方式不需要如ainite 所说的循环过程中删除上一步的载荷。只是在作这个表数组时,要考虑到循环时的时间载荷步,表数组中的载荷和计算过程中的时间是对应的。当跳到下一个时间值时,上一个时间值的载荷自动根据数组定义发生变化。如我提供的程序所定义。
  
我仔细看了楼主的两个附件,加载部分有这样的语句:
nsel,s,loc,x,-0.003,0.003  
nsel,r,loc,y,0  
nsel,r,loc,z,0,0.3
sf,all,hflu,%feng%  
在焊接时的热源移动路径区间加载。
这个东西%feng% 是通过GUI方式定义的。我个人认为,它在ANSYS内部处理时,也是处理为一个表数组的加载方式。只是不用分析人员显式的以APDL方式定义。因为可以查SF帮助,明确显示:To specify a table, enclose the table name in percent signs (%) (e.g., SF,NLIST,Lab,%tabname%). Use the *DIM command to define a table. 实际上就是表数组。
由于我不怎么用GUI所以不敢妄言我说的是对的。
  
关于楼主的第二个例子,我有一些想法,不知是否对。由于时间关系我没有再作。不过我想她已经解决了这个问题了,不妨说一说,你是怎么解决的。大家共同进步!

评分

1

查看全部评分

 楼主| 发表于 2004-4-26 18:31:36 | 显示全部楼层 来自 北京

回复: 【讨论】还是关于移动热源的问题,不过是脉冲电流情况下的

首先感谢大家对我这个贴子的关注,这段时间在ainite大哥的帮助下,又悟到了一些新的思路,欢迎讨论!
deltim,0.02,0.02,0.1首先这一句应该改为deltim,0.02,0.02,0.02,即时间步应设置的小一些,否则对于移动热源来说可能会出现不连续的情况。
outres,all,4
nsel,s,loc,x,-0.003,0.003  
nsel,r,loc,y,0  
nsel,r,loc,z,0,0.3
sf,all,hflu,%feng%  
!其中%feng%为
200*24*0.6/{pi}/{pi}/(0.003^2)*exp(-1e6*100*({x}^2+({z}-8.3e-3* {time})^2))
关于高斯分布的热源,在查阅了大量文献后,更正如下:
200*24*0.6/2/{PI}/(0.003^2)*exp(-1/2/0.003/0.003*({X}^2+({Z}-8.3e-3 * {TIME})^2))
这个公式其实就是我们经常见到的高斯热源公式的转换。
前段时间提供给朋友们的数据是3(公式中用红色标出来的数1/2),这个数其实是热源集中系数,以前取的值太大了,即热源过于集中,所以会出现中间部分温度过高的现象,现在取为1/2,我算了一下应该是差不多了!
  
可能给一些朋友造成了误解,还请原谅!!
关于脉冲电流的情况前段时间有点思路,不过最近忙别的事了,就把这事给耽搁下来了,楼上的老兄,有什么高见不妨说出来听听啊!
kimmybaby 该用户已被删除
发表于 2004-4-26 20:04:43 | 显示全部楼层 来自 湖北武汉
提示: 作者被禁止或删除 内容自动屏蔽
kimmybaby 该用户已被删除
发表于 2004-4-26 20:09:03 | 显示全部楼层 来自 湖北武汉
提示: 作者被禁止或删除 内容自动屏蔽
发表于 2004-4-26 21:23:56 | 显示全部楼层 来自 大连理工大学

回复: 【讨论】还是关于移动热源的问题,不过是脉冲电流情况下的

又做了一下,对ANSYS自己产生的TABLE还是看不懂。请斑竹说一下生成的FENG的行和列的意义是什么?它没有第三个变元。是二维的。
  
给我的直觉是:加载不需要循环。也不能循环。另外好像生成的数组是6行,那么加载出的载荷是偏的。我说的可能有误。感觉这种方式太不好控制。简单的还行。
  
我的机器不很N,所以没算到最后。等我没事了彻底算一下。
发表于 2004-4-27 11:20:34 | 显示全部楼层 来自 大连理工大学

回复: 【讨论】还是关于移动热源的问题,不过是脉冲电流情况下的

再请教斑竹附件1中,定义焓是出于什么考虑,相变吗?
 楼主| 发表于 2004-4-27 19:24:13 | 显示全部楼层 来自 北京

回复: 【讨论】还是关于移动热源的问题,不过是脉冲电流情况下的

是啊!ansys中处理相变的方法不就是用焓来表示的吗?有什么问题吗?请指教!
 楼主| 发表于 2004-4-28 09:58:10 | 显示全部楼层 来自 北京

回复: 【讨论】还是关于移动热源的问题,不过是脉冲电流情况下的

to xbzhang:
这是我调试后的程序,附件中是温度场的动态显示图。峰值电流和基值电流分别为200和50A,我将两电流分别改为200A(相当于电流为恒定值),得出的结果和电流为200A时的结果一致,所以我觉得这种方法应该没什么问题吧?有什么问题欢迎讨论。
/FILNAME,maichong,0  
/TITLE,the thick of the board is 3mm,velocity is 0.5m/min,I1=200A,I2=50A
/PREP7   
ET,1,SOLID70
KEYOPT,1,2,0
KEYOPT,1,4,0
KEYOPT,1,7,0
KEYOPT,1,8,0
!*   
!99.75%Fe
mptemp,1,0,20,200,500,800,1100,1500
mpdata,dens,1,1,7880,7880,7710,7588,7320,7278
mpdata,kxx,1,1,53.18,47.74,36.01,32,29.3,25
mpdata,c,1,1,470,470,470,935,1879,1879
mpdata,enth,1,1,7.17e8,14.35e8,28.7e8,43.7e8,52.95e8,82.15e8
BLOCK,-0.025,0.025,-0.003,0,0,0.3,  
block,-0.005,0.005,-0.003,0,0,0.3,  
vsel,s,volu,,1,2
vovlap,all
vglue,all
NUMCMP,LINE  
NUMCMP,AREA  
NUMCMP,VOLU  
/REPLOT  
aesize,all,0.001,  
lesize,all,0.001, , , ,1, , ,1,  
esize,0.001,0,  
mshkey,1  
mshape,0,3d  
vmesh,1  
ESIZE,0.01,0,   
AESIZE,ALL,0.01,   
LESIZE,ALL,0.01, , , ,1, , ,1,  
MSHKEY,1
MSHAPE,0,3d
vmesh,2,3  
  
/VIEW, 1 ,1,1,1  
/ANG, 1  
/REP,FAST   
/psf,hflu,,2,0
/PNUM,LINE,1
finish   
/solu
antype,trans
tunif,20
timint,on !time integration = on  
  
allsel,all
nsel,s,loc,x,-0.003,0.003  
nsel,r,loc,y,0  
nsel,r,loc,z,0,0.005
  
antype,trans  
tunif,20  
kbc,1  
  
!*set,delt,1  
  timint,on  
  autots,off  
n=0
*do,tm,1e-6,8,0.02  
!sfdele,all,hflux
/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,1,,conv,50,25,!w/m**2*C
sfa,2,,conv,50,25,
sfa,16,,conv,50,25,
sfa,11,,conv,12.5,25,!bottom
sfa,5,,conv,12.5,25,
sfa,15,,conv,12.5,25,
  
nsel,s,loc,x,-0.003,0.003  
nsel,r,loc,y,0  
nsel,r,loc,z,0,0.3
  
*if,tm,gt,3*n+(1e-6),then
   *if,tm,le,3*n+2+(1e-6),then
sf,all,hflux,%feng%   
  *else
*endif
*endif
*if,tm,gt,3*n+2+(1e-6),then
   *if,tm,le,3*(n+1)+(1e-6),then
sf,all,hflux,%ji%  
  *else
  *endif  
  *endif
*if,tm,gt,3*(n+1)+(1e-6),then
  n=n+1
*else  
*endif     
/status,solu
allsel,all
solve  
*enddo  
outres,all,all,  
/psf,hflux,,2
finish  
!峰值电流的表达式为200*24*0.6/{PI}/(0.003^2)*exp(-1/0.003/0.003*({X}^2+({Z}-8.33e-3*{TIME})^2))
!基值电流的表达式为50*24*0.6/{PI}/(0.003^2)*exp(-1/0.003/0.003*({X}^2+({Z}-8.33e-3*{TIME})^2))

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×

评分

1

查看全部评分

发表于 2004-5-7 09:19:07 | 显示全部楼层 来自 美国

回复: 【讨论】还是关于移动热源的问题,不过是脉冲电流情况下的

是不是可以用multivalued function based on the regime variable,
  
define regime variable time={TIME}
  
在regime1,regime2,... 根据不同的time范围定义heat source。
发表于 2004-5-7 14:43:01 | 显示全部楼层 来自 武汉大学

回复: 【讨论】还是关于移动热源的问题,不过是脉冲电流情况下的

用这个方法算,为什么最后的温度显示图是很小的一点?
发表于 2004-5-9 08:18:57 | 显示全部楼层 来自 辽宁抚顺

回复: 【讨论】还是关于移动热源的问题,不过是脉冲电流情况下的

斑竹的程序我前几天没空,这两天我跑了一下,循环内GUI选择加对流的面,而后选择加载GAUSS区域的节点,下面是一个精心设计的程序用于加载两个脉冲电流,堪称完美。
为了节省时间,设置:*do,tm,1e-6,1.0,0.02
很好的例子程序,让我彻底对这种加载方式有了深入的理解,又学会了一些东东,谢谢斑竹!当然ANSYS内部怎么生成的%FENG%和%JI%两个TABLE,虽然看不懂这两个TABLE 的内容,不过肯定是对的。
  
另外一个题外话,我不知道这个例子的物理模型是什么?可否说一下。有没有变形分析?我做完的0.5S和1.0S的温度结果显示已传了上来,板面最大温度达到3000-4200,这么高的温度,我想钢板表面早就被“线切割”了。
移动热源最后的温度显示图是很小的一点,我也有疑虑,因为我看了实际的氧乙炔焰加热钢板的过程,钢板表面最大温度据实测是800度,其温度用肉眼看,好像一个彗星,最高温度后面拖一个较长的尾巴,而不是这种圆形区域最大,后面的温度与圆形区域相差较大,不知我说明白没有。
  
求教斑竹去哪里查材料的焓值,及什么情况下用焓,这个例子的焓值是从哪里查的?我的模型的工作温度低于900度,需要用吗?。
  
我看别人的论文中的焓值,引用到我的程序,结果发现焓值对分析有很大影响。不过我想合适的焓值可以模拟出实际彗星的温度来,因为我用了焓值后,后面也拖一个常常的尾巴,不过太长了,不像。因此我怀疑我的焓值给的不对。
  
我的想法不知对不对,恳请斑竹和各位大侠指点。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×

评分

1

查看全部评分

 楼主| 发表于 2004-5-9 13:42:51 | 显示全部楼层 来自 山东临沂

回复: 【讨论】还是关于移动热源的问题,不过是脉冲电流情况下的

关于最高温度偏高的问题,我记得好像在一个贴子中说明了,问题出在公式中K的取值上,上式中我取的是1,K越大表示热源越集中,热源过于集中了,出现最高温度偏高应该是正常的,关于K到底取何值才更符合实际,我还不敢确定,也许过两天我会给大家一个答复的。
钢板表面最大温度据实测是800度,温度有那么低吗?熔池表面的温度也只有那么高吗?我以前不是学焊接的,对此不是很清楚。希望楼上的给解释一下。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Simapps系列直播

Archiver|小黑屋|联系我们|仿真互动网 ( 京ICP备15048925号-7 )

GMT+8, 2024-9-20 16:51 , Processed in 0.063892 second(s), 16 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表