《MATLAB系统仿真英文》课程学习笔记:
MATLAB 系统仿真学习笔记(Part 1)
1. MATLAB 简介
- 什么是MATLAB:一种高级数学软件包,广泛应用于学术界和工业界。
- 课程目的:帮助初学者熟悉MATLAB的基本功能和命令。
2. MATLAB 能做什么
- 高级数学问题求解:可以进行符号运算、积分、极限等数学计算。
- 绘图功能:支持二维、三维图形绘制。
- 设计游戏、音乐创作等。
3. MATLAB 的应用领域
- 数值计算
- 符号运算
- 控制系统设计
- 动态仿真(Simulink)
- 数字图像和信号处理
- 金融工程及应用开发
4. MATLAB 历史
- 1970年代:Cleve Moler 开发用于线性方程求解的库,创建了MATLAB原型。
- 1984年:MathWorks成立,正式推出MATLAB。
5. MATLAB 的优点
- 易用性:不需要严格的语法,集成了编辑器、调试器和广泛的帮助文档。
- 开放性:核心文件和工具箱文件可读,用户可以修改并创建新的工具箱。
- 强大功能:提供1000多种内部函数,支持40多个工具箱,图形处理和用户界面编辑能力强。
- 扩展性:支持开发自定义应用,能与其他软件和编程语言无缝对接。
6. MATLAB 的缺点
- 执行速度慢:MATLAB 是解释性语言,执行速度比编译语言慢。
- 价格昂贵:完整版本价格高于传统的C或Fortran编译器。
7. MATLAB 环境
- 桌面环境:包括命令窗口、命令历史、工作空间、帮助浏览器等。
- 常用窗口:
- 命令窗口:输入命令并获取结果。
- 命令历史窗口:显示用户输入的命令及执行时间。
- 工作空间:保存所有已执行变量的内存。
8. MATLAB 命令
- clc:清除命令窗口。
- clear:清除工作空间中的所有变量。
MATLAB 系统仿真学习笔记(Part 2)
2.1 变量 (Variables)
- 变量定义:无需声明变量类型,赋值时系统会自动判断类型。
- 基本赋值语句:
示例:number_of_students = 65;
- 算术操作:支持加法
+
、减法-
、乘法*
、除法/
、幂^
。 - 变量命名规则:
- 必须以字母开头,可以包含字母、数字、下划线。
- 区分大小写,例如
name
与Name
不同。 - 避免使用MATLAB命令作为变量名。
2.2 数据格式 (Data Format)
MATLAB language does not require prior statement事先声明 for the use of variables.
-
常见数据格式:
- 短格式(默认):保留4位精度,如
3.1416
。 - 长格式:增加精度,如
3.141592653589793
。 - 指数格式:如
3.1416e+00
。
- 短格式(默认):保留4位精度,如
-
切换数据格式:
示例:>> format long >> pi ans = 3.141592653589793
2.3 数组、向量与矩阵 (Array, Vector, and Matrix)
-
定义:数组是一种以行列形式组织的数据集合。
-
矩阵与向量:
- 向量:一维数组(如行向量或列向量)。
- 矩阵:二维数组,示例:
>> A = [4 5 7 8; 6 1 2 5]
-
元素访问:
- A(n, m) 表示矩阵 A 的第 n 行第 m 列元素。
2.4 数据类型 (Data Types)
-
常见数据类型:
- Double:默认双精度浮点数。
- Single:单精度浮点数。
- Logical:逻辑类型,1 表示真,0 表示假。
- Char:字符类型,用单引号括起。
- Cell:元胞数组,可包含不同类型数据。
- Structure:结构体,包含不同字段的数据。
-
示例:
>> Student(1).name = 'Wang Long'; >> Student(1).score = 98;
2.5 内置函数 (Built-in Functions)
-
常用数学函数:
sin
:三角正弦exp
:指数函数log
:自然对数sqrt
:平方根
-
示例:
>> x = [3 -2 9 4]; >> abs(x) ans = 3 2 9 4
2.6 常用符号 (Commonly Used Symbols)
- 分号 ;:隐藏输出,或分隔矩阵的列。
- 百分号 (%):用于注释。
- 冒号 ::创建等间距数组或选择矩阵中的元素。
示例:>> a = 0:2:10 a = 0 2 4 6 8 10
MATLAB 系统仿真学习笔记(Part 3)
3.1 特殊矩阵生成函数
- zeros:生成全0矩阵
示例:zeros(2, 3)
→ 2×3全0矩阵 - ones:生成全1矩阵
示例:ones(3, 4)
→ 3×4全1矩阵 - eye:生成单位矩阵
示例:eye(3)
→ 3×3单位矩阵 - rand:生成均匀分布的随机矩阵
示例:rand(2, 3)
- randn:生成正态分布的随机矩阵
示例:randn(2, 3)
3.2 矩阵合并 (Matrix Merging)
- 水平合并:将矩阵按列合并
示例:B = [A, A+1]
- 垂直合并:将矩阵按行合并
示例:B = [A; A+1]
3.3 矩阵运算 (Matrix Operations)
- 加法与减法:对应元素相加减
示例:C = A + B
- 矩阵乘法:
- A 为 (p \times q) 矩阵,B 为 (q \times r) 矩阵,则 (C) 为 (p \times r) 矩阵。
示例:C = A * B
- A 为 (p \times q) 矩阵,B 为 (q \times r) 矩阵,则 (C) 为 (p \times r) 矩阵。
- 矩阵左除与右除:求解矩阵方程
- 左除:
X = A \ B
(求 (A X = B) 的解) - 右除:
X = B / A
(求 (X A = B) 的解)
- 左除:
- 矩阵逆: