北太天元 baltamatica_3.5.0_beta 更新日志

标签: 软件版本更新

社区小助手 2024-04-17 21:37:26

baltamatica 3.5.0_beta


一、新增


(一)新增功能


1、IDE

  • 新增恢复默认布局功能;


2、北太真元系统仿真工具

  • 仿真运行过程进度条显示;

  • Simulink模型导入功能,新增基础计算单元的兼容。


(二)新增函数


1、主体函数


(1)绘图:
  • rticklabels: 设置或查询 r 轴刻度标签

  • thetaticklabels:设置或查询 theta 轴刻度标签

  • waterfall:瀑布图

  • isgraphics:对有效的图形对象句柄为 True

  • allchild:查找指定对象的所有子级

  • daspect:控制沿每个轴的数据单位长度

  • pbaspect:控制每个轴的相对长度

  • ribbon:条带图

  • cylinder:创建圆柱

  • ellipsoid:创建椭圆体

  • sphere:创建球面

  • colororder:为可视化多个数据序列设置色序

  • rgbplot:绘制颜色图

  • lines:线条颜色图数组

  • colorcube:Colorcube 颜色图数组

  • prism:Prism 颜色图数组

  • flag:flag 颜色图数组

  • alim:设置或查询坐标区的 alpha 范围

  • reset:将图形对象属性重置为其默认值

  • smooth3:平滑处理三维数据

  • rotate:以指定原点和方向旋转对象

  • plotmatrix:散点图矩阵

  • brighten:增亮或加深颜色图

  • sky:Sky 颜色图数组

  • hidden:消除网格图中的隐线


(2)数学:
  • pdepe:求解一维抛物-椭圆型PDE的初边界值问题

  • pdeval:计算由pdepe生成的数值解在给定点上的插值和导数的插值

  • pdentrp:pdepe的插值辅助函数

  • bsxfun:对两个数组应用按元素运算(启用隐式扩展)


(3)编程:
  • assert:条件为 false 时引发错误

  • mkdir:创建新目录

  • baltamaticaroot:北太天元根文件夹

  • lscmd:列出北太天元当前可调用所有命令的列表


(4)数据导入和分析:
  • type:显示文件内容

  • fileread:以文本格式读取文件内容

  • trenddecomp:寻找数据趋势

  • quantile:数据集的分位数

  • histcounts2:二元直方图bin计数

  • accumarray:累加向量元素


(5)语言基础知识:
  • try, catch:执行语句并捕获产生的错误

  • validateattributes:检查数组的有效性

  • iskeyword:确定输入是否为 Baltamatica 关键字

  • datetime:表示时间点的数组

  • NaT:非时间 (Not-a-Time)

  • eomday:一个月中的最后一天

  • duration:固定长度单位的时间长度

  • calendarDuration:以可变长度日历单位表示的时间长度

  • now:当前日期和时间作为日期序列值

  • clock:日期向量形式的当前日期和时间

  • today:当前日期

  • year:日期时间输入的年份值

  • quarter:日期时间输入的季度值

  • month:日期时间输入的月份值

  • week:日期时间输入的周数值

  • day:日期时间输入的日期值

  • weekday:星期几

  • hour:日期时间输入的小时分量

  • minute:日期时间输入的分钟分量

  • second:日期时间输入的秒分量

  • ymd:日期时间的年、月和日数字

  • hms:日期时间或持续时间的小时、分钟和秒数

  • isnat:确定 NaT(非时间)元素

  • isdst:确定夏令时元素

  • isweekend:确定周末元素

  • isdatetime:确定输入是否为日期时间数组

  • table:具有命名变量的表数组(变量可包含不同类型的数据)

  • array2table:将同构数组转换为表

  • table2struct:将表转换为结构体数组

  • convertvars:将表或时间表变量转换为指定的数据类型

  • istable:确定输入是否为表

  • istabular:确定输入是表还是时间表

  • head:获取表、时间表或 tall 数组的前几行

  • tail:获取表、时间表或 tall 数组的最后几行

  • addvars:将变量添加到表或时间表中

  • renamevars:重命名表或时间表中的变量

  • movevars:在表或时间表中移动变量

  • removevars:从表或时间表中删除变量

  • splitvars:在表或时间表中拆分多列变量

  • mergevars:将表或时间表变量合并成多列变量

  • years:持续时间(以年为单位)

  • days:持续时间,以天为单位

  • hours:持续时间,以小时为单位

  • minutes:以分钟为单位的持续时间

  • calyears:日历持续时间(以年为单位)

  • calquarters:日历持续时间(以季度为单位)

  • calmonths:日历持续时间(以月为单位)

  • calweeks:日历持续时间(以周为单位)

  • caldays:日历持续时间(以天为单位)

  • isduration:确定输入是否为持续时间数组

  • iscalendarduration:确定输入是否为日历持续时间数组

  • seconds:以秒为单位的持续时间

  • milliseconds:以毫秒为单位的持续时间


