在工程实际应用中,我们经常会遇到移动载荷的例子,如车辙实验,汽车过桥等。今天就介绍一下用abaqus子程序Dload实现移动载荷。

Dolad:隐式求解算法

Vdload:显示求解算法

(1)Dolad简介

Dload 函数体和各参数物理意义如下:SUBROUTINEDLOAD(F,KSTEP,KINC,TIME,NOEL,NPT,LAYER,KSPT,COORDS,JLTYP,SNAME)

F

需要自己定义的载荷

KSTEP

载荷步数(如第一个载荷步、第二个载荷步)

KINC

增量步数

TIME

Time(1)载荷步时间、Time(2)总时间

NOEL

单元编号

NPT

单元积分点编号

LAYER、KSPT

和LAYER SOILD相关

COORDS

积分点坐标

JLTYP

载荷类型

SNAME

名称

(2)案例

如图所示,物体表面作用一个压力载荷P(t),同事这个载荷在面内以一定速度V移动

Dload.for子程序源码

SUBROUTINEDLOAD(F,KSTEP,KINC,TIME,NOEL,NPT,LAYER,KSPT,

1 COORDS,JLTYP,SNAME)

INCLUDE 'ABA_PARAM.INC'

DIMENSION TIME(2), COORDS (3)

CHARACTER*80 SNAME

PARAMETER(P0=5e4,Dm0=250,Dmiu=0.002,speed=80/3.6,DL=6.0,width=0.2)

Pi=3.1415926535897932384626433832795

omega=2.0*Pi*speed/DL !角速度 speed为移动速度

Disp=TIME(1)*speed !移动距离

xMin=Disp+0.002 !0.002 设置误差范围,积分点坐标和节点坐标不一样

xMax=Disp+width-0.002 ! width 加载宽度

IF(COORDS(1).ge.xMin.and.COORDS(1).lt.xMax)THEN !判断坐标位置

F=P0+Dm0*Dmiu*omega*omega*sin(omega*TIME(1)) !定义载荷大小

ELSE

F=0

END IF

RETURN

END

(3)Abaqus操作

1、用general static 分析步设置成fixed 增量步这样可以等间隔的时间输出结果

2、定义载荷load的时候选pressure 在distribution中选user-defined

3、建立job 在general选项中 添加Dload.for 文件目录

4、结果

(5)总结

Abaqus的Dload子程序让用户可以自定义各种复杂的非均布载荷,比如和坐标或者时间相关的载荷,其实只要知道了Dload各参数的意思,用起来也比较得心应手。

DLOAD子程序说明

————————————————————————————————————

Use this subroutine to define nonuniform, distributed
mechanical loads (pressures and body forces).

使用此子程序定义非均匀的分布式机械负载(压力和体力)。

当负载是时间和/或位置的复杂函数时,通常使用用户子程序DLOAD。

通常可以用* AMPLITUDE选项建模简单的时间函数。

子程序也可以用来定义一个随元素号和/或积分点数而变化的负载。

————————————————————————————————————

一般用法,在INP文件中定义载荷施加的位置(关键字),求解时让其与子DLOAD子程序关联。

当* DLOAD或* DSLOAD选项包含不均匀的加载类型标签时,子程序被调用。

*DLOAD
1, P4NU

(Apply nonuniform DLOAD to face 4 of element 1,)

“ABAQUS /Standard”手册中给出了可用于任何特定单元的非均匀分布载荷类型列表。

DLOAD子程序接口

      SUBROUTINE DLOAD(F,KSTEP,KINC,TIME,NOEL,NPT,LAYER,KSPT,1 COORDS,JLTYP,SNAME)
CINCLUDE 'ABA_PARAM.INC'
CDIMENSION TIME(2), COORDS (3)CHARACTER*80 SNAMEuser coding to define FRETURNEND

子程序中的各个参数的意义可以参考ABAQUS帮助文档

F——分布负载的大小

KSTEP——分析步

TIME(1)——步进时间的当前值或负载比例因子的当前值

TIME(2)——当前总时间值

NOEL——单元编号

NPT——根据负载类型,在元素或元素表面加载积分点数。

LAYER——层数

KSPT——当前图层中的Section point

COORDS——积分点坐标(数组)

JLTYP——DLOAD调用的载荷类型的标识

SNAME——表面加载定义的表面名称(JLTYP = 0)。 对于身体力或基于单元的表面载荷,表面名称以空白形式传递

供参考的子程序

————————————————————————————————————

      SUBROUTINE DLOAD(F, KSTEP, KINC, TIME ,NOEL, NPT,1 LAYER, KSPT, COORDS, JLTYP, SNAME)
C
C EXPONENTIAL PRESSURE LOAD
CINCLUDE ‘ABA_PARAM.INC’
CDIMENSION COORDS(3),TIME(2)CHARACTER*80 SNAMEDATA TEN,ONE,CONST /10.,1.,-23.03/F=TEN*(ONE-(EXP(CONST*TIME(1))))IF(NPT.EQ.1) WRITE(6,*) ‘ LOAD APPLIED’,F,’AT TIME=’,TIME(1)RETURNEND

————————————————————————————————————

用户只能定义变量F 这是分布式负载的大小,单位取决于分布式负载的类型:

FL–1 对于沿一维(梁)单元的线载荷,

