管理员

社区小助手

此用户很神秘,没有留下任何信息

110帖子
136回复
18161积分
ID:000252
英才计划与中学生培养(一):卡脖子形势下,人才培养方向何在?

为切实促进高校优质科技教育资源开发开放,建立高校与中学联合发现和培养青少年科技创新人才的有效方式,中国科协和教育部自2013年开始共同组织实施中学生科技创新后备人才培养计划(简称“英才计划”)。目前,共有15个省市、20所高校等参与培养工作。 

 

在中国数学会2022年学术年会中,中国数学会与英才计划全国管理办公室设置了中学生创新人才培养论坛。参加论坛人员包括英才计划数学学科工作委员会专家,部分“英才计划”高校导师、中学教师、数学学科学生等。

 

北京大学重庆大数据研究院基础软件科学研究中心执行主任、北太振寰创始人卢朓副教授收到中国科协的邀请参加论坛,分享中学生基础学科科技创新后备人才的培养经验与体会。他说他感到非常荣幸。刘东升、陈姝羽等学生取得一系列的成绩,这主要还是他们自己努力的结果。他为他们感到高兴和自豪。

 

卢朓副教授参与了四年的“英才计划”项目,教学相长,对中学生人才的培养工作有了更深的认识,以下是卢朓副教授在论坛上的汇报。

图片1.png


“德、才、学、识”,以德为先

 

结合我自己的科研方向,一方面,我希望能够在“德、才、学、识”四个方面提高学生的综合素质。

 

王梓坤院士的《科学发现纵横谈》是一本很好的科普书,每年我都会推荐给学生。王梓坤院士把治学成才之道归纳成十个字——“理想、勤奋、毅力、方法、机遇”。

 

“德、才、学、识”是对科学工作者的素质的基本要求。德,主要是指政治立场和态度, 指追求真理、热爱真理、严于律己,力求人品高尚。“德、才、学、识”四者不可或缺,而“德”居其首。“才”、“学”、“识”受“德”的制约。

 

我在对学生的培养过程中,把“德”放在首位,让学生了解科技发展的现状以及“卡脖子”问题,让学生立大志,把自己的成长与国家的需要紧密地结合起来。

 

柴静记者对丁仲礼院士的访谈是一段很好的科普节目。在访谈过程中,丁仲礼院士向大家说明,地球平均气温升高2度会导致多少多少物种灭绝是英国的一家科研小组用计算机模拟出来的,并不一定可信。

 

柴静接着说“我们几乎是信仰实验室的所有…”。 可以看到柴静从相信科学已经变成了迷信科学了,实际上科学结论是可以证伪的,并非意味着绝对真理。柴静又进一步说“ ... 得到了主流科学界的认同” 。这说明柴静是迷信西方的科学家权威。

 

丁仲礼院士说:“科学家有主流吗,真理的标准是根据人多人少定的吗?”接着,柴静又说“作为一个科学家不应该从国家利益出发,而应该从整个人类的共同利益出发”。这说明柴静是把西方的利益看成了整个人类的共同利益。

 

实际上,我们如果没有维护占到全球总人数1/5的中国人的利益,就不能说我们维护了全人类的共同利益。在培养学生的过程中,我会建议学生看看这段访谈,告诉他们不要迷信科学、不要迷信权威。

 

西方国家在科技等各个方面卡我们的脖子,破坏全球公平竞争的环境,其目的只是为了他们自己的利益。如果真如他们所愿,我们完全失去了竞争力,最终也会导致他们失去继续努力奋斗的动力,进而影响全人类的科技发展。

 

我们期待的是全人类的团结协作,共同推动科技等各个方面的发展。目前惧怕公平竞争的不是我们,我们没有选择,只能自力更生努力奋斗,争取把核心技术掌握在自己的手里,这样才能使西方看到封锁无效之后,放弃他们使绊子的行动,才能够迎来全人类团结起来为共同利益而努力奋斗的美好局面。

 

培养创新型人才,数学建模至关重要

 

另一方面,我希望能够培养学生的数学建模、数据分析和数值实验的能力。

 

(1)应用数学的价值观的三个方面:理论、交叉和落地

 

对学生的培养主要还是看学生的兴趣,因材施教;另外也结合我自己的专业特点——应用数学方向。早期的数学并没有区分基础数学和应用数学,后来研究方向开始逐步细化,可以分成基础数学和应用数学:基础数学包括代数,几何和分析;应用数学包含概率统计、运筹优化、计算数学、控制论等。

 

应用数学的价值观和基础数学不一样,它具有多元化的价值观。在张平文院士的《数据科学融通应用数学》的报告中给出了三个方面:


首先,应用数学和基础数学一样,也是数学的一部分,也追求简洁与美,我们称之为理论;第二,应用数学和化学、材料等学科交叉,此时应用数学追求的价值观和所交叉的学科的价值观一致;第三,应用数学还有很重要的一个价值观是“落地”,即经济与社会价值。这部分也是非常重要的。

 

现在全世界哪个公司最重要、最厉害?谷歌显然算得其中之一。谷歌起源于PageRank算法。


图片2.png 

扫码查看Page Rank 算法简介视频


我在B站给出的PageRank算法的一个简介,有兴趣的中学生也是能看得懂的。作为谷歌公司的PageRank算法从数学的眼光来说,它不属于原创,从逻辑角度来说却是原创的,即追求经济与社会价值。

 

(2)应用数学的精髓是模型和计算:数学建模的重要性

 

应用数学的精髓是模型和计算。

 

1998年菲尔兹奖得主、英国数学家高尔斯(T.Gowers)认为:数学研究的对象并非真正的现实世界本身,而只是现实世界的数学模型,也就是现实世界的一种虚构和简化的版本。

 

李大潜院士指出:“传统的数学教育往往从基本的概念或定义出发,以简练的方式合乎逻辑地推演出所要求的结论。这固然可以使学生在较短时间内按部就班地学到尽可能多的内容,并体会到一种丝丝入扣、天衣无缝的美感。但是,过分强调这一点,就可能使学生误以为数学这样的完美无缺、无懈可击是与生俱来、天经地义的,反而使思想处于一种僵化状态,在生动活泼的现实世界面前手足无措、一筹莫展,甚至使学生感到学了很多据说非常重要、十分有用的数学知识以后,却不会应用或无法应用,甚至还觉得毫无用处。"

 

数学模型是数学与应用的一个桥梁。李大潜院士还指出“通过数学建模将一个看来与数学无关的现实问题归结为一个合理的数学问题,并利用数学方法成功地予以解决,这是重要的能力与素质。这种能力和素质的培养与提高,对一个合格的数学工作者、特别是应用数学工作者来说,无疑是十分值得重视、应该着重加以培养的。数学建模对培养创新型人才非常重要。” 现在国家已经把数学建模的实践与活动列入全国高级中学的教学计划。

(未完待续)


8 2023-02-27
英才计划与中学生培养(二): 研发国产软件,培养学生建模能力

点击链接查看:英才计划与中学生培养(一):卡脖子形势下,人才培养方向何在?

本文为北京大学重庆大数据研究院基础软件科学研究中心执行主任、北太振寰创始人卢朓副教授在中国科协组织的中学生创新人才培养论坛上的分享。


前文观点

WX20230301-162054@2x.png

      计算是求解数学模型的手段。可是对于中学生来说,很多算法的实现并非易事,因此可选择的可以求解的数学模型就很少了。例如,求函数的最大值的问题,往往只能对二次函数,三角函数来求解,稍微复杂的函数就不会了。


使用数值计算通用软件,消除中学生求解难的疑虑


      其实,很多数学模型对中学生来说还是比较容易掌握的。为了让学生建模的时候可以选择更多的模型,我建议学生使用数值计算通用软件来消除求解难的顾虑。


      借助数值计算通用软件,更有利于培养同学们的数学建模能力,我举几个例子:


      第一个例子是线性规划、二次规划和整数规划之类的模型。实际上,中学生已经接触过这样的问题了,但是往往局限在很小的数值范畴内。这种模型的威力并未得到充分展现。
      

      中学生如果使用数值计算通用软件来求解此类问题,那么就可以把更多精力放在体会这种数学模型的特点上。

化学反应式.png


      我在B站上给出了一个视频,展示了如何使用数值计算通用软件求解整数规划问题,我相信感兴趣的中学生可以很快学会使用计算机求解整数规划问题的方式。

      第二个例子与使用常微分方程的初值问题建模有关,这个可以和物理学科结合起来。我们可以通过测量物体在不同时刻的位移,把数据画出来,借助于常微分方程给出物理运动规律,这样就是在重走牛顿当年的发现之路。至于常微分方程初值问题的求解则可以借助数值计算通用软件来完成。

      第三个例子是关于机器学习和人工智能的算法。

朴素贝叶斯算法.png

      我在B站上给出了如何使用数值计算通用软件读取Excel数据,然后如何使用朴素贝叶斯来判断西瓜好坏的例子,也可以供中学生学习。

      总之,我建议中学生借助数值计算通用软件来了解读取数据、数学建模、数值计算以及计算结果的可视化等环节,然后选取自己感兴趣的部分多下功夫,其它环节则可以通过数值计算通用软件具有的内置函数以及插件来完成。

      参加“英才计划”的学生不一定都要找现实中的问题来做数学建模,还可以通过阅读文献来学习。如果对数学或者其他学科的某些定理和知识点感兴趣,可以通过数值计算通用软件来验证,加深对这些定理的理解。 这样的计算不能代替证明,但是帮助大家体会这个知识点的含义。

费马小定理.png

      通过“英才计划”,我希望学生在多个方面有所收获,如:


      1.提升搜集、理解、组织数据的技能,数学建模能力,团队协作能力以及论文写作能力;

      2.培养定量研究发展变化规律的习惯,培养好奇心、想象力、创造力和表达力;

      3.了解计算机算法和原理、数值计算通用软件的基本用法,对数学知识的用途有更深的认识等。


从数值计算通用软件的推荐谈开去:“被禁”以后,我们该做些什么?


      科学计算已经成为与理论和实验并列的科学研究的基本手段。科学计算软件可以分成两种类型:专用型和通用型。

      通用型科学计算软件是开发工业软件的重要基础性工具,长期以来,这一部分的市场由国外公司垄断。通用型数值计算软件就好像连接各个工厂的高速公路一样,是数值计算软件中的基础设施。有了高速公路的连接,工厂的原材料才能运进来,生产的产品才能更方便地送到用户手里。

      在向参加“英才计划”的学生推荐数值计算通用软件时,我最初考虑的是MATLAB。但由于这是一款商业软件,我担心购买软件会给学生带来额外的经济负担,所以并未选择。

      2020年,美国商务部宣布新增33 家中国公司及机构列入 “实体清单”,中国大陆共有 13 所高校被列入该清单,分别为哈尔滨工业大学、哈尔滨工程大学、中国人民大学、北京航空航天大学、西安交通大学、西北工业大学、四川大学、电子科技大学、湖南大学、国防科技大学、同济大学、南昌大学、广东工业大学。MATLAB 所属公司 MathWorks 中止了对以上高校的正版授权。

      这让我为当初自己的选择感到庆幸,也让很多人意识到通用型数值计算软件是一个“卡脖子”技术,没有这个技术,我们自己开发的专用软件或者算法就无法得到广泛的应用。但当时我仍想着:好在,我们还有Python可以使用。

      可在俄罗斯-乌克兰战争爆发后,据相关报道显示“目前已经有多达30个开源项目加入了对俄罗斯的抵制,其中甚至包括亚马逊(AWS Terraform modules)和Oracle等科技巨头的项目,也不乏MongoDB、pnpm、es5-ext、Drupal、Redis Desktop Manager等流行项目”。这让我进一步认识到:这类开源软件的主导权如果是掌握在别人的手里,仍然蕴藏着危险。

      事实上,中国的基础数学和理论数学研究在国际上还是处于领先地位。在涉及具体的算法或专用型数值计算软件领域,我们中国的科学家也取得了很好的成绩,在有关算法的顶级杂志上,中国人发表论文的数量和质量都位于前列,有很多算法被国外的通用型数值计算软件集成,得到了广泛的应用。

      但是我们缺乏像MATLAB这样的数值计算通用软件。这是为什么呢?

      因为,通用型的数值计算软件的开发需要耗费大量的时间,需要投入大量的人力物力,无法在短期内做出高精尖的成果。研发过程中需要有关键的技术基础,要掌握核心关键的规律、知识和方法,这些都只能通过“学中干”和“干中学”相结合才能获得。

      工业软件可以说是现代产业体系之魂。目前,欧美的工业软件几乎已经渗透了所有工业领域的核心环节。发展具有自主知识产权的工业软件刻不容缓,对掌握我国产业发展的主导权,增强工业体系的韧性和抗打击性都非常重要。

      而通用型数值计算软件的研发意义尤为重大:它不仅自己就是一个工业软件,还能够成为其他工业软件的底座,防止国产工业软件被釜底抽薪;同时,数值计算通用软件也是一个非常好的创新平台;正如前文所述,此类软件对于人才培养也至关重要。

      通用型数值计算软件的成功研发,将是对人类文明的贡献,也是国家软实力的标志之一。因此,虽然困难重重,我和其他志同道合的伙伴们还是决心开发具有自主知识产权的通用型数值计算软件,破解“卡脖子”问题。

      (未完待续)


作者简介

图片1.png


1 2023-03-01
【必看】北太天元软件新手指南

一、软件安装

点击下方链接,选择适合的版本安装即可,目前MAC、麒麟系统等正在适配中,敬请期待!

北太天元软件下载安装与激活


二、北太天元学习文档

以下为北太天元的官方文档,可按需查阅:

1、北太天元科学计算与系统仿真软件白皮书

2、北太天元SDK文档


三、新手入门

对于一些函数以及软件操作使用的学习,可以使用软件内的【帮助文档】

帮助系统.png


四、常见问题Q&A

大家使用北太天元软件常问问题已整理成Q&A,供大家学习参考:

常见问题Q&A

若文档里的内容仍没有为您答疑解惑,可以在社区发帖或在该贴下评论求助。


本帖会持续更新相关学习文档及操作指引手册,方便大家查阅学习,请持续关注哦~

0 2023-03-14
北太天元助力华中杯 | 第十五届华中杯建模大赛开启报名

第十五届“华中杯”大学生数学建模挑战赛(以下简称竞赛)于3月13日正式开启报名。举办竞赛的目的在于提升学生对数学科学理论及应用价值的认识,培养学生的创新意识与团队精神。竞赛由湖北省工业与应用数学学会主办,泰迪智能科技(武汉)有限公司承办,武汉大学、华中科技大学、华中师范大学、中南财经政法大学、华中农业大学、中国地质大学、武汉理工大学、湖北大学、武汉科技大学协办。


北太振寰(重庆)科技有限公司等支持单位将协助竞赛的开展,而北太天元数值计算通用软件(以下简称“北太天元”)将为竞赛提供软件支撑。


一、竞赛特色

紧跟时代发展,丰富赛题类型。紧跟大数据、人工智能时代,既突出传统模式,又兼顾时代特色。在赛题设置上,既有传统数学理论与方法的运用,也有当前热点研究与应用的探索。


重视赛前辅导,强调赛后总结。利用好互联网在线会议的便利条件,面向所有报名参赛师生,开展赛前在线辅导,赛后赛题分析交流活动,进一步提升竞赛的服务功能。


定位国赛预演,突破区域壁垒。北太天元作为国赛推荐的国产通用型科学计算软件,可支持高校教学、科研和竞赛等场景。“华中杯”组委会将提供免费(不得作为商用)下载北太天元的链接,并提供相应的竞赛辅导


二、参赛对象

所有普通高校全日制在校生。以队为单位报名参赛,每支参赛队伍不超过3个人(须来自同一学校)。每支队伍可以指定1名指导老师。


三、竞赛时间安排

报名时间:2023年3月13日—4月29日

比赛时间:2023年4月30日20:00—5月3日20:00

