我想了解Simulink仿真引擎是如何工作的。它是否使用離散事件模擬機制(然後如何處理連續時間?)?它是否依賴於基於循環的靜態代碼生成?要麼 ?Simulink仿真引擎是如何工作的?
8
A
回答
4
第一循環之前,計算出(不要求從任何其他塊的輸入開始的那些)
每個循環塊的執行順序,它計算每個塊的基於所述輸出在輸入和塊的代碼上。每個模塊的代碼都是靜態的,它大多存在於將模型放在一起之前。 (我不知道塊選項是否實際更改了代碼,或者僅在運行時每次迭代時評估它們)。
如果模擬步驟是可變的,則比每個週期計算下一步的大小主要基於模型變量的變化速度。它們變化的速度越快,步長應該越小,因此短暫的高導數不會被認爲持續時間長於它應該的時間。 (我不知道這個計算的細節,也許其他人可以闡明一下)?所以,「連續」模擬或變步長只是意味着Simulink會對每個週期做出有根據的猜測,確定步長足夠小將時間量化誤差保持在可接受的水平。對於完全數字硬件,例如計算機處理器,真正連續的模擬是不可能的。
0
我當然不是專家,但答案可能是'它取決於'。
Simulink當然使用數值積分來處理某些事情,對於某些集成商而言,您最終會得到不連續的時間步驟。對於其他積分器,隨着模擬運行,時間步可以改變 - 這對於模擬'僵硬'的方程組尤爲重要。
相關問題
- 1. Matlab Simulink仿真時間
- 2. 模仿Matlab/Simulink仿真繼電器behavoir
- 3. 鐵路仿真圖形引擎
- 4. 用parfor(並行計算)的Simulink仿真
- 5. Simulink的:仿真調試樣模式
- 6. 循環仿真如何工作?
- 7. 移動設備仿真如何工作?
- 8. Matlab/Simulink仿真:創建事實表
- 9. 變參數在Simulink中進行仿真
- 10. 如何加快模糊控制器的simulink仿真時間
- 11. 如何在仿真過程中更改simulink塊的值?
- 12. 仿真器不工作SeeTest
- 13. RegEx引擎如何工作
- 14. processmaker引擎如何工作?
- 15. 如何在Simulink中優化仿真時間
- 16. 如何在Simulink仿真過程中捕獲所有警告?
- 17. 如何在MATLAB/simulink中自定義仿真以進行分析?
- 18. Sencha,phonegap或corona如何真正在引擎蓋下工作?
- 19. Nuxeo工作流引擎VS專用工作流引擎(如Activiti)
- 20. Windows 8的仿真器不工作
- 21. 一個基於圖形仿真引擎的發展
- 22. 如何仿射變換真的Java的工作?
- 23. 工作流引擎
- 24. MATLAB/Simulink的:一個馬達控制閥的仿真
- 25. 無法仿真器連接到谷歌應用程序引擎
- 26. N-body仿真不能正常工作
- 27. Eclipse AVD Nexus 5仿真器不工作
- 28. 仿真頁面方向不工作
- 29. AVD仿真器無法工作
- 30. 科爾多瓦仿真器不工作
Thx。這也是我的想法。對不起,這個奇怪的問題,但你是如何得到這個信息?你有什麼樣的信心? – JCLL 2010-12-23 15:00:11
@JLCC不多。我有多年使用Simulink的經驗,但是這些信息來源於文檔中的推斷和獲取線索(這裏有很多線索,但我從來沒有找到簡單的描述)。什麼讓我對我在這裏所說的最有信心是我對s函數的有限瞭解,它們是你自己編寫代碼的塊。我建議閱讀這些內容,他們提供有關正在發生的事情的見解。我說的關於變步長計算algorythm的信心非常低。但我很確定真正的連續模擬是不可能的,但不能參考 – 2010-12-23 16:11:13