在这个问题中,我询问了如何在启动时将自定义包添加到 MODELICAPATH,但答案有些含糊。根据答案,我可以使用
openModel("path\to\file.mo")
或者
openModelFile("Fully.Qualified.Model.Name")
我想知道这些命令有什么不同,如果有的话,以及何时使用其中一个。
编辑:如果您回答,请在 Modelica 文档中提供来源。我什至不知道如何浏览文档以找到这些命令,所以这可能是一个很大的障碍。
乍得,
对于任何与 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以查找并打开模型)。
我希望这会有所帮助。