第1讲:向量,函数和作图

Blog Todd讲Matlab

向量

Matlab 中最基本的对象是矩阵,向量是特殊的矩阵。行向量是1×n矩阵,列向量是m×1矩阵。输入如下行向量:

>>v=[0123]

回车,Matlab 将输出此行向量:

v=

0123

输入如下列向量:

>>u=[9;10;11;12;13]

按如下方式访问向量的元素:

>>u(2)

按如下方式改变元素的值:

>>u(2)=47

按如下方式提取多个连续向量:

>>u(2:4)

按如下方式将行向量变成列向量,也可以把列向量变成行向量:

>>w=v'

这个操作称为转置,'称为转置算符。

还可以用如下方法快速建立行向量:

>>x=-1:0.5:1

另一方法为:

>>y=linspace(0,1,11)

基本输出格式

如果让输出更紧凑些,可以按如下命令:

>>format compact

如果要使结果输出更多位小数,输入如下命令:

>>formatlong

注意:这不会改变Matlab参与运算的数的位数,只是改变输出结果的小数位数。

作图

根据表格1中的数据,将表格中的数据赋给两个向量:

>>x=[520305055]

x=

520305055

>>y=[0.080.0150.0090.0060.0055]

y=

0.08000.01500.00900.00600.0055T

5

20

30

50

55

μ

0.08

0.015

0.009

0.006

0.0055

表格1 温度与粘度

输入如下命令可将数据绘成图形:

>>plot(x,y)

如果想把数据点用符号表示出来,例如:

>>plot(x,y,'*')

>>plot(x,y,'o')

>>plot(x,y,'.')

内置函数

Matlab包含有大量的内置函数,如sin()、exp(),等等,大部分函数的意义从名字一看便知。使用内置函数时,变量放在小括号里。比如:

>>sin(pi)

这是计算sinπ的值。

如下命令:

>>exp(0)

这是计算e0的值。

Matlab内置函数还可以向量为自变量,比如:

>>x=linspace(0,2*pi,40);

>>y=sin(x);

>>plot(x,y)

输出结果为正弦函数在区间[0,2π]上的图形。

Matlab常用内置函数还有:cos(), tan(), sinh(), cosh(), log() (自然对数), log10() (以10为底的对数), asin( ) (反正弦函数), \acos( ), \atan( )。要了解函数细节,可以用help命令查询,比如:

>>help plot

>>help sin

>>help

内联函数

Matlab提供多种方式自定义函数,一种方法是内联函数,这是在命令行窗口定义函数的一种方法。下面就是一个典型的内联函数:

>>f=inline('2*x.^2 - 3*x + 1','x')

这就定义了一个函数f(x)=2x2−3x+1。如下计算单个函数值:

>>f(2.23572)

与内置函数一样,内联函数也可以带入向量,如:

>>x=-2:.2:2

>>f(x)

这正是向量化的例子,即用一个向量表示多个数,一次操作向量的所有元素,而非一次处理一个元素,这是Matlab的优势之一。f(x)可以处理向量x,因为我们用 x.^2 表示 x2。符号.使指数运算符 ^ 可以对向量各个元素做指数运算,比如[-2 -1.8 -1.6].^2运算实为[(−2)2(−1.8)2(−1.6)2],结果为[4 3.24 2.56]。而[-2 -1.8 -1.6]^2运算实为[-2 -1.8 -1.6][-2 -1.8 -1.6],程序将报错。运算.可用于.^,.*,./,但不需用于乘除标量,也不需用于加法+。

函数图形也可以用 plot 命令得到,如数据作图一样:

>>plot(x,y)

需要注意的是,这里其实是把函数转换成数据然后作图的。机器作图都需要这一转换步骤。

补充:Matlab R2015a 提示内联函数过时,未来将不支持内联函数。可以采用匿名函数来自定义函数。

匿名函数

输入如下命令可定义一个匿名函数:

>>afun1=@(x)sin(x)/x

计算函数值:

>>afun1(2)

定义多个变量的匿名函数:

>>afun2=@(x,y)(x^2+y^2+x*y)

如果需要输入向量作为自变量,注意乘、除、幂运算分别需要用.*,./,.^进行。如:

>>npdf=@(x)(1/sqrt(2*pi))*exp(-0.5*x.^2)

练习

1 从工程教科书中选取一个数据表格,将数据赋予向量,然后作图,并标记坐标轴和标题。

2 定义内联函数 g(x)=x+cos(x5)并作图。你得到的图有何问题?如何改善?