FL–2 表面负荷(例如压力)和

FL–3 体力(例如重力,向心力,加速度)。

转载于:https://www.cnblogs.com/jiangkejie/p/10231775.html

Abaqus中施加移动车辆荷载(待整理)相关推荐

  1. Abaqus中批量对节点施加集中力荷载

    笔者为科研界最后的摆烂王,目前利用python代码对Abaqus进行二次开发尚在学习中.欢迎各位摆烂的仁人志士们和我一起摆烂!ps:搞什么科研,如果不是被逼无奈,谁要搞科研!   先前撰写了一篇关于A ...

  2. matlab硬接触,abaqus中的关于硬接触(Hard contact)、及其他接触

    技术邻作者: HMabaqus康 ABAQUS中一个完整的接触模拟必须包含两部分:一是接触对的定义,其中定义了分析哪些面会发生接触,采用哪种方法判断接触状态,设定主控面和从属面等内容:二是接触面上的本 ...

  3. python怎么重复程序_利用Python程序完成ABAQUS中的一些重复性操作

    对于建立过大型的ABAQUS分析模型的同学们,肯定会面对繁琐的重复性建模过程.比如对上百个点施加集中力,比如建立几百个耦合约束.这些重复性操作,如果使用cae操作的话,不仅费时,而且极其容易出错. 利 ...

  4. python利用集合的无重复性_利用Python程序完成ABAQUS中的一些重复性操作

    对于建立过大型的ABAQUS分析模型的同学们,肯定会面对繁琐的重复性建模过程.比如对上百个点施加集中力,比如建立几百个耦合约束.这些重复性操作,如果使用cae操作的话,不仅费时,而且极其容易出错. 利 ...

  5. 基于均一化方法的Trip钢本构模型在Abaqus中umat子程序的实现

    一.问题提出 TRIP钢是一种典型的多相复合材料,且在形变过程中会发生马氏体相变,采用传统的本构模型难以准确地描述其力学行为.但是可以在建立马氏体相变和宏观应变的关系基础上,采取细观力学的方法对TRI ...

  6. 高斯旋转热源与双椭球热源_专题文章2.在Marc和abaqus中进行激光焊接仿真的模拟...

    焊接是门古老的工艺,早在公元前3000多年埃及出现了锻焊技术,公元前2000多年中国的殷朝采用铸焊制造兵器,公元前200年前,中国已经掌握了青铜的钎焊及铁器的锻焊工艺.近代的焊接工艺开始于19世纪末, ...

  7. php中年月日用什么参数,PHP中date()日期函数参数整理

    PHP中date()日期函数参数整理 发布于 2014-11-19 13:34:06 | 105 次阅读 | 评论: 0 | 来源: 网友投递 PHP开源脚本语言PHP(外文名: Hypertext ...

  8. python在abaqus中的应用代码下载_Python-(source-code)-in--Abaqus Python语言在Abaqus中的应用(源码) - 下载 - 搜珍网...

    Python语言在Abaqus中的应用 (源码)/ Python语言在Abaqus中的应用 (源码)/Python语言在Abaqus中的应用 (源码)/ Python语言在Abaqus中的应用 (源码 ...

  9. abaqus实例_使用Python在ABAQUS中创建XYData数据

    这篇的正题是要讲一个愚蠢的小故事,无奈之举,恐成笑柄.但是从Python+Abaqus前后处理的角度讲,还是有点意义的,所以才敢拿出来献丑. 三年航天器型号研制工作干下来,积累了不少陋习,但内心还是想 ...

最新文章

  1. C# IPGlobalStatistics获取本机网络流量信息
  2. 字符串转二进制 python_将字符串转换为二进制
  3. sed搜索某行在行末追加_linux shell 用sed命令在文本的行尾或行首添加字符
  4. 如何正确的探索 Microsoft Ignite The Tour
  5. Intel 64/x86_64/IA-32/x86处理器 - SIMD指令集 - SSE扩展(5) - 算术指令
  6. 线程学习9——Mutex类
  7. Python、Java 在线笔试
  8. [转载] python画柱状图-Python绘制精美图表之双柱形图
  9. JSON在Java中的使用(一)
  10. 大数据智能运维平台方案-2
  11. rx584白牌救砖心得
  12. 基于pyswarm库实现粒子群优化算法求解带约束的优化问题
  13. 8年Android开发教你如何写简历,详细的Android学习指南
  14. 三级等保成标配,互联网医院安全架构报告发布
  15. 护眼的绿豆沙色 RGB 值
  16. 辨析common 、ordinary、normal、usual、frequent以及general:
  17. Java教程:Java分割字符串(spilt())
  18. 路径穿越(Path Traversal)详解
  19. 电脑重装系统如何在 Win11查看显卡型号信息
  20. 大数据存储1----什么是hdfs!!!

热门文章

  1. 元素失去焦点(隐藏软键盘)
  2. 2015.08.15冒泡排序
  3. 3D图形图像处理软件HOOPS介绍及下载
  4. 单页面应用微信分享跳坑指南
  5. 赛思信安携手太极 助力《甘肃省公安厅大数据警务云》项目
  6. Npm 包版本知识总结
  7. HTML介绍及简单模式
  8. 两阶段提交协议的异常处理
  9. 第14课:Spark RDD解密
  10. Java根据当前日期获得这一周的日期