女人荫蒂被添全过程13种图片,亚洲+欧美+在线,欧洲精品无码一区二区三区 ,在厨房拨开内裤进入毛片

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

構建大規模Simulink模型的標準化最佳實踐

MATLAB ? 來源:MATLAB ? 2025-04-24 13:03 ? 次閱讀

| 作者 Brad Hieb 和 Erick Saldana SanvicenteMathWorks

(本文采用了機器翻譯)

隨著系統規模和復雜性的增長,工程團隊面臨著一系列在小規模上不存在的全新挑戰。

規模的大幅擴大幾乎總是需要方法的轉變,不僅是范圍上的,而且是種類上的。此原則也適用于使用基于模型的設計處理 Simulink 模型時。如果不遵循最佳實踐,從簡單的概念驗證模型過渡到具有數十萬個塊的大規模模型時,一系列問題開始出現,包括模型架構、數據管理、接口、文件管理和仿真性能不佳的問題。這些大型模型的構成要素可能很小,通常由不同的個人、團隊甚至部門開發。當有標準化并且遵循最佳實踐時,這些模型可以順利擴大規模。

本文介紹了一組最佳實踐,用于解決在 Simulink 中處理大型復雜模型時經常遇到的挑戰。由于這個主題本身相當廣泛,這里的目標不是提供詳細的規定性指導,而是介紹每種最佳實踐的基礎知識以及可供探索的其他資源的鏈接,以便更深入地了解如何應用它。

使用模型引用進行模型組件化

當我們與客戶合作時,經常會看到大型模型缺乏有意義的組件化。團隊從一個簡單的模型開始測試想法;隨著時間的推移,新的元素或特性被添加,所有的工作都在一個單一的、整體的模型文件

中完成,而這個模型文件很快就會變得難以處理。在 Simulink 中,有幾種方法可以組件化大型模型,最佳方法將取決于所考慮的具體用例。例如,如果一個團隊只是想直觀地組織一組塊或組件,他們可能會選擇模型內虛擬子系統。對于想要創建廣泛使用且不經常更改的實用程序的其他團隊來說,鏈接子系統(或庫)是一個更好的選擇。如果目標是開發或仿真一個組件作為獨立模型,那么模型參考是最好的方法。

對于大規模模型來說,模型引用也是組件化的關鍵。原因之一是 Simulink 中的模型引用使團隊能夠將組件作為獨立模型并行開發。每個組件都具有完整的功能且可仿真,并保存在自己的 SLX 文件中,因此每個團隊都可以獨立工作而不會干擾其他團隊的工作 - 當整個設計都捕獲在一個文件中時,這幾乎是不可能做到的。同樣重要的是,這些獨立的參考模型可以放置在更大的模型內,以便于集成(圖 1)。該架構可以使用參考模型的緩存實例和增量構建來減少構建時間。它還允許使用加速器和快速加速器模式,下面關于性能的部分將詳細介紹。

28fd8f92-1aab-11f0-9310-92fbcf53809c.png

圖 1. 模型 BMS_Software 和 Battery_Model 可以獨立開發,然后放置(或引用)在 BMS_ClosedLoop 模型。

使用模型引用進行模型組件化

讓我們重新考慮一下導致組件化問題的相同場景:一個團隊從一個簡單的模型開始作為早期的概念證明,然后隨著時間的推移不斷對其進行完善。對于一個簡單的模型,許多工程師會將變量、參數和其他數據存儲在基礎工作區。這種方法適用于非正式工作流程、快速參數調整、快速原型設計、單一開發人員工程或需要參數普遍可見性的用例。然而,隨著模型范圍和復雜性的增加,依賴基礎工作區進行數據管理會帶來一些缺點。例如,由于每次工程師關閉會話時基礎工作區都會被清除,因此必須手動保存為 MATLAB 代碼 (.m) 或 MATLAB 文件 (.mat)。