matlab内联函数怎么作图,第1讲:向量,函数和作图相关推荐

  1. C++中的内联函数inline

    1.Cpp中的内联函数 内联函数是通常与类一起使用.如果一个函数是内联的,那么在编译时,编译器会把该函数的代码副本放置在每个调用该函数的地方.对内联函数进行任何修改,都需要重新编译函数的所有客户端,因 ...

  2. C++对象模型9——临时对象的生命周期、模板及实例化分析、内联函数

    一.临时对象的生命周期 T c=a+b 假设T是一个类型,那么上述代码执行时,首先会产生一个临时对象用来存放a+b的结果(拷贝初始化临时对象),然后用该临时对象拷贝初始化c,最后临时对象被释放.如果开 ...

  3. C++编程进阶5(内联函数、如何降低编译成本、处理继承体系中同名不同参的成员函数、私有虚函数)

    十七.内联函数 在https://blog.csdn.net/Master_Cui/article/details/106391552中,已经简单的说过内联函数的作用. 函数体较小的内联函数经过编译后 ...

  4. Keil 函数内联 inline

    内联函数是指:当编译器发现某段代码在调用一个内联函数时,它不是去调用该函数,而是将该函数的代码,整段插入到当前位置.这样做的好处是省去了调用的过程,加快程序运行速度,但是因为把内联函数拷贝了很多份,所 ...

  5. VC++ inline内联函数的作用解决方案

    VC++ inline内联函数的作用解决方案 __attribute__((always_inline)) attribute((always_inline))的意思是强制内联,所有加了attribu ...

  6. c++中内敛函数_C++ 内联函数 | 菜鸟教程

    内联函数: Tip: 只有当函数只有 10 行甚至更少时才将其定义为内联函数. 定义: 当函数被声明为内联函数之后, 编译器会将其内联展开, 而不是按通常的函数调用机制进行调用. 优点: 当函数体比较 ...

  7. C++内联函数学习总结

    C++中的内联函数inline总结 http://blog.csdn.net/coder_xia/article/details/6723387 突然看到C++Primer中讲到,对于vector的一 ...

  8. 内联函数的声明和定义

    一.什么叫inline函数? inline(小心,不是online),翻译成"内联"或"内嵌".意指:当编译器发现某段代码在调用一个内联函数时,它不是去调用该函 ...

  9. 内联函数和编译器对Go代码的优化

    什么是内联函数 图片版权:Renee French. 在很多讲 Go 语言底层的技术资料和博客里都会提到内联函数这个名词,也有人把内联函数说成代码内联.函数展开.展开函数等等,其实想表达的都是 Go ...

最新文章

  1. python文本处理实例_Python 文件处理的简单示例
  2. Aleri –复杂事件处理
  3. 01数据库基本设计规范
  4. SSH详解以及免密登录配置,深入理解
  5. 64位系统目录在那里_教你玩转Linux系统目录结构
  6. android 播放器 直播,通过android中的mediaplayer直播
  7. AI眼中的世界 ——人工智能绘画入门
  8. JavaScript里的闭包(摘自JavaScript高级程序设计)
  9. Global Round 16D2. Seating Arrangements (hard version)(模拟,贪心)
  10. 编程求E1+E2+…+E100的值​
  11. 阿里云 Linux云服务器登陆方式(Windows远程登录工具XShell,基于ssh建立会话)
  12. 装配作业指导书是什么?装配作业指导书主要包括哪些内容?
  13. 【解决问题】在jupyter notebook上用 pandas_datareader 获取 yahoo 数据
  14. 【02】水果蔬菜识别系统-基于tensorflow2.3开发
  15. axure form列表_AxureRP教程
  16. win10系统下安装Linux系统
  17. python学习第十二天
  18. 优秀原型设计欣赏:交通类App原型制作分享-DiDi
  19. 用心做事,踏实做人,乐观面对,积极应对
  20. NoSQL和关系数据库的操作比较

热门文章

  1. Beat #39;Em Up Game Starter Kit (横版格斗游戏) cocos2d-x游戏源代码
  2. thinkphp6教程笔记
  3. mstar Android解锁,年轻人的新宠 当贝小投影C2解锁各种观影姿势
  4. jupyter自动补齐插件安装后没有Nbextensions 不显示jupyter lab自动补全插件jupyter lsp的安装与使用
  5. 新手怎么重装系统?只需3步看完小白也会装!
  6. 惠普27亿美元收购3Com 两大硬件巨头竞争升级
  7. Jetson Nano通过笔记本实现网络连接
  8. lai kan kan
  9. 10个顶尖响应式HTML5网页
  10. 魅族手机里的便签怎么导出转移到新的手机上?