010_documentation_in_Matlab中的帮助与文档

news2024/11/23 12:06:20

Matlab中的帮助与文档

1. 前言

一眨眼已经写了十篇文章。

  1. 000在Matlab中使用Python包CoolProp
  2. 001Matlab运行时间测试与时间复杂度分析
  3. 002避免使用for循环
  4. 003Matlab中的向量约定
  5. 004Matlab中的矩阵约定
  6. 005Matlab中的数组索引
  7. 006Matlab中的逻辑数组索引
  8. 007Matlab学习的启动与加速
  9. 008Matlab中的函数约定
  10. 009Matlab中的左值和右值约定

写第一篇和第二篇的时候就是随手而为,写完这两篇我就想干脆写个300篇算。

在007(第8篇)里,我已经觉得可能需要梳理一下到底要写什么,主要的想法就是,怎么才能凑300篇呢?现在已经放飞自我,感觉300篇也不是什么难事。

如果一个刚上大学,没有接触计算机的同学把这几篇看完,应该已经能够用Matlab进行一些简单的计算,甚至能够编一个小程序来解决一些真正的问题。但是所有这些帖子,归根结底还是授人以鱼,要真正授人以渔,还是应该好好学习Matlab的帮助与文档。

2. Matlab的帮助与文档

2.1 Matlab的帮助安装

Matlab的最新版帮助文档有一个在线的版本,可以在MathWorks的网站上查看。以前有段时间Mathworks还搞点必须注册登录才能看之类的,现在好像又没有了。Matlab能够得到这么广泛的使用,其中一个原因就是Matlab的帮助文档写得很好。在Matlab之前,代数计算的openblas一直是存在的,GNU还有一个C版本的科学计算库,GSL(其实文档也不错)。Matlab最好的就是提供了一个比较直观的DSL(M语言,虽然简陋,但是有用),并且提供了一个很好的帮助文档。

Matlab的帮助文档也可以安装在本地,这样可以在没有网络的情况下查看帮助文档。旧版本的我已经忘记是怎么装的了,最新版的Matlab可以直接在菜单里选择把文档安装到本地。如果是下载的DVD版本的Matlab 文档,把那个ISO挂在到虚拟光驱上,在虚拟光驱里的bin/win64目录下有一个命令行程序mpm,可以用这个程序安装Matlab的帮助文档。

mpm install-doc --matlabroot="C:\Program Files\MATLAB\R2023b"

在这里插入图片描述

2.2 Matlab的帮助文档查看

Matlab帮助文档可以通过菜单的帮助按钮来访问,然后就是一个跟电子书差不多的东西,左边可以选不同的内容,右上角的搜索框可以全文搜索。

不过我们一般也可以采用命令行的方式来查看文档。

跟文档相关的命令行函数有以下几个。

  • help:查看函数的帮助
  • doc:打开帮助文档
  • docsearch:搜索帮助文档

还有一个可以搜索所有的函数文件的全文内容的命令lookfor,以及查找命令对应函数文件的which命令。

下面我们应该干的第一件事情,就是查看一下help命令的帮助。

3. help命令

help命令是Matlab中最常用的命令之一,它可以查看函数的帮助文档。

help help

这里其实有一个很好玩的约定,就是help help命令到底是什么?

约定:当采用不带括号的方式调用函数时,Matlab会把后面的内容当做字符串处理。

也就是help help实际上就是调用help('help')函数。

那么还有第二个问题,help('help')函数返回的到底是什么?

关于这个问题,请运行以下代码。

edit help

这个等效于

edit('help')

或者

open('help')

请一定要自己试试看。

这个命令会打开help函数的源代码,这个源代码是一个M文件,可以看到这个文件里面有一些%开头的注释,这些注释就是help函数的帮助文档。

约定:Matlab的帮助文档是通过在函数文件的开头添加注释来实现的。

这部分的内容包括从函数定义function语句之后第一个注释开始,到下一个注释之间的内容。也就是接下来所有连续的%开头的行。

自己编写自己的函数式,也最好能够遵循这个约定,当然,首先应该是多打开你感兴趣的函数,看看到底是怎么写的注释,如果你愿意仔细去看函数是怎么写的,那么你就已经是一个超有好奇心的天才Matlab程序员了。

