matlab怎么定义矩阵变量_MATLAB01:基本的数学运算与矩阵运算

若微信排版有问题,请点击阅读原文查看MATLAB01:基本的数学运算与矩阵运算MATLAB基本语法变量变量名保留变量不适合做变量名变量不应当覆盖内置函数变量类型数字型变量的显示格式MATLAB命令行使用MATLAB进行数字运算使用MATLAB计算数学表达式MATLAB内置的数学函数使用MATLAB进行矩阵运算定义矩阵向终端输入矩阵使用冒号运算符创建向量定义特殊矩阵矩阵的索引矩阵的操作操作…

大家好,又见面了,我是你们的朋友全栈君。

,

MATLAB01:基本的数学运算与矩阵运算

MATLAB基本语法变量变量名保留变量不适合做变量名变量不应当覆盖内置函数变量类型数字型变量的显示格式MATLAB命令行使用MATLAB进行数字运算使用MATLAB计算数学表达式MATLAB内置的数学函数使用MATLAB进行矩阵运算定义矩阵向终端输入矩阵使用冒号运算符创建向量定义特殊矩阵矩阵的索引矩阵的操作操作矩阵的运算符操作矩阵的函数

MATLAB基本语法

变量

  • MATLAB中的变量不需要声明.

  • 使用=为变量赋值

变量名

  • 与大多数编程语言相同,MATLAB中的变量名是大小写敏感的.

  • 变量名只能由[0~9,a~z,A~z,_]组成,且变量名不能以数字开头.

保留变量不适合做变量名

MATLAB中有一些变量有其具体意义,不适合用作变量名.

5928689c504da254463e47ed5a3b6233.png

除此以外,使用iskeyword可以查看MATLAB语言所有的关键字,这些关键字也不允许被用作变量名.

变量不应当覆盖内置函数

在MATLAB中,变量的调用优先级(calling priority)高于函数,因此变量名不应该覆盖内置函数.

465c9716952c13690af4e1ca34ff5dc2.png
MATLAB的调用优先级
cos='This string.';
cos(8)        % 对字符串进行索引取值,得到'r'

若某函数被变量名所覆盖,则调用clear 可以取消绑定在该函数名上的变量名

clear cos    % 清除绑定在cos上的变量
cos(8)        % 调用内置余弦函数运算得到-0.1455

clear是一个比较危险的命令,因为该命令后若不加参数,则表示清除当前工作区内的所有变量.

变量类型

MATLAB中的变量类型有: logical,char,numeric,cell,struct以及由他们组成的数组或矩阵.

a17867a817543596b3f5118c5b5cf899.png
MATLAB中的变量类型

数字型变量的显示格式

我们直接定义的数字型变量,默认是以double形式存储的.

我们可以通过format 改变数字型变量的显示格式.

256f889bdacfa2defbee9ae435f57370.png

MATLAB命令行

  1. 使用行尾;抑制输出: 在一行命令后使用;抑制输出,否则运算结果将被显示在终端上.

  2. 其他实用的命令:

    7a24cbce371ce073d68bfa259b1c5dd6.png

使用MATLAB进行数字运算

使用MATLAB计算数学表达式

  • MATLAB常见运算符有: +,-,*,/,^.

  • 数学表达式被计算后,其值被存入变量ans.

  • 运算的优先级规则:

    • 同等优先级下从左向右运算.

    • 优先级顺序(从高到低)

  1. 括号`()`

  2. 乘方`^`

  3. 乘除法`*`,`/`

  4. 加减法`+`,`-`

下面例子演示了数学表达式求值:

a8eb8e7d04f5d0a1c8a86ea3e3f837da.png

MATLAB内置的数学函数

  • MATLAB内置的算数运算函数

    • 加: `+`,`sum`,`cumsum`,`movsum`

    • 减: `-`,`diff`

    • 乘: `.`,``,`prod`,`cumprod`

    • 除: `./`,`.`,`/`,“

    • 乘方: `.^`,`^`

    • 基本运算:

    • 取模运算: `mod`,`rem`,`idivide`,`ceil`,`fix`,`floor`,`round`

  • MATLAB内置的三角运算函数

    • 正弦: `sin`,`sind`,`sinpi`,`asin`,`asind`,`sinh`,`asinh`

    • 余弦: `cos`,`cosd`,`cospi`,`acos`,`acosd`,`cosh`,`acosh`

    • 正切: `tan`,`tand`,`atan`,`atand`,`atan2`,`atan2d`,`tanh`,`atanh`

    • 余割: `csc`,`cscd`,`acsc`,`acscd`,`csch`,`acsch`

    • 正割: `sec`,`secd`,`asec`,`asecd`,`sech`,`asech`

    • 余切: `cot`,`cotd`,`acot`,`acotd`,`coth`,`acoth`

    • 斜边: `hypot`

    • 转换: `deg2rad`,`rad2deg`,`cart2pol`,`cart2sph`,`pol2cart`,`sph2cart`

  • MATLAB内置的指数对数函数: exp,expm1,log,log10,log1p,log2,nextpow2,nthroot,pow2,reallog,realpow,realsqrt,sqrt

  • MATLAB内置的复函数: abs,angle,complex,conj,cplxpair,i,imag,isreal,j,real,sign,unwrap

