计算机在生物工程的应用,计算机在生物工程中的应用.doc

41528d3028836879cd698677c3999917.gif计算机在生物工程中的应用.doc

2MATLAB语言基础21数据结构MATLAB语言的赋值语句有两种变量名运算表达式返回变量列表函数名输入变量列表MATLAB支持变量和常量,更重要的,MATLAB支持IEEE标准的运算符号,如PI为圆周率,I,J为虚数单位,INF表示无穷大,NAN表示0/0、0INF或INF/INF等运算结果,称为“非数”。MATLAB变量名应该由字母引导,后面可以跟数字、字母或下划线等符号。MATLAB对变量名字母是区分大小写的。211矩阵MATLAB最基本的数据结构是复数矩阵。矩阵用方括号输入,里面的各行元素由分号分隔,而同一行的不同元素由逗号或空格分隔。如果赋值表达式末尾有分号,则其结果将不显示,否则将显示出全部结果。B19I,28I,37J46J55I,64I73I,82J1IB1000090000I2000080000I3000070000I4000060000I5000050000I6000040000I7000030000I8000020000I010000I其中,元素19I表示复数项。MATLAB和其他语言不同,它无需事先声明矩阵的维数。下面的语句可以建立一个更大的矩阵B2,51B1000090000I2000080000I3000070000I004000060000I5000050000I6000040000I0100007000030000I8000020000I010000I00(注意B(2,5)代表第二行五列为1;与原来的对应,前面的几个数不变,新增加的后面几行其余的全部为零。)对矩阵可以使用SIZE来测其大小,也可以使用RESHAPE函数重新按列排列。对向量来说,还可以用LENGTH来测其长度。不论原数组A是多少维的,A将返回列向量。SIZEBLENGTHBLENGTH函数代表“行”或“列”数中最大的一个。RESHAPEB,5,3用此函数时元素个数不可改变,而且“重新排布”是按“列”进行的。BANS35ANS5ANS1000090000I8000020000I04000060000I3000070000I07000030000I6000040000I02000080000I010000I100005000050000I00ANS1000090000I4000060000I7000030000I2000080000I5000050000I8000020000I3000070000I6000040000I010000I0000100000212冒号表达式冒号表达式S1S2S3冒号表达式是MATLAB里最具特色的表示方法。这一语句可以生成一个行向量,其中S1为向量的起始值,S2为步长,而S3为向量的终止值。例如S012PI将产生一个起始于0,步距为01,而终止于62的向量,而不是终止于2PI。如果写成S0012PI则不出现错误,而返回一个空向量。S110S12345678910S1110ANSEMPTYMATRIX1BY0另外,注意下列函数表达式及输出以作对比S1011ANS10987654321S1011ANSEMPTYMATRIX1BY0冒号表达式可以用来提取矩阵元素,例如B,1将提取B矩阵的第1列而B12,125将提取B的前2行与1,3,5列组成的子矩阵。在矩阵提取时还可以采用END这样的算符。如B2END,将提取B矩阵的后2行构成的子矩阵。213其它数据结构MATLAB的字符串是由单引号括起来的。如可以使用下面的命令赋值STRA THISISASTRING MATLAB的单元数组可将复杂的数据结构纳入一个变量之下,单元数组由大括号表示下标。B{1, ALANSHEARER ,180,100,80,7577,60,9267,28,90100,89,78}B1 ALANSHEARER 1804X3DOUBLE访问单元数组应该用大括号进行,如第4单元中的元素可以由下面的语句得出B{4}ANS10080757760926728901008978MATLAB的结构体有点象C语言的结构体数据结构。每个成员变量用点号表示,如AP表示A变量的P成员变量。用下面的语句可以建立一个小型的数据库。STUDENT_RECNUMBER1STUDENT_RECNAME ALANSHEARER STUDENT_RECHEIGHT180STUDENT_RECTEST100,80,7577,60,9267,28,90100,89,78STUDENT_RECSTUDENT_RECNUMBER1NAME ALANSHEARER HEIGHT180TEST4X3DOUBLE22变量运算221MATLAB变量的代数运算如果给定两个矩阵A和B,则我们可以用AB,AB,AB可以立即得出其加、减和乘运算的结果。若这两个矩阵数学上不可以这样运算,则将得出错误信息,并终止正在运行的程序。在MATLAB下,如果A和B中有一个是标量,则可以无条件地进行这样的运算。MATLAB不介意这些变量是纯实数还是含有虚部的复数。矩阵的除法实际上就是线性方程的求解,如AXB这一线性方程组的解即为XINVAB,INVA是A的逆矩阵。MATLAB中特有的左除\或右除/算法能更有效地解这类线性方程组包括矛盾方程和不定方程,对矛盾方程会自动采用最小二乘法求解。AXB的解用左除和右除分别表示为XA\B或X A\B B /A , 号是矩阵转置符号。〖例22〗求解下面的四元一次方程组。X1X2X3X41005806X1079X2206X3024X4300409X15820X2285X3073X411712077X12999X24326X3491X41617A111158060792060244095820285073207729994326491B10030011711617XA\BX41052182863157046619039方阵的乘方可以由“”算符直接得出,如AN。用MATLAB这样的语言,你可以轻易地算出A01,亦即A矩阵开10次方得出的主根。矩阵的点运算也是相当重要的。所谓点运算即两个矩阵相应元素的运算,如矩阵的点乘AB得出的是A和B对应元素的积,故一般情况下AB不等于AB。点运算的概念又可以容易地用到点乘方上,例如A2,AA等都是可以接受的运算式子。222逻辑运算MATLAB并没有单独定义逻辑变量。在MATLAB中,数值只有0和“非0”的区分。非0往往被认为是逻辑真,或逻辑1。除了单独两个数值的逻辑运算外,还支持矩阵的逻辑运算,如A1350B10531505AELSEIFMARK80DISP 良 ELSEIFMARK70DISP 中 ELSEIFMARK60DISP 及格 ELSEDISP 不及格 END233开关结构开关语句的基本结构为SWITCH开关表达式CASE表达式1语句段1CASE{表达式2,表达式3,,表达式M}NOTES只要满足括号中任意条件,均可执行下面的步骤语句段2OTHERWISE语句段NENDMATLAB开关语句与C有区别无需像C语言那样在下一个CASE语句前加BREAK语句;把一些表达式用大括号括起来,中间用逗号分隔,当需满足表达式之一时执行某一程序段;各个表达式均不满足时,则将执行OTHERWISE语句后面的语句段,此

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值