问题标签 [jmodelica]
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.
python - FMU 导出 Python 代码或带有 FMI 标准的 Python 接口,用于 EnergyPlus 协同仿真
我的研究小组已经为我们希望与 EnergyPlus 共同模拟的新建筑组件开发了 Python 代码。对于可重用性和市场影响,我们希望这种连接对于没有经验的用户来说尽可能简单,并相信使用函数模型接口标准 (FMI)打包模型是最佳选择。
我们探索了JModelica来测试其他功能样机单元 (FMU),但发现它不会为模型交换或联合仿真执行 Python 代码的 FMU 导出。
我很好奇是否有任何方法可以将 python 代码打包为 FMU?如果没有,是否有另一种方法可以将 Python 连接到 FMI 标准或将其连接到 EnergyPlus 等建筑能源软件?
替代方法是将建筑能源模型作为 FMU 导出并导入 modelica/jmodelica 或使用 BCVTB。虽然这对我们有用,但我们担心这会让没有经验的人很难使用我们的工具。
python - JModelica 和并发期货
我正在使用 JModelica 在后台使用 IPOPT 优化模型。
我想并行运行许多优化。目前我正在使用多处理模块执行此操作。
现在,代码如下。它对变量执行参数扫描,T
并将So
结果写入为这些参数命名的输出文件。输出文件还包含模型中使用的参数列表以及运行结果。
使用模型:
这安全吗?
python - JModelica 可以将结果直接打印到文件中吗?
我正在运行以下 JModelica 脚本:
我曾希望将结果(例如时间、x1、x2 等)打印到文件/z/out
中。但该文件仅包含 IPOPT 详细调试/状态信息。
有没有办法将res
直接存储到文件中的信息打印出来?要么通过某种方式编写 res 本身,要么最好让 IPOPT/JModelica 编写结果而不必通过 Python?
python - 如何让 JModelica 保持安静?
我正在运行以下 JModelica 脚本:
我曾预计该设置print_level
将0
意味着 JModelica 和 IPOPT 将保持安静。它绝对有帮助!但我不断得到这样的输出:
我怎样才能抑制这种输出?
python - JModelica result_file_name 输出的格式是什么?
我正在使用以下代码从 JModelica 打印出结果:
检查文件/z/out
,它具有以下结构:
其中...
意味着更多的行直到finalTime
。
但这一切意味着什么?此输出的格式在哪里指定?
modelica - 设置 Modelica 微分单位
我知道我可以像这样定义参数单位:
状态变量的单位如下:
但是如何定义导数的单位?(或者这些是自动生成的?可能是我正在使用的 JModelica 根本不检查单位。)
jmodelica - JModelica 拒绝加载 libhsl.so
JModelica 拒绝将文件加载libhsl.so
为共享库,即使我已经设置了LD_LIBRARY_PATH
变量:
类型异常:第 321 行的文件“../../../../Ipopt/src/Algorithm/IpAlgBuilder.cpp”中的 OPTION_INVALID:异常消息:选定的线性求解器 MA27 不可用。尝试从共享库“libhsl.so”获取 MA27,但出现以下错误:libhsl.so: cannot open shared object file: No such file or directory
我尝试过以多种方式重新编译和重新运行 JModelica 。
我已经LD_LIBRARY_PATH
适当地设置了。
我已经跑了ldconfig
。
似乎没有任何帮助。
我怎样才能解决这个问题?
modelica - Modelica Class Method
I would like to use a class function/method in my Modelica model as follows:
I would like the variable e
in the function omega
to be a variable so that I can easily change its value at a later point in time when I am doing a parameter sweep. Unfortunately, the function omega
does not seem to know about the variable e
and the JModelica compiler returns the error:
Cannot find class or component declaration for e
I would naïvely expect that since omega
and e
belong to the same class omega
would be able to see e
.
Is there a way to achieve this?
modelica - 来自字符串的可替换函数和函数调用
以下三个问题捆绑在一起,所以请原谅帖子的长度。
使用 Dymola 2016。
在模型中使用可替换的函数调用为用户提供了拥有下拉选项的机会。下面的例子:
在函数中执行相同的可替换函数调用似乎不允许与调用函数相同的下拉功能(即在包浏览器中右键单击调用函数。我认为这是故意的,因为通常在其他函数/模型中调用函数. 示例如下:
问题 #1。是否可以像使用模型一样在函数中使用可替换的函数调用?如果是这样,适当的语法是什么?替代方法?
或者,另一种选择是在模型中执行可替换的函数调用,然后将结果传递给另一个函数,然后由该函数进行适当的调用。示例如下所示:
它将参数 x 和函数句柄 a 传递给:
问题2。这在 Modelica 中是否允许,如果允许,如何?替代方法?
问题 #3。是否可以定义一个字符串并将其转换为函数的名称。下面的例子:
先感谢您!感谢您的反馈,因为我将继续探索 Modelica 的使用。
python - 加载以前保存的 JModelica 结果文件
我得到了以下问题:
我正在加载一个 JModelica 模型并通过以下方式轻松模拟它:
一切正常,甚至可以保存生成的 .txt 文件。现在,有了这个 .txt ,问题是我没有在 jmodelica-python 包中找到任何功能,以便稍后将这样的 .txt 结果文件再次实际加载到结果对象中(就像由模拟返回的那个( ) ) 轻松提取以前保存的数据。
手动实现它当然是可能的,但我觉得它很讨厌,只是想问是否有人知道可以为我将 JModlica 格式结果文件加载到结果对象中的方法。
谢谢!!!!