作品评阅:2023年5月4日—5月22日

成绩公示:2023年5月23日—5月29日

成绩发布:2023年5月30日


四、竞赛奖励

1、特等奖每道题不超过两支队伍,每支队伍获得奖金5000元(需扣除个人所得税),竞赛官网视频资源免费学习一年,荣誉证书(电子证书);

2、一等奖不超过报名队数的5%,竞赛官网视频资源免费学习一年,荣誉证书(电子证书);

3、二等奖不超过报名队数的10%,竞赛官网视频资源免费学习三个月,荣誉证书(电子证书);

4、三等奖不超过报名队数的20%,荣誉证书(电子证书);

5、比赛还将根据各校参赛情况颁发优秀组织单位奖(电子证书)、优秀指导老师奖(电子证书)、优秀组织社团奖(电子证书),提供同花顺金融数据终端、数据接口等账户若干免费使用六个月;


使用北太天元软件还将有以下特别奖励:

奖励.png


五、相关链接

“华中杯”竞赛通知

“华中杯”报名入口



0 2023-03-14
干货!数学建模常见赛题类型及建模方案

总体来说,数学建模赛题类型主要分为:评价类、预测类和优化类三种,其中优化类是最常见的赛题类型,必须要掌握并且熟悉。

如下图所示:主要分为评价类,预测类和优化类问题。

数学建模赛题类型.png


1、评价类赛题

综合评价问题是数学建模问题中思路相对清晰的一类题目,从每学期的综合测评、旅游景点的选择到挑选手机,评价类问题在生活中也是处处存在。


① 建模步骤如下图所示:

流程图.jpg


② 主客观评价问题的区别

●主客观概念主要是在指标定权时来划分的。主观评价与客观评价的区别是,主观评价算法在定权时主要以判断者的主观经验为依据,而客观评价则主要基于测量数据的基本特性来综合定权

●定权带有一定的主观性,用不同方法确定的权重分配,可能不尽一致,这将导致权重分配的不确定性,最终可能导致评价结果的不确定性。因而在实际工作中,不论用哪种方法确定权重分配,都应当依赖于较为合理的专业解释。

一般来说,客观定权法更为准确,但是会很麻烦。


③ 如何选择合适的评价方法

在评价类问题的分析中,如何选择合适的评价方法是决定评价结果好坏的关键因素,因此需要洞悉各常用评价方法的基本特性和使用条件才能顺利答题。

流程图1.jpg


2、预测类赛题

① 预测类赛题的基本解题步骤


●预测就是根据过去和现在去估计未来,预测未来。统计预测属于预测方法研究范畴,即如何利用科学的统计方法对事物的未来发展进行定量推测

●基于数学建模的预测方法种类繁多,从经典的单耗法、弹性系数法、统计分析法,到目前的灰色预测法。当在使用相应的预测方法建立预测模型时,我们需要知道主要的一些预测方法的研究特点,优缺点和适用范围


流程图2.jpg


② 预测类问题的区别


●预测类问题分为两类:

●一类是无法用数学语言刻画其内部演化机理的问题;

●另一类是可以通过微分方程刻画其内部规律,这类问题我们称为机理建模问题,通过微分方程建模求解。


③ 如何选择合适的预测方法


●在预测类问题的分析中,同样受到预测条件的限制(如数据量的大小、变量之间的关系等)不同的预测方法可能会产生不同的结果,因此需要根据实际情况来选择。

流程图3.jpg


3、优化类赛题

① 优化类赛题的基本解题步骤


●优化类问题是从所有可能方案中选择最合理的方案以达到最优目标。在各种科学问题、工程问题、生产管理、社会经济问题中,人们总是希望在有限的资源条件下,用尽可能小的代价,获得最大的收获(比如保险)。


●优化类问题一般的解题步骤为:

(1)首先确定决策变量,也就是需要优化的变量;

(2)然后确定目标函数,也就是优化的目的;

(3)最后确定约束条件,决策变量在达到最优状态时,受到那些客观限制。

流程图4.jpg


② 如何选择合适的优化方法


优化类问题中常用的数学模型和求解算法,其中包括线性规划、非线性规划、整数规划、多目标规划等。在模型求解中,对于凸优化模型,可以采用基于梯度的求解算法;对于非凸的优化模型,可以采用智能优化算法。

流程图5.jpg



(本文转自公众号“数学建模老哥”,给大家提供一些思路,希望对同学们有帮助~)

0 2023-03-20
北太天元助力数维杯 | 2023年第八届数维杯报名已开启

“数维杯”大学生数学建模挑战赛(以下简称“数维杯”)是由内蒙古创新教育学会、内蒙古基础教育研究院主办,全国各高校大学生参与的交叉学科比赛。“数维杯”每年举办两场,上半年为“数维杯”国赛(5月),下半年为“数维杯”国际赛(11月)。经过七年多的发展,竞赛已成为国内极具影响力的基础学科与应用科技的赛事。


2023年,北太振寰(重庆)科技有限公司作为支持单位将协助“数维杯”的开展,而北太天元数值计算通用软件(以下简称“北太天元”)将为竞赛提供软件支撑。


1、走近“数维杯”

“数维杯”已成为继数学建模国赛和美赛之后的第三大全国性数学建模赛事,已被多所高校推广甚至列为国家级赛事选拔赛。


“数维杯”将竞赛与教学相结合,提供评阅标准及赛题分析,并为赛后论文提供评分和评阅意见,使学生逐步积累数学模型及参赛经验。同时,大赛还面向所有参赛队伍开展数学建模赛前培训指导及专题讲座,帮助参赛者快速提高数学建模技能。


竞赛面向在校专科生、本科生、研究生开发,每组参赛人数为1-3人,每名同学只能参加一个小组,允许跨校组队。


竞赛时间安排如下:

报名截止时间:2023年5月12日7:00

竞赛开始时间:2023年5月12日8:00

竞赛结束时间:2023年5月15日9:00

竞赛结果公示时间:2023年7月中旬或之前


报名入口及竞赛详细情况:http://www.nmmcm.org.cn/match_detail/26


2、关于北太天元

北太天元是面向科学计算与工程计算的国产通用型科学计算软件。

20230323-100521.png

本软件具有自主知识产权,提供科学计算、可视化、交互式程序设计,具备丰富的底层数学函数库,支持数值计算、数据分析、数据可视化、数据优化、算法开发等工作,并通过SDK与API接口,扩展支持各类学科与行业场景,为各领域科学家与工程师提供优质、可靠的科学计算环境。


目前,北太天元核心数学函数替换率达到72%,功能函数替换率达34%,可支持高校的教学科研工作。

20230323-101023.png
20230323-101030.png


3、北太天元助力“数维杯”

使用北太天元参赛,将有机会获得特别奖励。

screenshot-20230323-102030.png


北太天元将为“数维杯”参赛队伍免费提供软件支撑,并在赛前为参赛学生提供软件使用教程或培训,助力参赛队伍更快熟悉北太天元的功能与操作,提升数学建模能力。


为帮助同学们更好地完成“数维杯”赛前准备,本社区现已推出数模竞赛专栏,专栏将逐步更新数模竞赛的干货知识,如往年赛题解析、论文写作技巧等。


同时,同学们还可以在本社区自由讨论,在交流备赛经验的过程碰撞出新的火花,逐步提升自身能力。我们也会有专业的技术开发人员为大家答疑解惑,欢迎各位同学积极发帖~


0 2023-03-23
数模竞赛组队与分工|你是队伍里的哪类人才?

在数学建模大赛中,团队协作是很重要的一部分。在有限的三天时间里,需要完成研究题目、确定选题、查找资料、分析问题、撰写论文、构建模型等事项,除非你的个人能力很优秀可以一个人做完全部,否则合作才是最好的选择。那么,结合自身情况,该选择什么样的人组队合作呢?


关于数模组队,有不少传说中的经典配置,比如:

“建模手+编程手+论文手”

“数学专业+计算机专业+金融专业”

“男女搭配,干活不累,两男一女组合”

......


其实前两者都是从专业技能分工的角度去考虑,而后者是从团队成员配合度的角度去考虑,其实两个维度都挺重要的。


1、专业技能分工角度

“建模手+编程手+论文手”是数学建模组队的一个经典配置,因为在答题过程中可以简单的把事情分为模型搭建、模型实现、论文写作三个部分。


建模手主要就是负责模型搭建,提供团队对问题的解决思路和方法。他会对优化模型、预测模型、分类模型、评价模型等比较熟悉,可以根据实际的题目来选择适合的模型去解决问题。这方面数学专业的同学就会比较有优势。


编程手最好至少掌握一门编程语言,能够通过软件对模型进行模拟、求解和检验。当然,在编程的过程中也需要对模型有一定的理解,这样才能在最大程度上复现模型并不断调优。在这方面计算机专业的同学会比较有优势,现学编程语言上手也会快一些。同学们在建模的时候可以尝试使用北太天元,它对建模编程小白来说也很友好,简单易上手,也可以在社区里找到学习资料。


论文手需要对团队的前进方向有清晰的把握,通过准确的文字、图表对模型进行展示,把团队的研究成果有条理有逻辑的表述出来。很多人调侃论文手就是来打酱油的,但其实论文是很重要的一部分,因为最后评阅老师看的就是你的论文。论文手可以把近五年的比赛优秀论文都看一遍,并选同类型问题的几篇精读,学习论文的思维。当然,如果论文手精通LaTex也是一个加分项,不会的话用Word也完全够用了。学金融专业的同学会上数学分析、统计软件相关的课程,平时也需要写学科论文报告,所以在组合配置中,除数学专业、计算机专业的同学外,会推荐金融专业的同学。


从以上描述中就可以看出,在实际分工中不可能如此界限分明,大家多多少少都会有一些交叉的部分,建模手需要把自己的理解通过文字、公式准确的传达给论文手,而论文手反过来也要能快速理解建模手的意图。建模手与编程手,编程手与论文手之间也是这样的,需要不断沟通互相理解。


其实每个人都应该具备基本的建模、编程、写作能力,但每个人的侧重点又不同,这才是绝佳组合。


2、成员配合度角度

除了专业能力外,队友的性格也同样重要,找到合得来的队友才会有1+1>2的效果。


选择靠谱,责任心强的队友。不会出现半途而弃、找不到人的情况,交给他的事情可以尽他最大努力做好。


选择性格好,不强势的队友。一个队里最好不要出现两个及以上很强势的人,这样在出现不同意见时容易出现僵持不下谁也不服谁的情况,最后听谁的还没理出来比赛时间已经结束了。


选择目标一致的队友。在组队前就沟通好参赛是为了什么,如果都是为了拿奖那大家都会很用心,但如果有人只是没参加过想体验一下,那很有可能出现有人付出多,有人付出少的情况。


选择沟通能力强的队友。团队协作中沟通真的是很重要的一部分,有个沟通能力强的人,即使另外两个人不怎么会表达,沟通能力强的人也能从中做调解,让大家都能快速领会对方想表达的,不把时间浪费在沟通上。




说了这么多,你是队伍里的哪类人才呢?可以在评论区告诉我。祝大家都能找到心仪的队友,还没找到队友的也可以在社区里招募哦~

关于找队友方面还有什么补充的或者踩坑经历也欢迎同学们留言讨论

0 2023-03-23
软件问题反馈收集贴

欢迎各位朋友在此贴下回复反馈问题,您的每一条反馈都是在为国产基础软件添砖加瓦。


若问题较为复杂,涉及到相关代码,建议直接在“问题答疑”板块发帖反馈。


若通过在该贴下回复来反馈问题,请参考下方问题反馈模版:

问题类型:计算问题/功能问题/ 使用问题/未支持的函数/未实现的功能/其他

使用的操作系统:Windows/Ubuntu/Deepin/统信UOS

问题描述:

问题截图:


小tips:提问前可以先看看是否已有类似问题并已得到解答,避免重复提问哦~


再次感谢您为国产基础软件做出的贡献!

51 2023-04-06
英才计划与中学生培养(三):让更多拔尖人才脱颖而出!

点击链接查看:

英才计划与中学生培养(一):卡脖子形势下,人才培养方向何在?

英才计划与中学生培养(二): 研发国产软件,培养学生建模能力

本文为北京大学重庆大数据研究院基础软件科学研究中心执行主任、北太振寰创始人卢朓副教授在中国科协组织的中学生创新人才培养论坛上的分享。

前文观点.png

使用国产科学计算软件,为更多中学生插上探索的翅膀

      参与“英才计划”的学生会愿意使用一个新的软件吗?我心里也在打鼓。


      可是,当我把开发具有自主知识产权的数值计算通用软件的意义向学生讲了之后,他们都非常支持,这令我非常感动。数值计算通用软件的开发离不开用户的试用和反馈,我指导的几位学生属于最早一批的软件测试者。他们的反馈对软件的开发和完善帮助很大,为国产科学计算软件的成功研发作出了贡献。


      开发国产数值计算通用软件是在攻克“卡脖子”问题,是在践行总书记的号召,是重走“把核心技术牢牢掌握在自己手里”的长征。路险且阻,鲜有掌声,“英才计划”学生们的支持和贡献弥足珍贵,谢谢他们!


      实际上,学生的上手速度还是很快的,在我介绍使用数值计算通用软件编程的基本知识,如程序的三大基本结构(顺序、循环、分支)之后,学生通过自学很快就学会了编制脚本代码来实现一些算法。


      如图中所示,于铭轲同学编制的牛顿法求解一元函数的根的脚本代码,对一些实系数的一元五次多项式求根问题成功求得了数值解。

1.png

 我自己也应用国产科学计算软件在北大上了一门面向全校本科生的公共课:《数值方法:原理、算法及应用》。
      

      目前我准备的讲解视频除了涉及插值、数值积分、FFT之外,还包含了模拟退火、遗传算法、线性规划、整数规划、RSA加密、随机共轭梯度法、Dijkstra算法、Floyd算法、另外还包含了一些机器学习算法,如 K均值聚类,K近邻,支持向量机,朴素贝叶斯,决策树,关联规则挖掘,pagerank,期望最大化,主成分分析等。

2.png

扫码进入个人主页

查看相关视频

       这些算法也有适合中学生的,比如说中学生的课本上都出现过的线性规划问题、非线性方程求解,还有插值与函数拟合的问题。我觉得学生可以弄明白这一类的建模方法,并使用国产科学计算软件来求解,这将使得学生获得极大的成就感。


“高中+高校+企业”,三方合作促进更多学生成才

      最后,关于中学生人才培养我有两个不成熟的建议:1. 让更多感兴趣的学生参与类似“英才计划”这样的项目,2. 让企业、高中、高校三方结合起来。


      高中阶段是属于基础教育范畴,要为人的成长发展奠定基础。但目前很多学生在高中还是很迷茫的。“学习数学、物理有什么用呢?”很多学生往往回答不出来,或者只能回答“为了考大学”。


      而“英才计划”等类似的活动,可以让更多学生熟悉科研的全过程,激发学生自主学习的欲望,帮助学生找到自己真正热爱的方向,也就更充分地发挥了教育的发现、唤醒和激励作用。

      目前“英才计划”把高中和高校连接起来,确实起到良好的效果。那如果把高中、高校和企业三方连接起来呢?

      这样一来,能让学生了解职场工作环境,同时培养职业技能,建立职业人脉,让学生认清自己的能力和爱好,将来在进入大学能够更好地选择合适的专业。

      在美国,不少高中的学生已经接触了编程,高中和企业进行了紧密合作,为每位参与的学生安排实习机会。他山之石,可以攻玉。企业和高中的合作项目能够引导学生了解计算机技术和算法,去了解算法背后的数学原理,去了解这些算法的应用以及给生活带来的便利。家庭贫困的学生还能通过这些活动获得一定的报酬。短期内,企业虽然没有获得太多的收益,但长远来看,为企业的未来培养了高素质的人才,更为社会和国家的发展作出了贡献。

      对于爱好广泛、喜欢交流的同学而言,还可以了解到应用工程师不仅仅是坐在办公桌前写代码,还会和客户交流需求,帮助客户认清他们真正的需求,还需要和同事交流协作,还需要为企业的产品的功能编写通俗易懂、生动有趣的介绍。这些工作都充满了与人交流的乐趣。

      当学生看到自己的编程技能同样能为企业所用,他们一定会感到非常振奋。例如在图像识别方面的很多算法,可以被应用在自动驾驶汽车和医疗诊断等领域。这些应用带来的好处都是高中学生能够理解的,会让高中学生获得巨大的成就感和价值感。

      在此,真诚地希望更多的学生能够获得更多的成长机会,成长为我国科技和经济发展需要的优秀人才!

      (全文完)




