2016-01-19 42 views

回答

0

您收到的錯誤是內存問題,即Python無法爲您的仿真結果分配足夠的內存。

在仿真過程中,結果會連續寫入文件,在您的情況下使用ncp = 400000,會寫入400000個結果點。如果你的模型很大(就變量而言),這相當於寫入了大量的數據。請注意,模擬成功,只有當結果被加載回內存以便將其返回給失敗的用戶時。您的模擬結果存儲在當前目錄中的文件中。

如果不是模型中的所有變量都是我感興趣的,我建議使用「過濾器」選項,以便只存儲感興趣變量的結果。

opts["filter"] = "*x" #Store all variables that ends with x 
    opts["filter"] = ["Myvar1", "Myvar2*"] #Store "Myvar1" and all variables that starts with "Myvar2". 

有關選項的詳細信息,請參閱http://www.jmodelica.org/assimulo_home/pyfmi_1.0/pyfmi.html#pyfmi.fmi_algorithm_drivers.FMICSAlgOptions

+0

謝謝您的回答。你是對的。我只需要3個變量的數據。我可以知道如何使用您提到的「過濾器」選項。我也是Python的新手 –

+0

沒問題,我更新了我的帖子。 –

+0

謝謝@christian –