专栏
标签
Sysplorer每个阶段软件都在做什么,出了问题如何排查?
技术分享
发布于 2025-10-16 23:40:10
查看 1过去229天

一、启动阶段

软件初始化进程并加载环境变量,可能因权限不足或环境冲突,缺失C++代码运行时环境导致失败。

排查思路:和环境关联较大,主要向环境方向排查:排查时需检查防火墙拦截、环境变量配置(如Path值异常),C代码运行环境检查,软件文件缺失,可尝试在有权限的位置重装软件。

二、加载模型阶段

软件读取并解析模型文件(如.mo格式),解压mol,可能因文件损坏或兼容性问题崩溃。

排查思路:和模型关联较大,可尝试加载极为简单的模型,如果正常则排查模型,没有崩溃模型难以排查,如果简单模型也有这个问题,尝试向环境方向排查,安全软件,权限等。还和模型的加载方式有关,是通过软件打开还是直接双击模型打开,或者将模型拖到软件图标打开,以及是否同时由多个软件打开。

三、检查阶段

检查模型是否符合Modelica语法语义规范,以及对于软件特殊支持的字段是否使用正确,识别模型中的潜在问题(如未定义变量或不兼容数据类型),并生成错误报告供用户修复。

检查模型的结构完整性,包括组件连接、变量定义和参数设置,避免仿真时出现逻辑错误。

排查思路:和模型关联大,排查时先尝试获取模型或者可复现问题的等效模型,一般是某段特殊文本造成的,向组件和文本语法使用方向排查。

四、翻译(编译)阶段

软件将模型Modelica代码通过编译器编译为可执行C代码形式。常见错误:1、包括初值缺失、状态变量选择有误等建模问题,2、因为环境权限等原因导致的文件生成失败,3、仿真设置是否合理。

排查思路:1、如果报错和模型有关,向建模方向排查,需在"建模-仿真设置"中勾选调试和模型翻译选项查看具体报错信息,修改模型方程,初始参数。2、向生成文件的权限去排查,以及相关的编译器功能排查,为什么没能生成,是被什么阻拦了生成。3、根据报错修改仿真设置,或者尝试其他仿真设置

五、仿真阶段

软件调用生成的程序、相依赖的动态库、外部函数等,将数值算法(如Dassl)和可变参数作为输入调用求解器,输出计算结果。

排查思路:调用的动态库,算法,外部函数、参数值有问题,向这个方向排查,同时依靠报错信息排查,也可以打开仿真设置,调试栏的选项,以求获得更多报错信息辅助定位。

六、关闭阶段

软件清理资源并保存状态。

排查思路:权限问题可能导致关闭异常,修改工作目录路径或添加防火墙信任项,或分析崩溃日志(如error_report)。

所属专栏:Sysplorer基础平台
产品信息:Sysplorer系统建模仿真环境
系统建模

全部回答

暂无数据
暂无数据
用户
和原帖交流更多问题细节吧,去
我要发帖 我要发帖
资料中心 资料中心
查看更多>
热门帖子 热门帖子
主要贡献者 主要贡献者
过去7天