本课程是云南师范大学本科电子信息类专业(师范和非师范)的选修课,是理论与实践相结合的课程, 旨在加强学生利用计算机求解常见科学计算问题的能力,为学生进行初步科研训练和学习后续专业课程奠定基础。主要教学内容包括:非线性方程求根的数值算法、方程组求解的数值算法、插值与曲线拟合的数值算法、数值积分、微分的常用算法。
高等数学,线性代数
专题〇 初识MATLAB
课程导入
专题一 MATLAB基础知识
1.1 MATLAB系统环境
1.2 MATLAB数值数据
1.3 变量及其操作
1.4 MATLAB矩阵的表示
1.5 矩阵元素的引用
1.6 MATLAB基本运算
1.7 字符串处理
专题一总结
专题一单元测验
专题一单元作业
专题二 MATLAB矩阵处理
2.1 特殊矩阵
2.2 矩阵变换
2.3 矩阵求值
2.4 矩阵的特征值与特征向量
2.5 稀疏矩阵
专题二总结
专题二单元测验
专题二单元作业
专题三 MATLAB程序流程控制
3.1 顺序结构程序
3.2 用if语句实现选择结构
3.3 用switch语句实现选择结构
3.4 用for语句实现循环结构
3.5 用while语句实现循环结构
3.6 函数文件的定义与调用
3.7 函数的递归调用
3.8 函数参数与变量的作用域
专题三总结
专题三单元测验
专题三单元作业
专题四 MATLAB绘图
4.1 二维曲线
4.2 绘制图形的辅助操作
4.3 其他形式的二维曲线
4.4 三维曲线
4.5 三维曲面
4.6 图形修饰处理
4.7 交互式绘图工具
专题四总结
专题四单元测验
专题四单元作业
专题五 数据分析与多项式计算
5.1 数据统计分析
5.2 多项式计算
5.3 数据插值
5.4 数据插值应用举例
5.5 曲线拟合
5.6 曲线拟合应用举例
专题五总结
专题五单元测验
专题五单元作业
专题六 数值微积分与方程求解
6.1 数值微分与数值积分
6.2 线性方程组求解
6.3 线性方程组应用举例
6.4 非线性方程求解与函数极值计算
6.5 常微分方程数值求解
6.6 常微分方程应用举例
专题六总结
专题六单元测验
专题六单元作业
专题七 MATLAB符号计算
7.1 符号对象
7.2 符号微积分
7.3 级数
7.4 符号方程求解
专题七总结
专题七单元测验
专题七单元作业
专题八 MATLAB图形用户界面设计
8.1 图形窗口与坐标轴
8.2 曲线与曲面对象
8.3 图形用户界面设计方法
8.4 用户界面设计工具
8.5 APP设计工具
8.6 图形用户界面应用举例
专题八总结
专题八单元测验
专题八单元作业
专题九 Simulink系统仿真
9.1 Simulink仿真基础
9.2 子系统的创建与封装
9.3 S函数的设计与应用
9.4 Simulink仿真应用举例
专题九总结
专题九单元测验(不计入总分)
专题十 外部程序接口
10.1 在Excel中使用MATLAB
10.2 MATLAB文件操作
10.3 在其他语言程序中读写MATLAB的数据文件
10.4 在MATLAB中调用其他语言编写的程序
10.5 在其他语言程序中调用MATLAB函数
专题十总结
专题十单元测验(不计入总分)
刘卫国主编,MATLAB程序设计与应用(第3版),ISBN 978-7-04-047813-6,普通高等教育“十一五”国家级规划教材,教育部大学计算机课程改革项目规划教材,湖南省普通高等学校优秀教材,高等教育出版社,2017年8月
(教材中有许多微视频,直接扫描二维码即可观看,还有大量练习题和操作题可供学习过程中使用)
Q1:本课程的适用对象有哪些?
A1:本课程作为高等学校信息技术系列课程,适合理、工、农、医、经济管理等专业本科生和研究生学习。此外,本课程也适用于广大工程技术人员、科学研究工作者学习参考。
Q2:MATLAB也算一门程序设计语言吗?
A2:当然算,因为MATLAB具备程序设计语言的基本特征,能实现程序流程控制。但MATLAB语言又有别于传统意义上的程序设计语言,它出现的初衷是为了做矩阵运算,因此我们更愿意将MATLAB作为一种科学计算软件推荐给大家。MATLAB主要还是在学科应用层面使用,而且具备和学科应用结合的天然优势,所以本课程是助力“新工科”建设的重要课程(但MATLAB的应用范围绝不限于“工科”)。
Q3:本课程使用什么MATLAB版本?
A3:本课程使用MATLAB R2016a版本,但不妨碍大家使用别的版本,因为在不同MATLAB版本中大部分功能是一样的。在实际操作中,也要注意不同MATLAB版本的差异,因所使用的版本不同而可能使得有些函数或功能不完全相同,甚至不能使用,这时可以借助于MATLAB的帮助信息来分析不同版本的差异。
Q4:学习本课程是否需要先学习计算机程序设计?
A4:没有此要求,但如果具有高等数学、线性代数方面的基本知识对本课程的学习是有帮助的。
Q5:本课程的教学内容是如何组织的?
A5:本课程主要从算法实现角度组织课程内容,介绍利用MATLAB语言进行科学计算的方法(其实,我们讲MATLAB的应用,会涉及科学计算,但已远远超过科学计算的范畴)。本课程也介绍算法的基本思想,但和数学上的出发点是不同的,数学上介绍算法的构造、完成公式推导、分析算法性能(证明收敛性、分析误差等),本课程讲计算原理是为了更好地理解MATLAB的实现机理,更好地应用MATLAB解决实际问题,让大家既懂科学计算,又能做科学计算。