当物体所受载荷是比较复杂的函数时(如与时间、位置等相关),通过界面输入的方式已经难以实现,通常便需要借助于DLOAD子程序来实现。下面将就ABAQUS软件的DLOAD子程序进行讲解和应用举例,希望通过此次讲解能够让更多的同学能够更深入理解DLOAD子程序,并掌握DLOAD子程序的使用。
一、问题描述
如下图所示的一块平板,底部固定,顶部受到随时间变化的均布压力作用。平板的长为3.0m,宽为0.1m。材料的杨氏模量为50GPa,泊松比为0.3。压力P=10*sin(t),t为加载时间(min),加载的总时间为10min,压力的单位为MPa。需要得到在这种加载条件下,板顶部的竖向位移随时间的变化。
二、问题分析
针对上述问题,可以采用两种方式进行模拟:
(1)DLOAD子程序;
(2)设置幅值曲线。
三、DLOAD子程序
子程序的界面为:
上述程序中,已经明确指出user coding to define F,即表示需要用户自己去定义变量F的值,F的值便表示所加载的载荷大小。该数值的正负符号有明确的物理意义,对于压力,正数表示压力,负数表示拉力。也就是说只有F这个变量需要我们去定义,其它的一些变量都是输入变量,是软件传递给我们去使用的,不需要我们去定义。
子程序中的各个参数的详细意义可以参考ABAQUS帮助文档,下面对一些常涉及的变量做简要解释:
-
F表示分布负载的大小;
-
KSTEP表示分析步编号,如对于第一个分析步有KSTEP=1;
-
TIME(1)表示分析步时间;
-
TIME(2)表示当前总时间,当整个模型只有一个分析步时,则TIME(1)与TIME(2)相同;
-
NOEL表示单元编号;
-
NPT表示积分点编号;
-
COORDS表示积分点坐标,对于直角坐标系,COORDS(1)表示x坐标,COORDS(2)表示y坐标,COORDS(3)表示z坐标;
对于上述问题中的P=10*sin(t),则可以直接编写如下的子程序:
程序中之所以用10.0e6是因为需要把MPa换算成Pa。将上述代码另存为test.for文件,放置于对应的文件夹下。
四、建模过程
1、创建部件
创建部件,二维平面、可变形、壳、大约尺寸10。
绘制一个对角线顶点坐标分别为(0,0)与(3,0.1)的矩形框。
点击确定,绘制出长为3.0m,宽为0.1m的矩形件。
2、创建材料并将材料界面指派给部件
创建材料如下图,杨氏模量输入50e9,泊松比输入0.3,此次模拟中整个建模以国际单位制进行,故而此时杨氏模量的单位为Pa。
点击确定,接受默认选项,创建材料material1。
创建截面,选择实体、均质;材料选择material1,接受默认选项,点击确定,创建section1成功。
将创建好的截面指派给所创建好的part-1,被正常赋予材料属性后,部件的颜色变为蓝色。
3、创建实例
创建实例从部件,部件选择part-1,实例类型选择非独立(后续划分网格需要针对部件划分网格)。
接受默认选项,创建实例。需要指出的是,ABAQUS软件的分析都是针对实例的,因此创建了部件以后,都必须将部件创建为对应的实例才能够进行分析模拟。
4、分析步创建
这个模拟加载可以看做为随时间缓慢变化,故而可以看作为静力学分析,采用静力、通用的分析步。
分析步时间设置为10,由于是静力学分析步,时间的数值并无确切含义,该时间是虚拟时间,此次模拟中对应于10min。几何非线性接受默认选项为关。如果变形较大,则需要将几何非线性的开关打开。
为了尽可能多的增加数据点,采用最大增量步时间为0.2,初始增量步时间为0.1。这样的设置,至少可以保证最少有10/0.2=50个数据点输出。
点击完整阅读全文
一套Abaqus常用子程序的二次开发和复杂应用攻略