当然我们可以看到,有些函数的源文件,就只有注释,没有实际的代码,这就是一个纯粹的文档文件。函数可能是一个MEX文件,或者是一个内置函数,这些函数的源代码是不可见的。

4. 作为报错的帮助

另外,Matlab中的报错信息也是一个很好的帮助文档。当你在Matlab中输入一个错误的命令时,Matlab会返回一个错误信息,这个错误信息是一个很好的帮助文档。

a = 1;
a(1,2)
>> a(1,2)
位置 2 处的索引超出数组边界(不能超出 1)。

不过Matlab没有那种直接返回错误信息和Exception的功能。一般只能

try
    a(1,2)
catch ME
    disp(ME)
end
MException - 属性:

  identifier: 'MATLAB:badsubscript'
     message: '位置 2 处的索引超出数组边界(不能超出 1)。'
       cause: {}
       stack: [0×1 struct]
  Correction: []

可以看到,这个错误是一个MATLAB:badsubscript错误,这个错误的信息是位置 2 处的索引超出数组边界(不能超出 1)。

5. 结论

  1. Matlab的帮助文档是一个很好的学习工具;
  2. 可以通过help命令查看函数的内置帮助文档;
  3. Matlab的内置帮助文档是通过在函数文件的开头添加注释来实现的;
  4. Matlab的报错信息也是一个很好的帮助文档。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1553500.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

OceanBase OBCA 数据库认证专员考证视频

培训概述 OceanBase 认证是 OceanBase 官方推出的唯一人才能力认证体系,代表了阿里巴巴及蚂蚁集团官方对考生关于 OceanBase 技术能力的认可,旨在帮助考生更好地学习 OceanBase 数据库产品,早日融入 OceanBase 技术生态体系,通过由…

SpringBoot Redis 之Lettuce 驱动

一、前言 一直以为SpringBoot中 spring-boot-starter-data-redis使用的是Jredis连接池,直到昨天在部署报价系统生产环境时,因为端口配置错误造成无法连接,发现报错信息如下: 一了解才知道在SpringBoot2.X以后默认是使用Lettuce作…

换芯片流程

1寻找芯片包 2.在这里改芯片 3.改芯片容量 4.改芯片启动文件 启动文件有且只能有1个 这里是把MD删掉改HD 5.改仿真

CDLF20-80不锈钢立式多级泵

在工业应用中,泵的作用至关重要。它不仅需要稳定地提升流体,还要确保在各种工况下都能保持高效和耐用。在众多类型的泵中,不锈钢立式多级泵由于其出色的性能和广泛的适用性,成为了工程师和技术人员的首选之一。特别是像CDLF20-80这…

33.HarmonyOS App(JAVA)鸿蒙系统app数据库增删改查

33.HarmonyOS App(JAVA)鸿蒙系统app数据库增删改查 关系数据库 关系对象数据库(ORM) 应用偏好数据库 分布式数据库 关系型数据库(Relational Database,RDB)是一种基于关系模型来管理数据的数据库。HarmonyOS关系型…

小米还涉足了哪些领域

小米作为一家全球性的移动互联网企业,其业务领域相当广泛,除了核心的智能手机业务外,还涉足了许多其他领域。以下是对小米涉足领域的简要介绍: 智能硬件与IoT平台:小米是全球领先的智能硬件和IoT平台公司,致…

Webpack生成企业站静态页面 - ajax请求

一些项目因需求不同,如需SEO或小项目,使用angular、react或vue就大材小用了。可以通过webpack、gulp这些构建工具,也能快速完成html页面开发,并且也能使用less/sass/styus等样式预编译功能,以及将js、html分模块、分组…

WhatsApp防封指南:封号原因与解封方法

相信各位小伙伴已经发现,WhatsApp新一轮风控已经启动,不少小伙伴已经受到封号潮的冲击。无论是老号还是新号都难以幸免。为了防止WhatsApp客户数据和聊天信息的丢失,针对封号的防封攻略请收藏! 一、WhatsApp被封的8个原因 1、被过…

单片机之串口通信

