matlab基础Word文件下载.docx

上传人:b****6 文档编号:15724641 上传时间:2022-11-15 格式:DOCX 页数:14 大小:25.40KB
下载 相关 举报
matlab基础Word文件下载.docx_第1页
第1页 / 共14页
matlab基础Word文件下载.docx_第2页
第2页 / 共14页
matlab基础Word文件下载.docx_第3页
第3页 / 共14页
matlab基础Word文件下载.docx_第4页
第4页 / 共14页
matlab基础Word文件下载.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

matlab基础Word文件下载.docx

《matlab基础Word文件下载.docx》由会员分享,可在线阅读,更多相关《matlab基础Word文件下载.docx(14页珍藏版)》请在冰豆网上搜索。

matlab基础Word文件下载.docx

令。

建议要用的时候再利用matlab自带的帮助文档来搜索有用的函数和工具包。

matlab的

函数和命令都是比较人性化的,比如想要搜索读取fits文件的函数,搜索fits就能够搜到

fitsread函数;

需要将读出的fits数据重新做图,搜索image就可以找到imagesc函数。

书和别人的文档都只能学到有限的比较系统的操作,看帮助文档能发现更多的东西并整理

出自己的使用方法。

最后要说明的是,C必须用循环才能做到的事情Fortran和matlab用矩阵和数组运算就能做

到,相对效率提高了很多;

而对于一些运算量非常大的程序还是推荐用Fortran,因为相比

之下matlab的运算速度比Fortran慢很多;

而网上很多现有的天文软件包都是用fortran写

的(比如由宇宙学参数计算模拟数据的CAMB程序和宇宙模型可能性预测LIKELIHOOD程序)

,虽然matlab也有很多天文软件包,但相对fortran还是逊色不少。

1、数据类型,声明及赋初值

matlab中存储的数据类型(class)有以下几种:

而实际上matlab不需要对变量做声明,当它发现一个新的变量名时,将默认将其为双精度

浮点类型(double)并分配内存空间。

(这比C和Fortran方便了许多,但在完成大运算量的

程序时就显得浪费存储空间了)

当需要把变量a从double转为其他类型的时候,比如要转为int16型,可以使用以下命令:

a=int16(a)

当需要创建一个字符型变量x并对其赋初值时,用以下格式:

x='

字符串'

;

注意:

(1)在命令后加“;

”表示不在commandwindow中显示结果,而对上例来说如果不加“;

则会显示所赋字符串内容。

(2)所有的命令必须在英文输入状态下,如果使用中文输入状态下全角的“;

”,将被处

理为非法字符。

其中logical,cell和structure为逻辑,元胞和构架数组类型,将在后面的数组部分提到

functionhandle为函数句柄类型,将在后面的“M脚本文件和M函数文件、函数句柄”部

分提到;

java类供JAVAAPI应用程序接口使用,本文不进行说明。

最后说明一下,matlab也支持复数操作,赋值的时候直接输入即可,比如:

a=1+2i;

2、基本输入输出

输入:

v=input('

message'

) 

%将用户输入的内容赋给变量v

'

s'

%将用户输入的内容作为字符串赋给变量v

keyboard 

%用户可以从键盘输入任意多个指令

v=yesinput('

prompt'

default,possib)

%prompt为文字提示,default为缺省设置“值”,possib为设置值的范围。

%该指令无法在notebook中运行。

输出:

disp(a) 

%显示变量a的内容,另一种显示变量内容的方法是输入变量名,但是这样显示的结果带有

“a=”。

1、运算符

(1)关系操作符

== 

~= 

>

<

(2)涉及相互关系的集合运算符

&

xor

%xor相异元素返回1,相同元素返回0

2、IF

(1)基本:

if逻辑判断式

……

end

(2) 

多重判断:

......

elseif逻辑判断式

else 

逻辑判断式

end

3、switch-case结构

和C的switch语句一样

switch变量

case数值1 

…… 

case数值2

case数值k 

%当变量等于数值k的时候,执行本组命令,然后跳出该结构。

otherwise

%该命令可以不存在,在变量不等于前面所有的检测值的时候,执行此组命

endcase

4、try-catch结构

try 

%只有当matlab执行本组命令发生错误时,后一组命令才会被执行

catch

%如果此组命令执行又出错,matlab将终止该结构。

%可以调用lasterr函数查询出错原因。

如果函数的运行结果为一个空串,则表明这组命令

被成功执行了。

1、while

while表达式

2、for

forx=数值 

%其中的数值可以是数组;

或者是类似下面的表达“1:

4”,表示从1到4循环;

还可以是“

1:

0.1:

4”,表示以0.1为步长从1到4循环。

1、数值数组

matlab中数组不需要声明。

