当前位置: 首页 > article >正文

MATLAB期末复习笔记(二)

三、MATLAB函数和程序结构

1.MATLAB文件

两种类型的M文件:

脚本 ,不接受输入参数或返回输出参数。它们处理工作区中的数据。
函数 ,可接受输入参数,并返回输出参数。内部变量是函数的局部变量。

函数文件是另一类 m 文件,可以像库函数一样方便地被调用, MATLAB 提供的许多工具箱,是由函数文件组成的。
对于某一类特殊问题,用户可以建立系统的函数文件,形成专用工具箱。
函数文件的第一行有特殊的要求,它必须遵循如下的形式:

      function<因变量>=<函数名>(<自变量>)

其他各行都是程序运行语句,没有特别要求。 
函数文件的文件名必须是 < 函数名 >.m

要查看程序文件(例如, myfunction.m )的内容,请使用

        type myfunction 

2.变量和数据类型 

(1)变量

 

 

 (2)变量类型

(3)字符串

 

strvcat函数允许将不同长度的字符串组合成为字符矩阵,并且将短字符串扩充为与长字符串相同的长度。 

3.函数文件

(1)函数文件规范

即: 

001  function y = average(x)

002  % AVERAGE 求向量元素的均值

003  % 语法:

004  % Y = average(X)

005  % 其中,X 是向量,Y为计算得到向量元素的均值

006  % 若输入参数为非向量则出错

007 

008  % 代码行

009  [m,n] = size(x);

010  % 判断输入参数是否为向量

011  if (~((m == 1) | (n == 1)) | (m == 1 & n == 1))

012      % 若输入参数不是向量,则出错

013      error('Input must be a vector')

014  end

015  % 计算向量元素的均值

016  y = sum(x)/length(x);

 help average得到的是:

lookfor average得到的是:

 (2)子函数和私有函数

如:

私有函数

 

(3)函数的调用

(4)匿名函数

4.流程控制

(1)顺序结构

 

(2)用if 语句实现选择结构 

当条件结果为标量时,非零表示条件成立,零表示条件不成立。
当条件结果为矩阵时,如果矩阵非空且不包含零元素则条件成立,否则条件不成立。

格式:

(3)用switch实现选择结构

(4)用for实现循环结构 

(5)用while实现循环结构 

(6)break和continue语句

 5.函数的递归调用

四、符号运算

所谓符号计算是指:解算数学表达式、方程不是在离散化的数值点上进行,而是凭借一系列恒等式,数学定理,通过推理和演绎,力求获得解析结果。

       这种计算建立在数值完全准确表达和推演严格解析的基础之上,因此所得结果是完全准确的。

1.数值运算与符号运算

 

2.符号变量和符号表达式

建立符号表达式

含有符号对象的表达式称为符号表达式。建立符号表达式有以下3种方法:

(1)利用单引号来生成符号表达式。

(2)用sym函数建立符号表达式。

(3) 使用已经定义的符号变量组成符号表达式。

 

3.符号表示式的运算

 

 

ceil是向正无穷取整

floor是向负无穷取整

fix是向0取整

round是四舍五入

mod是求余数

imag是取虚部

real是取实部

conj是取共轭

4.符号函数 

 

5.符号函数的绘制

 

 

mesh是网格图,surf是平滑图 

左图是mesh,右图是surf

 6.符号微积分

(1)符号极限

(2)符号微分

(3)符号积分

(4)级数

 

7.符号方程求解

(1)代数方程

隐函数求导方法

 (2)微分方程

 

8.符号变换

 

9.练习

 


http://www.kler.cn/a/417124.html

相关文章:

  • 【海底地震仪】的发展越来越趋向于智能化、自主化、多功能化、小型化和便携化
  • Android 输入事件拦截机制
  • C# 数据类型详解:掌握数据类型及操作为高效编码奠定基础
  • 什么是EMS
  • Linux的文件系统
  • webrtc视频会议学习(三)
  • Zero to JupyterHub with Kubernetes上篇 - Kubernetes 离线二进制部署
  • 【Git系列】利用 Bash 脚本获取 Git 最后一次非合并提交的提交人
  • CSS笔记(四)卡片翻转
  • 【优选算法篇】两队接力跑:双指针协作解题的艺术(下篇)
  • elementUI el-image的使用
  • 深度学习基础2
  • Windchill查找某一个id关联的数据库表
  • #JAVA-常用API-爬虫
  • ACM输入输出模板(下)【Java、C++版】
  • 【论文笔记】Towards Online Continuous Sign Language Recognition and Translation
  • 【JAVA进阶篇教学】第二十篇:如何高效处理List集合数据及明细数据
  • 刷LeetCode hot100--1.哈希表
  • 【系统架构设计师】高分论文:论信息系统的安全与保密设计
  • 智能化图书馆导航系统方案之系统架构与核心功能设计
  • 总结贴:Servlet过滤器、MVC拦截器
  • 安装MySQL 5.7 亲测有效
  • Android开发仿qq详情下拉头像变大
  • 力扣215:数组中第K大的元素
  • 聊聊Flink:这次把Flink的触发器(Trigger)、移除器(Evictor)讲透
  • Ozone的元数据系统架构演进和优化