我對Modelica中的混合建模範例感到困惑。一方面,事件是有用的,另一方面,它們是要避免的。讓我解釋一下我的情況:控制混合Modelica模型中的事件
我有一個大型模型,由一個鄰近區域中的多個建築物組成,模擬1年以上。最初,模型運行非常緩慢。在儘可能多的條件下添加noEvent()可以大大提高速度。
隨着發展的繼續,模型的控制變得越來越複雜,我又有很多事件,有時在很短的時間間隔。爲了讓一個想法:
Number of (model) time events : 28170
Number of (U) time events : 0
Number of state events : 22572
Number of step events : 0
這些事件炸燬輸出(正確處理後,我需要在事件變量)和減慢了模擬。此外,我感覺有些事件(如果...)會導致意想不到的行爲。
我想知道是否會在某些時間步驟強制我的事件並在這些時間步驟之間禁止它們?理想情況下,我想根據某些條件觸發這些「強迫事件」。例如:白天他們應該每隔15分鐘,在每分鐘高太陽輻射下,在夜間我根本不想要事件。
這是一個好主意嗎?我想這會更快,因爲許多州的事件將成爲時間事件? Modelica 3.2(在Dymola中)如何做到這一點?
預先感謝所有答案。 Roel
另一個答案包含有用的提示和見解。謝謝邁克爾。 – saroele