數據字典比基礎工作區更適合管理涉及大型模型、分布式開發或范圍數據的工程數據。出現這種情況的原因有幾個(見圖2)。第一是數據持久化。數據以特定的文件格式保存在數據字典 (.sldd) 文件中,使團隊能夠獨立于模型和基礎工作區定義、管理和更新數據。其次,團隊可以將數據分成多個字典,以進一步改善數據組織。第三,數據字典在變更跟蹤工作流中運行良好,團隊可以查看進行了哪些更改、何時進行更改以及由誰進行更改,甚至可以在需要時恢復到早期版本。

291b9d48-1aab-11f0-9310-92fbcf53809c.jpg

圖 2. 處理大型模型時數據字典的優勢。

這里需要注意的是,使用基礎工作區和數據字典之間的選擇并不是全有或全無的。這兩種方法可以共存,因此團隊可以隨著時間的推移逐漸從基礎工作區遷移到一個或多個數據字典。

簡化與總線的接口

在組件化、分層模型中連接子系統時,最初可能看起來最直接的方法是針對從一個組件傳遞到另一個組件的每個元素使用單獨的信號線。當然,這適用于簡單的界面,但這種方法很快就會導致模型變得比必要的更復雜、更混亂、更難管理。

在 Simulink 中,總線可以通過用一條線表示一組信號(或元素)來簡化界面并減少混亂,就像幾根電線捆綁在一起一樣。通過一個簡單的例子很容易看出它的價值。考慮一個用于識別電池系統中異常情況的故障檢測組件。該組件有 11 種不同的輸入,包括最大和最小電池電壓、最大和最小電池溫度、接觸器狀態、電池組電壓和電流以及電流限制。雖然創建具有 11 個獨立輸入端口的組件是可能的,但將輸入分成邏輯組并為每個組使用一個總線更為清晰。例如,由于電池電壓和電池溫度信號均來自同一組件且彼此相關,因此將它們分組為單個四元件總線是有意義的(圖 3)。顯然,這是一個相對簡單的例子,但它說明了如何使用總線來簡化組件接口,而且更廣泛地說,簡化復雜模型。

292d7360-1aab-11f0-9310-92fbcf53809c.png

圖 3. 故障檢測組件已更新,使用總線而不是單獨的信號作為輸入。

利用工程改善文件管理

遵循迄今為止概述的最佳實踐的一個副作用是必須管理的文件數量增加。當整個設計都采用單一模型時,團隊需要管理的文件集相對較小,但當積極采用組件化和數據字典時,文件集就會迅速增長。如果沒有文件管理策略,文件的激增就會帶來問題。

在 Simulink 中工作時,團隊可以使用工程來幫助自動化文件管理活動,這樣他們就有更多時間花在建模、仿真和其他高價值活動上。例如,在設置工程時,團隊將指定工程路徑中的文件夾。當工程打開時,這些文件夾會被添加到搜索路徑中(當工程關閉時,這些文件夾會被刪除),以確保工程的所有用戶都可以訪問其中的文件。團隊還可以指定用于自動設置項目環境的啟動文件,以及通過撤銷設置步驟(例如)來清理環境的關閉文件。此外,可以配置工程以在啟動時打開常用文件并為常用任務創建快捷方式。

工程還可以幫助團隊避免常見的錯誤。例如,在復雜的模型層次結構中,兩個同名的模型文件存在于不同的目錄中是很常見的。當使用工程時,工程師將看到以下警告:檢測到影子文件。此外,當工程關閉時,系統會提示工程師保存任何未保存的更改,以幫助避免工作丟失。

最后,工程有助于簡化源代碼控制,其中刷新、提交、推送、拉取、獲取等常見操作以及其他常見操作可直接從用戶界面訪問(圖 4)。

2944d2e4-1aab-11f0-9310-92fbcf53809c.png

圖 4. 源代碼控制操作可直接從工程選項卡的源代碼控制部分找到。

優化仿真性能

到目前為止我們所介紹的最佳實踐主要集中于大型模型的結構及其相關的數據和文件。在與實施了這些最佳實踐的客戶的對話中,我們經常被問及如何提高仿真性能:“現在我們有了更好的方法來構建大型模型,我們如何才能讓它們仿真得更快呢?”

