MATLAB入门教程

MATLAB入门教程
1MATLAB的基本知识
1-1、基本运算与函数   
MATLAB下进行基本数学运算,只需将运算式直接打入提示号(>>)之後,并按入Enter键即可。例如:  
>> (5*2+1.3-0.8)*10/25  
ans =4.2000  
MATLAB会将运算结果直接存入一变数ans,代表MATLAB运算後的答案(Answer)并显示其数值於萤幕上。
小提示: ">>"MATLAB的提示符号(Prompt),但在PC中文视窗系统下,由於编码方式不同,此提示符号常会消失不见,但这并不会影响到MATLAB的运算结果。  
我们也可将上述运算式的结果设定给另一个变数x  
x = (5*2+1.3-0.8)*10^2/25  
x = 42 
此时MATLAB会直接显示x的值。由上例可知,MATLAB认识所有一般常用到的加(+)、减(-)、乘(*)、除(/)的数学运算符号,以及幂次运算(^)。  
小提示: MATLAB将所有变数均存成double的形式,所以不需经过变数宣告(Variable declaration)。MATLAB同时也会自动进行记忆体的使用和回收,而不必像C语言,必须由使用者一一指定.这些功能使的MATLAB易学易用,使用者可专心致力於撰写程式,而不必被软体枝节问题所干扰。   
若不想让MATLAB每次都显示运算结果,只需在运算式最後加上分号(;)即可,如下例:
y = sin(10)*exp(-0.3*4^2);  
若要显示变数y的值,直接键入y即可:  
>>y  
y =-0.0045  
在上例中,sin是正弦函数,exp是指数函数,这些都是MATLAB常用到的数学函数。
下表即为MATLAB常用的基本数学函数及三角函数:  
小整理:MATLAB常用的基本数学函数
abs(x):纯量的绝对值或向量的长度
angle(z):复z的相角(Phase angle)
sqrt(x):开平方
real(z):复数z的实部
imag(z):复数z的虚
conj(z):复数z的共轭复数
round(x):四舍五入至最近整数
fix(x):无论正负,舍去小数至最近整数
floor(x):地板函数,即舍去正小数至最近整数
ceil(x):天花板函数,即加入正小数至最近整数
rat(x):将实数x化为分数表示
rats(x):将实数x化为多项分数展开
sign(x):符号函数 (Signum function)  
x<0时,sign(x)=-1  
x=0时,sign(x)=0;  
x>0时,sign(x)=1  
> 小整理:MATLAB常用的三角函数
sin(x):正弦函数
cos(x):馀弦函数
tan(x):正切函数
asin(x):反正弦函数
acos(x):反馀弦函数
atan(x):反正切函数
atan2(x,y):四象限的反正切函数
sinh(x):超越正弦函数
cosh(x):超越馀弦函数
tanh(x):超越正切函数
asinh(x):反超越正弦函数
acosh(x):反超越馀弦函数
atanh(x):反超越正切函数  
变数也可用来存放向量或矩阵,并进行各种运算,如下例的列向量(Row vector)运算:
x = [1 3 5 2];  
y = 2*x+1  
y = 3 7 11 5  
小提示:变数命名的规则  
1.第一个字母必须是英文字母 2.字母间不可留空格 3.最多只能有19个字母,MATLAB会忽略多馀字母  
我们可以随意更改、增加或删除向量的元素: 
y(3) = 2 % 更改第三个元素  
y =3 7 2 5  
y(6) = 10 % 加入第六个元素  
y = 3 7 2 5 0 10  
y(4) = [] % 删除第四个元素,  
y = 3 7 2 0 10  
在上例中,MATLAB会忽略所有在百分比符号(%)之後的文字,因此百分比之後的文字均可视为程式的注解(Comments)。MATLAB亦可取出向量的一个元素或一部份来做运算: 
x(2)*3+y(4) % 取出x的第二个元素和y的第四个元素来做运算  
ans = 9  
y(2:4)-1 % 取出y的第二至第四个元素来做运算  
ans = 6 1 -1  
在上例中,2:4代表一个由234组成的向量
 