(6)辅助函数:
  • setSimuStatus:仿真辅助函数


2、工具箱函数


(1)控制系统工具箱:
  • ctrb:计算可控性矩阵

  • ctrbf:可控性梯形形式

  • obsv:计算可观测性矩阵

  • obsvf:可观测性梯形形式


(2)统计工具箱:
  • dummyvar:创建虚拟变量

  • geomean:计算几何平均值

  • trimmean:计算修剪均值

  • corr:计算线性或秩相关系数

  • partialcorr:计算线性或秩偏相关系数

  • tiedrank:计算样本的秩,调整平级关系

  • gpfit:对广义帕累托数据进行参数估计和置信区间计算

  • wblfit:计算Weibull分布参数的最大似然估计和置信区间

  • copulacdf:Copula的累积概率函数

  • copulapdf:Copula的概率密度函数

  • copulaparam:Copula参数作为排序相关性的函数

  • copulastat:获得排序相关系数

  • copularnd:从 Copula 分布中随机生成向量

  • mahal:计算马氏距离

  • iwishrnd:生成逆Wishart随机矩阵

  • wishrnd:生成Wishart随机矩阵

  • canoncorr:计算矩阵样本特征系数和相关性

  • regress:使用最小二乘法多元线性回归

  • x2fx:将预测值转换为设计矩阵

  • removenan:从输入中移除 NaN 值

  • corrSpearman:计算 Spearman 相关系数矩阵

  • corrPearson:计算Pearson相关系数矩阵

  • corrKendall:Kendall 相关系数矩阵

  • icdf:指定分布的逆累积分布函数

  • pdf:指定分布的概率密度函数

  • nbinfit:负二项分布数据的参数估计

  • betalike:负Beta对数似然函数

  • betafit:为Beta分布数据估计参数和置信区间

  • gevfit:用于广义极值数据的参数估计和置信区间计算

  • barttest:对数据进行巴特斯特检验

  • evnegloglike:负极大似然估计

  • dgammainc:带导数的不完全Gamma函数

  • gammaincratio:不完全Gamma函数