0 2023-04-10
数维杯培训预告:北太天元在数模竞赛中的应用

培训视频已更新,请点击链接查看:第八届数维杯培训视频:北太天元在数模竞赛中的应用


为更好的帮助大家使用北太天元参加数学建模竞赛,我们将进行“北太天元在数模竞赛中的应用”的主题培训。


〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️

时间:4月24日18:00-19:30

地点:钉钉线上会议

讲师:北太天元资深开发工程师高兆坤

〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️


扫海报二维码进群蹲直播,欢迎大家届时参加!


ChatGPT智能应用直播预告手机海报.jpg


此次培训与“数维杯”联合举办,使用北太天元参加数模竞赛将有机会获得特别奖励哦~

1.png

0 2023-04-23
数模干货|优化问题的常见算法总结

      “优化”是生活中经常使用的词:开车时希望能在安全的前提下以最短时间到达目的地;双11做功课考虑各种优惠活动,希望获得最大优惠;超市进货时需要考虑动销存,最大化提高物品周转效率。 这些问题都是“最优化问题”,也是数学建模中的典型问题,是各大数学建模比赛里的常客。


      优化题型有三要素:决策变量、目标函数、约束条件。

      (1)决策变量:是决策者可以控制的因素,例如根据不同的实际问题,决策变量可以选为产品的产量、物资的运量及工作的天数等。

      (2) 目标函数:是以函数形式来表示决策者追求的目标。例如目标可以是利润最大或成本最小等。

      (3) 约束条件:是决策变量需要满足的限定条件。


      历年国赛优化问题:

国赛.png


      优化问题的出发点是系统思维,其基本思路是在一定的约束条件下,保证各方面资源的合理分配, 最大限度地提升系统某一性能或系统整体性能,最终实现最理想结果。对于这类问题,想要建立并求解数学模型,可以参考以下思路:

      (1)明确目标,分析问题背景,确定约束条件,搜集全面的客观数据和信息。

      (2)建立数学模型,构建变量之间的数学关系,设立目标函数。

      (3)分析数学模型,综合选择最适合该模型的优化方法。

      (4)求解模型,通常借助计算机和数学分析软件完成。

      (5)对最优解进行检验和实施。


      PS.北太天元内已有优化工具箱optimization,可以调用工具箱解决优化类问题。

工具箱.PNG


      下面给大家分享几种数学建模中常用优化算法:


      1、线性规划

      在人们的生产实践中,经常会遇到如何利用现有资源来安排生产,以取得最大经济效益的问题。此类问题构成了运筹学的一个重要分支—数学规划,而线性规划(Linear Programming 简记 LP)则是数学规划的一个重要分支。

      1.1 用北太天元求解线性规划问题

      北太天元内已有优化工具箱optimization,其中的linprog等相关函数可用于求解线性规划问题。

linprog.png

      1.2 线性规划特点

      优点:

      (1)作为经营管理决策中的数学手段,在现代决策中的应用非常广泛。

      (2)有统一算法,任何线性规划问题都能求解,解决多变量最优决策的方法。

      (3)训练速度快。

      (4)预测速度快,可以推广到非常大的数据集,对稀疏数据也很有效。

      缺点:

      (1)对于数据的准确性要求高,只能对线性的问题进行规划约束,而且计算量大。

      1.3 相关问题

      运输问题(产销平衡)、指派问题(匈牙利算法)、对偶理论与灵敏度分析、投资的收益和风险。


      2、整数规划

      规划中的变量(部分或全部)限制为整数时,称为整数规划。若在线性规划模型中,变量限制为整数,则称为整数线性规划。目前所流行的求解整数规划的方法,往往只适用于整数线性规划。目前还没有一种方法能有效地求解一切整数规划。

      2.1 用北太天元求解线性混合整数规划问题

      可在北太天元内调用优化工具箱optimization,使用intlinprog等相关函数求解线性混合整数规划问题。

image.png

      2.2 整数规划的分类

      如不加特殊说明,一般指整数线性规划。对于整数线性规划模型大致可分为两类:

      (1)变量全限制为整数时,称纯(完全)整数规划。

      (2)变量部分限制为整数的,称混合整数规划。

      2.3 整数规划特点

      原线性规划有最优解,当自变量限制为整数后,其整数规划解出现下述情况:

      (1)原线性规划最优解全是整数,则整数规划最优解与线性规划最优解一致。

      (2)整数规划无可行解。

      (3)有可行解(当然就存在最优解),但最优解值变差。

      整数规划最优解不能按照实数最优解简单取整而获得。

      2.4 求解方法分类

      (1)分枝定界法—可求纯或混合整数线性规划。

      (2)割平面法—可求纯或混合整数线性规划。

      (3)隐枚举法—求解“0-1”整数规划:过滤隐枚举法;分枝隐枚举法。

      (4)匈牙利法—解决指派问题(“0-1”规划特殊情形)。

      (5)蒙特卡洛法—求解各种类型规划。


      3、非线性规划

      如果目标函数或约束条件中包含非线性函数,就称这种规划问题为非线性规划问题。一般说来,解非线性规划要比解线性规划问题困难得多。而且,也不象线性规划有单纯形法这一通用方法,非线性规划目前还没有适于各种问题的一般算法,各个方法都有自己特定的适用范围。

      3.1 线性规划与非线性规划的区别

      如果线性规划的最优解存在,其最优解只能在其可行域的边界上达到(特别是可行域的顶点上达到);而非线性规划的最优解(如果最优解存在)则可能在其可行域的任意一点达到。

      3.2 相关问题

      无约束问题(一维搜索方法、二次插值法、无约束极值问题的解法)、约束极值问题(二次规划、罚函数法)、飞行管理问题


      4、动态规划

      动态规划(dynamic programming)是运筹学的一个分支,是求解决策过程(decisionprocess)最优化的数学方法。例如最短路线、库存管理、资源分配、设备更新、排序、装载等问题,用动态规划方法比用其它方法求解更为方便。

      虽然动态规划主要用于求解以时间划分阶段的动态过程的优化问题,但是一些与时间无关的静态规划(如线性规划、非线性规划),只要人为地引进时间因素,把它视为多阶段决策过程,也可以用动态规划方法方便地求解。应指出,动态规划是求解某类问题的一种方法,是考察问题的一种途径,而不是一种特殊算法(如线性规划是一种算法)。因而,它不象线性规划那样有一个标准的数学表达式和明确定义的一组规则,而必须对具体问题进行具体分析处理。因此,在学习时,除了要对基本概念和方法正确理解外,应以丰富的想象力去建立模型,用创造性的技巧去求解。


      5、多目标规划

      多目标规划已经应用到科学的许多领域,包括工程、经济和物流,在两个或更多冲突的目标之间存在取舍时,需要采取最优决策。

      解决多目标规划问题的方法:

      (1)将多目标化为单目标 (给多个目标赋予权重)

      (2)保持多目标不变,根据自己的偏好选择解

      实际问题中,目标函数相互冲突是很常见的,例如购买汽车时,要求花费少且舒适度高或者要求性能好油耗低,这种问题并没有绝对最优解(因为并没有确定多个目标的权值),但是我们可以根据自己的需要选择一个相对好的(达到我们想要的最佳平衡)。为了寻求这种“最佳平衡”,可以采用算法帕累托最优(Pareto optimal)。


      以上部分内容引用公众号“科研交流”,希望对大家有帮助,觉得有用就点个赞吧。小助手会不定期更新数学建模干货,可以多多关注哟。

0 2023-05-06
北太振寰与武汉大学共同开展北太天元产学合作协同育人项目

       加强基础研究,归根结底要靠高水平人才。为培育应用数学与相关专业的交叉复合型紧缺人才,培养高校学生底层研发思维,北太振寰(重庆)科技有限公司联合武汉大学开展2023年北太天元产学合作协同育人项目,共同基于国产通用型科学计算软件在相关专业开展教学改革与人才培养,服务国家战略科技力量建设。


11.png
   

       2023年北太天元产学合作协同育人项目共设立“科学计算应用与实践”系列示范课程建设项目、实习与实践基地建设项目、“北太天元数模之星”大学生数学建模竞赛应用项目、北太天元师资培训项目。


项目概况

       01“科学计算应用与实践”系列示范课程建设项目

       该项目将基于北太天元数值计算通用软件建设产教融合示范课程和实训案例,升级理工科学院数学类相关课程的原有知识体系与实践内容,替换基于国外软件编制的相关教材等教学资料,旨在打造高质量、可向全国高校共享的课程教案和教学改革案例。


       02 实习与实践基地建设项目

       校企双方共同搭建基于国产化平台的实习实践基地、创新产教协同育人方式,通过“校内学习+竞赛辅导+企业实训”的一体化实践活动,建设新型师资队伍、协助高校培养具有底层研发思维的科技型人才,致力于提升高校的教学实践条件和水平。


       03“北太天元数模之星”大学生数学建模竞赛应用项目

       该项目旨在激励大学生学习数学的积极性,提高学生数学建模的创造力、数学与计算机技术领域的综合能力,培养学生解决实际问题的综合能力,推动高校数学教学体系、教学内容和方法的改革。


       04 北太天元师资培训项目

       教师是发展高水平教学的中坚力量,对于提高学生综合素质和实践能力至关重要。双方将基于“科学计算应用与实践”系列示范课程建设项目,开展教师培训与交流活动,为教师提供新的教学思路和方法,提高教师科研、教学水平,助力培养新时代科学技术人才。


      项目概况经学校教师自愿申报、专家联合评审,拟立项结果如下:

22.png

立项结果已在北太振寰官网公示



       校企合作共育珞珈英才,产教融合助推科技发展。下一步,北太振寰将与武汉大学切实推进北太天元产学合作协同育人项目落地,共同建设系列示范课程,搭建实习实践基地,培育新时代高校学生、教师人才队伍。

       应对国际科技竞争、实现高水平自立自强,需要切实加强基础研究。北太振寰将持续深化与国内重点高校的战略合作,围绕具有完全自主知识产权的国产通用性科学计算软件平台,共同推进协同育人、产教融合的合作创新,支持数学、计算机等重点学科发展;不断探索培育交叉学科人才的新模式,助力强化基础研究后备力量!


2 2023-05-16
数模干货|数学建模评价类算法优缺点总结

      数学建模中,评价类模型是一类比较基础的数学模型之一,往往是对应生活中的一些实际问题。

      最常见的数学模型包括:层次分析法、模糊综合评价、熵值法、TOPSIS法、数据包络分析、秩和比法、灰色关联法。下面就上述几种评价类模型的优缺点进行系统地分析。


      一、层次分析法

      优点:

      1、层次分析法是一种系统性的分析方法。把研究对象作为一个系统,按照分解、比较判断、综合的思维方式进行决策,成为继机理分析、统计分析之后发展起来的系统分析的重要工具。

      2、层次分析法是一种简洁实用的决策方法。既不单纯追求高深数学,还不片面地注重行为、逻辑和推理,而是把定性方法与定量方法有机地结合起来。

      3、层次分析法所需定量数据信息比较少。层次分析法主要是从评价者对评价问题的本质、要素的理解出发,比一般的定量方法更讲究定性的分析和判断。

      缺点:

      1、当指标过多时数据的统计量较大,权重较难确定。

      2、特征值和特征向量的精确求法比较复杂。在求判断矩阵的特征值和特征向量时,所用的方法和我们多元统计所用的方法是一样的。

      3、层次分析法只能从原有方案中进行选取,而不能为决策者提供解决问题的新方案。


      二、模糊综合评价

      优点:

      1、模糊评价通过精确的数字手段处理模糊的评价对象,能对蕴藏信息呈现模糊性的资料作出比较科学、合理、贴近实际的量化评价。

      2、模糊评价法的评价结果是一个矢量,而不是一个点值,包含的信息比较丰富,既可以比较准确的刻画被评价对象,又可以进一步加工,得到参考信息。

      缺点:

      1、模糊综合评价的计算复杂,对指标权重矢量的确定主观性较强。

      2、当指标集U较大时,在权矢量和为1的条件约束下,相对隶属度权系数往往会偏小,权矢量与模糊矩阵R不匹配,结果会出现超模糊现象,分辨率很差,无法区分谁的隶属度更高,严重情况甚至会造成评判失败,此时可以使用分层模糊评估法加以改进。


      三、熵值法

      优点:

      1、熵值法是根据各项指标值的变异程度来确定指标权数的,这是一种客观赋权法,避免了人为因素带来的偏差。

      2、是一种客观赋权法,有理论依据,相对主观赋权具有较高的可信度和精确度。

      3、算法简单,实践起来比较方便,不需要借助其他分析软件。

      缺点:

      1、熵值法不能减少评价指标的维数。


      四、TOPSIS法

      优点:

      1、TOPSIS法避免了数据的主观性,不需要目标函数,不用通过检验,而且能够很好的刻画多个影响指标的综合影响力度。

      2、TOPSIS法对于数据分布及样本量、指标多少无严格限制,既适于小样本资料,也适于多评价单元、多指标的大系统,较为灵活、方便。

      缺点:

      1、必须有两个以上的研究对象才可以进行使用。

      2、TOPSIS法需要的每个指标的数据,对应的量化指标选取会有一定难度。

      3、TOPSIS法不确定指标的选取个数为多少才适宜去很好刻画指标的影响力度。


      五、数据包络分析

      优点:

      1、数据包络分析又称作DEA,可用于处理具有多个输入和输出的问题。

      2、数据包络分析对于效率的评估结果是一个综合指标,并且可以用于在经济学中总生产要素的概念。

      3、可以处理间隔数据以及序号数据,且不会受到不同规模的影响。

      4、分析中的加权值是数学的乘积计算,因此摆脱了人类的主观性。

      缺点:

      1、数据包络分析不应该有太多变量。

      2、数据包络分析的输入变量和输出变量之间的关系程度没有考虑。

      3、数据包络分析它产生了有效的边界,这可能相当大。如果样本量太小的话结果不太可靠。


      六、秩和比法

      优点:

      1、秩和比法又称为RSR法,该方法使用了数据的相对大小关系,而不真正运用数值本身,所以此方法综合性强,可以显示微小变动,对离群值不敏感。秩和比法能够找出评价指标是否有独立性。

      2、秩和比法能够对各个评价对象进行排序分档,找出优劣,是做比较,找关系的有效手段。

      缺点:

      1、是排序的主要依据是利用原始数据的秩次,最终算得的RSR值反映的是综合秩次的差距,而与原始数据的顺位间的差距程度大小无关,这样在指标转化为秩次是会失去一些原始数据的信息,如原始数据的大小差别等。

      2、当RSR值实际说不满足正态分布时,分档归类的结果与实际情况会有偏差,且只能回答分级程度是否有差别,不能进一步回答具体的差别情况。


      七、灰色关联法

      优点:

      1、灰色关联法对于数据要求比较低,工作量比较少。

      2、灰色关联法的思路明晰,可以在很大程度上减少由于信息不对称带来的损失。

      缺点:

      1、灰色关联法要求需要对各项指标的最优值进行现行确定,主观性过强。

      2、灰色关联法的部分指标最优值难以确定。



      以上内容转载自公众号“数学建模老哥”

