有限元,NASTRAN,DMAP,如何在 .f06 输出文件中打印微分刚度矩阵

计算科学 优化 有限元 矩阵
2021-12-03 05:20:22

我们正在研究一个优化问题,我们可以通过假设一个恒定的特征向量来近似计算特征值,使用公式:

λ~={ϕ0}T[K]{ϕ0}{ϕ0}T[KG0]{ϕ0}

其中是已经计算的特征向量,是已经计算的微分刚度矩阵,是新的刚度矩阵。我们已经设法使用几个 DMAP 命令 (请参阅此链接中的示例),但是如何打印{ϕ0}[KG0][K][K][KG0]

1个回答

在仔细检查了 NASTRAN 文档后,我发现了以下打印刚度矩阵的选项:[K]

SOL 101
TIME 20
DIAG 8
compile semg
alter 'kjjz.*stiffness' 
matprn kjjz//
CEND
SPC = 1
LOAD = 1
SUBCASE 1
BEGIN BULK
INCLUDE 'bulk_data.dat'

这会将刚度矩阵打印到.f06文件中。

打印刚度矩阵后,可以使用上述近似计算微分刚度矩阵,即将刚度矩阵除以本征模态:

[KG0]=[K]λ0

其中 是已经计算的特征值(例如使用 SOL 105)。每个特征值会有不同的λ0[KG0]

此处提供了示例代码,使用 Python 脚本使用问题中提供的公式计算近似特征值。你必须执行:

python test_01.py

这里需要改进的地方:

  • 如何在打印刚度矩阵后立即停止解决方案,以避免运行 SOL 101(但以零负载运行它会很快)

  • 如何在二进制文件中打印刚度矩阵