ANSYS经典中使用APDL语言施加移动高斯热源

很多人在使用ANSYS模拟焊接和增材制造过程中都面临高斯热源施加的难题,现在我来演示一下如何在ANSYS经典中使用APDL语言施加高斯热源,以及如何实现热源的移动。

打开经典界面,然后选择Parameters→FunctionsDefine/Edit

ANSYS经典中使用APDL语言施加移动高斯热源的图1

然后在弹出的Function Editor中选取你想要输入的热源函数,我这里使用了一个高斯体热源函数,也可以替换成高斯面热源或者双椭球热源,具体函数请自行查找文献

ANSYS经典中使用APDL语言施加移动高斯热源的图2

点击Save后,保存后缀名为.func的函数文件,其名称为func11.func

ANSYS经典中使用APDL语言施加移动高斯热源的图3

ANSYS经典中使用APDL语言施加移动高斯热源的图4

然后退出,重新选择Parameters→FunctionsRead From file

选择刚才定义的函数

ANSYS经典中使用APDL语言施加移动高斯热源的图5

ANSYS经典中使用APDL语言施加移动高斯热源的图6

此时弹出对话框,要求输入函数的名称,及对应的参数的大小,我们定义名称为gauss,两个参数常量分别为qmx=1,r=1,局部坐标系选0就意味着这个函数是在全局坐标系中施加的,可以换成其他已经定义的任何局部坐标系

ANSYS经典中使用APDL语言施加移动高斯热源的图7

然后点击ListFilesLog file

然后我们就可以发现在Log file文件里自动生成了函数func11对应的数据表,其是一个维度6*20Table表,我们在array parameter中也可以查看其具体数据,为什么会生成这段呢,其实就是ANSYS根据你所定义的函数,自动生成了一个Table表做了这个函数的插值,这样系统在计算时就可以根据这个Table表进行对应的索引,生成任何你想要的函数值了。

我们将这段代码复制下来,放在自己的代码里,在每一步热源加载时都调用,就实现了任意热源函数的定义

ANSYS经典中使用APDL语言施加移动高斯热源的图8

ANSYS经典中使用APDL语言施加移动高斯热源的图9

ANSYS经典中使用APDL语言施加移动高斯热源的图10

那么,如何调整输入参数呢,我们注意到生成的这段代码里面的*Set,_FNC_C1(1),qmx,这句话就是定义了生成的参数的大小,通过修改这里的qmx的值,我们可以定义热源函数的功率,通过修改r的值,我们可以修改热源函数的半径。

ANSYS经典中使用APDL语言施加移动高斯热源的图11

那么现在我们生成了不动的热源函数,那么如何实现热源函数的移动呢?有两种方法,一种是定义一个随时间变化的函数,比如我们的热源沿X方向移动,那么我就在上面的X项中插入一项V*Time,这样这个热源函数就会是一个随X方向变化的热源函数了。

ANSYS经典中使用APDL语言施加移动高斯热源的图12

但是显然,这样只适合单道焊接或熔覆,如果你的扫描路径很复杂,或者是Z字形或涉及到多道焊或熔覆,那么这样写起来的代码可能需要花一点心思定义热源函数,我一般采用的是第二种方法,即定义局部坐标系的方法。我们定义一个局部坐标系11,并写一个循环,让这个循环中11的坐标原点不断变化,而热源函数保持不变,而热源函数是施加在局部坐标系中的,因为局部坐标系相对于全局坐标系的位置在不断变化,那么相应地也就实现了热源函数在全局坐标系中的不断变化了。

ANSYS经典中使用APDL语言施加移动高斯热源的图13

(13条)
默认 最新
感谢整理与经验分享,图文讲解很实用全面,全是干货,向大佬学习
评论 点赞
请问这个局部坐标系需要再apdl中定义还是workbench里面
评论 点赞

查看更多评论 >

点赞 12 评论 15 收藏 22
关注