问题标签 [nastran]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
871 浏览

python - PANDAS pd.read_hdf 适用于我的 HDF5 文件中的一些表,但不是所有表

我在 Python 3.7 中使用 Pandas 来从 HDF5 文件中读取数据。HDF5 文件包含来自 MSC Nastran 的结果表。

HDF5 文件名为“ave_01.h5”

HDF5 位移表如下所示:

在此处输入图像描述

使用以下工作就好了:

但是,我有另一个压力结果表,如下所示:

在此处输入图像描述

所以我希望下面的代码可以工作,但它不会:

我收到以下错误:

ValueError:错误的项目数通过 5,位置暗示 1

我注意到第二个表在某些列中包含列表,而第一个表没有。这些列表还包含 5 个元素。也许这是导致错误的原因,但我不知道这是否属实,也不知道如何纠正。

我哪里错了?

谢谢。

作为参考,这些结果是一个简单的测试模型,如下所示: 在此处输入图像描述

0 投票
0 回答
269 浏览

python - 使用 pyNastran 从 op2 文件中获取表数据

我正在尝试从 op2 文件中读取最终分离距离。我可以看到表名 (OSPDS1) 包含在 中model.table_names,其中 model 是来自 的返回值read_op2(file_name, build_dataframe=True, debug=False)

我已经阅读了 pyNastran 文档的每一页,但我终其一生都无法弄清楚如何检索表格的数据。我知道我正在寻找的名称是基于 op2_scalar 源代码的 OSPDS1 ( https://pynastran-git.readthedocs.io/en/latest/_modules/pyNastran/op2/op2_interface/op2_scalar.html?highlight=separation#)。我认为其中一个set_additional_generalized_tables_to_read()或是set_additional_result_tables_to_read(tables)答案的一部分。我已经让他们每个人都使用_table_mapper输出运行,但不知道从那里做什么。既然我已经设置了要读取的表,我是否会以某种方式重新读取 op2 文件?

我无法真正提供最低运行示例,因为我无法上传 op2 文件。如果绝对必要,我可以创建一些简化几何的新运行。

0 投票
0 回答
35 浏览

modal-dialog - 在 MSC Nastran 中获取简化模型的固有频率

我正在通过对 MSC Nastran 执行模态分析来比较完整模型和简化模型的自然频率。

当我尝试运行 Nastran 输入文件时,会生成许多文件,但 .f06 是具有自然频率值的文件。

生成的 .f06 文件具有以下错误:“无法获得 DMAP 编译的许可证”,如下面的屏幕截图所示。

在此处输入图像描述

你能告诉我如何纠正这个错误并获得所需的自然频率。

谢谢和问候, Goutham Sajja

0 投票
1 回答
26 浏览

nastran - 如何修复 USER FATAL MESSAGE 740?

如何修复 USER FATAL MESSAGE 740?当我尝试运行我的 BDF/DAT 文件时,Nastran 会生成此错误。

下面是我的 BDF 文件的头。

0 投票
1 回答
52 浏览

python - 如何在 OpenMDAO 中定义具有动态形状的输出变量

我目前正在模拟一个结构优化问题,其中响应的梯度从 Nastran 中提取并提供给 OpenMDAO 中的 SLSQP 优化器。在后续迭代中约束的数量会发生变化,因为设计变量包括形状和尺寸变量,因此每次都会生成一个新的网格。OpenMDAO 中定义了一个约束组件,它读取从 Nastran 导出的响应数据。现在,这里的问题在于定义其输出变量“f_const”的形状。此输出变量的形状需要根据可用响应数组的形状进行调整,因为输出['f_const'] = np.loadtxt("nsatran_const.dat")。这里,nastran_const.dat 是包含从 Nastran 提取的响应数据的文件。该数据的形状在设计迭代开始时是未知的,并在随后的迭代中不断变化。因此,如果在开始时定义了某种形状的 f_const,那么它以后不会更改并且由于形状不匹配而产生错误。

在 openmdao 的文档中,我找到了https://openmdao.org/newdocs/versions/latest/features/experimental/dyn_shapes.html?highlight=varying%20shape 它解释说,输入/输出变量的形状可以动态设置通过将其链接到形状已知的任何连接变量或局部变量。这与我的情况不同,因为在计算开始之前,应力阵列的形状是未知的。f_const 的形状要在 setup 中定义,我不知道以后如何更改它。请在这方面指导我。