(3)信号处理工具箱:
  • dftmtx:离散傅里叶变换矩阵

  • czt:周期变换

  • fwht:快速离散 Walsh-Hadamard 变换

  • ifwht:快速逆离散Walsh-Hadamard变换

  • hilbert:通过 Hilbert 变换生成离散时间解析信号

  • butter:Butterworth 数字和模拟滤波器设计

  • fircls:用约束最小二乘法设计线性相位滤波器

  • intfilt:插值滤波器设计

  • impzlength:数字滤波器的脉冲响应长度

  • ismaxphase:判断最大相位滤波器是否为真

  • isminphase:判断最小相位滤波器是否为真

  • convmtx:生成卷积矩阵

  • cell2sos:将单元格数组转换为二阶节矩阵

  • sos2zp:二阶部分到零极点增益模型的转换

  • zp2tf:零极点到传递函数的转换

  • triang:创建三角窗

  • plomb:创建Lomb Scargle周期图

  • tfestimate:估计传递函数

  • db:转换为分贝

  • db2mag:dB到幅度的转换

  • db2pow:分贝到功率的转换

  • mag2db:幅度到分贝的转换

  • pow2db:功率到分贝的转换

  • pburg:利用Burg方法估计功率谱密度

  • pcov:用协方差法估计功率谱密度

  • pmcov:修正协方差法估计功率谱密度

  • pmusic:通过MUSIC特征向量法进行频率估计

  • freqz:数字滤波器的频率响应

  • blackman:创建Blackman窗口

  • barthannwin:创建改进 Bartlett-Hanning 窗口

  • peig:通过特征向量法估计频率

  • bartlett:创建Bartlett 窗口

  • bitrevorder:将输入置换为位反转顺序

  • digitrevorder:将输入置换为数字反转顺序

  • xcorr2:计算二维互相关

  • filtic:生成'filter'函数的初始条件

  • corrmtx:创建自相关矩阵

  • cconv:计算循环卷积

  • arburg:通过 Burg 方法进行 AR 参数估计

  • bohmanwin:创建Bohman 窗口

  • flattopwin:创建平顶窗

  • gausswin:创建高斯窗口

  • hamming:创建汉明窗

  • hann:创建Hann 窗口

  • kaiser:创建凯泽窗

  • nuttallwin:创建Nuttall 窗口

  • taylorwin:创建泰勒窗口

  • tukeywin:创建Tukey 窗口

  • rlevinson:反向莱文森-德宾递归

  • arcov:使用协方差方法进行AR参数估计

  • is2rc:将反正弦参数转换为反射系数

  • lar2rc:将对数面积比转换为反射系数

  • lsf2poly:预测多项式的线谱频率

  • poly2rc:将预测多项式转换为反射系数

  • poly2ac:将预测多项式转换为自相关序列

  • poly2lsf:线谱频率预测多项式

  • rc2ac:自相关序列的反射系数

  • rc2is:将反射系数转换为反正弦参数

  • rc2lar:将反射系数转换为对数面积比

  • rc2poly:将反射系数转换为预测多项式

  • armcov:使用修改后的协方差方法进行AR参数估计

  • prony:Prony方法用于时域IIR滤波器设计

  • stmcb:通过 Steiglitz-McBride 迭代计算线性模型

  • impz:数字滤波器的冲激响应

  • blackmanharris:创建最小4项 Blackman-Harris 窗口

  • fircls1:使用受约束的最小二乘法设计低通和高通FIR滤波器

  • invfreqs:将频率响应数据拟合成连续时间滤波器

  • invfreqz:将频率响应数据拟合成离散时间滤波器

  • polystab:多项式稳定化

  • fir1:使用窗口法设计FIR滤波器

  • fir2:使用频率采样方法设计FIR滤波器

  • rooteig:通过特征向量算法计算正弦曲线的频率和功率

  • rootmusic:通过Root MUSIC算法计算正弦波的频率和幂

  • polyscale:缩放多项式的根

  • sos2cell:将二阶节矩阵转换为单元数组

  • firls:使用最小平方误差最小化方法设计线性相位 FIR 滤波器

  • firpmord:Parks-McClellan 最优等波纹 FIR 阶数估计器

  • gaussdesign:Gaussian FIR 脉冲整形滤波器设计

  • rcosdesign:升余弦滤波器设计

  • tf2zp:将传递函数转换为零极点形式

  • tf2zpk:将离散时间传递函数转换为零极点形式

  • zplane:绘制z平面零极点图

  • schurrc:从自相关向量 R 中计算反射系数

  • decimate:在低通滤波后以较低的采样率对数据进行重采样

  • fftfilt:FFT方法的重叠相加滤波

  • zp2sos:将零极增益模型转换为二阶节模型

  • filternorm:计算数字滤波器的范数

  • filtfilt:零相位前向和后向数字 IIR 滤波

  • filtord:计算滤波器阶数

  • sos2tf:将二阶段转换成传递函数模型

  • ellip:Elliptic 滤波器设计

  • cheby1:Chebyshev I型滤波器设计

  • cheby2:Chebyshev II型滤波器设计

  • impinvar:模拟到数字滤波器转换的脉冲不变方法

  • tf2sos:将传递函数转换为二阶截止器形式

  • parzenwin:创建Parzen窗口


(三)北太真元系统仿真工具


1、基础计算单元


Discontinuous(新增3个)

  • deadZoneDynamic:动态死区模块

  • rateLimiterDynamic:动态速率限值模块

  • saturationDynamic:动态限值模块


