源作者:电驱时代
matlab怎么暂停程序运行来源:工程师联盟 泊松比
最近,由于哈工大进入了美帝商务部的实体名单,购买的正版Matlab被MathWorks停止了升级等用户服务。尽管目前软件的使用还没有受到太大影响,考虑到论文写作等对于版权有要求的场合,在这里小编推荐一些开源的工具给大家。
开源软件是指开放源代码的软件,即代码创作者在遵循相关开源协议的基础上,将自己开发的软件源代码向全世界公开,允许其他开发者进行自主学习、测试、修改、二次开发和传播等,以协同方式改善软件产品的质量和优化软件功能等。开源软件在操作系统、数据库、中间件等都有许多流行的软件产品,如Linux电脑操作系统、安卓手机操作系统、MySQL和PostgreSQL开源数据库等。
如果您在所在学科/行业还有其它开源软件推荐,欢迎在本文留言。
1. Python是一门完全免费的通用编程语言,以开源的方式提供了大量各类用途的库与包,如numpy(数值计算)、scipy(数学、科学和工程计算)、matplotlib(类似Matlab中plot的绘图工具)等等。Python是一门更易学更严谨的面向对象的程序设计语言。作为通用程序设计语言的Python,有更为严格清晰的语法,可以轻易完成界面、文件、封装等高阶需求,可移植性更好,也非常适合AI、网络等相关应用。
2. 如果已经对Matlab语言非常熟悉,暂时不想学习一门新的语言,那么可以尝试一下Octave。Octave是GNU项目成员之一,提供了与Matlab语法兼容的开放源代码科学计算及数值分析的工具。
3. 对于航天器轨道计算、任务分析等,可以尝试General Mission Analysis Tool (GMAT)。GMAT提供了图像化界面或脚本两种接口,相比于STK,GMAT的深空探测相关功能更加强大,可配置的资源也更多。
4. 对于软件无线电、信号处理等应用,可以尝试GNU Radio。GNU Radio是一个对学习,构建和部署软件定义无线电系统的免费软件工具包,可通过Python或类似于Simulink/Labview的图形化界面调用。紫丁香、龙江等卫星的业余无线电接收解调软件就是在GNU Radio基础上开发并开源发布的。
5. 对于机器人相关应用,可以尝试Robot Operating System (ROS)。ROS是一种针对于满足不同机器人软件协同工作的灵活软件框架。目的在于提高软件模块化能力和复用能力,并实现不同任务间的数据/信号量的有效共享,方便多种机器人平台之间创建复杂和鲁棒的机器人行为,同时它也是一种工具库的约定与集合。