【问题标题】:Use JModelica in Spyder/Python在 Spyder/Python 中使用 JModelica
【发布时间】:2018-01-26 12:23:46
【问题描述】:

我正在使用 JModelica 来模拟 Modelica 模型。 JModelica.org Python 接口使用户能够使用 Python 脚本与 Modelica 模型进行交互;但是 JModelica.org 不仅是一个 Python 包/库 - Python 包是 JModelica 的一部分,而不是独立的。如果您使用 JModelica 打开 IPython.bat - 它是 call C:\JModelica.org-2.0\setenv.batsetenv.bat定义并设置不同的环境变量,包括所有必需站点包所在的set PYTHONPATH=%JMODELICA_HOME%\Python;%PYTHONPATH%

我喜欢将 Anaconda/Spyder 用于开发,尤其是用于调试,因此在 Spyder 中使用 JModelica 会很棒。我幼稚的想法是在 Anaconda 中创建一个新环境,并使用 JModelica 的 Intepreter、IPthon、PYTHONPATH(在调用 /JModelica.org/IPython.bat 时创建)等。

我知道如何在 Anaconda 中创建新环境以及如何在该环境中启动 Python。但它不起作用。

我也尝试在 Spyder 中更改设置

另一个想法是使用IPyhon的启动文件。

【问题讨论】:

  • 您在尝试上述方法时遇到的错误是什么?
  • @ChristianWinther 使用上述方法的错误消息是:'您的 Python 环境或安装没有安装 ipykernel 和 cloudpickle 模块。没有这些模块,Spyder 就无法为您创建控制台。你知道如何在 JModelica 捆绑的 Python 版本中安装这些包吗?

标签: python modelica jmodelica


【解决方案1】:

我遵循与@Karel Marik 相同的步骤。

摆脱 InvalidAlgorithmOptionException 异常 -

conda install -c conda-forge assimulo

【讨论】:

    【解决方案2】:

    我能够设置 jupyter notebook,但我和你一样使用 Spyder 失败了。我试过了

    1) 使用最新的 2.7 Python 从 Anaconda 环境启动 Spyder

    2) 更改工具 -> 首选项 -> Python解释器 -> 使用以下Python解释器

    C:\apps\JModelica.org-2.4\Python27\Python_64\python.exe
    

    3) 定义批处理文件“spyder64.bat”来运行 jmodelica 环境设置批处理。批处理文件的内容是:

    call C:\apps\JModelica.org-2.4\setenv.bat 64
    if %errorlevel% neq 0 pause
    

    4) 更改工具 -> 首选项 -> IPython 控制台 -> 启动 -> 行

    import os, os.system('C://apps//JModelica.org-2.4//spyder64.bat')
    

    5) 使用代码运行 hello world python 文件

    from pyfmi.examples import fmi_bouncing_ball
    fmi_bouncing_ball.curr_dir
    fmi_bouncing_ball.run_demo()
    

    ...但没有运气。我得到了

      File "pyfmi\fmi_algorithm_drivers.py", line 258, in __init__
        self._set_options()
    
      File "pyfmi\fmi_algorithm_drivers.py", line 425, in _set_options
        "The solver: "+solver+ " is unknown.")
    
    InvalidAlgorithmOptionException: Invalid algorithm options object: The solver: CVode is unknown.
    

    显然jModelica环境设置不成功。

    【讨论】:

      猜你喜欢
      • 2016-08-13
      • 1970-01-01
      • 2019-04-27
      • 1970-01-01
      • 2018-12-30
      • 1970-01-01
      • 2018-08-21
      • 1970-01-01
      • 2015-12-04
      相关资源
      最近更新 更多