资源描述:
《Matlab学习心得系列——002.Matlab编程思想——向量化编程.docx》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、个人收集整理-ZQ.编程思想——向量化编程语言地基本元素是单数值(比如单变量或数组里地元素),再加上其结构化地特点,决定了通常语言程序大都充斥着大量罗嗦地单变量循环和判断语句(注).而是以向量、矩阵为基本元素地,所以要编写真正地程序必须抛弃【语言那种“单数值、元素化”考虑问题】地思路,转以向量、矩阵为最小单位来考虑问题.也就是说,地编程思想是——向量化编程,即面向向量或矩阵.b5E2R。这样做地好处,至少有两个:(1)代码大大简化,易编程、清晰可读性强;这样地代码才叫代码,否则只能是不伦不类地代码:不,不.(2)执行效率也更高;这
2、是次要地,随着对循环机制地优化,速度差异已不再那么明显,关键是()下面针对中常见地向量化处理问题方法,举例加以说明:(一)整体操作“大块数据”为同型地数据块(向量或矩阵)地整体做运算提供了【点运算】,这里我借用《线性代数》里地说法,矩阵行数、列数相同称为同型矩阵,里矩阵可能不止维.p1Ean。比如,.*和表示与地对应位置地各元素做*和运算得到与它们同型地一个新矩阵.例1.物理实验利用测得地电压电流具体数据,验证欧姆定律.4/4个人收集整理-ZQ代码(语言风格)[,,,,,,,,,];[,,,,,,,,,];();;()()();(
3、);运行结果:代码’(风格)[,,,,,,,,,];[,,,,,,,,,];;()运行结果:(二)尽量把【语言风格地循环】向量化实现见上例,再比如,例1.计算…代码(语言风格);;运行结果:代码’(风格);()运行结果:4/4个人收集整理-ZQ注意:代码’中,不要写成“”,否则就是变化地一个数值而不是数组了.例1.用间距为地水平线和垂直线均匀分割∈[]×[]地矩形域,在所有水平线和垂直线交点上计算函数地值,并图示.DXDiT。()求出各网格点地函数值代码(语言风格)(注);()';();();()();()();()((()*()
4、));代码’(风格)[](,);((.*));()画图()画三维图形('')标记坐标轴('')用插值处理色彩([])旋转一定角度观看图形(三)尽量使用现成地【矩阵操作语法和函数】提供了大量非常便捷地矩阵操作语法和操作矩阵地函数,优先使用它们来完成程序.()操作矩阵地函数,比如[]()——返回矩阵地“型”,行列4/4个人收集整理-ZQ()——返回行数或列数中最大地那个()——返回中所有元素平均值()或()——返回各列元素之和,各行之和用()[]()——各列元素地最大值;各列最大值所在行()——矩阵各列按递增排序,递减排序加参数‘’(
5、)——返回矩阵中不重复地值(去掉重复元素)等等………..这些函数已经实现了通常所需要地各种操作,所以完全没有必要再去按语言地思路去自己重写代码.RTCrp。()矩阵操作语法,主要是“:”地使用,放到下次再具体来说学习系列()——矩阵操作最后,习惯了语言地思维,不是一下就能转变过来地,但要有意识地强迫自己写风格地代码,写语言风格代码不如不写.5PCzV。注1.语言循环和判断地机制是通用地,里也有循环和判断,但是以向量或矩阵作为基本元素地循环和判断.注2.写循环代码时,尽量避免使用和,因为它俩是虚数单位(开根号).4/4