有多種工具可用于提高仿真性能。作為第一步,我們建議性能顧問,它運行一系列檢查來識別可能減慢仿真速度的配置設置。接下來,對于任何包含初始化 MATLAB 代碼的模型(例如,在回調中),運行 MATLAB 探查器來確定 MATLAB 花費時間最多的地方是個不錯的主意。Simulink 探查器評估模型執行時間并識別可能導致仿真性能不佳的問題。最后,對于使用可變步長求解器的團隊,我們建議運行求解器探查工具來分析求解器行為,以識別潛在問題(例如求解器重置或極小的時間步長),并提供解決這些問題的建議。有關每種工具的指南,包括如何使用以及何時使用,請參閱排除故障并提高仿真性能指南(見表)。

已將大型模型組件化的團隊可以使用加速器模式或快速加速器模式加速仿真,此種模式用生成的代碼替換 Simulink 仿真中通常使用的解釋代碼。在模型初始化期間, Simulink 會檢查緩存中是否存在已生成代碼的組件。這種增量構建過程極大地減少了具有許多組件的大型模型的初始化時間,因為只有自上次仿真以來發生變化的組件才需要重建(并添加到緩存中)。

減少初始化時間的另一種方法是使用快速重啟。當團隊執行多次仿真運行而沒有對模型進行任何結構性更改時,快速重啟可以通過執行仿真而無需編譯模型并每次終止仿真來加快該過程。相反,在第一次仿真時,模型被編譯和初始化,然后在每次后續仿真中捕獲模型操作點的快照(圖 5)。

295fc7f2-1aab-11f0-9310-92fbcf53809c.png

圖 5. 優化模型以實現更快的仿真。

總之,當工程團隊應對擴展 Simulink 模型的復雜性時,遵循最佳實踐變得至關重要。本文概述了模型組件化、數據管理和性能優化的基本策略,強調了結構化方法對模型開發的重要性。通過利用性能顧問、MATLAB 探查器和求解器探查工具等工具,團隊可以增強仿真性能并提高生產力。這些實踐確保大型模型仍然可管理、高效且適應性強。隨著基于模型的設計領域不斷發展,這些指南將幫助團隊構建強大的模型,以滿足日益復雜的工程挑戰的需求。為了進一步探索,我們鼓勵讀者參與本文重點介紹的額外資源和培訓機會。

本文的內容基于我們在 MathWorks 北美汽車會議上發表的演講,題為“從組件到復雜系統構建大型模型的最佳實踐”(請可以點擊“閱讀原文”觀看此英語演講)。

正如我們一開始所說的,這是一個龐大的話題,無法在一篇文章或一次演講中詳盡地涵蓋。歡迎您報名我們 2025 年 5 月在上海和北京召開的 MATLAB EXPO 中國用戶大會,關注我們的建模、仿真、測試和實現分會場與汽車專場分會場演講,或者來現場與我們的專家進行面對面的交流。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • matlab
    +關注

    關注

    188

    文章

    2998

    瀏覽量

    233415
  • Simulink
    +關注

    關注

    22

    文章

    540

    瀏覽量

    63710
  • 模型
    +關注

    關注

    1

    文章

    3499

    瀏覽量

    50083

原文標題:構建大規模 Simulink 模型的標準化最佳實踐

