模型模拟的软件控制
使用模型
运行模拟
要运行模型的模拟,请使用公共方法run
engee.run(model_name; verbose=false)
engee.run(model; verbose=false)
engee.run(; verbose=false)
-
运行模型模拟。返回模拟结果。
-
如果未指定模型,则运行当前模型的模拟。
-
如果
verbose=true
,则输出模拟进度。默认为verbose=false
。
示例.
m = engee.load("/user/start/examples/power_systems/power_line_apv/power_line_apv.engee") #загружает модель из указанного пути присваивает ее переменной m
#другой вариант
m = "power_line_apv"
engee> engee.run(m)
Dict{String, DataFrame} with 6 entries:
"Va" => 40001×2 DataFrame…
"Ia" => 40001×2 DataFrame…
"Ib" => 40001×2 DataFrame…
"Ic" => 40001×2 DataFrame…
"Vc" => 40001×2 DataFrame…
"Vb" => 40001×2 DataFrame…
暂停正在运行的模拟
使用公共方法暂停
engee.pause(model_name)
engee.pause(model)
engee.pause()
-
暂停模型的模拟运行。返回 "无"。
错误
如果模拟没有运行,则会生成错误 Engee.Exception.SimulationError("只有正在运行的模拟可以暂停")
。
查看模拟结果
使用公共方法get_results 查看模拟结果。
engee.get_results(model_name)
engee.get_results(model)
engee.get_results()
-
以 Dict 字典的形式返回指定模型的模拟结果,其中键是被跟踪端口的名称。
-
如果没有指定模型,则返回上次模拟的结果。
-
该方法直接与存储模型仿真结果的 simout 变量相关联。有关使用 simout 变量的更多详情,请参阅软件处理 Engee 中的模拟结果 。
示例
engee.get_results("newmodel_1")
#вывод
Dict{String, DataFrames.DataFrame} with 1 entry:
"Integrator.1" => 1001×2 DataFrame…
错误
-
如果模型未打开,则会抛出异常`Engee.Exceptions.ModelDoesntExistException`。
查看模型模拟状态
公共方法get_status 被使用
engee.get_status(model_name)
engee.get_status(model)
engee.get_status()
-
以
SimulationStatus
的形式返回模拟的状态。
示例
engee.run("newmodel_1") # запускает симуляцию модели. Возвращает результаты симуляции
engee.pause("newmodel_1") # останавливает запущенную симуляцию модели
engee.resume("newmodel_1") # возобновляет процесс симуляции модели
engee.stop() # останавливает запущенную симуляцию модели
engee.get_results("newmodel_1") # возвращает результаты симуляции в виде словаря Dict
engee.get_status("newmodel_1") # возвращает статус симуляции как SimulationStatus
engee.get_logs("newmodel_1") # получает сообщения из журнала, связанные с моделью