0 2023-05-26
数模竞赛论文写作攻略:每个部分需要注意的细节你都知道吗?

      论文写作是数模竞赛中非常重要的一个环节,最后的竞赛成果通过论文体现,是成绩评定的唯一依据。因此,写好论文十分重要。在撰写论文前,可以先了解论文的评阅原则:假设的合理性,建模的创造性,结果的合理性,表述的清晰性。


      论文的整体结构大致分为摘要、问题重述与分析、模型假设、模型建立、模型求解、模型检验与结果分析、模型评价与改进方向、结论、参考文献、附录这几个部分,本文将按照这几个部分进行介绍,提出一些论文写作中应该注意的问题,以供参考。


一、摘要

      摘要的内容要包括模型的数学归类、问题的求解思路、建模模型的特点(模型优点,算法特点,结果检验,灵敏度分析等)、模型检验与主要结果(结论指定要明确,如果有具体结果要以数值的形式体现)、列出关键字(为检束论文所用,指出论文所涉及问题的特征)。

      摘要的基本结构可参考“随着…,本文依据…,建立××模型进行求解、优化。针对问题一,...,针对问题二,...,针对问题三,...,(最后,给出每个模型的优缺点及评价。)”的形式。摘要需要准确、简明,300字到1000字之间,绝不超过一页纸;条理清晰,合乎语法,字体符合论文格式要求。


二、问题重述与分析

       根据自己对于竞赛题目的理解,用自己的语言来描述所要解决的问题,千万不要复制原问题,在描述过程中可以重点强调要求解的问题,将要解决的问题明确化,也可以增加要研究的问题,或略微改变所研究的问题,添加一些限制条件等(但不要降低问题难度)。最好做一张好看的思路流程图放在论文里面,会很加分。

       除此之外,对问题的实际背景要进行必要的一些叙述,增加对问题的认识;对问题做宏观的分析(着重于数量分析),大体上表述出解决问题的思路和归结成的数学问题的类型。


三、模型假设

      模型假设主要注意以下两点:

      假设的合理性:根据题目条件和要求作出假设,所有的假设都要与题意切合,具有相对的合理性。

      假设的关键性:关键性假设不能缺,不要罗列过多不关键的假设。


      假设的作用是简化问题,明确问题,限定模型的适用范围。必要时可以利用增加假设的方式提高模型的合理性,对于一些比较强的假设,需要增加合理性分析予以说明,基本假设要逐条编号表达(在论文实际用到的假设需要逐条添加)。此外,也要对论文中会出现的变量进行说明:要列出问题中所有的涉及到的固定量和变量的列表(临时性的变量可以不必列入);表中要记录量的符号、说明、单位、以及相互间的简单关系等;量的次序以它在论文中出现的次序为好,后出现的可逐个添加到表;绝对避免一个符号表示不同意义的几个变量。


四、模型建立

      (1)实际问题简化为数学模型

      首先要有数学模型、数学公式、方案等,基本模型要求完整正确且简明;要明确说明简化思想,尽可能完整给出简化后模型。在这个过程中,要讲清楚该模型中的元素和问题中的元素是如何对应的。


      (2)模型要实用、有效

   数学建模是要解决实际问题,不追求数学上的高级、深刻、难度大,在建立模型时应遵循“能用初等方法解决的就不用高等方法;能用简单方法解决的就不用复杂方法;能用被更多人看懂、理解的方法就不用只能少数人看懂、理解的方法”的原则。


      (3)问题分析推导要专业

      分析要中肯、确切;术语使用要专业、内行;使用的原理和依据要正确、明确;表述方法要简明,特别是关键步骤要列出。切忌使用外行话,专业术语不明确,表述混乱和冗长。


五、模型求解

      (1)过程的叙述要尽量规范化,需要说明计算方法或算法的原理、思想、依据、步骤。命题和定理叙述要符合数学表述规范,应给出尽可能严密的论证。

      (2)若采用软件,要说明其作用和名称,或者求解设定的参数,但不能只写“采用××软件求得:”直接出结果。

      (3)计算过程和中间结果可要可不要的,不要列出。

      (4)要有求解方案及计算流程框图,按步骤依次写清楚、详细。每一步都要有总结性语言。

      (5)多做模型仿真与可视化。

      (6)结果表示要集中,一目了然,直观,便于比较分析及评委查找。

      (7)数值结果表示:精心设计表格;可能的话,用图形表示更好。

      (8)重要的且简短程序可放在论文正文中,一般程序应放在附录中。


六、模型检验与结果分析

      (1)对要求回答的问题,必须要明确回答数值的结果和结论,一一列出。

      (2)对几套计算方案算得的答案可列出进行比较,以选择好的计算方案。

      (3)数值型结果可用表格,图形来显示。

      (4)可对问题的解答作定性或规律性的讨论,的结论必须明确。

      (5)对数值结果或模拟结果进行必要的检验。

      (6)对于结果不正确、不合理、或误差大的情况,必须分析原因,并对算法模型进行修正改进。


七、模型评价与改进方向

      (1)要优点突出,但缺点也不回避。

      (2)对修改过的问题的建模可在这部分叙述。

      (3)在叙述推广或改进方向时,不要玩弄标新立异的概念。

      (4)不要写模型的致命缺陷,可以适当写一些对于结果不产生较大影响的缺点,比如精度问题。


八、结论

      总结一下文章所建立的模型以及所对应的求解方法,最后针对每个问题给出一个最终的结果。


九、参考文献

      列出所引用过的重要的他人的论文或资料。特别是对本论文有重大参考意义的材料。参考文献的表达方式要符合规范。


十、附录

      (1)详细的结果及数据表格,可在此列出。绝对不要列出错误的数据,特别不能有与正文中的数据有矛盾的数据。

      (2)在正文中出现的重要的计算结果,在附录中必须能够找到。

      (3)编制的计算程序,计算的详细框图等。

      (4)一些要参考意义的图表。


0 2023-06-26
一文带你了解到底什么是数学建模

一、数学建模简介

数学建模是现代科学和工程技术中不可或缺的一部分。数学建模是一种将现实世界中的问题抽象成数学模型,并利用数学方法求解的过程。它可以帮助我们更好地理解问题的本质,发现问题的规律,并为决策提供依据。在计算机科学领域,数学建模也扮演着重要的角色。


二、相关概念和术语介绍

数据:指用于建模的实际观测或实验结果。

变量:指数据中的一个或多个属性,可以是连续的或离散的。

模型:指对现实世界中某个现象的数学描述。它通常由一组方程组成,可以预测未来的结果。

算法:指解决问题的一种步骤序列。在数学建模中,算法通常用于求解模型中的方程组。


三、数学建模的基本步骤

1.确定问题:明确要解决的实际问题,并将其转化为数学模型。

2.建立模型:根据问题的性质和特点,选择合适的数学模型,并进行建立。

3.求解模型:利用数学方法对模型进行求解,得到问题的解答。

4.验证结果:对求解结果进行验证,确保其符合实际情况。


在数学建模中,常用的数学工具包括微积分、线性代数、概率论与数理统计等。同时,还需要掌握一些常用的数学建模方法,如优化理论、统计分析等。


四、数学建模的方法与技巧

1.确定问题类型与范围

2.选择合适的数学工具与方法

3.数据处理与预处理:在进行数学建模之前,需要对数据进行预处理,包括清洗、转换和归一化等操作。

4.模型优化与改进:在完成模型建立之后,需要对模型进行评估。这可以通过比较不同模型的预测结果来实现。

5.结果可视化与解释


五、数学建模在实际应用中的示例

1.交通流量预测

(1)基于时间序列分析的交通流量预测模型:该模型通过分析历史交通数据,建立时间序列模型,并利用该模型对未来的交通流量进行预测。这种方法可以用于预测短期内的交通流量变化,如节假日、天气变化等。

(2)基于神经网络的交通流量预测模型:该模型利用神经网络对大量的交通数据进行学习,从而建立一个能够自动学习和预测未来交通流量的模型。这种方法可以用于预测长期内的交通流量变化,如城市扩张、道路建设等。

(3)基于灰色系统理论的交通流量预测模型:该模型利用灰色系统理论对复杂的交通数据进行分析和建模,从而预测未来的交通流量。这种方法可以用于处理多种因素对交通流量的影响,如天气、路况、人口密度等。


2.环境污染控制

(1)大气污染物扩散模型:该模型利用数学方法对大气污染物的扩散进行模拟和预测,从而为制定有效的污染控制措施提供依据。这种模型可以用于预测不同气象条件下的污染物扩散情况,如风速、湿度等。

(2)废水处理模型:该模型利用数学方法对废水的处理过程进行建模和优化,从而提高废水处理效率和降低处理成本。这种模型可以用于预测废水处理过程中的各种参数变化,如温度、压力、pH值等。

(3)固体废物管理模型:该模型利用数学方法对固体废物的管理过程进行建模和优化,从而提高废物处理效率和降低处理成本。这种模型可以用于预测固体废物的产生量、储存量和处理量等。


3.金融风险管理

(1)风险管理:数学模型可以帮助银行和其他金融机构更好地管理和控制风险,例如使用VaR(Value at Risk)模型来评估投资组合的风险。

(2)信用风险建模:信用风险是金融领域中的一大挑战,数学模型可以帮助银行和其他金融机构更好地管理和控制信用风险,例如使用Logit模型来评估贷款违约概率。

(3)股票价格预测:数学模型可以帮助投资者预测股票价格的走势,例如使用Black-Scholes模型来计算期权价格。


4.机器学习与人工智能

(1)机器学习中的数据处理、特征工程、模型选择、寻找最佳超参数、模型分析与模型融合等环节都需要数学建模思维。

(2)数学建模可以用于人工智能算法的优化和改进,例如深度学习中的梯度下降算法。

(3)数学建模可以用于人工智能算法的证明和推导,例如使用人工智能技术来帮助证明或提出复杂数学领域的新定理。


除以上举例,数学建模还应用在医学研究、航空航天等多个领域。


六、数学建模入门建议

1.学习基础知识:数学建模需要掌握一定的数学基础知识,包括微积分、线性代数、概率论与数理统计等。可以通过阅读相关书籍和论文,或者参加相关的培训课程来学习这些知识。

2.熟悉数学建模方法:数学建模需要掌握一些常用的数学建模方法,如微积分、优化理论、统计分析等。可以通过阅读相关书籍和论文,或者参加相关的培训课程来学习这些方法。

3.练习解题技巧:数学建模需要具备较强的解题能力,需要通过大量的练习来提高自己的解题技巧。可以通过做一些历年的数学建模题目,或者参加一些模拟赛来提高自己的解题能力。

4.培养团队合作精神:数学建模通常需要组成一个团队来完成任务,因此需要具备良好的团队合作精神。可以通过参加一些团队活动或者组织一些小组讨论来培养自己的团队合作能力。

5.提高英语水平:数学建模中可能会涉及到一些英文文献和资料,因此需要具备一定的英语水平。可以通过阅读英文文献、参加英语角等方式来提高自己的英语水平。



0 2023-06-26
2016-2022年国赛题型及算法模型总结

       以下为近7年的国赛题型和所用到的模型汇总,希望对即将参加2023国赛的小伙伴有所帮助呀!


      一、2022年国赛题型及模型

2022.png


      二、2021年国赛题型及模型

2021.png


      三、2020年国赛题型及模型

2020.png


      四、2019年国赛题型及模型

2019.png


      五、2018年国赛题型及模型

2018.png


      六、2017年国赛题型及模型

2017.png


      七、2016年国赛题型及模型

2016.png


      结合2016-2022年国赛的历年赛题和参考模型不难发现,单目标和多目标优化模型、遗传算法、微分方程属于最常出现的几个模型,优化类问题则是每年必出的赛题,解决优化类问题一般常见的模型包括整数规划、线性规划、非线性规划、单目标和多目标规划、遗传算法等等,大家可以针对性的去准备。



本文转自公众号“数学建模老哥”


0 2023-06-28
全网最全数据可视化基本套路总结,这33种常用图形你都知道吗?

本文来源:公众号“生信宝典”


数模竞赛的论文里常常会遇到需要数据可视化的情况,因为图表能更直观清晰的表述问题。评阅老师需要在短时间内阅读大量的论文,此时就需要简单易懂且漂亮的图表来抓住老师的眼球。


首先从维基百科上搬出数据可视化的概念:

数据可视化是关于数据的视觉表现形式的研究;其中,这种数据的视觉表现形式被定义为一种以某种概要形式抽提出来的信息,包括相应信息单位的各种属性和变量。简单来说,数据可视化就是用图形的方式来表征数据的规律。


首先要明确几点:

1.数据可视化从来不止是表层的东西,数据分析才是核心。就像一个人,不一定长得漂亮人格就高尚,也不一定长得不好看人格就低下。而应该反过来,只有数据分析内涵丰富、价值高,数据可视化才能内容丰富、有价值。

2.在一个看脸的世界,只有把数据可视化做得漂亮才更能吸引别人的注意;只有把数据可视化做得简单易懂,他们才能理解数据分析的内涵。

3.对于数据可视化,最重要的东西从来不是图形、工具、配色这些套路性的东西,而在于创意和灵感。但创意和灵感的前提,还是要以实用为主,所以掌握套路还是很必要的。


本文旨在总结数据可视化基本套路,理解了本文的内容,在此基础上加上自己的创意,数据可视化部分就会变得比较亮眼。熟悉了套路怎么看,再结合专业知识,就可以解释可视化结果了。


常用图形

散点图

散点图.jpg

散点图用来表征两个(如果多个就分面,如上图)数值型变量间的关系,每个点的位置(即x轴和y轴坐标)映射着两个变量的值。当然对于三个数值型变量,也有三维散点图,不过用得不多。


气泡图

气泡图.jpg

在散点图的基础上加一个维度,把各个点的面积大小映射一个新的变量,这样不仅点的位置还有大小表示数据特征。


折线图

折线图.png

把散点图各个散点用折线连接起来就成了折线图,当然不仅仅只是为了好看,当散点越多,折线就越平滑地趋近于曲线,能更加贴切地反映连续型变量的规律。


面积图

面积图.png

把折线图进一步往坐标轴投影就成了面积图,本质其实跟折线图没区别,只是看起来更加饱满一点。


柱状图

柱状图.png

柱状图是一种用得很广泛的图形,它表征分类型变量 vs 数值型变量的关系。如果分类型变量的每一个取值还能继续分类,那么简单的柱状图就变成了复杂的柱状图,每一个类别仅由一根柱变成多根柱,多根柱可以串列,也可以并列。

值得一提的是,柱状图一般需要排序:如果分类型变量是有序的,按照它本身的顺序排列即可;如果分类型变量无序,那么则根据数值型变量的大小进行排序,使柱状图的高度单调变化。(排序的宗旨是直观的表达出想展示的规律)


条形图

条形图.png

只不过把柱状图坐标旋转一下,竖着的变成横着的,这个可根据版面自由选择。上图示例就是串列的堆叠条形图。


南丁格尔玫瑰图

南丁格尔玫瑰图.png

本质还是柱状图,只不过把直角坐标系映射成极坐标系。看起来比柱状图更美观。


瀑布图

瀑布图.png

瀑布图是柱状图的一种延伸,它一般表示某个指标随时间的涨跌规律,每一个柱状也不都是从0开始的,而是从前一个柱状的终点位置开始,这样既反映了每一个时刻的涨跌情况,也反映了数值指标在每一个时刻的值。


饼图

饼图.png

饼图的本质仍是柱状图,只不过饼图一般用来表示各个类别的比例,而不是绝对的数值,用角度来映射大小。

值得一提的是,因为一个圆饼只有360度,如果类别太多了,这个饼会被切割得非常细,不利于阅读;这种情况下老老实实地用柱状图。


圆环图

圆环图.png

本质就是饼图,只不过把实心圆换成了空心的圆环;如果清一色的饼图太过单调,可以考虑换个环形图。


sunburst chart

sunburst chart.jpg

sunburst chart看起来跟饼图比较像,但比饼图更复杂得多。它从中心向外辐射,每辐射一层就细分一层,用来表示多个变量多层之间的比例关系。


