本文针对习惯使用 MATLAB 的用户,介绍一个开源项目 MATLAB-LSDYNA,该项目包含有限元求解器 LS-DYNA 的 ASCII 结果文件的查看模块,以及从 MATLAB 中以编程方式调用 LS-DYNA 模拟的模块。不过,该项目与 LS-DYNA 的创建者或发行者没有任何关系,是完全第三方。
目前,MATLAB-LSDYNA 是为 Windows 环境编写的,并已在 Windows 环境中进行了测试。ASCII 数据库读取应独立于系统,但运行模拟的代码在其他系统上可能会失败。欢迎进一步努力测试环境。
1. 功能
创建仿真并计算:
lsdyna.simulation:从文件夹制作 / 读取 LS-DYNA 模拟
读取 ASCII LS-DYNA 输出数据库文件
lsdyna.read.asciiFiles:读取所有可用的输出数据库
lsdyna.read.bndout:读取边界条件输出
lsdyna.read.elout:读取元素数据输出
lsdyna.read.nodfor:读取节点力数据输出
lsdyna.read.nodout:读取节点 coord、disp、vel、acc 数据输出
lsdyna.read.rbdout:读取刚体数据输出
2. 案例
首先介绍基本用法,例如运行一次模拟,在 MATLAB 中的使用方法如下:
S = lsdyna.simulation('C:\FolderToSim\mainFile.k')
S.run
再比如,运行多个模拟计算,按顺序进行计算,在 MATLAB 中调用串联计算方法如下:
baseFolder = 'C:\FolderToSims';
for i = 1:10
simFolder = fullfile(baseFolder,sprintf('sim%d',i));
S(i) = lsdyna.simulation(fullfile(simFolder,'mainFile.k'));
end
S.run % Each simulation will be run, one after the other
此外,该项目支持在 MATLAB 中调用 LS DYNA 求解器进行并行计算,使用方法如下:
请您登录后阅读全文, 登录 或者 注册
免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删