- 1、本文档共22页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
MWORKS.Sysplorer外部接口外部函数(C/C++/Fortran)
目录1.Modelica外部函数概况2.外部函数入门-Modelica调用C3.外部函数高级-Modelica调用c++/Fortran高级特性和外部编辑器4.常见问题说明
1.1Modelica为什么要支持外部函数许多工程应用程序需要与其他软件进行集成。使用外部函数,Modelica可以方便地与其他编程语言和软件进行交互,如MATLAB、Simulink、LabVIEW和Python等。Modelica通过使用外部函数可以轻松地集成其他编程语言编写的库,如数学库和物理模型库,从而扩展其功能。这可以让用户更加灵活地选择合适的库来解决特定的问题。提高Modelica的灵活性和可扩展性加速仿真过程外部函数可以使用高效的算法和数据结构来加速仿真过程。例如,如果Modelica无法快速求解一个复杂的数学问题,可以使用外部函数来调用数值计算库来解决该问题,从而加速仿真过程。支持与其他软件的集成
1.2外部函数简介CC++Fortran外部函数Modelica模型doublegetreal_arg(doublea){ returna*2;}Python其他DLLEXEfunctionIncTest1inputRealdummy_u;outputRealdummy_y;//外部函数声明externalCdummy_y=getreal_arg(dummy_u)annotation(IncludeDirectory=modelica://ExternalFunctions/Resources/Include,Include=#include\useabc.c\);endIncTest1;示例:C函数调用Modelica模型能被C调用的对象都可以
1.2外部函数简介functionIncTest1inputRealdummy_u;outputRealdummy_y;//外部函数声明externalCdummy_y=getreal_arg(dummy_u)annotation(IncludeDirectory=modelica://ExternalFunctions/Resources/Include,Include=#include\useabc.c\);endIncTest1;Tips:这里IncludeDirectory注解中.c文件所在路径采用了Modelica模式URI的方式来表示:说明见下页对应文件夹本示例路径:软件安装目录..\Docs\Samples\ExternalFunctions函数声明引用配置
1.2外部函数简介Modelica模式URI说明:使用MWORKS.Sysplorer建模时,有可能用到数据文件等外部资源。要使模型仿真时能正确找到相应的文件,建模时需要遵循相应的规范。外部资源统一以Modelica模式的URI表示,其形式为:modelica://Package_Name/Relative_PathPackage_Name是Modelica模型中package的名字,Relative_Path是相对路径。这种URI在模型翻译后得到绝对路径,取Package_Name所在文件位于的文件夹作为基准路径,与Relative_Path组合形成完整的本地路径。示例:modelica://Modelica.Mechanics/C.jpgmodelica://Modelica/Mechanics/C.jpg假设Modelica所在的package.mo文件位于“C:\Modelica3.2.1\Modelica”,而Modelica.Mechanics所在的.mo文件位于“C:\Modelica3.2.1\Modelica\Mechanics”,那么,这两个都表示同一个文件“C:\Modelica3.2.1\Modelica\Mechanics\C.jpg”。
1.2外部函数简介ModelicaC输入输出Realdoubledouble*Integerintint*Booleanintint*Stringconstchar*constchar**Enumerationtypeintint*基本类型复合类型数组:基本类型地址的传递结构体:Modelica中使用记录类record对应
1.2外部函数简介return指针变量C代码中使用return返回输出值,Modelica中使用output类型变量
您可能关注的文档
- 多领域物理统一建模语言与MWORKS实践 课件 01-现代复杂工程系统的数字化研制模式(6学时) .pptx
- 多领域物理统一建模语言与MWORKS实践 课件 03-MWORKS.Sysplorer软件基础功能与应用-2023b(1.5学时).pptx
- 多领域物理统一建模语言与MWORKS实践 课件 4-1-Modelica语法详解-Modelica文本一般结构及语法概览(1.5学时).pptx
- 多领域物理统一建模语言与MWORKS实践 课件 4-2-Modelica语法详解-类与内置类型(4学时).pptx
- 多领域物理统一建模语言与MWORKS实践 课件 4-9-Modelica语法详解-注解(1学时).pptx
- 多领域物理统一建模语言与MWORKS实践 课件 7-Modelica与Sysplorer建模仿真总结(0.5学时).pptx
- 多领域物理统一建模语言与MWORKS实践 课件 4-7-Modelica语法详解-事件(1.5学时).pptx
- 多领域物理统一建模语言与MWORKS实践 课件 5-2-Modelica建模流程及规范(0.5学时).pptx
- 多领域物理统一建模语言与MWORKS实践 课件 4-8-Modelica语法详解-模型重用(2学时).pptx
- 多领域物理统一建模语言与MWORKS实践 课件 4-5-Modelica语法详解-连接与连接器(2学时).pptx
文档评论(0)