马赛克图

马赛克图.jpg

马赛克图比较复杂,与柱状图相比,它的分类变量就多了几个,而且还能实现交叉映射,所以比柱状图更抽象,更细化。


马赛克图隐含着大量的数据信息。例如:(1)从船员到头等舱,存活率陡然提高;(2)大部分孩子都处在三等舱和二等舱中;(3)在头等舱中的大部分女性都存活了下来,而三等舱中仅有一半女性存活;(4)船员中女性很少,导致该组的Survived标签重叠(图底部的No和Yes)。继续观察,你将发现更多有趣的信息。关注矩形的相对宽度和高度,你还能发现那晚其他什么秘密吗?
扩展的马赛克图添加了颜色和阴影来表示拟合模型的残差值。在本例中,蓝色阴影表明,在假定生存率与船舱等级、性别和年龄层无关的条件下,该类别下的生存率通常超过预期值。红色阴影则含义相反。一定要运行该例子的代码,这样你可以真实感受下着色图形的效果。图形表明,在模型的独立条件下,头等舱女性存活数和男性船员死亡数超过模型预期值。如果存活数与船舱等级、性别和年龄层独立,三等舱男性的存活数比模型预期值低。尝试运行example(mosaic),可以了解更多马赛克图的细节。


直方图

直方图.png

直方图看起来跟柱状图很像,但其实本质并不一样 (这一点需要注意)。直方图用来表征一个数值型变量的分布,具体来说就是把这个连续型变量划分成多个区间,然后统计各个区间的频数。直方图横轴是数值型变量本身的值,纵轴是频数。



概率密度曲线图

概率密度曲线图.png

概率密度曲线图本质与直方图类似,不过纵轴不是频数而是频率。正如折线图和面积图一样,概率密度曲线图也可自由选择要不要面积投影。这个图太学术了,一般出现在数学教材中(比如正态分布……)。


雷达图

雷达图.jpg

很多游戏中的人物能力极向对比就是以雷达图表示的。柱状图一般是一个分类型变量不同类别间的比较,雷达图可以是多个数值不在同一个scale之下;更具体地说,柱状图一般是横向比较,雷达图既可以多个观测之间的纵向比较,也可以是一个观测在不同变量间的横向比较。

值得一提的是,雷达图如果用来横向比较,需先把各个数值变量作归一化处理。



箱线图

箱线图.png

箱线图亦称盒须图,也是挺学术的一个图。它用来表征各个数值型变量的分布状况,每一条横线代表分位数,盒内部的横线代表中位数,点代表异常值。


小提琴图

小提琴图.png

小提琴图本质与直方图一样,都是表征数值型变量的分布,每一个小提琴的宽度代表它在该高度处的频率范围。



热力图

热力图.jpg

热力图一般以颜色来映射密度或者其他数值变量,一般来说,颜色最深的地方表示数据最集中。(比较常用,对于热图的解释还需要看图例的含义)


日历图

日历图.jpg

日历图是热力图的变种,它把每一个矩形重新排列成日历的形状,这样可以方便地观察一段时间内每一天的数值特征。


地图

地图.jpg

地图用来可视化地理数据,这些数据一般由国家地理测绘部门提供,在一些网站上也能找到,常用的数据格式有shp、JSON、csv等。

地图的绘制原理是基于大量的散点,勾勒成曲线,再连接成多边形——其中每一块多代形代表一个地区,可以是国家、省、市、区县等。

地图的应用主两有种情况:一是如上图一样以颜色填充每一个多边形来映射一个指标,这种情况下地图跟柱状图本质相同,但是多了多边形之间的位置关系;另一种是在地图上叠加散点或者曲线,来表征各个点之间的地理位置。


地球图

地球图.jpg

地图是二维的,三维的就是地球图。这种图形一般是交互的,也就是说你可以用鼠标实现地球的旋转和缩放等操作。

值得一提的是,不要仅仅为了3D就使用地球图,要看数据本身的情况。如果你的数据范围本来就覆盖全球,用地球图很合适;但如果你的数据范围小,就一个国内,甚至一个省市内的,搞个地球图就太浮夸,而且整个球上只有一个非常小的区域有数据,是很不和谐的。


网络图


网络图.png

网络图的元素包含点和边,边分为无向边、单向边和双向边来表征点与点的连接关系,边的粗细可以映射这种关系的强弱。


arc diagram

arc.jpg

arc diagram也是一种网络图,只不过它把所有的节点一字排开,以弧线来表示边。这样看起来艺术感更强,适合于节点较多的网络关系可视化。


和弦图

和弦图.jpg

和弦图一般用来表示双向的网络关系(比如AB两个城市相互流入流出了多少人),数据结构一般为邻接矩阵。当节点很多的时候,各种弧线交叉得就非常密密麻麻,这种情况下,要么交互,要么考虑别的图形。


hierarchical edge bundling

hierarchical edge bundling.jpg

hierarchical edge bundling也表示节点间的网络关系,不过它把边扭曲成曲线,这样就适合节点比较多的可视化。


矩形树图

矩形树图.jpg

矩形树图本质就是决策树的可视化,只不过排成矩形。它也是把各个变量层层细分,这一点跟sunburst图类似。当变量比较多的时候,做成交互可缩放的形式更合适。


平行坐标图

平行坐标图.jpg

平行坐标图的优点是可以把多个变量并形排开,把每一个记录都以折线连接上。这样当数据量大的时候,其实可以很方便地观察各个变量的分布情况。


桑基图

桑基图.jpg

桑基图看起来跟平行坐标图有点像,但含义不一样。桑基图主要的用法是表征流量在各个层级的流动关系,上一层如何向下一层分散,下一层如何由下一层汇聚。


漏斗图

漏斗图.jpg

互联网运营有一个很重要的概念就是层级转化,这个每层的转化率用漏斗图来可视化,形神俱佳。如果两层之间的宽度近似,表征该层的转化率高;如果两层之间的宽度一下子减小了很多,表示转化率低。


仪表盘

仪表盘.jpg

仪表盘的观赏性大于实用性,实际上它的功能很简单,就是表征一个数值型变量在最小值和最大值之间的什么分位。


象柱形图

象柱形图.jpg

象柱形图其实就是柱形图,只不过把柱子换成了其它的图形。如果数据本身有比较具体、形象的含义和背景,那么用象柱形图是一种比较新颖的选择。


主题河流图

主题河流图.jpg

主题河流图好看,但不好解释,如果不是交互式的,最好不要用。它一般是把多个类别随时间的变化数据堆叠起来,表征随时间变化的趋势。


词云图

词云图.jpg

词云图即是对词汇的频数进行可视化,一个词越大它出现的次数就越多,一般与文本挖掘配合使用。

在实际的数据可视化中,往往不是孤立地用一个基本图形,把多个图形组合、邻接,能交叉对比出更多的信息。比如在柱状图上叠加折线图,在地图上叠加散点图,把多个柱状图放在一起对比等等。



记住数据可视化展现信息是第一位的,好看倒是其次。



图形语法

看了以上这么多图形,对可视化图形也有了一个感性的认识。现在粗略地介绍一下图形语法,想学习全面的图形语法还需去专门学习。


1.数据(data):数据才是图形的灵魂,这点无需解释。

2.几何对象(geom):也就是图形本身,这是可视化的外形。根据数据特征,选择最合适的图形。

3.映射(mapping):映射即是把数据和图形给连接起来。映射什么数据变量,它是连续的还是离散的?

4.标度(scale):这个是从数据中剥离,但是控制数据如何映射到图形上的属性。图形中用什么通道来映射?常用的有颜色、长度、面积、形状、透明度等通道。

5.坐标系(coord):坐标系不一定非得是直角笛卡尔坐标系,比如对于地图并不适合,所以要做专门的投影操作。转换坐标系也有造成不同的视觉效果,比如把柱状图的坐标系转换成极坐标系就变成了玫瑰图。

6.统计变换(stat):对数据进行常规的统计操作,不过也可以先把数据处理好,可视化的时候就不再做变换。

7.分面(facet):如果图形维度较高,并不是一张图能说明的,那么就分面处理。分面实际上是多加了一个维度,就像一页纸和一页书的区别。

8.位置(position):一般来说图形各个元素的位置是由数据决定的,不过在不影响分析的前提下为了视觉美观也可以做一些微调。比如有的散点图只看它在y轴的高度,这个时候就可以在x轴上加扰动,没必要很多点都挤在一起。


掌握了图形语法,对理解可视化的本质,构思图形属性很有帮助;只有掌握了图形语法,才能真正自由地去创造数据可视化,而不仅仅只是往模板里套数据。


2 2023-06-29
北太天元软件baltamatica_2.5.1 更新日志

更新日志

版本:baltamatica_2.5.1

日期:2023年7月7日

 

一、新增功能

1.绘图

(1)使用全新的绘图窗口界面,提升用户使用体验;

(2)设计了工具栏的导出、网格线、缩小、放大、平移、旋转、还原视图功能,对绘图图形进行导出、增删网格线、缩放、平移、旋转、还原视图操作。

 

二、新增函数

1.内置函数

新增函数

(1)randg: 产生服从伽马分布的随机矩阵;

(2)flintmax: 返回IEEE 标准下最大的浮点格式的连续整数;

(3)int8/int16/uint8/uint16/uint32/uint64: 整数类型矩阵的转化函数;

(4)ismatrix: 判断变量是否为矩阵(2D 数组)。

 

功能增强

(1) format 函数支持 rat|rational/shortg/long/bank/shorteng/longen的用法;

(2) randi/randn/rand函数支持高维数组;

(3) + - .* ./ .^ 等二元运算均已经支持高维数组,即高维数组之间运算可以进行维度的自动展开;

(4) Rem和mod函数支持两参数均为数组类型输入,并支持维度自动展开。

Bug 修复

(1) 修复了mldivide在第二个参数为标量时结果不正确的问题;

(2) 修复了 num2str 在某些情况会闪退的问题;

(3) 修复了整数类型转化函数,如 int32 int64 等的转化逻辑,现在转化的逻辑为四舍五入,即 int32(2.5) 会返回3;

(4) 修复了 ^ 运算符不能正常进行运算的问题;

(5) 修复了函数 NaN Inf 函数,使得其支持 typename 参数,例如 NaN('single');

(6) 移除了函数 i j pi 的多参数用法,现在这些函数只能返回标量;

(7) 修复了 a:d:b 在某些情况下会缺少最右侧端点的问题;

(8) 修复了二元运算 + - .* 等函数在存在整数类型变量情况下的输出逻辑 - 整数类型只能和相同类型的整数或 double 类型标量运算,返回值类型与整数类型相同,其他情况下均报错;

(9) 修复了 load_plugin try_load_plugin 函数在路径存在中文情况下无法正确加载插件的问题。

 

2.绘图函数

(1)plot:二维线图;

(2)plot3:三维点或线图;

(3)surf:曲面图;

(4)scatter:散点图;

(5)pie:饼图;

(6)area:区域图;

(7)bar:条形图;

(8)histogram:直方图;

(9)surfc:等高线图;

(10)scatter3:三维散点图;

(11)contour:矩阵的等高线图;

(12)quiver:箭头图或向量图;

(13)contourf:填充的二维等高线图;

(14)gscatter:分组散点图;

(15)bubblechart:气泡图;

(16)stairs:阶梯图;

(17)errorbar:含误差条的线图;

(18)boxchart:箱线图;

(19)line:创建基本线条;

(20)fill:创建二维填充补片;

(21)stem:绘制离散序列数据;

(22)figure:创建图窗窗口;

(23)hold:添加新绘图时保留当前绘图;

(24)clf:清空图窗;

(25)close:关闭一个或多个图窗;

(26)text:向数据点添加文本描述;

(27)xlabel:为 x 轴添加标签;

(28)ylabel:为 y 轴添加标签;

(29)zlabel:为 z 轴添加标签;

(30)xticklabels:设置或查询 x 轴刻度标签;

(31)xticks:设置或查询 x 轴刻度值;

(32)yticklabels:设置或查询 y 轴刻度标签;

(33)yticks:设置或查询 y 轴刻度值;

(34)zticklabels:设置或查询 z 轴刻度标签;

(35)zticks:设置或查询 z 轴刻度值;

(36)title:添加标题;

(37)subtitle:为绘图添加副标题;

(38)gcf:当前图窗的句柄;

(39)gca:当前坐标区或图;

(40)gco:当前对象的句柄;

(41)set:设置图形对象属性;

(42)get:查询图形对象属性;

(43)legend:在坐标区上添加图例;

(44)bubblelegend:为气泡图创建图例;

(45)subplot:在各个分块位置创建坐标区;

(46)xline:具有常量 x 值的垂直线;

(47)yline:具有常量 y 值的水平线;

(48)groot:图形根对象;

(49)colorbar:显示色阶的颜色栏。

 

三、已知问题

问题一:

系统默认字体为思源黑体CN Regular,若用户端电脑未安装思源黑体,则无法拥有最优视觉体验。

 

临时解决方案:用户端如遇以上情况,则默认显示为其他用户端系统支持的字体,不影响阅读及功能使用。

 

问题二:

在已有多个绘图窗口打开场景下,再次运行脚本创建figure图窗且连续点击运行,偶现软件一直在运行中无法停止的问题。

 

临时解决方案:用户可单击右键出现是否等待程序弹窗,选择关闭程序退出后重新进入即可。


0 2023-07-07
v2.5.1_release

v2.5.1_release


【安装包获取】

                    baltamatica_2.5.1_release_win_x86-64

              baltamatica_2.5.1_release_ubuntu20.04_amd64

                  

【新增功能】

                  点击查看北太天元软件baltamatica_2.5.1 更新日志




0 2023-07-07
北太天元2.5上线 | 绘图功能升级,内置函数、工具箱更新

北太天元是面向科学计算与工程计算的国产通用型科学计算软件,提供科学计算、可视化、交互式程序设计,具备丰富的底层数学函数库,支持数值计算、数据分析、数据可视化、数据优化、算法开发等工作,并通过SDK与API接口,扩展支持各类学科与行业场景,为各领域科学家与工程师提供优质、可靠的科学计算环境。


北太天元V2.5(Windows版本)现已上线,绘图功能重磅升级,内置函数、工具箱丰富更新,让您感受多方位体验升级。查看下方视频可“沉浸式”体验功能升级亮点。


screenshot-20230712-114453.png


戳链接即刻下载免费试用:www.baltamatica.com/download

screenshot-20230712-140047.png


一、绘图功能全新升级

1、支持导出、网格线、缩小、放大、平移、旋转、还原视图等功能

绘图窗口界面已全面更新,工具栏功能进一步完善。可使用鼠标对图形进行导出、增删网格线、缩放、平移、旋转、还原视图等操作。

微信图片_20230712112545.gif微信图片_20230712112554.gif

2、支持15种以上绘图类型

可绘制二维线图、三维线图、曲面图、散点图、饼图、区域图、条形图、直方图、三维散点图、等高线图、箭头图、气泡图、阶梯图、含误差条的线图、箱线图等。

微信图片_20230712112842.png微信图片_20230712112848.png微信图片_20230712112842.png

3、支持设置图形属性,添加文本描述、轴标签、标题、图例和颜色栏等

可设置线条颜色、线型、标记符号等图形属性,并支持添加图例、标题等,进一步提升绘图美观度与实用性。

微信图片_20230712113040.jpg

                                 可调整线条颜色并增加图例、颜色栏、标题等


二、内置函数类型丰富

1、基础数学

支持基本算术运算、三角函数、特殊函数、线性方程、特征值和奇异值、矩阵分解、矩阵运算、随机数的生成、优化、稀疏矩阵的创建和运算等。

2、语言基础

北太天元目前支持的数据类型包括:

int8/uint8/int16/uint16

int32/uint32/int64/uint64

double/single/complex/char

logical/string/struct/cell

微信图片_20230712113229.jpg