discrete(新增6个)

  • discreteDerivative:离散时间导数模块

  • propagationDelay :传播延迟模块

  • tappedDelay:将标量信号延迟多个采样周期并输出所有延迟版本"

  • transferFuncFirstOrder:离散时间一阶传递函数

  • transferFuncLeadOrLag :离散时间超前或滞后补偿器

  • transferFuncRealZero:离散传递函数(实数零点,无极点)


math(新增6个)

  • decrementTimeToZero :将当前输入信号减去采样时间输出,如果结果小于零则输出零

  • decrementRealWorld:当前信号值减一输出

  • decrementStoredInteger:当前信号值减一输出,如果溢出会绕回

  • decrementToZero:当前输入信号减一输出,如果结果小于零则输出零

  • incrementRealWorld:当前输入信号加一输出

  • incrementStoredInteger:当前输入信号加一输出


lookupTables(新增9个)

  • cosineLookup :该模块通过利用波的1/4对称性的查找表方法来实现余弦函数

  • sineLookup:该模块通过利用波的1/4对称性的查找表方法来实现正弦函数

  • exponentialLookup:该模块通过利用波的1/4对称性的查找表方法来实现正弦和余弦函数,只有一个输出端口,同时输出正弦和余弦函数值

  • sinCosLookup :该模块通过利用波的1/4对称性的查找表方法来实现正弦和余弦函数。有两个输出端口,端口1输出正弦函数值,端口2输出余弦函数值

  • preLookup:此模块在断点数据定义的区间集上定位输入信号的位置

  • interpolationUsingPrelookup:此模块使用预先计算的区间索引和比值对表数据执行插值。

  • interpolation1DUsingPrelookup:一维插值

  • interpolation2DUsingPrelookup:二维插值

  • interpolation3DUsingPrelookup:三维插值


signalAttributes(新增14个)

  • weightedSampleTime:使用加权采样时间对输入信号进行加减乘除运算

  • probe:获取输入信号属性:数据宽度和采样时间

  • accelerationConversion :加速度

  • angleConversion:角度

  • angularAccelerationConversion:角加速度

  • angularVelocityConversion:角速度

  • densityConversion :密度

  • forceConversion:力

  • JulianDateConversion:儒略历元和公历日期转换

  • lengthConversion:长度

  • massConversion:质量

  • pressureConversion:压强

  • temperatureConversion:热力学单位

  • velocityConversion:速度


2、行业计算单元


controlSystemToolbox(新增2个)

  • Varying Transfer Function:系数可变的一阶连续传递函数

  • Discrete Varying Transfer Function:系数可变的一阶离散传递函数


powertrainToolbox(新增6个)

  • DCT Controller:双离合器变速器

  • AMT Controller:自动手动变速器控制器

  • Limited SlipDifferential:限滑差速器

  • Open Differential:开式差速器

  • Power Accounting Bus Creator:功率核算总线创建

  • Transfer Case:开式差速器


AerospaceToolbox(新增38个)

  • Quaternion Modulus:四元数的模

  • Quaternion Norm:四元数的范数

  • Quaternion Rotation:四元数旋转

  • Quaternion Normalize:四元数归一化

  • Quaternion Multiplication:四元数乘积

  • Quaternion Division:四元数除法

  • accelerationConversion :加速度单位转换

  • angleConversion:角度单位转换

  • angularAccelerationConversion:角加速度单位转换

  • angularVelocityConversion:角速度单位转换

  • densityConversion :密度单位转换

  • forceConversion:力单位转换

  • JulianDateConversion:儒略历元和公历日期转换

  • lengthConversion:长度单位转换

  • massConversion:质量单位转换

  • pressureConversion:压强单位转换

  • temperatureConversion:热力学单位单位转换

  • velocityConversion:速度单位转换

  • Aerodynamic Forcesand Moments:空气动力学力和力矩

  • 4th Order Point Mass Forces (Longitudinal):四阶点质量力(纵向)

  • 4th Order Point Mass (Longitudinal):四阶点质量(纵向)

  • 6th Order Point Mass Forces (CoordinatedFlight):六阶点质量力(协调飞行)

  • 6th Order Point Mass (CoordinatedFlight):六阶点质量(协调飞行)

  • Relative Ratio:相对大气比率

  • Gain Scheduled Lead-Lag:具有增益计划系数的一阶超前-滞后控制器

  • ISA Atmosphere Model :ISA大气模型

  • Lapse Rate Model:温度递减率模型

  • Delta UT1:UT1偏差

  • Earth Orientation Parameters:地球定向参数

  • Geoid Height:大地水准面高度

  • Discrete Wind GustModel:离散风阵模块

  • Horizontal Wind Model:水平风模型

  • Wind Shear Model :风切变模型

  • Three-axis Accelerometer:三轴加速度计模块

  • Three-axis Gyroscope:三轴陀螺仪

  • Estimate Center of Gravity:估算重心

  • Estimate Inertia Tensor:估算惯性张量

  • Besselian Epoch to Julian Epoch:贝塞尔历元转换为儒略历元


