2

这个问题中,我询问了如何在启动时将自定义包添加到 MODELICAPATH,但答案有些含糊。根据答案,我可以使用

openModel("path\to\file.mo")

或者

openModelFile("Fully.Qualified.Model.Name")

我想知道这些命令有什么不同,如果有的话,以及何时使用其中一个。

编辑:如果您回答,请在 Modelica 文档中提供来源。我什至不知道如何浏览文档以找到这些命令,所以这可能是一个很大的障碍。

4

1 回答 1

3

乍得,

对于任何与 Dymola 中“内置”命令相关的问题,请注意,您可以通过使用该document(...)功能获得一些基本文档(显然,help太平庸,elucidate太自命不凡?)。可以从 Dymola 中“模拟”选项卡底部的命令行调用此命令。它以函数名的字符串作为参数。所以,回答你的问题:

document("openModel");

  function openModel "open a Modelica-file"
    input String path "File-path to open";
    input Boolean mustRead := true "If false we can skip reading the file";
    output Boolean result "true if successful";

    "Opens a Modelica-file and pops up a window with the model in it"
  end openModel;

document("openModelFile");

  function openModelFile "open a Modelica-model from a file"
    input String model "Model to open";
    input String path := "" "File-path to open (can be the empty string)";
    input String version := "" "Version to open (can be the empty string)";
    output Boolean result "true if successful";

    "Opens a Modelica-file and pops up a window with the given model in it"
  end openModelFile;

可悲的是,我认为文档并没有完全捕捉到这里的区别。事实上,如果你仔细想想,我认为这些名字真的很落后。 openModel文件作为参数并打开该文件中包含的定义(通常是 apackage但不一定)。另一方面,openModelFile模型名称作为参数并在模型浏览器中打开该模型(如有必要,搜索MODELICAPATH以查找并打开模型)。

我希望这会有所帮助。

于 2013-08-25T23:23:33.423 回答