(1)对一维数值数组赋初值

逐个元素输入:

x=[1 

pi/2]

冒号生成:

x=1:

4

定数线性采样法:

x=linspace(a,b,n) 

%相当于第一个数为a,最后一个数为b,以n为采样点数等间距采样。

x=logspace(a,b,n)

%相当于第一个数为10a,最后一个数为10b,以n为采样点数等间距采样。

(2)对一维数值数组的寻访

x(3) 

%寻访第三个元素

x([123]) 

%寻访第1,2,3个元素

x(1:

3) 

%寻访第1到3个元素

x(3:

-1:

1) 

%由前三个元素倒排成子数组

x(find(x>

0.5)) 

%由大于0.5的元素构成的子数组

(3)对二维数值数组赋初值

逐个赋值:

x=[1,2,3;

3,4,6;

7,8,9] 

%“;

”为二维数组“行”的分隔符号,而“,”和空格为同一行元素的分隔符。

整列赋值:

x(:

[4,5])=4 

%第4、5列赋值为4

元素重排:

A=reshape(1:

9,3,3) 

%将1到9重新排列成一个(3*3)矩阵,注意matlab是列“优先”,即先排第一列再排第二

列,而不是按行来排。

(4)二维数组元素的标识和寻访

“全下标”标识:

A(3,5) 

%第3行第5列元素

“单下标”标识:

对于一个(m*n)维数组A中第r行第c列元素,其“单下标”表示为:

A(l)

%这里l=(c-1)*m+r

2、数组运算和矩阵运算

(1)数组运算

指令

含义

A.'

相当于conj(A'

),conj的作用help一下吧……

A=s

把标量s赋给A的每个元素

s+B

标量s分别与B元素之和

s-B,B-s

标量s分别与B元素之差

s.*A

标量s分别与A元素之积

s./B,B.\s

s分别被B的元素除

A.^n

A的每个元素自乘n次

A.^p

对A的各个元素分别求非整数幂

p.^A

以p为底,分别以A的元素为指数求幂

A+B

对应元素相加

A-B

对应元素相减

A.*B

对应元素相乘

A./B

A的元素被B的对应元素除

B.\A

同上

exp(A)

以e为底,分别以A的元素为指数求幂

log(A)

对A的各个元素求对数

sqrt(A)

对A的各个元素求平方根

f(A)

求A各个元素的函数值

A#B

对应元素的关系运算,#代表关系运算符

A@B

对应元素的逻辑运算,@代表逻辑运算符

(2)矩阵运算

A'

共轭转置

s*A

S*inv(B)

B阵的逆乘s

A^n

A阵为方阵时,自乘n次

A^p

方阵A的非整数乘方

p^A

A阵为方阵时,标量的矩阵乘方

矩阵相加

矩阵相减

A*B

矩阵相乘

A/B

A右除B

B\A

A左除B

expm(A)

A的矩阵指数函数

logm(A)

A的矩阵对数函数

sqrtm(A)

A的矩阵平方根函数

funm(A,'

FN'

一般矩阵函数

3、逻辑数组

看例子就明白了:

A=zeros(2,5);

%预生成一个(2*5)全零数组

A(:

)=-4:

5;

%运用“全元素”方法向A赋值

L=abs(A)>

%产生一个与A同维的“0-1”逻辑值数组

islogical(L) 

%判断L是否逻辑值数组。

输出若为1,则是

X=A(L) 

%把L中逻辑值为1对应的A元素取出

4、字符串数组

(1)字符串数组赋初值

S=['

aa'

'

bb'

]

或者:

S=char('

还可以:

S=str2mat('

'

%这里空串会产生空行

而:

S=str2cat('

%这里空串不会产生空行

(2)字符串操作函数

int2str 

%把整数数组转换为串数组

num2str 

%把非整数数组转换为串数组

mat2str 

%把数值数组转换为串数组

%请使用help搜索其他的字符串操作函数。

5、元胞数组

元胞数组和一般数值数组和字符串数组不同,其元素可以是任意类型和大小的对象。

和C的结构型数组有些类似。

(1)创建元胞数组

有以下两种创建方式:

外标识元素赋值:

a=char('

);

b=1:

9;

c=2:

d=[1+2i];

A(1,1)={a};

A(1,2)={b};

A(2,1)={c};

A(2,2)={d};

内涵的直接赋值:

A{1,1}=a;

A{1,2}=b;

A{2,1}=c;

A{2,2}=d;

(2)元胞数组内容的调取

注意在这里()访问的是元胞,用{}访问的是元胞中存储的内容。

比如:

a=A(1,1)

显示:

a=

[12 

char]

a=A{1,1}

aa

bb

所以

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工作范文 > 行政公文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1