首页 > 其他分享 >010_documentation_in_Matlab中的帮助与文档

010_documentation_in_Matlab中的帮助与文档

时间:2024-03-29 12:01:26浏览次数:31  
标签:帮助 help 一个 documentation 010 文档 Matlab 函数

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的报错信息也是一个很好的帮助文档。

标签:帮助,help,一个,documentation,010,文档,Matlab,函数
From: https://blog.csdn.net/withstand/article/details/137140815

相关文章

  • 前端学习-UI框架学习-Bootstrap5-010-按钮组
    菜鸟教程链接btn-group按钮组<template><divclass="containermt-3"><h2>加载按钮组</h2><divclass="btn-group"><buttonclass="btnbtn-primary">......
  • 恒温恒湿空气调节系统设计:基于MATLAB的恒温恒湿空气调节系统建模和仿真,包括空气调节系
    鱼弦:公众号【红尘灯塔】,CSDN内容合伙人、CSDN新星导师、全栈领域优质创作者、51CTO(Top红人+专家博主)、github开源爱好者(go-zero源码二次开发、游戏后端架构https://github.com/Peakchen)基于MATLAB的恒温恒湿空气调节系统设计:原理、应用、实现与分析1.恒温恒湿空气......
  • P6105 [Ynoi2010] y-fast trie
    [Ynoi2010]y-fasttrie-洛谷这道题让我学到了一些之前看过但没总结出来的\(trick\)显然加入集合中数要先取模对于\(x+y\geqC\)的部分,直接取最大和次大即可对于\(x+y<C\)的部分,我们先考虑暴力枚举\(x\),二分找到每一个\(y\)取最优即可若此题离线,考......
  • DBO优化GRNN回归预测(matlab代码)
    DBO-GRNN回归预测matlab代码蜣螂优化算法(DungBeetleOptimizer,DBO)是一种新型的群智能优化算法,在2022年底提出,主要是受蜣螂的的滚球、跳舞、觅食、偷窃和繁殖行为的启发。数据为Excel股票预测数据。数据集划分为训练集、验证集、测试集,比例为8:1:1模块化结构:代码按照功......
  • 数学建模之MATLAB使用
    1.数值计算和符号计算的认识我们都知道MATLAB里面存在着数值计算和符号计算,但是两者之间到底是怎样的呢?举一个很简单的例子,我们在高等数学里面的微积分学习时经常求不定积分,也就是原函数,这个过程实际上进行的就是符号运算,我们通过对一些变量字符x等等的运算,最后得出一个表达......
  • MATLAB和Python交互的问题
    MATLAB和Python交互的一些坑:pythonsetup.pyinstall一定要在MATLAB安装文件夹setup.py的位置运行,使用绝对路径运行setup.py是不允许的,但是python可以用绝对路径参考D:\MATLAB\R2019b\extern\engines\python>D:\Python3.7\python.exe.\setup.pyinstall如果后续更换了MATLA......
  • MATLAB用GARCH-EVT-Copula模型VaR预测分析股票投资组合
    全文链接:http://tecdat.cn/?p=30426原文出处:拓端数据部落公众号对VaR计算方法的改进,以更好的度量开放式基金的风险。本文把基金所持股票看成是一个投资组合,引入Copula来描述多只股票间的非线性相关性,构建多元GARCH-EVT-Copula模型来度量开放式基金的风险,并与其他VaR估计方法的预......
  • FPGA入门笔记010——UART串口接收模块设计
    1、串口接收模块原理​当对于数据线Rs232_Rx上的每一位进行采样时,一般情况下认为每一位数据的中间点是最稳定的。因此一般应用中,采集中间时刻时的电平即认为是此位数据的电平,如图1所示。图1——串口接收时序图(图中BPS_CLK为采样时钟)​但是在实际工业应......
  • 「CTSC2010」星际旅行
    换根dp#贪心由限制\(h_i\)大于点的度数,最终回到根的答案必然是经过每个节点的根的答案可以\(\mathcal{O}(n)\)的算出考虑如何换根,分\(3\)种情况(假设现在由\(rt\rightarrowx\))当前的\(rt\)有多余的出边,那么用这个出边走到\(x\),\(ans+1\)当前\(rt\)没有多余......
  • 3:3010-3015
    3010:【例4.1】交换两个数的位置网址:3010【例4.1】交换两个数的位置思路:可以使用一个额外的变量来实现,步骤如下:假设要交换的两个数为a和b。创建一个临时变量temp,将a的值赋给temp:temp=a。接下来将b的值赋给a:a=b。最后,将temp的值赋给b:b=temp。经过上述操作,a和b的......