matlab编程教程 matlab 教程?
matlab 教程?
Matlab只是一个软件,是用来完成力学计算的。如何安排这些计算,需要用户掌握最基本的数学概念。本文将介绍工程数学中常用的数学概念,看似与matlab无关,实则是matlab的基础。
1.价值观和符号
如果把工程数学问题分类,最大的两个肯定是数值问题和符号问题,对应matlab的数值运算和符号运算。简而言之,数值运算就是知道所有变量的值,并求解出一些特定的值。符号运算正好相反,不要求所有变量都是已知的,求解的结果也不是变量的具体值,而是变量之间的关系。一个简单的例子是
数值问题:解一元二次方程,ax2 bx c=0,其中a=b=c=1,结果一定是x=什么时间,什么时间,什么时间,I,它是一个复数,是一个具体的数值。
符号问题:解一元二次方程,ax2 bx c=0,结果一定是x=根公式,是abc的函数,是一个关系式。
可见,一个问题是数值问题还是符号问题,很大程度上取决于结果需要用一个数值还是一个关系来解决。当然,两个问题也可以相互转化,比如一个数值问题的一元二次方程。一般我们会先将其转化为一个符号问题,将abc代入根公式,求出变量x的具体值,但在实际操作中,一般不建议这样做,因为matlab的数值和符号是完全不同的系统,相互转换不仅需要冗余的数值符号转换语言,还可能给错误检查带来不便。
2.典型的数值问题
以下是常见的数值问题,文中提到的解法可以在《数值计算》、《科学计算》、《数值算法》等书籍中找到。
2.1代数方程
代数方程可分为线性方程和非线性方程。一般可将线性方程转化为矩阵形式AX=b,求A的逆。通常,求解反问题的数值方法包括高斯-赛德尔迭代、超松弛迭代等。一般将非线性方程转化为f(x)=0,其中x是向量,右边的0表示f是多输出函数。数值解一般都是迭代的,比如牛顿迭代,最速梯度,点斜率。
2.2常微分方程
常微分方程一般转化为Dy=f(y,t),y(0)=y0为初始条件,其中y和Dy为向量,f也是多输出函数。数值解法有欧拉法和龙格-库塔法。
2.3偏微分方程
偏微分方程比较复杂,matlab处理偏微分方程不专业。我几乎不用matlab来处理这类问题。但在工程数学中,偏微分方程有两种解法,差分法和有限元法。差分方法需要采用中心差分、迎风差分等。有限元法需要计算刚度矩阵。
2.4插值和拟合
插值和拟合是两个完全不同的数学概念,虽然很多人会混淆。对两者的描述可以总结为:知点(x1,y1),(x2,y2).(xn,yn)在函数上,求一个已知的x和对应的y的值,多项式插值和三次样条插值是常用的。拟合的本质是一个优化问题,其中最常用的拟合是线性拟合,求解方法是最小二乘法。
2.5离散周期傅立叶变换
严格来说,这不是一个数学问题,而是一种运算方式,就像加减乘除一样。特殊性在于,这个变换是对一个向量进行的,运算后的结果还是一个向量。这里提出来强调这种傅里叶变换的局限性,需要离散周期,这是唯一可以用数值方法处理的傅里叶变换。
2.6优化问题
优化问题比较宽泛,一般可以归结为求目标函数f(x)的最大值或最小值,其中f是单个输出函数,x是一个向量。其中x需要满足线性约束、非线性约束以及上和l
以下是常见的符号问题,需要特别指出的是无解。在数值问题中也有一些无法解决的问题,但在大多数项目中是无法触及的。相反,我们遇到的大多数符号问题都无解,或者准确地说,没有解析解。比如求解一元五次方程,我们知道x和这些系数有关系,但是我们写不出显式,也就是没有解析解。
3.1递归转移项
这个问题可以总结为:已知xn ^ 1=f(xn),求xn在数列推导中是常见的。
3.2代数方程
与数值问题中的代数方程不同,这里的代数方程问题可以描述为:f(x,c)=0,x=x(c)。这里需要解决的其实是x和c的关系。
3.3常微分方程
不同于数值问题中的常微分分式方程,这里的代数方程问题可以描述为:Dy=f(y,t,c),求y=x(t,c),一般不需要初值条件。
3.4符号整合
与数值问题中的数值积分不同,这里的符号积分可以描述为:知道函数关系y=f(x),求y的不定积分,同样的问题是符号求导。
matlab最基础的课程(1):软件的基本概念
如果是第一次使用matlab,建议阅读本教程。基于2017a版本,适用于2014a及以后版本,之前版本未测试。结合近两个月在坛子里回答的问题,整理成一个水平有限的教程。欢迎指正。
的接口
在主页选项卡下,找到要设置/重置的布局,您可以设置每个部分的显示和隐藏。有几个部分,请一定要出示。
当前文件夹:中文一般翻译成工作路径,一般设置为有读写权限的自建文件夹,比如在我的文档下建立一个matlab文件夹。
命令窗口:字面意思是命令窗口,用来运行代码。所有的密码都在这里输入。
Workspace:字面意思是工作区,但实际上是暂时存放所有运行结果的地方。“临时”的具体含义是关闭matlab后会丢失。
2.软件中的基本概念
2.1功能
matlab之所以强大,是因为它提供了大量的函数,你也可以通过:Home-gtNew-gtfunction来构建自定义函数。自定义函数通常保存在工作路径中。函数文件的特点是:扩展名m,第一行内容以函数开头,后面的内容是“输出变量=函数名(输入变量)”。并且函数名和文件名相同。
每个函数都在命令窗口中运行,以完成特定的计算任务。运行方式是输入“输出变量=函数名(输入变量)”然后回车。比如系统自带的一个函数,求绝对值。函数名是abs,所以在命令窗口输入“a=abs(-1)”,结果会是“a=1”。并且操作的结果将在Workspace中显示变量A。双击后,可以看到A的值为1。
2.2脚本
可以理解为特殊功能。这个函数内容的开头没有函数行,所以没有输入输出变量,也没有函数名。文件扩展名和函数一样是M,也需要在命令窗口运行。脚本都是用户自己创建的。方法是:Home-gtNew脚本。一般保存在工作路径中。脚本的作用是完成用户需要的复杂计算任务。通常,脚本中会调用许多函数。
2.3图形用户界面
一般翻译为interface,意思是人机交互界面。写脚本处理问题有点麻烦,让人看起来更像码农,所以现在很多问题在界面上点点鼠标就能解决。这时候就需要打开界面了。打开方法是:你可以在APPS标签页找到所有已安装的GUI工具,点击即可。注意右边有一个可以打开的小三角形。和功能一样,用户也可以建立自己的自定义GUI,对于初学者来说比较复杂,有点遥远。
2.4工具箱
一般翻译成工具箱,matlab把一组功能相似的函数和GUI或者自带的应用打包成一个工具箱。购买正版matlab时,几乎每个工具箱都是单独收费的,所以工具箱也可以理解为matlab产品的一个模块,一个工具箱就是一个p
一般用matlab解决问题的流程是:用户定义脚本,在命令窗口运行脚本。脚本的运行逻辑是顺序执行,就像一般的编程一样。Simulink提供了另一种思路,图形化编程,有点像labview。这种方法非常适合物理模型的仿真,所以有时会被“matlab编程”和“simulink仿真”所强调。要使用它,请单击主页选项卡下的simulink。
寻求帮助
有四种常见的获得帮助的方式。
在主页选项卡中,有一个帮助标志。点击后,可以获得每个工具箱/产品的完整帮助文档。在新版本中,默认使用online,使用本地帮助的方式是在home选项卡中选择installed locally,在Preferences下选择matlab/Help。
在官网找支持,然后就可以得到教程了。通过这种方法获得的帮助文档与通过第一种方法获得的帮助文档相同。
在命令窗口中输入doc函数名以获得帮助。例如,输入#34doc fft#34可以获得帮助和离散傅里叶变换函数fft的例子。通过这种方法获得的文档是前两种方法的文档的一部分。当然,前提是你得知道函数的名字,才能找到帮助。这种方法适用于获取系统自身功能的指令。
使用GUI时,通常在界面的角落会有帮助。单击它以获取帮助。通过这种方法获得的文档是第一和第二种方法的文档的一部分。该方法适用于获取系统自带GUI的用户指令。
在几种方法中,最常用的是第三种。只要知道需要的函数名,就可以通过这种方式得到说明和例子。在实际使用中,常用的系统都有自己的功能,功能不多,大概几十个。真正记住怎么用的方法只有几种。通常,你知道这个函数的名字,当你想使用它的时候,就把它存放起来。
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。