# 2024b V0.11.4 发行说明
本文介绍 Syslab 2024b V0.11.4 的最新特征。
版本:Syslab 2024b
内部版本号:V0.11.4
发行时间:2024.08
欢迎使用 Syslab 2024b V0.11.4,这是在 2024a SP1 V0.11.2 版本基础上的一次重要更新。本次版本发布新增 5 个功能模块、1 个函数库,优化了 5 个功能模块、17 个函数库及若干个函数。
# 新增功能
# ★交互式编程环境
★新增 M 工作区,支持 M 变量的集中显示与编辑
- 支持 M 工作区数据的过滤、清空、重命名
- 支持双击 M 工作区数据,打开变量编辑器进行显示与编辑
★Syslab 代码生成功能改进
- 支持 C++ 源码构建目标:可从 Julia 代码输出 C++ 项目,支持 Makefile 等多种构建工具
- 支持用例驱动的代码生成:可在代码生成期间引入额外 Julia 脚本,分析代码执行路径,进而支持编译部分动态 Julia 代码
- 优化对 Julia 标准库的代码生成支持,包括 sum、prod 等函数的动态情况
- 优化生成代码中的变量名生成规则,避免与用户代码冲突
- 支持 C++ 联合编译:支持 C++ 编译期间的自定义选项,导入 C++ 源码、头文件和库
绘图功能改进
- ★支持常用绘图的 Undo & Redo 功能,包括 plot、stairs、loglog、semilogx、semilogy、fplot、line 等
- ★支持双 y 轴曲线的复制/粘贴
- 支持二维曲线的显示/隐藏
调试功能改进
- 修复调试调用变参函数时,调试控制台显示变参未定义的问题
- 解决代码中有@__FILE__等宏,调试会报错的问题
- 解决单步调试异常跳过代码行的问题
- 解决修改 module 中的内容,debug 不生效的问题
- 修改调试过程中悬停、调试控制台、监视的变量显示方式
- 解决在调试 for 循环代码过程中,点击退出调试,终端代码仍在执行的问题
- 解决 Julia 调试时存在语法错误无法报错问题
IDE 界面改进
- Ribbon 菜单增加单列编辑器布局
- 支持自定义插件在 Syslab 左或右侧边栏显示
- 对于 Python 内核的实时编辑器,支持在每个单元格下方显示绘图
- 支持将工程文件整个下载下来(Syslab 云化版本特有)
PythonAPI 功能改进
- PythonAPI 增加打开函数帮助功能
★新增 DFX 功能: 主进程崩溃或闪退时自动收集日志和错误文件,确保软件在运行时能够快速、准确地诊断问题,并进行调试和修复。
- 增加进程监控功能
- 增加信息搜集打包功能
- 增加 Julia 终端崩溃监控功能
- 增加现场恢复功能
M 语言兼容功能改进
- 新增 106 个常用 M 函数,达到 1461 个
# ★科学计算函数库
基础工具箱
- 基础工具箱新增 2 个函数,改进 18 个函数
- 图形工具箱新增 9 个函数,改进 53 个函数
- 基础数学工具箱新增 8 个函数,改进 18 个函数
- 图像工具箱改进 5 个函数
- 地理图工具箱改进 1 个函数
数学、统计和优化
- 符号数学工具箱新增 1 个函数,改进 2 个函数
- 统计工具箱改进 46 个函数
- 曲线拟合工具箱改进 2 个函数
- 优化工具箱改进 6 个函数
信号处理和无线通信
- 信号处理工具箱新增 20 个函数,改进 51 个函数
- DSP系统工具箱新增 5 个函数,改进 3 个函数
- 小波工具箱改进 1 个函数
- 通信工具箱新增 19 个函数,改进 36 个函数
- 相控阵工具箱新增 9 个函数
控制系统
- 控制系统工具箱新增 2 个函数,改进 37 个函数
- 鲁棒控制工具箱新增 17 个函数,改进 1 个函数
- 系统辨识工具箱新增 7 个函数,改进 12 个函数
★图像处理和计算机视觉(新增)
- 全新发布图像处理工具箱,提供 108 个函数
# 科学计算APP
★曲线拟合 APP(新增) 提供了一个交互界面,用户可以在其中对数据进行曲线和曲面拟合并查看绘图。使用曲线拟合 APP,用户能够:
- 构造、绘制、比较拟合
- 使用线性或非线性回归、插值、平滑以及自定义方程
- 查看拟合结果统计优度,展示信赖区间与残差,移除极端值,使用验证数据评估拟合
- 将拟合导出到工作区以待深入研究

# 删除或变更功能⚠️
# 系统辨识工具箱
系统辨识工具箱引入 2 个破坏性更新。
| 函数名 | 函数说明 | 更改说明 |
|---|---|---|
| residuals | 模型残差计算 | 重命名为 resid 函数,resid 完全覆盖 residuals 函数。 resid:计算辨识模型残差的同时计算相关性,包括残差的自相关以及残差与辨识数据的互相关,具备画图功能,支持几乎所有辨识模型。 |
| simulate | 模型响应计算 | 重命名为 sim 函数,sim 完全覆盖 simulate 函数。 sim:使用辨识数据模拟辨识模型的响应,控制库 lsim 的扩展,返回辨识模型时域输出响应的同时还返回输出响应的估计标准偏差、状态估计轨迹及其估计标准偏差,此外,sim 具备绘图功能,sim 支持几乎所有辨识模型。 |
# 机器学习工具箱
机器学习工具箱引入 2 个破坏性更新。
| 函数名 | 函数说明 | 更改说明 |
|---|---|---|
| evfit | 极值参数估计 | 移除参数 c,增加关键字参数 alpha、censoring、freq |
| kmeans | k 均值聚类 | 移除输出 kcluster,增加输出 idx、center |
# Julia三方函数库安装方式变更
- 显示安装变更隐式安装只影响是否能够直接加载该库。以 AbstractAlgebra 库为例,using AbstractAlgebra 会报错提示该库未安装,但是加载依赖该库的符号数学库(using TySymbolicmath),可以正常使用。
- 显示安装变更为移除安装,using 该库会报错。以 Formatting.jl 为例,using Formatting 会报错提示该库未安装。
| Julia三方函数库 | 安装方式 | 变更说明 |
|---|---|---|
| AbstractAlgebra | 显示安装=>隐式安装 | 符号数学库依赖 |
| Colors | 显示安装=>隐式安装 | 图像库间接依赖 |
| Combinatorics | 显示安装=>隐式安装 | 插值库依赖 |
| DynamicPolynomials | 显示安装=>隐式安装 | 符号数学库依赖 |
| HypergeometricFunctions | 显示安装=>隐式安装 | 符号数学库依赖 |
| Primes | 显示安装=>隐式安装 | 符号数学库依赖 |
| QuadGK | 显示安装=>隐式安装 | 数学库依赖 |
| TaylorSeries | 显示安装=>隐式安装 | 符号数学库依赖 |
| Formatting | 显示安装=>移除安装 | 该库已废弃,使用 Format.jl 代替 |
| MLJBase | 显示安装=>移除安装 | 机器学习库早期依赖,新版已移除 |
| PkgTemplates | 显示安装=>移除安装 | 包管理器早期依赖,新版已移除 |
| SignalAnalysis | 显示安装=>移除安装 | 信号处理库早期依赖,新版已移除 |
| SymbolicNumericIntegration | 显示安装=>移除安装 | 符号数学库早期依赖,新版已移除 |