目录 串口介绍 通信的基本概念 并行通信和串行通信 同步通信和异步通信 串行异步通信方式 串行同步通信方式 通信协议 单片机常见通信接口 串行通信三种模式 串口参数 传输速度 ​串口的连接 电平标准 串行口的组成 串口数据缓冲寄存器 串行口控制寄存器 串口…

(免费分享)基于springboot,vue付费自习室系统带论文

在当今数字化时代,高效、便捷的管理系统成为了各行各业不可或缺的工具。特别是在教育服务领域,自习室作为学生和在职人员重要的学习场所,其预约和管理需求日益增长。为了满足这一市场需求,本文开发了这款基于微信小程序的付费自习…

springboot实战---5.最简单最高效的后台管理系统开发

🎈个人主页:靓仔很忙i 💻B 站主页:👉B站👈 🎉欢迎 👍点赞✍评论⭐收藏 🤗收录专栏:SpringBoot 🤝希望本文对您有所裨益,如有不足之处&…

骗子查询系统源码

源码简介 小权云黑管理系统 V1.0 功能如下: 1.添加骗子,查询骗子 2.可添加团队后台方便审核用 3.在线反馈留言系统 4.前台提交骗子,后台需要审核才能过 5.后台使用光年UI界面 6.新增导航列表,可给网站添加导航友链 7.可添加云黑类…

stm32之GPIO寄存器

文章目录 1 背景2 GPIO寄存器的类型2.1 端口配置寄存器2.2 设置/清除寄存器和位清除寄存器 3 总结 1 背景 C51单片机在进行数据的输入输出时,是直接操作与外部引脚关联的内部寄存器,例如,当设置P2_1为0时,就是将外部引脚的P21引脚…

常用的8个应用和中间件的Docker运行示例

文章目录 1、Docker Web 管理工具 portainer2、在线代码编辑器 Code Server3、MySQL4、Redis5、Nginx6、PostgreSQL7、媒体管理工具 Dim8、Gitlab 1、Docker Web 管理工具 portainer Portainer 是一个轻量级的管理 UI ,可让你轻松管理不同的 Docker 环境&#xff0…

map与set容器常见操作详解(含示例代码及注意事项)

🎉个人名片: 🐼作者简介:一名乐于分享在学习道路上收获的大二在校生 🙈个人主页🎉:GOTXX 🐼个人WeChat:ILXOXVJE 🐼本文由GOTXX原创,首发CSDN&…

【案例·增】一条insert语句批量插入多条记录

问题描述: 往MySQL中的数据库表中批量插入多条记录,可以使用 SQL 中的 ((), ()…)来处理 案例: INSERT INTO items(name,city,price,number,picture) VALUES(耐克运动鞋,广州,500,1000,003.jpg),(耐克运动鞋2,广州2,500,1000,002.jpg);规则…

C语言--编译和链接

1.翻译环境 计算机能够执行二进制指令,我们的电脑不会直接执行C语言代码,编译器把代码转换成二进制的指令; 我们在VS上面写下printf("hello world");这行代码的时候,经过翻译环境,生成可执行的exe文件&…

2. Java基本语法

文章目录 2. Java基本语法2.1 关键字保留字2.1.1 关键字2.1.2 保留字2.1.3 标识符2.1.4 Java中的名称命名规范 2.2 变量2.2.1 分类2.2.2 整型变量2.2.3 浮点型2.2.4 字符型 char2.2.5 Unicode编码2.2.6 UTF-82.2.7 boolean类型 2.3 基本数据类型转换2.3.1 自动类型转换2.2.2 强…

【详细讲解PostCSS如何安装和使用】

🌈个人主页:程序员不想敲代码啊🌈 🏆CSDN优质创作者,CSDN实力新星,CSDN博客专家🏆 👍点赞⭐评论⭐收藏 🤝 希望本文对您有所裨益,如有不足之处,欢迎在评论区提…

macOS Ventura 13.6.6 (22G630) Boot ISO 原版可引导镜像下载

macOS Ventura 13.6.6 (22G630) Boot ISO 原版可引导镜像下载 3 月 26 日凌晨,macOS Sonoma 14.4.1 发布,同时带来了 macOS Ventru 13.6.6 安全更新。 macOS Ventura 13.6 及更新版本,如无特殊说明皆为安全更新,不再赘述。 本站…