若对MATLAB函数用法有疑问,可随时使用help来寻求线上支援(on-line help):help linspace  
小整理:MATLAB的查询命令
help:用来查询已知命令的用法。例如已知inv是用来计算反矩阵,键入help inv即可得知有关inv命令的用法。(键入help help则显示help的用法,请试看看!) lookfor:用来寻找未知的命令。例如要寻找计算反矩阵的命令,可键入 lookfor inverseMATLAB即会列出所有和关键字inverse相关的指令。找到所需的命令後,即可用help进一步找出其用法。(lookfor事实上是对所有在搜寻路径下的M档案进行关键字对第一注解行的比对,详见後叙。)  
将列向量转置(Transpose)後,即可得到行向量(Column vector):  
z = x'  
z = 4.0000  
   5.2000  
   6.4000  
   7.6000  
   8.8000  
   10.0000   
不论是行向量或列向量,我们均可用相同的函数找出其元素个数、最大值、最小值等: 
length(z) % z的元素个数  
ans = 6  
max(z) % z的最大值  
ans = 10  
min(z) % z的最小值  
ans =   4  
小整理:适用於向量的常用函数有:
min(x): 向量x的元素的最小值
max(x): 向量x的元素的最大值
mean(x): 向量x的元素的平均值
median(x): 向量x的元素的中位数
std(x): 向量x的元素的标准差
diff(x): 向量x的相邻元素的差
sort(x): 对向量x的元素进行排序(Sorting
length(x): 向量x的元素个数
norm(x): 向量x的欧氏(Euclidean)长度
sum(x): 向量x的元素总和
prod(x): 向量x的元素总乘积
cumsum(x): 向量x的累计元素总和
cumprod(x): 向量x的累计元素总乘积
dot(x, y): 向量xy的内
cross(x, y): 向量xy的外积(大部份的向量函数也可适用於矩阵,详见下述。) 
 
 
若要输入矩阵,则必须在每一列结尾加上分号(;),如下例:  
A = [1 2 3 4; 5 6 7 8; 9 10 11 12];   
A =   
1 2 3 4   
5 6 7 8   
9 10 11 12  
同样地,我们可以对矩阵进行各种处理:  
A(2,3) = 5 % 改变位於第二列,第三行的元素值  
A =   
1 2 3 4  
5 6 5 8   
9 10 11 12   
B = A(2,1:3) % 取出部份矩阵B  
B = 5 6 5  
A = [A B'] % B转置後以行向量并入A  
A =   
1 2 3   4 5   
5 6 5   8 6   
9 10 11 12 5  
A(:, 2) = [] % 删除第二行(:代表所有列)  
A =   
1 3 4 5   
5 5 8 6   
9 11 12 5  
A = [A; 4 3 2 1] % 加入第四列   
A =   
1 3   4   5   
5 5   8   6   
9 11 12 5  
4 3   2   1  
A([1 4], :) = [] % 删除第一和第四列(:代表所有行)  
A =   
5 5   8   6   
9 11 12 5  
这几种矩阵处理的方式可以相互叠代运用,产生各种意想不到的效果,就看各位的巧思和创意。  
小提示:在MATLAB的内部资料结构中,每一个矩阵都是一个以行为主(Column-oriented )的阵列(Array)因此对於矩阵元素的存取,我们可用一维或二维的索引(Index)来定址。举例来说,在上述矩阵A中,位於第二列、第三行的元素可写为A(2,3) (二维索引)或A(6)(一维索引,即将所有直行进行堆叠後的第六个元素)。  
此外,若要重新安排矩阵的形状,可用reshape命令:  
B = reshape(A, 4, 2) % 4是新矩阵的列数,2是新矩阵的行数  
B =  
5   8   
9   12   
5   6  
11 5  
小提示: A(:)就是将矩阵A每一列堆叠起来,成为一个行向量,而这也是MATLAB变数的内部储存方式。以前例而言,reshape(A, 8, 1)A(:)同样都会产生一个8x1的矩阵。 
MATLAB可在同时执行数个命令,只要以逗号或分号将命令隔开:  
x = sin(pi/3); y = x^2; z = y*10,
z =   
7.5000  
若一个数学运算是太长,可用三个句点将其延伸到下一行: 
z = 10*sin(pi/3)* ...  
sin(pi/3);  
若要检视现存於工作空间(Workspace)的变数,可键入who  
who  
Your variables are:  
testfile x  
这些是由使用者定义的变数。若要知道这些变数的详细资料,可键入:  
whos  
Name Size Bytes Class 
A 2x4 64 double array  
B 4x2 64 double array  
ans 1x1 8 double array  
x 1x1 8 double array  
y 1x1 8 double array  
z 1x1 8 double array  
Grand total is 20 elements using 160 bytes  
使用clear可以删除工作空间的变数:  
clear A  
A  
??? Undefined function or variable 'A'.  
另外MATLAB有些永久常数(Permanent constants),虽然在工作空间中看不到,但使用者可直接取用,例如:  
pi  
ans = 3.1416  
下表即为MATLAB常用到的永久常数。  
小整理:MATLAB的永久常数 ij:基本虚数单位
eps:系统的浮点(Floating-point)精确度
inf:无限大,例如1/0 nanNaN:非数值(Not a number,例如0/0
pi:圆周率 p= 3.1415926...
realmax:系统所能表示的最大数值 
realmin:系统所能表示的最小数值
nargin: 函数的输入引数个数
nargin: 函数的输出引数个数  
 1-2、重复命令  
最简单的重复命令是for圈(for-loop),其基本形式为:    
for 变数 = 矩阵;   
运算式;   
end  
其中变数的值会被依次设定为矩阵的每一行,来执行介於forend之间的运算式。因此,若无意外情况,运算式执行的次数会等於矩阵的行数。  
举例来说,下列命令会产生一个长度为6的调和数列(Harmonic sequence): 
x = zeros(1,6); % x是一个16的零矩阵  
for i = 1:6,  
x(i) = 1/i;  
end    
在上例中,矩阵x最初是一个16的零矩阵,在for圈中,变数i的值依次是16,因此矩阵x的第i个元素的值依次被设为1/i。我们可用分数来显示此数列:   
format rat % 使用分数来表示数值  
disp(x)  
1 1/2 1/3 1/4 1/5 1/6  
for圈可以是多层的,下例产生一个16Hilbert矩阵h,其中为於第i列、第j行的元素为   
h = zeros(6);  
for i = 1:6,  
for j = 1:6,  
h(i,j) = 1/(i+j-1);   
end   
end   
disp(h)   
1 1/2 1/3 1/4 1/5 1/6  
1/2 1/3 1/4 1/5 1/6 1/7  
1/3 1/4 1/5 1/6 1/7 1/8  
1/4 1/5 1/6 1/7 1/8 1/9   
1/5 1/6 1/7 1/8 1/9 1/10   
1/6 1/7 1/8 1/9 1/10 1/11  
小提示:预先配置矩阵在上面的例子,我们使用zeros来预先配置(Allocate)了一个适当大小的矩阵。若不预先配置矩阵,程式仍可执行,但此时MATLAB需要动态地增加(或减小)矩阵的大小,因而降低程式的执行效率。所以在使用一个矩阵时,若能在事前知道其大小,则最好先使用zerosones等命令来预先配置所需的记忆体(即矩阵)大小。  
 
在下例中,for圈列出先前产生的Hilbert矩阵的每一行的平方和:   
for i = h,  
disp(norm(i)^2); % 印出每一行的平方和  
end  
 
1299/871  
282/551   
650/2343  
524/2933  
559/4431  
831/8801  
在上例中,每一次i的值就是矩阵h的一行,所以写出来的命令特别简洁。  
令一个常用到的重复命令是while圈,其基本形式为:  
while 条件式;  
运算式;  
end 
也就是说,只要条件示成立,运算式就会一再被执行。例如先前产生调和数列的例子,我们可用while圈改写如下:   
x = zeros(1,6); % x是一个16的零矩阵  
i = 1;  
while i <= 6,   
x(i) = 1/i;   
i = i+1;   
end  
format short
  
1-3、逻辑命令  
最简单的逻辑命令是if, ..., end,其基本形式为: 
if 条件式;   
运算式;   
end   
if rand(1,1) > 0.5,   
disp('Given random number is greater than 0.5.');  
end   
Given random number is greater than 0.5.
  
1-4、集合多个命令於一个M档案    
若要一次执行大量的MATLAB命令,可将这些命令存放於一个副档名为m的档案,并在 MATLAB提示号下键入此档案的主档名即可。此种包含MATLAB命令的档案都以m为副档名,因此通称M档案(M-files)。例如一个名为test.mM档案,包含一连串的MATLAB命令,那麽只要直接键入test,即可执行其所包含的命令:  
pwd % 显示现在的目录  
ans =   
D:/MATLAB5/bin  
cd c:/data/mlbook % 进入test.m所在的目录  
type test.m % 显示test.m的内容  
% This is my first test M-file.  
% Roger Jang, March 3, 1997  
fprintf('Start of test.m!/n');  
for i = 1:3,  
fprintf('i = %d ---> i^3 = %d/n', i, i^3);   
end  
fprintf('End of test.m!/n');  
test % 执行test.m   
Start of test.m!  
i = 1 ---> i^3 = 1  
i = 2 ---> i^3 = 8  
i = 3 ---> i^3 = 27  
End of test.m!  
小提示:第一注解行(H1 help line test.m的前两行是注解,可以使程式易於了解与管理。特别要说明的是,第一注解行通常用来简短说明此M档案的功能,以便lookfor能以关键字比对的方式来找出此M档案。举例来说,test.m的第一注解行包含test这个字,因此如果键入lookfor testMATLAB即可列出所有在第一注解行包含testM档案,因而test.m也会被列名在内。  
严格来说,M档案可再细分为命令集(Scripts)及函数(Functions)。前述的test.m即为命令集,其效用和将命令逐一输入完全一样,因此若在命令集可以直接使用工作空间的变数,而且在命令集中设定的变数,也都在工作空间中看得到。函数则需要用到输入引数(Input arguments)和输出引数(Output arguments)来传递资讯,这就像是C语言的函数,或是FORTRAN语言的副程序(Subroutines)。举例来说,若要计算一个正整数的阶乘Factorial),我们可以写一个如下的MATLAB函数并将之存档於fact.m  
function output = fact(n)  
% FACT Calculate factorial of a given positive integer.  
output = 1;   
for i = 1:n,   
output = output*i;   
end   
其中fact是函数名,n是输入引数,output是输出引数,而i则是此函数用到的暂时变数。要使用此函数,直接键入函数名及适当输入引数值即可:  
y = fact(5)  
y = 120  
(当然,在执行fact之前,你必须先进入fact.m所在的目录。)在执行fact(5)时,
MATLAB会跳入一个下层的暂时工作空间(Temperary workspace),将变数n的值设定为5,然後进行各项函数的内部运算,所有内部运算所产生的变数(包含输入引数n、暂时变数i,以及输出引数output)都存在此暂时工作空间中。运算完毕後,MATLAB会将最後输出引数output的值设定给上层的变数y,并将清除此暂时工作空间及其所含的所有变数。换句话说,在呼叫函数时,你只能经由输入引数来控制函数的输入,经由输出引数来得到函数的输出,但所有的暂时变数都会随着函数的结束而消失,你并无法得到它们的值。 
小提示:有关阶乘函数前面(及後面)用到的阶乘函数只是纯粹用来说明MATLAB的函数观念。若实际要计算一个正整数n的阶乘(即n!)时,可直接写成prod(1:n),或是直接呼叫gamma函数:gamma(n-1)  
MATLAB的函数也可以是递式的(Recursive),也就是说,一个函数可以呼叫它本身。
举例来说,n! = n*(n-1)!,因此前面的阶乘函数可以改成递式的写法:  
function output = fact(n)  
% FACT Calculate factorial of a given positive integer recursively.  
if n == 1, % Terminating condition  
output = 1;  
return;  
end  
output = n*fact(n-1);   
在写一个递函数时,一定要包含结束条件(Terminating condition),否则此函数将会一再呼叫自己,永远不会停止,直到电脑的记忆体被耗尽为止。以上例而言,n==1即满足结束条件,此时我们直接将output设为1,而不再呼叫此函数本身。  
 
1-5、搜寻路径  
在前一节中,test.m所在的目录是d:/mlbook。如果不先进入这个目录,MATLAB就找不到你要执行的M档案。如果希望MATLAB不论在何处都能执行test.m,那麽就必须将d:/mlbook加入MATLAB的搜寻路径(Search path)上。要检视MATLAB的搜寻路径,键入path即可: 
path   
MATLABPATH  
d:/matlab5/toolbox/matlab/general  
d:/matlab5/toolbox/matlab/ops  
d:/matlab5/toolbox/matlab/lang  
d:/matlab5/toolbox/matlab/elmat   
d:/matlab5/toolbox/matlab/elfun   
d:/matlab5/toolbox/matlab/specfun   
d:/matlab5/toolbox/matlab/matfun   
d:/matlab5/toolbox/matlab/datafun  
d:/matlab5/toolbox/matlab/polyfun  
d:/matlab5/toolbox/matlab/funfun  
d:/matlab5/toolbox/matlab/sparfun  
d:/matlab5/toolbox/matlab/graph2d  
d:/matlab5/toolbox/matlab/graph3d  
d:/matlab5/toolbox/matlab/specgraph   
d:/matlab5/toolbox/matlab/graphics  
d:/matlab5/toolbox/matlab/uitools  
d:/matlab5/toolbox/matlab/strfun  
d:/matlab5/toolbox/matlab/iofun  
d:/matlab5/toolbox/matlab/timefun  
d:/matlab5/toolbox/matlab/datatypes  
d:/matlab5/toolbox/matlab/dde  
d:/matlab5/toolbox/matlab/demos  
d:/matlab5/toolbox/tour   
d:/matlab5/toolbox/simulink/simulink  
d:/matlab5/toolbox/simulink/blocks  
d:/matlab5/toolbox/simulink/simdemos   
d:/matlab5/toolbox/simulink/dee  
d:/matlab5/toolbox/local  
此搜寻路径会依已安装的工具箱(Toolboxes)不同而有所不同。要查询某一命令是在搜寻路径的何处,可用which命令:   
which expo  
d:/matlab5/toolbox/matlab/demos/expo.m  
很显然c:/data/mlbook并不在MATLAB的搜寻路径中,因此MATLAB找不到test.m这个M档案:  
which test  
c:/data/mlbook/test.m  
要将d:/mlbook加入MATLAB的搜寻路径,还是使用path命令:  
path(path, 'c:/data/mlbook');   
此时d:/mlbook已加入MATLAB搜寻路径(键入path试看看),因此MATLAB已经""得到
test.m:  
which test  
c:/data/mlbook/test.m  
现在我们就可以直接键入test,而不必先进入test.m所在的目录。  
小提示:如何在其启动MATLAB时,自动设定所需的搜寻路径?如果在每一次启动MATLAB後都要设定所需的搜寻路径,将是一件很麻烦的事。有两种方法,可以使MATLAB启动後,即可载入使用者定义的搜寻路径:  
1.MATLAB的预设搜寻路径是定义在matlabrc.m(在c:/matlab之下,或是其他安装MATLAB 的主目录下),MATLAB每次启动後,即自动执行此档案。因此你可以直接修改matlabrc.m ,以加入新的目录於搜寻路径之中。  
2.MATLAB在执行matlabrc.m时,同时也会在预设搜寻路径中寻找startup.m,若此档案存在,则执行其所含的命令。因此我们可将所有在MATLAB启动时必须执行的命令(包含更改搜寻路径的命令),放在此档案中。  
每次MATLAB遇到一个命令(例如test)时,其处置程序为:  
1.test视为使用者定义的变数。
2.test不是使用者定义的变数,将其视为永久常数
3.test不是永久常数,检查其是否为目前工作目录下的M档案。
4.若不是,则由搜寻路径寻找是否有test.m的档案。
5.若在搜寻路径中找不到,则MATLAB会发出哔哔声并印出错误讯息。  
以下介绍与MATLAB搜寻路径相关的各项命令。  
 
 
1-6、资料的储存与载入  
有些计算旷日废时,那麽我们通常希望能将计算所得的储存在档案中,以便将来可进行其他处理。MATLAB储存变数的基本命令是save,在不加任何选项(Options)时,save会将变数以二进制(Binary)的方式储存至副档名为mat的档案,如下述:  
save:将工作空间的所有变数储存到名为matlab.mat的二进制档案。
save filename:将工作空间的所有变数储存到名为filename.mat的二进制档案。 save filename x y z :将变数xyz储存到名为filename.mat的二进制档案。  
以下为使用save命令的一个简例:  
who % 列出工作空间的变数  
Your variables are: 
B h j y  
ans i x z  
save test B y % 将变数By储存至test.mat  
dir % 列出现在目录中的档案  
. 2plotxy.doc fact.m simulink.doc test.m ~$1basic.doc  
.. 3plotxyz.doc first.doc temp.doc test.mat  
1basic.doc book.dot go.m template.doc testfile.dat  
delete test.mat % 删除test.mat  
以二进制的方式储存变数,通常档案会比较小,而且在载入时速度较快,但是就无法用普通的文书软体(例如pe2或记事本)看到档案内容。若想看到档案内容,则必须加上-ascii选项,详见下述:  
save filename x -ascii:将变数x以八位数存到名为filenameASCII档案。
Save filename x -ascii -double:将变数x以十六位数存到名为filenameASCII档案。  
另一个选项是-tab,可将同一列相邻的数目以定位键(Tab)隔开。  
小提示:二进制和ASCII档案的比较save命令使用-ascii选项後,会有下列现象:save命令就不会在档案名称後加上mat的副档名。
因此以副档名mat结尾的档案通常是MATLAB的二进位资料档。
若非有特殊需要,我们应该尽量以二进制方式储存资料。   
load命令可将档案载入以取得储存之变数:  
load filenameload会寻找名称为filename.mat的档案,并以二进制格式载入。若找不到filename.mat,则寻找名称为filename的档案,并以ASCII格式载入。load filename -asciiload会寻找名称为filename的档案,并以ASCII格式载入。  
若以ASCII格式载入,则变数名称即为档案名称(但不包含副档名)。若以二进制载入,则可保留原有的变数名称,如下例:  
clear all; % 清除工作空间中的变数  
x = 1:10;  
save testfile.dat x -ascii % xASCII格式存至名为testfile.dat的档案  
load testfile.dat % 载入testfile.dat  
who % 列出工作空间中的变数  
Your variables are: 
testfile x  
注意在上述过程中,由於是以ASCII格式储存与载入,所以产生了一个与档案名称相同的变数testfile,此变数的值和原变数x完全相同。  
1-7、结束MATLAB  
有三种方法可以结束MATLAB  
1.键入exit
2.键入quit
3.直接关闭MATLAB的命令视窗(Command window  
 
 
 
简单易懂,最适合傻瓜级初学者! 第一章 简介 1.1 计算机应用与工程问题 1.2 工程问题的解决方式 1.3 认识你/你的电脑工作环境 第二章 MATLAB 简介 2.1 什么是MATLAB 2.2 基本功能 2.2.1 MATLAB 的视窗环境 2.2.2 简易数学 2.2.3 变数 2.2.4 其它功能 2.3 线上说明 2.4 阵列与矩阵 2.4.1 简易阵列 2.4.2 建立阵列 2.4.3 阵列运算 2.4.4 特殊矩阵 2.4.5 阵列运算的特色 2.5 简易绘图 2.6 输入及输入 2.6.1 交谈式的输入 2.6.2 输出格式 2.7 如何撰写 MATLAB 程式 2.7.1 如何在自己的目录执行程式 2.8 储存及读取数据 2.9 其它绘图功能 2.10问题范例:涡轮螺旋桨引擎 第三章 进阶的绘图功能 3.1 绘图选项 3.1.1 横轴和纵轴的控制 3.1.2 子图 3.1.3 图形放大及缩小 3.1.4 函数分布的快速绘图 3.1.5 列印功能 3.1.6 其它的功能 3.2 三维绘图 3.1.1 三维的曲线绘图 3.1.2 曲面及等值线绘图 第四章 MATLAB函数 --- 语音讯号分析 4.1 数学函数 4.1.1 常见数学函数 4.1.2 三角和双曲线函数 4.1.3 复数 4.1.4 多项式函数 4.2 数据分析函数 4.2.1 极值、平均、总和、连乘及排序 4.2.2 变异数 4.2.3 长条分布函数 4.3 选择指令及函数 4.3.1 关系及逻辑运算 4.3.2 if-else-end 语法 4.4 范例问题:语音讯号分析 4.5 使用者自定函数 4.6 乱数 4.6.1 均匀乱数 4.6.2 常态乱数 4.7 矩阵运算函数 4.8 回圈 4.8.1 For 回圈 4.8.2 While 回圈 第五章 线性代数与矩阵 --- 蛋白质分子量分析 5.1 矩阵运算 5.1.1 基本矩阵运算元 5.1.2 矩阵多项式 5.2 范例问题:蛋白质的分子量计算 5.3 矩阵函数 5.3.1 反矩阵、矩阵秩与行列式 5.3.2 特徵值与特徵向量 5.3.3 矩阵分解 第六章 解联立方程式 --- 电路分析 6.1 利用矩阵解法 6.2 范例问题:电路分析 第七章 内插及曲线拟合 --- 机械手臂路径 7.1 内插 7.1.1 一维内插 7.1.2 二维内插 7.1.3 Spline 内插 7.2 范例问题:机械手臂路径 7.3 曲线契合 7.3.1 线性回归 7.3.2 多项式回归 7.3.3 多项式契合及函数计算 第八章 解方程式根 8.1 多项式的根 8.2 非线性方程式的实根 第九章 数值微分及积分 --- 管流分析 9.1 数值积分 9.1.1 梯形法 9.1.2 二次函数法 9.2 范例问题:管流分析 9.3 数值微分 9.3.1 差分表示法 9.3.2 差分函数 第十章 解常微分方程式 --- 发动机性能分析 10.1 微分方程式 10.2 阮奇-库达方法 10.3 范例问题:飞机发动机的加速性能分析 10.4 高阶常微分方程式 第十一章 符号运算 --- 气象气球 11.1 符号代数 11.1.1 符号表示式 11.1.2 数学式的化简 11.1.3 符号表示式的运算 11.2 解方程式 11.2.1 一般方程式 11.2.2 常微分方程式 11.3 微分与积分 11.3.1 微分 11.3.2 积分 11.4 范例问题:气象气球
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值