分享好友 资讯首页 频道列表

设计仿真 | 新版本Dytran 用户子程序调用及案例分享

2024-12-20 22:26

Dytran UDS功能概述

Dytran 2024.1之后版采用UDS(User Defined subroutines)代替了之前的子程序功能,通过UDS可以实现用户自定义材料、状态方程、结果输出、边界条件等功能。

UDS搭建准备材料

 操作系统:

Win10、Win11

 Fortran环境及编译器:

Visual Studio Professional 2022 17.6

oneAPI basekit 2023.1.0.47256

onwAPI HPCkit 2023.1.0.46357

编译过程还需要安装Windows Kit 10.0.22621.0

所有软件版本必须完全一致,否则会出现无法编译的问题。

 安装教程

首先安装Visual Studio Professional 2022 17.6,选择模块时,可以单独选择C++的桌面开发环境,安装路径根据自己需要进行更改。

图片

其次安装oneAPI,安装之前务必确保版本号一致,basekit与HPCkit安装没有先后顺序,在安装basekit时,确保安装Intel MKL库,在安装HPCkit时,确保安装Fortran编译器。

完成以上安装后,进行Windows Kit 10.0.22621.0安装,该程序安装时,同样必须确保版本一致,安装路径必须为默认安装路径,安装好后,可以检查C:\Program Files (x86)\Windows Kits\10\Lib\10.0.22621.0该路径下是否包含先关的动态链接库。

Dytran编译器设置

 系统及所有程序安装完成后进行开发环境设置:

进入Dytran Explorer界面,点击Tools下的Options按钮,进入选项窗口,设置编译环境所需的组件路径。

图片

图片

完成路径设置后即可进行UDS的提交。

案例说明

在液体晃荡分析过程中,我们通常需要将液体部分的质心进行输出,以查看其在晃荡过程中液体对结构状态的影响,要实现该功能需要通过其EXOUT子程序接口将所有Euler单元的质量及位置坐标进行处理得到整体质心位置并输出。

将Dytran安装目录下/usr-subrtns/文件夹内的dytran_usersub.f子程序源文件作为模板,编辑该文件下的EXOUT子程序,遍历每个欧拉单元的质量以及质心,通过数据处理后,实现欧拉单元内液体部分质心输出的功能。

图片

在Dytran Explorer中,在提交作业时,将UDS路径指向编辑好的Fortran源代码,点击RUN按钮后即可进行作业提交。

图片

程序会首先将源代码编译为动态链接库,并在目录下生成dytran_usersub.dll文件,该文件可以代替子程序源文件,在没有编译器的环境下进行子程序的提交。当采用动态链接库进行作业提交时,只能采用CMD形式,具体命令如下:

图片

文章小结

Dytran UDS接口让用户方便的实现求解器的二次开发,大大扩充了Dytran的功能,有效提高了Dytran在工程上的通用性。

来源:海克斯康工业软件

评论 0
同类信息