vehicleDynamicsToolbox(新增12个)

  • Motorcycle Chain:摩托车链条

  • Rotational Inertia:转动惯性

  • Split Torsional Compliance:分体式扭转柔度

  • Torsional Compliance:分体式扭转柔度

  • Active Differential:主动差速器

  • Independent Suspension - Double Wishbone:双叉臂式独立悬架

  • Independent Suspension - K and C:独立悬架的运动学和柔度测试

  • Independent Suspension - MacPherson:麦弗逊独立悬架

  • Solid Axle Suspension - Coil Spring:带螺旋弹簧的实心轴悬架

  • Solid Axle Suspension - Leaf Spring:带钢板弹簧的实心轴悬架

  • Twist-Beam Suspension - K and C:扭力梁运动学和柔度测试悬挂

  • Vehicle Body 3DOF Dual Track:车辆车身3自由度双轨道


AUTOSAR(新增5个)

  • Curve:近似一维函数

  • Curve Using Prelookup:使用先前计算的索引和分数数值来加速对一维函数的近似

  • Map:近似二维函数

  • Map Using Prelookup:使用先前计算的索引和分数数值来加速对二维函数的近似

  • Prelookup:预查找


3、行业模型


控制系统模型(新增8个)

  • 电加热炉温度PID控制系统设计

  • 电加热炉温度双PID控制系统设计

  • 时延系统的PID控制

  • 双水箱的PID控制系统设计

  • 漆包机烘炉的PID控制系统设计

  • 单级倒立摆的PID控制系统设计

  • 滞后系统的大林控制算法系统设计

  • 基于LQR控制的倒立摆模型


汽车模型(新增3个)

  • 汽车abs控制PID控制

  • 考虑人体和座椅的车体四分之一车体模型

  • 基于PID控制的车体四分之一振动模型


机械系统模型(新增3个)

  • 两个自由度的弹簧减震系统

  • 平面五杆机构运动学仿真

  • 半正弦冲击时正切型非线性包装系统的冲激响应


电力电子系统模型(新增1个)

  • 记忆电阻器模型


二、优化


(一)功能优化

  • 系统文件页替换为系统自带的页面;

  • 变量详情页、变量导入(mat\xlsx\xls\csv\路径管理)支持最大化;


(二)函数优化

  • title,subtitle优化:不支持数字输入

  • thetalim,rlim优化:不支持多个坐标区设置

  • xlim,ylim,clim优化:不支持多个坐标区设置

  • 直角坐标区:坐标轴优化问题

  • xticklabels,yticklabels,zticklabels:1.使这三个函数的入参支持数值数据类型 2. 使这三个函数支持多坐标区输入

  • axes:完善设置当前坐标区的功能

  • bar,barh:输入坐标区加数据提示输入参数过多

  • polarhistogram:完善设置边界绘制直方图功能,解决参数校验顺序引起的错误时刷新问题

  • ScatterObject:完善该对象绘制数据的获取和校验

  • bar3:优化向量绘图,解决属性无法识别

  • 编辑类绘图函数:解决获取图窗时属性判断导致的图形清空问题

  • rlim,thetalim,rticklabels,thetaticklabels功能完善:在默认直角坐标区调用上述几个极坐标区编辑函数未报错

  • vertcat,horzcat完善: 支持并置的数据类型不完整

  • sum完善: 1. 不支持高维 2. 不支持指定 'all' 3. 不支持指定是否忽略 nan

  • mean完善: 1. 不支持高维 2. 不支持指定 'all' 3. 不支持指定是否忽略 nan

  • prod完善: 1. 不支持高维 2. 不支持指定 'all' 3. 不支持指定是否忽略 nan

  • disp改进:1. 会直接显示字符串和字符数组 2. 不显示任何类型的空数组

  • which完善:which 函数可增加返回值

  • load_plugin/unload_plugin改进: 不返回 ans 变量的处理

  • string完善:string 函数对 cell 的处理

  • NameValueParse完善: 键值对解析函数功能增强

  • transpose ctranspose完善: 支持时间日期

  • block完善: 支持时间日期

  • squeeze完善: 支持时间日期

  • meshgrid:完善不支持输入空向量以及非向量数组的问题

  • colorbar优化:colorbar支持新增色条

  • block:优化二维矩阵的单冒号 block set(a(:,exp) 或 a(exp,:))的维度判断逻辑:向量赋值(等号左侧的索引信息也是向量),只需 size 相同即可


