MW开发架构二次 6_第1页
MW开发架构二次 6_第2页
MW开发架构二次 6_第3页
MW开发架构二次 6_第4页
MW开发架构二次 6_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

BeihangUniversityMWORKS开发平台架构与二次开发张莉,张永飞,陈娟,刘芳2.1MWORKS平台技术架构2.1.1概述2.1.2内核层2.1.3平台层2.1.4应用层2.2MWORKS平台二次开发简介2.2.1内核级二次开发2.2.2应用级二次开发第2章MWORKS平台开放架构与二次开发简介012.1MWORKS平台技术架构平台概述MWORKS平台采用完全开放策略,从底层算法到上层应用均开放提供开放的系统架构,定义了科学计算与系统建模仿真平台架构和接口标准化方案支持开发者基于统一的接口规范开发函数库、模型库和APP实现平台共建,丰富应用生态2.1.1概述2.1.1概述MWORKS平台分层技术架构-总体2.1.1概述MWORKS平台分层技术架构-横向划分内核层平台层应用层2.1.1概述内核层负责算法函数和仿真模型的编译运行。包括基础数学算法库、模型求解算法库和科学计算与系统建模仿真内核。基于开放标准FMI、Netlib和FFTW等接口开发。提供开放、标准的内核级接口,支持底层算法二次开发和替换。可供开发者设置、替换底层算法、数学包、仿真求解算法等。2.1.1概述平台层为函数、模型、应用工具等资源提供全生命周期支持。包括科学计算环境和系统建模仿真环境。提供开发、调试、集成、测试、部署等支持。提供开放、标准的接口,支持应用资源的开发与扩展。支持开发者和外部系统调用,或集成入其他外部系统。2.1.1概述应用层包括科学计算函数库、系统仿真建模模型库和应用工具APPs,用于解决基础共性、行业通用和企业专用问题。应用资源基于平台层提供的开放接口和统一的资源开发规范开发。科学计算函数库提供基础数学、绘图等功能,支持教学科研、数据分析、算法设计和产品设计,可进行二次开发。系统仿真建模模型库包括传动、液压、电机、热流等专业模型,覆盖多个行业,降低模型开发门槛,支持二次开发。应用工具APPs是针对特定问题构建的应用程序,基于MWORKS平台运行,包括多个类别的应用工具,满足数字化设计、分析、仿真和优化需求。2.1.1概述MWORKS平台分层技术架构-纵向划分科学计算部分(MWORKS.Syslab)系统建模部分(MWORKS.Sysplorer)带交互界面的APP2.1.1概述科学计算部分(MWORKS.Syslab)基于Julia语言,支持多范式统一编程,简约与性能兼顾。提供通用编程、科学计算、数据科学、机器学习、信号处理等功能。可使用内置图形进行数据可视化。与工程建模仿真环境MWORKS.Sysplorer双向融合,形成一体化基础平台。2.1.1概述系统建模部分(MWORKS.Sysplorer)提供系统仿真建模、编译分析、仿真求解、后处理功能。支持产品多领域模型开发、虚拟集成、方案仿真验证和优化。为产品数字孪生模型提供关键支撑。2.1.1概述带交互界面的APP提供面向特定场景的专业应用,如控制系统设计与分析。依赖函数库或模型库,具备GUI实现交互入口。需在科学计算和系统仿真平台基础上构建专业计算能力。2.1.2内核层内核层概述MWORKS平台的内核层是最底层,负责科学计算函数和系统建模仿真模型的编译和运行。内核层将输入的Julia代码和Modelica代码编译成可执行程序,然后运行进行仿真计算,输出结果。内核层包括基础数学算法库、模型求解算法库、科学计算与系统建模仿真内核以及内核级开放接口。2.1.2内核层内核层组成与处理流程2.1.2内核层内核层-基础数学算法库基础数学算法库基于通用标准接口规范如BLAS/LAPACK/FFT/SuiteSparse。提供矢量、矩阵乘法、矩阵分解、线性方程组求解、傅里叶变换等核心算法工具。包括常微分方程ODE、微分代数方程DAE和偏微分方程PDE等算法。作为基础数学工具箱内核,支撑整个基础数学算法。2.1.2内核层内核层-模型求解算法库ODE初值问题求解算法线性代数求解算法非线性代数求解算法2.1.2内核层科学计算与系统建模仿真平台内核科学计算内核数学应用层数学层内核算法内核系统建模仿真内核算法层主控层应用层2.1.2内核层科学计算函数库架构2.1.2内核层科学计算与系统建模仿真平台内核的层次架构2.1.2内核层内核级开放接口(API)内核级开放接口是MWORKS平台提供的供开发者和外部系统调用的开放、标准接口,包括底层算法接口和上层内核接口。底层算法接口规约科学计算算法和模型求解算法的接口,符合标准即可接入平台。上层内核级接口提供一组内核原子应用程序接口,支持模型编译、分析、求解、代码生成、结果读写等操作。外部软件可通过调用这些接口集成科学计算和系统仿真内核。内核级API还提供底层算法切换接口规范,允许用户切换基础数学算法库和模型求解算法库。2.1.3平台层平台层概述平台层是MWORKS科学计算与系统建模仿真平台的集成开发环境,支持应用的全生命周期,包括开发、调试、集成、测试、部署。平台层架构包括科学计算环境、系统建模仿真环境和平台级API,用于函数开发、模型开发和APP开发。平台级API提供开放、规范的接口,包括科学计算能力和模型仿真计算能力。提供一套接口支持应用层函数库、模型库和APP的开发。2.1.3平台层平台层框架2.1.3平台层平台层科学计算环境面向科学计算,支持多范式统一编程,提供通用编程、数据科学、机器学习等功能。实现与工程建模仿真环境的双向融合,满足设计、建模、仿真、优化需求。系统建模仿真环境面向多领域产品设计与仿真验证,支持多领域统一建模规范Modelica。提供层次化建模方式,支持基于模型的系统工程应用,为设计知识积累与产品创新提供支持。平台级开放接口(API)提供科学计算接口API和系统建模仿真接口API。科学计算接口包括基础运算、数学方程、图形等API。系统建模仿真接口包括模型操作、参数操作、编译仿真等API,以及图形组件级API。2.1.4应用层应用层概述应用层包括科学计算函数库、系统仿真建模模型库和应用工具APPs,用于解决基础共性、行业通用、企业专用问题。应用资源遵循平台层提供的开放接口和统一的资源开发规范进行开发。应用层定义了开发规范,支持规范方式开发平台资源,提供资源管理接口,支持函数库、模型库和APP的装载、驱动和卸载。2.1.4应用层应用层框架2.1.4应用层科学计算函数库MWORKS函数库提供3338个标准接口函数,涵盖数学、统计、优化、数据科学、深度学习、信号处理、无线通信等领域,用户可基于规范开发自定义函数库并导入平台进行科学计算编程和计算。MWORKS平台科学计算库函数分类统计2.1.4应用层系统建模模型库MWORKS平台的模型库采用Modelica规范构建,包括多领域物理模型组件,用户可基于规范开发自定义模型库,实现可视化系统建模、仿真求解和结果查看。MWORKS平台的模型库2.1.4应用层应用层APPMWORKS平台的应用层APP通过应用级、平台级和内核级API开发,可部署到平台成为其组成部分,提供多类别的应用工具,满足数字化设计、分析、仿真和优化需求。Syslab和Sysplorer内置APP的示例2.1.4应用层应用层开发规范函数库开发规范描述了函数库开发、运行和管理机制。规范使用Julia及外部语言开发函数库的流程。开发的函数库可在平台导入、管理,支持科学计算编程和结果查看。模型库开发规范定义了模型库开发、运行和管理机制。规范使用Modelica及外部语言开发模型库的流程。开发的模型库可在平台导入、管理,支持系统建模、仿真求解和结果查看。APP开发规范包括开发、运行和管理APP的机制描述。内部APP自动遵循规范并内置API接口。外部APP需提供相应API接口以在平台加载、驱动和卸载。022.2MWORKS平台二次开发简介平台二次开发概述MWORKS平台的二次开发包括内核级和应用级两个层次,平台层提供全生命周期支持,不涉及二次开发。平台级API允许外部系统通过调用接口构建新系统和应用,实现界面、业务逻辑、数据等接口调用。MWORKS.SDK是应用开发工具包,包括:程序接口:内核层和平台层的函数和方法集合,包括科学计算和系统建模仿真API。帮助文档:提供接口解释、示例代码和错误解决方法。开发范例:展示如何使用SDK解决问题,从简单到复杂的案例。实用工具:推荐开发工具组合,如Qt5.14.2、MicrosoftVisualStudio2017。2.2平台二次开发概述MWORKS平台二次开发架构2.2平台二次开发概述内核级二次开发面向科学计算的基础数学算法扩展或替换二次开发涉及扩展或替换平台现有的科学计算算法,包括底层的BLAS、LAPACK等基础算法包。同时,也涉及上层的符号计算、曲线拟合等应用层数学包的定制或优化。面向系统建模仿真的模型求解算法扩展或替换在系统建模仿真平台上,系统建模仿真需求逐步趋向多领域系统、大规模系统。针对不同场景,可以定制底层的模型求解算法以满足特定目的。2.2.1内核级二次开发面向科学计算的基础数学算法扩展或替换性能优化:替换底层算法包(如BLAS和LAPACK)可针对特定硬件架构或优化需求进行自定义优化,显著提高科学计算应用的计算速度和效率,尤其对大规模和高性能计算任务至关重要。适应性:替换底层算法允许选择或开发更适合特定问题的算法,提高计算的准确性和可靠性,特别适用于不同科学计算问题的需求多样性。功能扩展:通过替换底层算法,可以添加新的数学功能以满足不断发展的研究需求,推动科学计算工具的创新和不断进步。平台独立性:减少特定底层算法库的依赖性,增加应用程序在不同平台上的可移植性和部署灵活性,有助于提高应用程序的可部署性和适应性。2.2.1内核级二次开发面向系统建模仿真的模型求解算法扩展或替换多领域建模:Modelica广泛应用于描述多领域系统,不同领域可能需要不同的模型求解算法,因此扩展算法以适应多领域系统建模的需求至关重要。大规模系统:大型系统包含数百个方程和变量,需要高度优化的模型求解算法来确保高效仿真。非线性行为:Modelica模型可能涉及非线性行为,扩展非线性问题求解算法有助于处理这些情况,确保准确模拟非线性系统。实时仿真:实时系统建模需要快速和可预测的求解算法,扩展模型求解算法以满足实时系统的要求对于控制系统和嵌入式系统建模至关重要。新型组件和领域:Modelica社区不断发展,引入新型组件和建模领域,扩展模型求解算法可满足新的建模需求和创新,保持与新技术和领域的同步。2.2.1内核级二次开发应用级二次开发概述函数库开发:使用Julia语言在Syslab中开发科学计算函数库。模型库开发:使用Modelica语言在Sysplorer中开发系统仿真模型库。APP开发:使用C++/Qt等语言开发应用层APP,调用平台层API集成科学计算和系统仿真能力。开发流程:应用层开发调用函数库和模型库实现业务需求,实现定制化功能和特定应用场景的需求。2.2.2应用级二次开发应用级二次开发概述2.2.2应用级二次开发科学计算函数库开发填补内置库的空白:扩展函数库可填补Julia内置库未涵盖的数学、统计和计算领域,特别适用于不常见或领域特定的问题。解决行业特定问题:函数库扩展可针对不同行业和领域的科学计算挑战开发定制函数,满足金融、生物医学、工程等行业特定需求。提高计算效率:通过扩展函数库,优化特定领域算法可显著提升计算效率,确保在特定任务中获得更快的计算速度。适应特定需求:定制函数库可满足项目特殊数学工具需求,确保科学计算环境符合特定研究或工程任务的要求。2.2.2应用级二次开发系统建模模型库开发填补内置库的空白:扩展模型库可满足特定行业或复杂系统的需求,填补Modelica内置库未涵盖的领域或模块,特别适用于特定行业建模需求。替换已有的内置库:通过扩展模型库,用户可以替换内置库中无法满足定制化建模需求或性能改进的模块,确保模型满足特定行业或高度定制化的需求。满足特定的需求:定制模型库可为用户提供特定领域或功能的模块,确保系统建模仿真环境适用于各种工程、科学或工业应用,并满足特定需求。开发规范和适用性:MWORKS平台规范了使用Modelica和外部语言开发模型库,支持多语言开发,兼容FMI标准,实现系统建模仿真。2.2.2应用级二次开发APP开发MWORKS平台提供多领域应用工具,但可能无法满足所有需求,用户需开发定制的带用户界面的APP。平台定义了APP的开发规范,包括开发、运行、管理机制,基于平台级API进行开发。APP可基于应用级、平台级和内核级API开发,通过应用层扩展能力部署

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论