在DYNA3D中应用用户自定义材料
【在DYNA3D中应用用户自定义材料】
概述
在DYNA3D中定义用户材料变得极为便捷。通过在计算输入文件中填入特定的材料属性卡,并编写自行设计的用户材料子程序,实现与DYNA的连接并生成全新的可执行文件。本文将详细阐述用户材料的使用流程,同时提供三个具体的用户程序示例,旨在深入探讨用户自定义材料系统的构建与应用。
输入文件中用户材料的定义方法
在DYNA3D的定义过程中,利用关键字 `MAT_USER_DEFINED.Material_MODELS` 来标记用户材料模型。此类模型在输入文件的`.K`中编号处于41至50之间,用户可以根据需要在这个段落输出的用户子程序。这种设置允许软件处理包括破坏指示在内的各向同性或各向异性材料。
如果用户未定义相应的用户子程序或出现了定义错误,比如在`.K`输入文件中指定使用用户材料41号,但未在程序中实现`subroutine umat41`功能,系统将以第一个输入参数为弹性模量E,假设材料呈现出线弹性特性。这提供了一个基本框架,但仍需要用户补充材料详细信息。
定义用户材料的卡表格式如下所示:
```plaintext
| Card1 | Variable | MID | RO | MT | LMC | NHV | IORTHO | IBULK | IG | Type |
| | | | | | | | | | | |
| | MID | : 材料ID | RO| 材料的密度 | MT | 用户材料类型41~50 | LMC | 材料常数数组的长度 | 关于输入材料常数的数量 | NHV | 需存储的历史变量的数量 |
| | IORTHO | 若材料是正交异性,设为1 | IBULK | 材料常数数组中体积模量的位置 | IG | 材料常数数组中剪切模量的位置 |
| Card2 | Variable | IVECT | IFAIL | Type |
| | IVECT | 向量化标志,用于应用向量化的用户子程序 | IFAIL | 破坏失效标志,允许单元根据材料的破坏失效准则判断破坏 |
```
```plaintext
| Card3 | Variable | AOPT | MAXC | XP | YP | ZP | A1 | A2 | A3 | Type |
| Card4 | Variable | V1 | V2 | V3 | D1 | D2 | D3 | 材料参数表定义根据 AO)
这个表结构支持创建用户自定义材料的各种特性,并可以通过特定的关键字和卡表组合提供详细的参数设定。
用户材料子程序的编译及连接
为了实现对用户材料功能的调用,LSTC公司提供了专用的DYNA连接库`LSDYNA.LIB`。用户可在`Microsoft Visual Studio6.0`及以上版本中完成该程序的编译工作。编译过程中,系统将产生一系列警告(共计63条,无错误信息)以及`LSDYNA.EXE`可执行文件。
当运行运行程序`LSDYNA.EXE`时,需保障本地计算机已安装网卡并设置为“连接”模式。首次运行该程序时,系统会输出能够用于后续程序运行的`Machine ID`,并提示输入`User ID`。用户完成这段输入后,系统会自动记录,避免了后续多次运行时的冗余输入需求。
本文通过概述与示例,更加全面地展示了在DYNA3D中应用用户自定义材料所需的核心环节,从卡表定义到子程序的构建与执行,以及支持性的编译环境与必要的系统配置,力求为读者提供响应的指导与参考。