该版本可满足二维矩阵和数组的创建、合并、重构等使用需求,并支持常见数据类型和不同数据类型之间的转换,字符和字符串操作,以及高维矩阵的创建(高维矩阵相关操作正在开发中)。

3、编程

支持创建、运行、调试脚本,以及创建脚本函数、局部函数、匿名函数等。

4、数据导入导出

支持导入导出的数据类型包含double,single,int32,int64,logical,char,string,支持导入导出的文件格式包括csv,xlsx,mat,txt等。


微信图片_20230712113359.jpg

三、工具箱功能更新

1、optimization 优化工具箱

提供求解线性规划和混合整数线性规划、二次规划等函数。

2、ODE

支持常微分方程的初始值问题求解器,提供非刚性求解器、刚性求解器。

微信图片_20230712140604.jpg

3、fft 快速傅里叶变换

提供一维二维的快速傅里叶变换、快速傅里叶逆变换等函数。

4、spline 曲线拟合工具箱

提供线性与非线性回归、插值、平滑化、后处理拟合等函数。

5、computational_geometry 计算几何

提供计算几何相关的数据结构和算法,如三角剖分、Voronoi图、多边形、多面体等函数。

微信图片_20230712140654.jpg



更多详细功能更新介绍可查看北太天元软件baltamatica_2.5.1 更新日志


screenshot-20230712-140807.png

一、软件使用

如您需学习使用北太天元,您可下载产品白皮书、用户手册等文档资料,或通过观看课程视频进一步了解软件操作。

详细资料可通过【必看】北太天元软件新手指南查找。

二、反馈与交流

您的使用与建议是北太天元前进的重要动力,诚邀您反馈软件使用体验(如安装情况、响应时间、稳定性等),我们将第一时间回复您的问题与需求。欢迎大家在社区多多发帖讨论。


0 2023-07-12
baltamatica_ 999_2.5.1.1_dev

baltamatica_ 999_2.5.1.1_dev


【安装包获取】

                    baltamatica_999_2.5.1.1_dev_x86-64_win10.exe

【新增功能】          

                 1.修复无法找到子函数句柄的bug,见examples/my_test_fun.m


0 2023-07-13
baltamatica_ 999_2.5.1.2_dev

baltamatica_ 999_2.5.1.2_dev


【安装包获取】

                  baltamatica_999_2.5.1.2_dev_x86-64_win10

                  baltamatica_999_2.5.1.2_new_graph_dev_ubuntu20.04_amd64

                  baltamatica_999_2.5.1.2_new_graph_dev_ubuntu22.04_amd64

                     baltamatica_999_2.5.1.2_dev_MacOSX12.1.1_Apple-m1

【新增功能】          

                 1.修复了integral(@sin, 1, 2), integral(@sin, 1, 2)的第二个积分无法计算的bug

                 2.使用了新绘图


0 2023-07-13
数模竞赛里广泛应用的算法--聚类分析

一、聚类分析概述

1、聚类(Clustering):

聚类是一个将数据集划分为若干(class)或类(cluster)的过程,并使得同一个组内的数据对象具有较高的相似度;而不同组中的数据对象是不相似的。


相似或不相似是基于数据描述属性的取值来确定的,通常利用各数据对象间的距离来进行表示。聚类分析尤其适合用来探讨样本间的相互关联关系从而对一个样本结构做一个初步的评价。


2、聚类与分类的区别

聚类是一种无(教师)监督的学习方法。与分类不同,其不依赖于事先确定的数据类别,以及标有数据类别的学习训练样本集合。 因此,聚类是观察式学习,而不是示例式学习。


3、什么是好的聚类

一个好的聚类方法将产生以下的高聚类:

  • 最大化类内的相似性

  • 最小化类间的相似性

聚类结果的质量依靠所使用度量的相似性和它的执行。聚类方法的质量也可以用它发现一些或所有隐含模式的能力来度量。


聚类分析有两种:

一种是对样品的分类,称为Q型,

一种是对变量(指标)的分类,称为R型。


R型聚类分析的主要作用:

(1) 不但可以了解个别变量之间的亲疏程度,而且可以了解各个变量组合之间的亲疏程度。

(2) 根据变量的分类结果以及它们之间的关系,可以选择主要变量进行Q型聚类分析或回归分析。(R2为选择标准)


Q型聚类分析的主要作用:

(1) 可以综合利用多个变量的信息对样本进行分析

(2) 分类结果直观,聚类谱系图清楚地表现数值分类结果

(3) 聚类分析所得到的结果比传统分类方法更细致、全面、合理。


二、样品间的相似度量--距离

1、常用距离的定义

1.png

2.png

3.png

2、相似系数

11.png

22.png

33.png

3、类间距离

111.png

222.png

333.png


三、谱系聚类算法

1、谱系聚类算法的步骤:

(1)选择样本间距离的定义及类间距离的定义

(2)计算n个样本之间的距离,得到距离矩阵

(3)构造个类,每类只含有一个样本

(4)合并符合类间距离要求的两类为一个新类

(5)计算新类与当前各类的距离。若类的个数为1,则转到步骤6,否则回到步骤4

(6)画出聚类图

(7)决定类的个数和类

1111.png

2222.png

四、K-平均聚类算法

1、K-平均聚类算法步骤:

(1)从n个数据对象任意选择k个对象作为初始聚类中心

(2)循环 (3)到 (4)直到每个聚类不再发生变化为止

(3)根据每个聚类对象的均值(中心对象 ),计算每个对象与这些中心对象的距离,并根据最小距离重新对相应对象进行划分:

(4)重新计算每个(有变化)聚类的均值(中心对象)


2、算法的基本思想:

(1)首先,随机的选择k个对象,每个对象初始的代表了一个簇的平均值;

(2)对剩余的每个对象,根据其与各个簇中心的距离,将它赋给最近的簇;

(3)然后重新计算每个簇的平均值。

(4)这个过程不断重复,直到准则函数收敛。


3、算法的特点:

只适用于聚类均值有意义的场合,在某些应用中,如:数据集中包含符号属性时,直接应用k-means算法就有问题。

用户必须事先指定k的个数。对噪声和孤立点数据敏感,少量的该类数据能够对聚类均值起到很大的影响。



本文转自公众号“数学建模老哥”


0 2023-07-28
baltamatica_999_2.5.2_dev

baltamatica_999_2.5.2_dev


【安装包获取】

                  baltamatica-999-2.5.2-dev-win-x86_64

                  baltamatica-999-2.5.2-dev-ubuntu20.04-amd64

                  baltamatica-999-2.5.2-dev-ubuntu22.04-amd64

                  baltamatica-999-2.5.2-dev-debian10-amd64

                 baltamatica-999-2.5.2-dev-debian11-amd64

                 baltamatica-999-2.5.2-dev-debian12-amd64

                 baltamatica-999.2.5.2.dev-1.fc38.x86_64

                 baltamatica-999.2.5.2.dev-1.el8.x86_64

                 baltamatica-999.2.5.2.dev-0-x86_64.pkg.tar.zst

【新增功能】          

                 新增如下:

                 1、内置函数idivide 整数除法

                 2、asind acosd sinpi cospi tand cotd atand acotd atan2d secd asecd cscd 

                 3、acscd 等三角函数

                 4、sortrows 将数组按行排序

                 5、hypot 三角形斜边

                 6、isrow iscolumn 判断是否为行列向量

                 7、ndims 数组维度


                 修复了如下内置函数:

                 1、修复了 rot90 在逆时针旋转 270° 不正确的问题

                 2、增加 isa 对稀疏矩阵的判断

                 3、一元函数现在支持多维数组的运算

                 4、修复了 round 函数保留小数结果不正确的问题

                 5、提高 svd 函数的计算速度,提高 eig 函数在对称稠密矩阵输入的计算速度

                 6、修正 ldl 函数在稀疏矩阵下的计算错误

                 7、暂时移除了 spline 插件,因为当前版本未完成适配

                 8、添加了多系统的支持:debian 10/11/12、redhat/centos/rocky 8 系列、archlinux

0 2023-08-25
baltamatica_999_3.0.0_dev

baltamatica 999_3.0.0_dev


【安装包获取】

                  baltamatica-999-3.0.0-Dev-win-x86_64

【新增功能】                         

                  1、使用了新版本 IDE

                  2、新增如下内置函数

                  · idivide 整数除法

                  · asind acosd sinpi cospi tand cotd atand acotd atan2d secd asecd cscd acscd 等三角函数

                  · sortrows 将数组按行排序

                  · hypot 三角形斜边

                  · isrow iscolumn 判断是否为行列向量

                  · ndims 数组维度

                  3、修复了如下内置函数

                 · 修复了 rot90 在逆时针旋转 270° 不正确的问题

                 · 增加 isa 对稀疏矩阵的判断

                 · 一元函数现在支持多维数组的运算

                 · 修复了 round 函数保留小数结果不正确的问题

                 · 提高 svd 函数的计算速度,提高 eig 函数在对称稠密矩阵输入的计算速度

                 · 修正 ldl 函数在稀疏矩阵下的计算错误

                  4、暂时移除了 spline 插件,因为当前版本未完成适配

                  5、添加了多系统的支持:debian 10/11/12、redhat/centos/rocky 8 系列、archlinux




0 2023-08-25
北太天元baltamatica_3.0.0_beta更新日志

版本:baltamatica_3.0.0_beta

日期:2023年8月31日


一、新增功能

1、IDE

(1)使用全新的IDE界面;

(2)以实时保存的机制替代手动保存,避免因意外导致代码未保存丢失;

(3)新增代码节的运行节并前进、运行剩余节;

(4)新增调试模式中的步入、步出;

(5)新增编辑器文本的查找/替换;

(6)新增默认布局、经典布局和自定义布局,以及布局切换;

(7)新增帮助文档功能;

(8)新增对函数的右键help,快速查看函数help信息;

(9)新增快速查看函数定义功能,Ctrl+鼠标左键点击自定义函数名。

2、内置函数

(1)sortrows: 对矩阵行或表行进行排序;

(2)idivide: 带有舍入选项的整除;

(3)sinpi: 准确地计算 sin(X*pi);

(4)asind: 反正弦(以度为单位);

(5)cscd: 以度为单位的参数的余割;

(6)cospi: 准确计算 cos(X*pi);

(7)acosd: 反余弦(以度为单位);

(8)tand: 以度表示的参数的正切;

(9)atand: 反正切(以度为单位);

(10)atan2d: 四象限反正切(以度为单位);

(11)acscd: 反余割(以度为单位);

(12)secd: 参数的正割,以度为单位;

(13)asecd: 反正割(以度为单位);

(14)cotd: 以度为单位的参数的余切;

(15)acotd: 反余切(以度为单位);

(16)hypot: 平方和的平方根(斜边);

(17)isrow: 确定输入是否为行向量;

(18)iscolumn: 确定输入是否为列向量;

(19)ndims: 数组维度数目;

(20)manual: 在命令行窗口展示帮助信息;

(21)intersect: 设置两个数组的交集;

(22)cart2pol: 将笛卡尔坐标转换为极坐标或柱坐标;

(23)cart2sph: 将笛卡尔坐标转换为球面坐标;

(24)pol2cart: 将极坐标或柱坐标转换为笛卡尔坐标;

(25)sph2cart: 将球面坐标转换为笛卡尔坐标;

(26)nthroot: 实数的第 n 次实根;

(27)cplxpair: 将复数排序为复共轭对组;

(28)unwrap: 平移相位角;

(29)factor: 质因数;

(30)factorial: 输入的阶乘;

(31)gcd: 最大公约数;

(32)isprime: 确定哪些数组元素为质数;

(33)lcm: 最小公倍数;

(34)nchoosek: 二项式系数或所有组合;

(35)perms: 所有可能的排列;

(36)primes: 小于等于输入值的质数;

(37)rat: 有理分式近似值;

(38)rats: 有理输出;

(39)poly: 具有指定根的多项式或特征多项式;

(40)polyeig: 多项式特征值问题;

(41)polyvalm: 矩阵多项式计算;

(42)polyder: 多项式微分;

(43)mkpp: 生成分段多项式;

(44)compan: 伴随矩阵;

(45)hadamard: Hadamard 矩阵;

(46)hankel: Hankel 矩阵;

(47)hilb: Hilbert 矩阵;

(48)invhilb: Hilbert 矩阵的逆矩阵;

(49)pascal: 帕斯卡矩阵;

(50)rosser: 典型对称特征值测试问题;

(51)toeplitz: 托普利茨矩阵;

(52)vander: Vandermonde 矩阵;

(53)wilkinson: Wilkinson 的特征值测试矩阵;

(54)linsolve: 对线性方程组求解;

(55)rsf2csf: 将实数 Schur 形式转换为复数 Schur 形式;

(56)planerot: Givens 平面旋转;

(57)bandwidth: 矩阵的上下带宽;

(58)normest: 2-范数估值;

(59)condeig: 与特征值有关的条件数;

(60)orth: 适用于矩阵范围的标准正交基;

(61)subspace: 两个子空间之间的角度。

3、绘图

(1)mesh:网格曲面图;

(2)meshc:网格曲面图下的等高线图;

(3)meshz:带帷幕的网格曲面图;

(4)surface:基本曲面图;

(5)axis:设置坐标轴范围和纵横比;

(6)view:相机视线;

(7)xlim:设置或查询 x 坐标轴范围;

(8)ylim:设置或查询 y 坐标轴范围;

(9)zlim:设置或查询 z 坐标轴范围;

(10)box:显示坐标区轮廓;

(11)grid:显示或隐藏坐标区网格线;

(12)cla:清除坐标区;

(13)axes:创建笛卡尔坐标区;

(14)colormap:查看并设置当前颜色图。

4、工具箱

(1)优化工具箱

·fsolve:对非线性方程组求解;

·lsqcurvefit:用最小二乘求解非线性曲线拟合(数据拟合)问题;

·fmincon:寻找约束非线性多变量函数的最小值;

·fseminf:求解半无限约束多变量非线性函数的最小值;

·fminimax:求解minmax约束问题;

·fminsearch:使用无导数法计算无约束的多变量函数的最小值;

·fgoalattain:求解涉及多目标的目标达成问题。


二、优化功能

1、IDE

(1)优化调试逻辑;

(2)修复单行注释与多行注释嵌套使用的bug;

(3)优化查找功能,可同时搜索变量、编辑器文本;

(4)优化代码高亮,函数等类型加入高亮;

(5)优化代码缩进,如代码嵌套层次缩进、字符串换行等;

(6)优化自动补全,将自定义变量加入补全候选;

(7)替换鼠标悬停在函数上按F1功能,将悬浮help窗口替换为在帮助文档中显示该函数;

(8)优化管理和设置,将插件管理、字体设置、颜色设置移入设置页面中;

(9)优化插件管理,新增插件信息展示,使用更友好的加载/卸载交互方式;

(10)优化字体设置,重新设计了字体设置界面,增加了字体预览,合并简化了字体设置对象;

(11)优化颜色设置,重新设计了颜色设置界面,提供了两款预设配色方案,合并简化了颜色设置对象;

(12)使用全新的系统文件管理界面,优化了文件打开、导入、导出、保存等逻辑和体验;

(13)优化快捷工具栏布局,增加快捷工具栏功能按钮;

(14)优化当前活动路径布局,及其与地址导航栏的联动逻辑;

(15)优化问题反馈页面,对反馈的问题进行分类,并支持上传图片、社区帮助等;

(16)优化地址导航栏的展示逻辑,以列表替换树形结构。

2、内置函数

(1)功能增强

·isa新增对稀疏矩阵的判断;

·新增一元函数对多维数组的支持;

·支持高维数组取下标,赋值、读取、删除等操作;

·提高eig函数在对称矩阵输入下的运行效率;

·提高svd函数的运行效率。

(2)Bug修复

·round:修复函数求值错误;

·sort:修复对NaN元素的处理存在问题;

·diag:修复了diag处理 0xn 类型矩阵的时候会闪退的bug;

·speye:修复了speye 输入参数有负值的情况下会闪退的问题。

