【问题标题】:How to control FEA software like MSC NASTRAN using Python code?如何使用 Python 代码控制 MSC NASTRAN 等 FEA 软件?
【发布时间】:2018-09-01 15:04:38
【问题描述】:

我想使用 python 运行 MSC NASTRAN。我在 MATLAB 中看到了一个类似的函数 system('nastran.exe file_name.bdf') #where file_name.bdf 是使用 nastran 运行的输入文件。

因此我在下面尝试使用 python 代码,但没有成功,

import os
os.system('nastran.exe file_name.bdf')

你能告诉我哪里出错了吗?

另外,如何通过 python 在 NASTRAN 中提供命令行?例如运行时的内存分配,运行时需要使用的内核数等。

一些 NASTRAN 命令行包括, 1. scr=yes 删除=f04,log,xdb 暂停=yes 2. mem=10gb bpool=3gb memorymaximum=14gb sscr=500gb sdball=500gb mode=i8 ...等等。

【问题讨论】:

    标签: python numpy system


    【解决方案1】:

    我不能直接代表 MSC Nastran,我已经有一段时间没有使用它了。但大多数现代 FEA 程序都有一个 API(应用程序接口),允许您从外部程序(如 python 或 matlab)调用命令。

    如果没有 API,您可能只能使用 python 从命令行启动程序,而这正是您的代码试图做的事情。至于如何从 python 中启动程序,请查看这个问题/答案: How to run application with parameters in Python?

    【讨论】:

      【解决方案2】:

      运行 MSC NASTRAN 文件的简单方法是创建一个 .bat 文件并从 python 运行它。 .bat 文件格式为:

      <nastran.exe location> <Python script file location> <Nastran command line>
      

      一个例子可以是:

      C:\MSC.Software\MSC_Nastran\20141\bin\nastran.exe C:\py_nastran_run\example.bdf scr=yes old=no delete=f04,log,xdb
      

      然后在python脚本中包含以下行,

      status=subprocess.call("runBatch.bat")
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-04-07
        • 1970-01-01
        相关资源
        最近更新 更多