(三)北太真元系统仿真工具

  • 系统文件页替换为系统自带的页面;

  • 子系统in/out模块封装进行限定;

  • 模型自动显示名称规则更新;

  • 搜索功能体验优化。


三、BUG修复


(一)功能BUG修复

  • 修复全局查找死机问题;

  • 修复变量详情页所选新建死机问题;

  • 解决全局搜索笔记本显示异常问题;

  • 修复调试无法退出问题;


(二)函数BUG修复

  • 坐标区绘图:R轴次刻度线不闭合

  • colorbar:colorbar设置LimitsMode时闪退

  • meshz:meshz的瀑布数据扩充错误

  • SurfaceObject:1.SurfaceObject设置CDataCDataMapping为direct闪退;2.未对输入复数进行判断

  • contour3:对 contour系列函数的  ZLocation 默认值进行了校正

  • bar:输入复数时绘制错误

  • rlim,thetalim,rticks,thetaticks:输入复数时应该提示不支持复数值

  • convertCharsToStrings:入参为 0 个时报错,与matlab不一致

  • log10: 复数运算结果不对

  • sort:修复 sort 使用 abs 结果可能错误的问题

  • unique:修复缺失的头文件

  • cellfun:实现cellfun多个功能

  • log/sqrt:1.修复低版本编译器报错 2.log(NaN) sqrt(NaN) 等语句产生复数输出结果的问题

  • mod/rem:修复 mod/rem 在输入为大整数时求值出错的问题

  • block:修复“block get,下角标的维度超过数据本身维度且合法时,会抛 std::bad_alloc 异常或闪退,比如 a=rand(2,3);a(1,:,:,:)”的问题

  • brace:修复cell{:}的冒号取值问题,更改1 x 1 数组扩张逻辑

  • readmatrix:为 CSV 文件的读取增加自动识别分隔符的简单算法

  • plus minus mtimes: 无参调用闪退

  • .^ :修复输入空矩阵时,.^ 会闪退的问题

  • rem mod: 处理 inf nan


(三)真元BUG修复

  • 修复某些情况下代数环错误误报问题。


四、已知问题


(一)北太天元

  • 调整分辨率及缩放会出现页面显示问题;

  • 大循环体退出调试缓慢问题;

  • 工作区无法显示被赋值为新增数据类型(如table、datetime、duration、calendarDuration)的变量。


(二)北太真元

  • 北太真元界面缩放显示问题。

  • 如将真元V1.1及之前版本的模型文件导入真元V1.1.1版本的平台内,如果模型中使用了mathFunc模块、trigonometricFunc模块或discreteIntegrator,那么其参数设置界面仍然是旧版本界面,无法设置更新后的功能参数。建议用户从元件库中重新拖入对应模块进行仿真。

  • 使用行业计算单元DCTController进行仿真运算时,可能存在由浮点数误差导致的较大的计算误差。

  • fmu模型导入功能,在ubuntu20.04环境下使用时,fmu模型的生成环境必须是ubuntu20.04环境,并且包含glibc2.31,否则会运行错误。


1179 0 0 收藏 回复

回复

回复

重置 提交