(3)绘图

·设置图形属性时,属性名称大小写不敏感。

3、工具箱

(1)优化工具箱

·linprog:求解线性规划问题;

·intlinprog:混合整数线性规划(MILP);

·quadprog:二次规划。

(2)曲线拟合工具箱

·对已有的10个函数 csapi、csape、ppmak、bspline、spapi、spmak、fnval、fnder、fn2fm、fnbrk 进行了重构,增加函数使用稳定性,减小闪退的机率。


三、已知问题

问题1:

系统默认字体为思源黑体CN Regular,若用户端电脑未安装思源黑体,则无法拥有最优视觉体验。临时解决方案:用户端如遇以上情况,则默认显示为其他用户端系统支持的字体,不影响阅读及功能使用。


0 2023-09-04
v3.0.0_beta

v3.0.0_beta


【安装包获取】

                   baltamatica_3.0.0_beta_win_x86_64

                  

【新增功能】

                  点击查看  北太天元软件baltamatica_3.0.0 _beta更新日志



0 2023-09-04
正式版版本说明

release版本和beta版本均为正式版本,是会经过测试验证后正式发布的版本,该版本比较稳定。 

3 2023-09-04
开发者预览版版本说明

dev版为尝鲜版本,用于给用户测试bug以及吐槽。

0 2023-09-04
北太真元baltamulink_1.0.0更新日志

版本:baltamulink_1.0.0

日期:2023年9月28日

一、求解器


1、离散求解器

discrete solver


2、变步长求解器

ode23、ode78、ode89、ode113、ode45


3、定步长求解器

ode1、ode2、ode3、ode4、ode5


二、模块库


1、基础模块


1.1 discontinuous

deadzone: 死区模块;

quantizer: 量化模块;

saturation: 饱和限制模块;

viscousFriction: 摩擦模块。


1.2 discretes

delay:时延模块;

difference:差分模块;

discreteFilter:离散IIR滤波器模块;

discreteFIR:离散FIR滤波器模块;

discreteIntegrator:离散积分模块;

discreteStateSpce:离散状态空间模块;

discreteTransferFunc:离散传递函数模块;

discreteZeroPole:离散零极点模块;

memory:时延模块;

unitDelay:单位时延模块;

ZOH:零阶采样保持模块。


1.3 Inputs

fromFilecsv:导入csv文件数据;

fromFileExcel:导入excel文件数据;

fromFileTxt:导入txt文件数据;

fromFileMat:导入mat文件数据;

fromWorkspace:导入天元工作区数据;

ramp:产生斜坡信号;

Inf:输出Inf;

NaN:输出NaN;

e:输出自然对数底数e;

PI;输出圆周率。


1.4 logicOpearations

compareToConst:与指定常数比较大小;

compareToZero:与零比较大小。


1.5 maths

elementsSum:累加模块;

elementsProduct:累乘模块;

subtract:加减运算模块;

sqrt:求平方根模块;

signedSqrt:求有符号平方根模块;

reciprocalSqrt:请平方根倒数模块。


1.6 outputs

out:模型计算结果导出到天元工作区;

terminator:用于未连接的输出端口;

toFileCsv:模型计算结果导出到csv文件;

toFileExcel:模型计算结果导出到excel文件;

toFileMat:模型计算结果导出到mat文件;

toFileTxt:模型计算结果导出到txt文件;

toWorkspace:模型计算结果导出到天元工作区;

XYgraph:数据可视化。


2、函数功能

mathFunc模块支持sin、cos、tan、asin、acos、atan、atan2函数。


三、产品功能


1、IDE界面

1.1 全新ui界面(参数设置模块和模块信息整合,求解器选择布局更新)

1.2 连线拖拽算法;

1.3 模块库显示以及滚动交互;

1.4 版本信息页;

1.5 问题反馈页。


2、功能优化

2.1 参数依赖联动渲染功能;

2.2 模块壁障算法;

2.3 优化了保存机制。


3、帮助文档

3.1 北太真元快速入门;

3.2 计算单元;

3.3 求解器;

3.4 模型库。


4、模型库

4.1 航空航天(5个);

4.2 控制系统(5个);

4.3 船舶(5个);

4.4 汽车(5个)。


四、Bug 修复



五、已知问题


天元和真元信息未分流,执行脚本过程中的error信息只能在天元命令行窗口打印出来,无法在真元界面显示。具体包括:

使用4类fromFile和fromWorkspace时,关于数据不合法检测的错误提示信息。


0 2023-09-28
北太天元baltamatica_3.0.0更新日志(上)

版本:baltamatica_3.0.0_release

日期:2023年9月28日


一、新增功能


1、IDE

1.1 使用全新的IDE界面,快捷工具栏、工作区、编辑器、地址导航栏、文件树、命令行等功能界面焕然一新;

1.2 以自动保存的机制替代手动保存,运行或关闭时会自动保存文件;

1.3 新增代码节的运行节并前进、运行剩余节;

1.4 新增调试模式中的步入、步出;

1.5 新增编辑器文本的查找/替换;

1.6 新增默认布局、经典布局和自定义布局,以及布局切换;

1.7 新增帮助文档功能,点击快捷工具栏帮助文档按钮进入,或鼠标悬停函数上按F1进入对应帮助文档;

1.8 新增对函数的右键help,快速查看函数help信息;

1.9 新增快速查看函数定义功能,Ctrl+鼠标左键点击自定义函数名。


2、主体函数

2.1 数学

idivide: 带有舍入选项的整除;

sinpi: 准确地计算 sin(X*pi);

asind: 反正弦(以度为单位);

cscd: 以度为单位的参数的余割;

cospi: 准确计算 cos(X*pi);

acosd: 反余弦(以度为单位);

tand: 以度表示的参数的正切;

atand: 反正切(以度为单位);

atan2d: 四象限反正切(以度为单位);

acscd: 反余割(以度为单位);

secd: 参数的正割,以度为单位;

asecd: 反正割(以度为单位);

cotd: 以度为单位的参数的余切;

acotd: 反余切(以度为单位);

hypot: 平方和的平方根(斜边);

cart2pol: 将笛卡尔坐标转换为极坐标或柱坐标;

cart2sph: 将笛卡尔坐标转换为球面坐标;

pol2cart: 将极坐标或柱坐标转换为笛卡尔坐标;

sph2cart: 将球面坐标转换为笛卡尔坐标;

nthroot: 实数的第 n 次实根;

cplxpair: 将复数排序为复共轭对组;

unwrap: 平移相位角;

factor: 质因数;

factorial: 输入的阶乘;

gcd: 最大公约数;

isprime: 确定哪些数组元素为质数;

lcm: 最小公倍数;

nchoosek: 二项式系数或所有组合;

perms: 所有可能的排列;

primes: 小于等于输入值的质数;

rat: 有理分式近似值;

rats: 有理输出;

poly: 具有指定根的多项式或特征多项式;

polyeig: 多项式特征值问题;

polyvalm: 矩阵多项式计算;

polyder: 多项式微分;

mkpp: 生成分段多项式;

compan: 伴随矩阵;

hadamard: Hadamard 矩阵;

hankel: Hankel 矩阵;

hilb: Hilbert 矩阵;

invhilb: Hilbert 矩阵的逆矩阵;

pascal: 帕斯卡矩阵;

rosser: 典型对称特征值测试问题;

toeplitz: 托普利茨矩阵;

vander: Vandermonde 矩阵;

wilkinson: Wilkinson 的特征值测试矩阵;

linsolve: 对线性方程组求解;

rsf2csf: 将实数 Schur 形式转换为复数 Schur 形式;

planerot: Givens 平面旋转;

bandwidth: 矩阵的上下带宽;

normest: 2-范数估值;

condeig: 与特征值有关的条件数;

orth: 适用于矩阵范围的标准正交基;

subspace: 两个子空间之间的角度。


2.2 语言基础知识

sortrows: 对矩阵行或表行进行排序;

isrow: 确定输入是否为行向量;

iscolumn: 确定输入是否为列向量;

ndims: 数组维度数目;

intersect: 设置两个数组的交集;

fliplr:将数组从左向右翻转;

flipud:将数组从上向下翻转;

typecast:在不更改基础数据的情况下转换数据类型。


2.3 绘图

mesh:网格曲面图;

meshc:网格曲面图下的等高线图;

meshz:带帷幕的网格曲面图;

surface:基本曲面图;

axis:设置坐标轴范围和纵横比;

view:相机视线;

xlim:设置或查询 x 坐标轴范围;

ylim:设置或查询 y 坐标轴范围;

zlim:设置或查询 z 坐标轴范围;

box:显示坐标区轮廓;

grid:显示或隐藏坐标区网格线;

cla:清除坐标区;

axes:创建笛卡尔坐标区;

colormap:查看并设置当前颜色图。


2.4 其他

manual: 在命令行窗口展示帮助信息。


3、工具箱


3.1 优化工具箱

fsolve:对非线性方程组求解;

lsqcurvefit:用最小二乘求解非线性曲线拟合(数据拟合)问题;

fmincon:寻找约束非线性多变量函数的最小值;

fseminf:求解半无限约束多变量非线性函数的最小值;

fminimax:求解minmax约束问题;

fminsearch:使用无导数法计算无约束的多变量函数的最小值;

fgoalattain:求解涉及多目标的目标达成问题。


3.2 图像处理工具箱

dip::figure:创建图形窗口;

dip::title:设置标题;

dip::size:获取图像大小(使用 size);

dip::close:关闭图形窗口;

imshow:显示图像;

imread:从图像文件读取图像;

imwrite:将图像写入图像文件;

imfinfo:图像文件的信息;

gray2ind:将灰度或二值图像转换为索引图像;

ind2gray:将索引图像转换为灰度图像;

cmap2gray:将 RGB 颜色表转换为灰度颜色表;

imquantize:使用指定的量化级别和输出值量化图像;

imfilter:对图像进行滤波;

fspecial:创建预定义的二维滤波器;

medfilt2:2 维中值滤波;

imgaussfilt:高斯滤波;

wiener2:2 维 Wiener 滤波;

stdfilt:标准差滤波;

entropyfilt:局部熵滤波;

imboxfilt2:2 维框滤波;

modefilt:模式滤波;

ordfilt2:2 维顺序统计量滤波;

rangefilt:局部范围滤波;

rescale:缩放数据范围;

integralImage:积分图;

integralBoxFilter:积分图 2 维框滤波;

imnoise:向图像添加噪声;

imabsdiff:图像的绝对差;

imadd:图像的加运算;

imapplymatrix:颜色通道的线性组合;

imcomplement:图像求补;

imdivide:图像的除运算;

imlincomb:图像的线性运算;

immultiply:图像的乘运算;

imsubtract:图像的减运算;

padarray:填充数组;

imcrop:裁剪图像;

imresize:调整图像大小;

imrotate:旋转图像;

imtranslate:平移图像;

impyramid:图像金字塔缩放图像;

affinetform2d:2 维仿射几何变换;

rigidtform2d:2 维刚性几何变换;

simtform2d:2 维相似几何变换;

transltform2d:2 维平移几何变换;

projtform2d:2 维投影几何变换;

fitgeotform2d:根据控制点对拟合二维几何变换;

randomAffine2d:创建随机 2 维仿射变换;

imwarp:对图像应用几何变换;

transformPointsForward:应用正向几何变换;

transformPointsInverse:应用逆几何变换;

imref2d:将二维图像参考到世界坐标;

detectORBFeatures:检测 ORB 关键点;

extractFeatures:提取感兴趣点的描述符(特征);

matchFeatures:特征匹配;

selectStrongest:选择得分最高的部分关键点;

markORBPoints:在图像中标记 ORB 关键点;

ORBPoints:ORB 关键点;

imfuse:将 2 幅图像合成;

imshowpair:将 2 幅图像合成显示;

checkerboard:创建棋盘图像;

imbinarize:通过阈值化将灰度图像二值化;

im2int8:将图像转换为 8 位有符号整数;

im2uint8:将图像转换为 8 位无符号整数;

im2single:将图像转换为单精度;

im2double:将图像转换为双精度值;

im2int16:将图像转换为 16 位有符号整数;

im2uint16:将图像转换为 16 位无符号整数;

dipmat2bxmat:将工具箱多维数组转换为北太天元多维数组;

bxmat2dipmat:将北太天元多维数组转换为工具箱多维数组;

im2gray:将 RGB 图像转换为灰度图像;

mat2gray:将矩阵转换为灰度图像;

lab2uint8:将 L*a*b*颜色值转换为 8 位无符号整数;

lab2uint16:将 L*a*b*颜色值转换为 16 位无符号整数;

lab2double:将 L*a*b*颜色值转换为双精度值;

xyz2uint16:将 XYZ 颜色值转换为 16 位无符号整数;

xyz2double:将 XYZ 颜色值转换为双精度值;

rgb2xyz:将 RGB 转换为 CIE 1931 XYZ;

xyz2rgb:将 CIE 1931 XYZ 转换为 RGB;

rgb2cmy:将 RGB 转换为 CMY;

cmy2rgb:将 CMY 转换为 RGB ;

rgb2ntsc:将 RGB 转换为 NTSC;

ntsc2rgb:将 NTSC 转换为 RGB;

rgb2ycbcr:将 RGB 转换为 YCbCr;

ycbcr2rgb:将 YCbCr 转换为 RGB;

rgb2hsv:将 RGB 转换为 HSV;

hsv2rgb:将 HSV 转换为 RGB;

rgb2hsi:将 RGB 转换为 HSI;

hsi2rgb:将 HSI 转换为 RGB;

rgb2gray:将 RGB 图像(颜色表)转换为灰度图像(颜色表);

rgb2lab:将 RGB 转换为 CIE 1976 L*a*b*;

lab2rgb:将 CIE 1976 L*a*b*转换为 RGB;

xyz2lab:将 CIE 1931 XYZ 转换为 CIE 1976 L*a*b*;

lab2xyz:将 CIE 1976 L*a*b*转换为 CIE 1931 XYZ;

imsplit:将多通道图像拆分为各个通道;

immerge:将各个通道合并为多通道图像;

jet:Jet 颜色表;

spring:spring 颜色表;

summer:summer 颜色表;

autumn:autumn 颜色表;

winter:winter 颜色表;

gray:gray 颜色表;

hsv:HSV 颜色表;

label2rgb:将 label 矩阵转换为 RGB 图像;

otsuthresh:使用 Otsu 方法的全局直方图阈值;

labeloverlay:在 2 维图像上叠加标签矩阵区域;

imadjust:调整图像亮度值或颜色表;

stretchlim:查找图像对比度拉伸的限值;

histeq:直方图均衡;

imhistmatch:直方图匹配;

imlocalbrighten:低光图像增强;

adapthisteq:自适应直方图均衡;

imhist:图像直方图;

imsharpen:使用非锐化模板锐化图像;

intlut:使用查找表转换为整数值;

imerode:腐蚀;

imdilate:膨胀;

imclose:闭运算;

imopen:开运算;

imtophat:顶帽滤波;

imbothat:底帽滤波;

bwperim:确定二值图像中对象的边界;



由于字数限制,接下篇:

北太天元baltamatica_3.0.0更新日志(下)


0 2023-09-28
北太天元baltamatica_3.0.0更新日志(下)

接上篇:

北太天元baltamatica_3.0.0更新日志(上)


3.2 图像处理工具箱

imfill:填充;

bwhitmiss:二值击中击不中;

imclearborder:去除图像边界;

conndef:创建连通矩阵;

strel:形态学结构元;

iptcheckconn:检查连通性参数的有效性;

bwlookup:基于查找表的非线性滤波;

bwmorph:二值图像形态学运算;

bwconncomp:查找二值图像中的连通分量并对其计数;

labelmatrix:由 bwconncomp 结构创建 label 矩阵;

bwareaopen:删除二值图像中的小目标;

grayconnected:确定相似灰度区域;

edge:边缘提取;

imgradient:梯度幅值和方向;

imgradientxy:梯度;

