如何在 Dymola 中使用 3 个或更多输入变量插入值(输出)?

问题描述 投票:0回答:1

图片显示了我想要解决的问题。 我将把数据(从输入输出)作为 csv 格式的表格。

使用 2 个输入和 1 个输出进行插值是没有问题的。我可以用combiTable2Dv 解决这个问题。我可以扩展这个表来解决我的问题吗?在参数下,我看到了尺寸的设置选项。

interpolation modelica openmodelica dymola
1个回答
4
投票

关于“维度”的问题:

模型

Modelica.Blocks.Tables.CombiTable2Dv
确实有一个参数
n
。假设这就是您所指的:这基本上创建了一个表向量,该向量基于相同的源数据(=表/文件)对(两个)输入向量进行查找/插值,从而产生输出向量。因此,输入和输出是大小为
n
的向量。因此,这在特定情况下可能没有帮助。

原问题:

据我了解,您需要一个包含输入或三个自变量的表。 Modelica 标准库不提供此类表。在 Dymola 中,我知道两个选项,您可以在文件 -> 库下找到:

  • DataFiles.TableND
    ,它基于 .mat(版本 4)文件,现在有点陈旧了。
  • SDF.NDTable
    使用.sdf文件,该文件基于HDF5,https://github.com/ScientificDataFormat/SDF。 Dymola 附带了一个名为“SDF Editor”的工具,它使您能够在 GUI 中查看和编辑这些文件。
    注意:GUI 仅限于三个维度,因为这在大多数情况下就足够了。您可以使用 PythonMATLAB 函数创建具有更多自变量的数据集。 Modelica 库
    SDF.Functions
    中还提供了函数子集,可从
    .mos
    脚本中使用。

上述两个软件包都提供了允许从 Dymola 和/或 Matlab 创建必要文件的功能。这些应该被记录得足够好才能使用。

© www.soinside.com 2019 - 2024. All rights reserved.