使用MATLAB进行矩阵运算

定义矩阵

向终端输入矩阵

在MATLAB中,使用[]将待输入的矩阵内容括起来,使用空格或逗号,分隔行内变量,使用;分隔每一行.

下面例子演示了矩阵的定义:

2ea0b230b00ada37e410dd155abda1c4.png

使用冒号运算符创建向量

使用冒号运算符:可以创建一个长向量,其语法如下:

561fd2eac766c83ffff067e22f31b29d.png

下面例子演示了冒号运算符的使用:

d1ef5eaf0087b140364b537e12c6e95c.png

定义特殊矩阵

下面命令可以定义特殊矩阵

55e282ccf123f62bec69f92134dc3579.png

矩阵的索引

  • MATLAB中的矩阵是以列先序存储的.且索引下标从1开始.

  • 矩阵有两种索引方式: 按一维索引和按二维索引.对于一个一般的矩阵,其索引顺序如下:33cd7431efc5f26c990b6037a335a0da.png

  • 矩阵的索引可以使用冒号:,表示选取所有行或所有列.

  • 矩阵的索引可以是一个或两个向量,表示选中向量内的所有行或所有列.

下面例子演示了矩阵索引的规则:

0fd7882de2c5d07b1bffabfe1e7b1db9.png

矩阵的操作

操作矩阵的运算符

dbb4c7da8a48aaacbe0f496c71a0d303.png

操作矩阵的函数

下面对矩阵ab9e581e107fe77a40f9583f2d41249e.png
进行操作以演示操作矩阵的常见函数

对于上面这些函数,除第一个参数以外,其它参数都是可选的.

fd0bc00107b076875e587268019d4cfa.png

,

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/125719.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • CLion 2021.10.1激活码-激活码分享

    (CLion 2021.10.1激活码)JetBrains旗下有多款编译器工具(如:IntelliJ、WebStorm、PyCharm等)在各编程领域几乎都占据了垄断地位。建立在开源IntelliJ平台之上,过去15年以来,JetBrains一直在不断发展和完善这个平台。这个平台可以针对您的开发工作流进行微调并且能够提供…

  • Java虚拟机学习 – 垃圾收集器 (4)

    Java虚拟机学习 – 垃圾收集器 (4)

  • macpycharm2022.01激活码[最新免费获取]

    (macpycharm2022.01激活码)好多小伙伴总是说激活码老是失效,太麻烦,关注/收藏全栈君太难教程,2021永久激活的方法等着你。IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.cn/100143.htmlCJM5ZJBPHS-eyJsaWNlbnNlSW…

  • idea 2022 激活码永久 mac【2022.01最新】2022.02.27

    (idea 2022 激活码永久 mac)最近有小伙伴私信我,问我这边有没有免费的intellijIdea的激活码,然后我将全栈君台教程分享给他了。激活成功之后他一直表示感谢,哈哈~IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.cn/100143.html2K…

  • react中添加debounce 实现[通俗易懂]

    react中添加debounce 实现[通俗易懂]react中添加debounce实现handelChange(e){//输入框修改的时候执行的方法 e.persist()//react默认会清楚所有的默认属性,所以需要添加这段,保留参数的属性 debounce(()=>{ console.log(e) },500)() }<inputref={ev=>this.moneyInp…

  • 详解独立成分分析

    详解独立成分分析最近在学习数据降维的一些方法(有关数据降维的其他内容请看这篇文章),虽然独立成分分析不算是严格意义上的降维方法,但是它和PCA有着千丝万缕的联系,所以打算专门写一篇文章来学习ICA的相关知识,看了挺多的关于ICA的博文,有些文章讲的比较详细。有句话是这么说的:“论文是详细版的知识讲解”,也就是说如果想深入详细的了解某个知识,那么去读相关论文,所以阅读了一篇经典的ICA论文,作者是A.Hyva¨r…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号