adaptthresh:使用局部一阶统计量的自适应图像阈值;

graythresh:使用 Otsu 方法计算全局图像阈值;

multithresh:使用 Otsu 方法计算多级图像阈值。


3.3 北太真元多域动态系统建模仿真平台

详见 北太真元baltamulink_1.0.0更新日志 (点击跳转)


二、优化功能


1、IDE

1.1 优化调试逻辑,退出调试时不再执行剩余未调试的代码,加入重新调试功能;

1.2 修复单行注释与多行注释嵌套使用的bug;

1.3 优化查找功能,可同时搜索变量、编辑器文本;

1.4 优化代码高亮,函数等类型加入高亮;

1.5 优化代码缩进,如代码嵌套层次缩进、字符串换行等;

1.6 优化自动补全,将自定义变量加入补全候选;

1.7 替换鼠标悬停在函数上按F1功能,将悬浮help窗口替换为在帮助文档中显示该函数;

1.8 优化管理和设置,将插件管理、字体设置、颜色设置移入设置页面中;

1.9 优化插件管理,新增插件信息展示,使用更友好的加载/卸载交互方式;

1.10 优化字体设置,重新设计了字体设置界面,增加了字体预览,合并简化了字体设置对象;

1.11 优化颜色设置,重新设计了颜色设置界面,提供了两款预设配色方案,合并简化了颜色设置对象;

1.12 使用全新的系统文件管理界面,优化了文件打开、导入、导出、保存等逻辑和体验;

1.13 优化快捷工具栏布局,增加快捷工具栏功能按钮;

1.14 优化当前活动路径布局,及其与地址导航栏的联动逻辑;

1.15 优化问题反馈页面,对反馈的问题进行分类,并支持上传图片、社区帮助等;

1.16 优化地址导航栏的展示逻辑,以列表替换树形结构。


2、主体函数


2.1 功能增强

新增isa函数对稀疏矩阵的判断;

新增一元函数对多维数组的支持;

新增numel函数对高维数组的支持;

新增ind2sub函数对高维数组的支持;

新增sub2ind函数对高维数组的支持;

支持高维数组取下标,赋值、读取、删除等操作;

提高eig函数在对称矩阵输入下的运行效率;

提高svd函数的运行效率。

绘图:设置图形属性时,属性名称大小写不敏感。



2.2 Bug修复

round:修复函数求值错误;

sort:修复对NaN元素的处理存在问题;

diag:修复了diag处理 0xn 类型矩阵的时候会闪退的bug;

speye:修复了speye 输入参数有负值的情况下会闪退的问题;

ind2sub: 修复了输出类型错误的问题;

sub2ind: 修复了输出类型错误的问题。


3、工具箱


3.1 优化工具箱

linprog:求解线性规划问题;

intlinprog:混合整数线性规划(MILP);

quadprog:二次规划。


3.2 曲线拟合工具箱

对已有的10个函数 csapi、csape、ppmak、bspline、spapi、spmak、fnval、fnder、fn2fm、fnbrk 进行了重构,增加函数使用稳定性,减小闪退的机率。


三、已知问题


问题1:

系统默认字体为思源黑体CN Regular,若用户端电脑未安装思源黑体,则无法拥有最优视觉体验。

临时解决方案:用户端如遇以上情况,则默认显示为其他用户端系统支持的字体,不影响阅读及功能使用。




0 2023-09-28
v3.0.0_ release

v3.0.0_ release


【安装包获取】

                  baltamatica_3.0.0_release_win_x86_64

                  

【新增功能】

                  点击查看

               北太天元baltamatica_3.0.0更新日志(上)

          北太天元baltamatica_3.0.0更新日志(下)



0 2023-09-28
北太天元V3.0上线!一文了解产品架构与功能亮点

9月23日,2023年北太天元数值计算通用软件(以下简称“北太天元”)V3.0发布会成功举办。目前,北太天元V3.0已真正实现国产科学计算与模拟仿真一体化技术,工作区变量可在北太天元和北太真元多域动态系统建模仿真平台(以下简称“北太真元”)之间高效流通,有助于进一步满足高校教学、科研,航天航空、金融、生物、汽车等领域的深度应用。


软件已正式上线,点此下载
 

V3.0功能讲解 第一期

为助力更多用户掌握新版本功能特性,V3.0功能讲解系列将持续更新。本期将围绕3.0版本产品架构与亮点展开介绍。


北太天元V3.0由四大模块组成,涵盖北太天元内核与主体软件、重量级工具箱——北太真元、轻量级工具箱(持续开发中)、插件。


1.png

北太天元V3.0产品架构图


01 北太天元内核与主体软件

2.jpg

北太天元V3.0界面


→简介

北太天元内核作为根技术,具备解释器机制与词法语法体系,是软件的计算引擎,并配备了核心函数库、词法语法分析器、程序调试器与开发者工具(SDK)。


北太天元主体软件在北太天元内核根技术之上,配备通用型科学计算软件的基本功能,具备数据处理和可视化等能力,支持数值计算、数据分析、数据可视化、数据优化、算法开发等工作,可通过SDK与API接口,扩展支持各类学科与行业场景。


→功能亮点

·底层能力提升,支持高维数组操作

·集成开发环境全面更新,提高便捷度与美观度

·帮助系统重磅上线,极大提升使用效率

·命令行界面功能增强,支持非交互式使用

·绘图功能优化,满足多样可视化需求


02 重量级工具箱:北太真元

3.jpg4.jpg

点击顶部按钮跳转至北太真元界面


→简介

北太真元是依托北太天元研发的科学计算与系统仿真一体化平台,提供完善的模块化建模仿真环境,配备多类基础、行业模块库与定步长、变步长求解器,支持复杂系统的模块化建模、仿真与验证,可实现连续/离散系统以及混合系统建模、多域多物理动态系统仿真、基于模型的系统工程设计等功能,支持用户构建、模拟、分析、优化相应的复杂动态系统。


→技术优势·

基于北太天元底层计算能力

·图形化开发与系统建模能力

·高效、精准的系统仿真计算
·基于模型的开发设计

03 轻量级工具箱

11.png


→简介

该类工具箱包含多种的函数与工具,可解决不同领域的科学、工程和数据分析等问题。用户可根据自己的需求选择和使用相应的工具箱,以完成各种复杂任务。


→功能亮点

北太天元V3.0新增图像处理工具箱(河北师范大学研发),并优化曲线拟合工具箱(浙江大学研发),扩充优化工具箱功能。



04 插件

6.png7.jpg

已支持插件类型与插件管理


目前,北太天元V3.0已支持Apriori、FFT、Mesh等插件。北太天元可以在运行时对插件进行动态管理,随时对插件进行安装、载入与卸载,且不需要每次对软件进行重启操作。插件之间的依赖机制由内置的插件管理器自动完成。



下期内容:

北太天元主体软件使用技巧与功能亮点详解

北太天元V3.0 | 北太真元核心功能与应用场景解析!

北太天元V3.0 | 合作开发创新,轻量级工具箱功能一览


0 2023-10-12
北太天元V3.0主体软件功能亮点解析!

往期回顾:

北太天元V3.0上线!一文了解产品架构与功能亮点


V3.0功能讲解  第二期


为帮助更多用户掌握新版本功能特性,北太天元V3.0功能讲解系列将持续更新。第一期已整体介绍3.0版本产品架构与亮点,本期将讲解北太天元主体软件功能亮点。

1.png


北太天元V3.0产品架构图
本期讲解模块一:北太天元主体软件

北太天元主体软件在北太天元内核根技术之上,配备通用型科学计算软件的基本功能,具备数据处理和可视化等能力,支持数值计算、数据分析、数据可视化、数据优化、算法开发等工作,可通过SDK与API接口,扩展支持各类学科与行业场景。
当前版本已在底层能力、集成开发环境(IDE)、帮助系统、命令行界面(CLI)及绘图功能等方面优化升级:

01 底层能力

北太天元V3.0底层能力进一步提升,该版本可支持高维数组操作及稀疏矩阵相关功能,包含稀疏矩阵基本操作、重新排序算法、迭代法、稀疏线性代数等。

2.png

北太天元V3.0底层能力

高维矩阵.mp4


点击观看高维数组、稀疏矩阵等功能示例

02 集成开发环境(IDE)

3.0版本提供全新的集成开发环境(IDE),该界面由菜单栏、快捷工具栏、地址导航栏、脚本编辑器、命令行窗口、工作区、状态栏以及其它图形界面组成,美观度、便捷度大幅提升。

3.png


全新IDE界面


智能缩进、代码高亮、智能补全.mp4

点击观看操作示例与功能亮点


03 帮助系统

用户可以从菜单栏或快捷工具栏中的“帮助”选项启动帮助界面,帮助文档包含北太天元操作指南、语言基础知识、数据导入和分析、数学、图形、编程、软件开发工具、外部语言接口、环境和设置等内容。

4.png

帮助系统入口


帮助系统的上线,便于用户快速入门、明晰函数功能及调用方法、调试代码,从而提高软件使用效率。


帮助系统.mp4

点击观看帮助系统使用示例



04 命令行界面(CLI)

命令行界面(CLI)是一个交互式的文本界面,允许用户通过输入命令来与北太天元环境进行交互。与IDE相比,CLI提供了更直接和灵活的方式来执行北太天元命令和操作,包含命令执行、脚本函数执行、自动补全、命令行语法高亮、命令历史记录(浏览和查找)、变量查看和编辑等功能。


当前版本已支持无图形化环境下使用以及非交互式使用,适用于自动化任务以及需要执行大量重复性操作的情况。


命令行界面.mp4

点击观看操作示例


05 绘图功能

北太天元提供的图形函数(包括二维绘图函数和三维绘图函数),以可视化的形式来呈现数据的结果,以交互式或编程式的方式自定义绘图页面,满足多样可视化需求。


绘图功能.mp4

点击了解绘图功能


该版本支持20种以上绘图类型,可满足用户设置图形属性,添加文本描述、轴标签、标题、图例和颜色栏,提供导出、网格线、放大、缩小、平移、旋转、还原视图等功能。



下期内容:

北太天元V3.0 | 北太真元核心功能与应用场景解析!

北太天元V3.0 | 合作开发创新,轻量级工具箱功能一览


0 2023-10-16
北太天元V3.0 | 北太真元核心功能与应用场景解析!

往期回顾:

北太天元V3.0上线!一文了解产品架构与功能亮点

北太天元V3.0主体软件功能亮点解析!


V3.0功能讲解 第三期


为帮助更多用户掌握新版本功能特性,北太天元V3.0功能讲解系列将持续更新。本期将介绍重量级工具箱——北太真元多域动态系统建模仿真平台(以下简称“北太真元”)。

1.png


北太天元V3.0产品架构图

本期讲解模块二:重量级工具箱



北太真元是依托北太天元研发的科学计算与系统仿真一体化平台,提供完善的模块化建模仿真环境,配备多类基础、行业模块库与定步长、变步长求解器,支持复杂系统的模块化建模、仿真与验证,可实现连续/离散系统以及混合系统建模、多域动态系统建模仿真、基于模型的系统工程设计等功能,支持用户构建、模拟、分析、优化相应的复杂动态系统。


5.png

北太天元重量级工具箱——北太真元架构图


PART01 核心功能

01 一体化平台能力

北太真元以北太天元内核为底层框架,工作区变量可在北太天元和北太真元之间高效流通,支持主流操作系统及硬件平台,同时支持csv、xls/xlsx、txt等主流数据格式以及原生mat格式的文件数据导入和导出。


在增强产品的适用范围和灵活性之外,北太真元能够为用户提供一体化平台,以研究和解决多样化动态系统问题。


北太真元:一体化平台能力.mp4


点击视频了解一体化平台能力



02 高精度、高效率求解器

北太真元提供离散求解器和连续求解器,确保仿真的准确性和效率,支持定步长、变步长求解仿真模型,求解器参数支持用户自定义配置和系统自动配置。


6.png

求解器精度对标某国外竞品软件,相对误差<10-&sup1;&sup2;


针对不同的应用场景和问题,北太真元提供连续、离散、数学等模块库,支持用户建立离散系统、连续系统的仿真模型,允许用户根据不同的应用场景灵活选择。


北太真元:求解器类型.mp4

点击视频了解北太真元求解器类型



03 图形化开发环境

北太真元提供用户友好型图形化开发环境。图形化开发采用图形化元素、图标和连接线替代传统的代码编写方式,用户可以通过拖放、连接和配置图形元素来建立复杂系统模型,无需深入掌握编程细节。

7.png


由此,用户可以快速进行原型设计和迭代,降低技术难度,提升开发效率。



04 基于模型的开发设计

北太真元提供丰富的基础计算单元,满足用户各类开发、建模需求。多样化计算单元库可对研究对象进行完备的建模计算,实现高效的产品开发、迭代,从而为产品方案和设计结果的验证提供准确的依据。


北太真元:模块库.mp4

点击视频了解北太真元模块库类型


PART02 应用领域与案例展示

北太真元可应用于教育、汽车、通信、航空航天、国防军工、电力电子等行业,致力于为企业等用户提供一站式的仿真解决方案,帮助用户更高效地开发和部署仿真应用。

8.jpg9.jpg10.jpg


汽车、航空、船舶制造案例展示
点击查看大图


目前,北太真元已提供部分基础模型和示例,以帮助新用户更好地理解平台的工作方式和潜在能力,快速开始建模和仿真。


北太真元:模型与示例支持.mp4

点击视频了解北太真元基础模型与示例支持


下期内容:

北太天元V3.0 | 合作开发创新,轻量级工具箱功能一览



0 2023-10-18
北太天元baltamatica_3.0.1更新日志

版本:baltamatica_3.0.1_release

日期:2023年10月20日


一、优化功能


北太天元主体软件


1、内核

(1)功能增强

·大幅度提高 for i = a 类型循环遍历效率,for i = a 现在会遍历 a 的列向量而不是遍历全体元素;小幅度提高 for i = 1:n 遍历效率。


(2)Bug修复

·修复 some.title = "a"; size(some.title) 解析出错的问题;

·修复调试模式和运行报错时会出现 std::bad_alloc 的问题;

·修复 a.(b).c 在脚本中不能正常执行,找不到字段的问题;

·修复某些情况下脚本执行 for 循环,变量会在外部工作空间生成的问题;

·修复了如 a.b.c = 1 初始化嵌套结构体错误误报的问题;

·修复报错显示逻辑,使用 error 函数报错,直接显示错误内容;

·其他一些显示逻辑的修正。


2、主体函数

·增强 warning 函数功能,警告文字以黄色字体显示,同时支持 warning('off') 这样的用法将警告关闭。


3、集成开发环境(IDE)

·修复cell嵌套struct内部生成副本和插入死机问题;

·修复0*n矩阵被错误转为0*0问题;

·修复调试状态下查看变量的详情,滚轮方向为向上,滚动页面下滑,与编辑器的滚轮方向相反的问题。


4、命令行界面(CLI)

·修复在字符界面运行大规模 for 循环等命令软件会死机的问题;

·windows 字符前端显示警告文本使用黄色字体,显示错误文本使用红色字体。


二、已知问题


问题1:

系统默认字体为思源黑体CN Regular,若用户端电脑未安装思源黑体,则无法拥有最优视觉体验。临时解决方案:用户端如遇以上情况,则默认显示为其他用户端系统支持的字体,不影响阅读及功能使用。


问题2:

帮助系统偶现部分环境会打开出现404。临时解决方案:通过404页面的提示take me home可以返回到帮助系统的初始根目录帮助文档页。


问题3:

360告警安装北太软件有木马病毒风险问题,导致exe软件无法安装,无法生成桌面快捷方式。临时解决方案:关闭360后安装可避免。


0 2023-10-20
v3.0.1_ release

v3.0.1_ release


【安装包获取】

                  baltamatica_3.0.1_release_win_x86_64

                  

【新增功能】

                点击查看

                北太天元baltamatica_3.0.1更新日志

       

0 2023-10-20