文章出處:【微信號:MATLAB,微信公眾號:MATLAB】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦
    熱點推薦

    名單公布!【書籍評測活動NO.30】大規模語言模型:從理論到實踐

    ,在大模型實踐和理論研究的過程中,歷時8個月完成 《大規模語言模型:從理論到實踐》 一書的撰寫。希望這本書能夠幫助讀者快速入門大
    發表于 03-11 15:16

    大規模語言模型:從理論到實踐】- 每日進步一點點

    非常推薦大家去讀 【大規模語言模型:從理論到實踐】這本書,系統的講解了大模型的前世今生,對各個環節知識進行了普及。 今天跟我一起學習歸一
    發表于 05-31 19:54

    EPON標準化進展

    業務和傳統TDM(時分多路復用)業務。因此,采用EPON技術,運營商不僅可以在同一傳輸平臺上根據用戶的需要隨時開通多種業務,而且易于向全IP業務網絡過渡。文章介紹了EPON的標準化組織,分析了EPON
    發表于 04-24 09:08

    封裝如何標準化

    封裝標準化封裝標準化封裝標準化
    發表于 11-07 15:45

    大規模特征構建實踐總結

    背景一般大公司的機器學習團隊,才會嘗試構建大規模機器學習模型,如果去看百度、頭條、阿里等分享,都有提到過這類模型。當然,大家現在都在說深度學習,但在推薦、搜索的場景,據我所知,ROI并
    發表于 11-19 09:35

    python變量的標準化

    python 數據分析基礎 day17-對模型自變量進行標準化
    發表于 10-21 14:40

    構建大規模MIMO的難點在哪?

    構建大規模MIMO的難點在哪?高功率硅開關的應用案列分析
    發表于 03-11 07:05

    AUTOSAR分層模型標準化的應用接口有哪些

    AUTOSAR是什么?AUTOSAR分層模型標準化的應用接口有哪些?
    發表于 12-24 06:50

    EPON技術的標準化與測試

    EPON技術的標準化與測試 隨著寬帶業務的飛速發展,IPTV 等新型寬帶業務逐漸被大家所重視和期待,這些寬帶業務的大規模應用無疑離不開寬帶接入網技術的
    發表于 03-24 16:03 ?17次下載

    NVIDIA聯合構建大規模模擬和訓練 AI 模型

    Champollion 超級計算機位于格勒諾布爾,由慧與和 NVIDIA 聯合構建,它將為全球科學和工業領域的用戶創建大規模模擬和訓練 AI 模型
    的頭像 發表于 06-14 14:56 ?2044次閱讀

    加快部署 5G 基站的最佳實踐:RF 前端大規模 MIMO 入門

    加快部署 5G 基站的最佳實踐:RF 前端大規模 MIMO 入門
    的頭像 發表于 12-26 10:16 ?2197次閱讀
    加快部署 5G 基站的<b class='flag-5'>最佳</b><b class='flag-5'>實踐</b>:RF 前端<b class='flag-5'>大規模</b> MIMO 入門

    部署Linux的最佳實踐探索

    編者按:本文節選自節選自《基于Linux的企業自動》第五章。“第5章,使用Ansible構建用于部署的虛擬機模板,通過構建虛擬機模板來探索部署Linux的最佳
    的頭像 發表于 05-16 09:35 ?749次閱讀

    使用Ansible構建虛擬機部署Linux的最佳實踐

    編者按:本文節選自節選自《基于Linux的企業自動》第五章。“第5章,使用Ansible構建用于部署的虛擬機模板,通過構建虛擬機模板來探索部署Linux的最佳
    的頭像 發表于 05-16 15:13 ?1380次閱讀

    大規模語言模型的基本概念、發展歷程和構建流程

    大規模語言模型(Large Language Models,LLM),也稱大規模語言模型或大型語言模型,是一種由包含數百億以上參數的深度神經
    的頭像 發表于 12-07 11:40 ?5598次閱讀
    <b class='flag-5'>大規模</b>語言<b class='flag-5'>模型</b>的基本概念、發展歷程和<b class='flag-5'>構建</b>流程

    大規模神經網絡優化:超參最佳實踐規模

    從理論分析入手把握大規模神經網絡優化的規律,可以指導實踐中的超參數選擇。反過來,實踐中的超參數選擇也可以指導理論分析。本篇文章聚焦于大語言模型,介紹從 GPT 以來大家普遍使用的訓練超
    的頭像 發表于 12-10 21:45 ?1288次閱讀
    主站蜘蛛池模板: 金秀| 蓬莱市| 临澧县| 海伦市| 兴宁市| 曲靖市| 永城市| 陇西县| 贡觉县| 乌兰察布市| 平顺县| 沂水县| 华宁县| 泰安市| 治县。| 大方县| 满洲里市| 巨鹿县| 瑞安市| 茌平县| 博爱县| 黎平县| 曲松县| 务川| 成安县| 巴彦淖尔市| 香港 | 高青县| 嵩明县| 富民县| 洛宁县| 甘洛县| 越西县| 彭泽县| 铜山县| 鄂伦春自治旗| 泰和县| 伊川县| 根河市| 壶关县| 吉林省|