搜档网
当前位置:搜档网 › matlab基本【运算符】

matlab基本【运算符】

matlab基本【运算符】
matlab基本【运算符】

基本运算

convhull :凸壳函数

cumprod :累计积

cumsum :累计和

cumtrapz :累计梯形数值积分

delaunay :Delaunay三角化

dsearch :求最近点(这是两个有趣的函数) factor :质数分解

inpolygon :搜索多边形内的点

max :最大元素

mean :平均值

median :数组的中间值

min :最小值

perms :向量所有排列组成矩阵

polyarea :多边形的面积

primes :生成质数列表

prod :数组元素积

sort :元素按升序排列

sortrows :将行按升序排列

std :标准差

sum :元素和

trapz :梯形数值积分

tsearch :搜索Delaunay三角形

var :方差

voronoi :Voronoi图

del2 :Laplacian离散

diff :差分和近似微分

gradient:数值梯度

corrcoef :相关系数

cov :协方差矩阵

xcorr :互相关系数

xcov :互协方差矩阵

xcorr2 :二维互相关

conv :卷积和多项式相乘

conv2 :二维卷积

deconv :反卷积

filter :滤波

filter2 :二维数字滤波

傅立叶变换

abs :绝对值和模

angle :相角

cplxpair :按复共扼把复数分类

fft :一维快速傅立叶变换

fft2 :二维快速傅立叶变换

fftshit :将快速傅立叶变换的DC分量移到谱中央

ifft :以为逆快速傅立叶变换

ifft2 :二维逆快速傅立叶变换

ifftn :多维逆快速傅立叶变换

ifftshift :逆fft平移

nextpow2 :最相邻的2的幂

unwrap :修正相角

cross :向量叉积

intersect:集合交集

ismember :是否集合中元素

setdiff :集合差集

setxor :集合异或(不在交集中的元素)

union :两个集合的并

unique :返回向量作为一个集合所有元素(去掉相同元素)

基本数学函数

abs :绝对值

acos :反余弦

acosh :反双曲余弦函数

acot :反余切

acoth :反双曲线余切

acsc :反余割

acsch :反双曲线余割

angle :相位角

asec :反正割

asech :反双曲线正割

asin :反正弦

asinh :反双曲线正弦

atan :反正切

atanh :反双曲线正切

atan2 :四象限反正切

ceil :向正无穷方向舍入:ceil(4.3)=5

complex : 复数

conj :求共扼

cos :余弦

cosh :双曲余弦

cot :余切

coth :双曲线余切

csc :余割

csch :双曲线余割

exp :指数

fix :向零舍入

floor :向负无穷大舍入

gcd :最大公约数

imag :复数的虚部

lcm :最小公倍数

log :自然对数

log2 :以2为底的对数

log10 :以10为底的对数

mod :模除

nchoosek :二项式系数nchoosek(n,k)=n!/{k!(n-k)!} real :复数实部

rem :余数

round :四舍五入

sec :正割

sech :双曲线正割

sign :符号函数

sin :正弦

sinh :双曲线正弦

sqrt :平方根

tan :正切

tanh :双曲线正切

特殊函数

airy :airy函数

besselh:第三类贝塞尔函数;)

besseli

besselk:改良型besselh函数

besselj

bessely:贝塞尔函数

beta

betainc

betaln :贝塔函数

ellipj :雅克比椭圆函数

ellipke:完全椭圆积分

erf

erfc

erfcx

erfinv :误差函数

expint :指数积分

factorial:阶乘函数

gamma

gammaln

gammainc:伽马函数

legendre:勒让德函数

pow2 :2的幂次

rat

rats :有理逼近

坐标变换

cart2pol :笛卡儿坐标变换为极坐标或圆柱坐标cart2sph :笛卡儿坐标变换为球坐标

pol2cart :极坐标变换为笛卡儿坐标

sph2cart :球坐标变换为笛卡儿坐标

矩阵和数组基础

blkdiag :构造一个分块对角矩阵

eye :创建单位矩阵

linespace :产生线性间隔向量

logspace :产生对数间隔向量

ones :产生元素全为1的数组

rand :产生均匀分布随机数组

randn :产生正态分布随机数组

zeros :产生全零数组

特殊变量和常量

ans :对最近输入的反应

computer :当前计算机类型

eps :浮点精度

flops :计算浮点操作次数,现已不再常用

i :虚部单位

inf :无穷大

inputname :输入参数名

j :虚部单位

nan :非数值

nargin :输入参数的数目

nargout :输出参数的数目(用户定义函数)

pi :圆周率

realmax :最大正浮点数

realmin :最小正浮点数

varargin,varargout:返回参数数目(matlab函数)

时间和日期

calendar :返回日历

clock :当前时间

cputime :从启动经过的cpu时间

date :日期

datenum :转换成连续日期数

datestr :日期字符串

datevec :日期分隔部分

eomday :一个月的日期

etime :经过的时间

now :当前的日期和时间

tic, toc :秒表定时器

weekday :星期几

矩阵操作

cat :把矩阵按行或列连接起来

diag :给定向量,构造对角矩阵

fliplr :矩阵左右翻转

flipud :矩阵上下翻转

repmat :复制数组,repmat(A,m,n)表示把A复制m行n列组成新数组reshape :按逐列来的方式重新整形数组

rot :按逆时针方向旋转90度

tril :返回一个矩阵的下三角矩阵

triu :返回一个矩阵的上三角矩阵

特殊函数矩阵

compan :返回向量的伴随矩阵

eig :矩阵特征值

gallery :测试矩阵,或者说大约50个矩阵模版

hadamard :哈达马得矩阵

hankel :汉克尔矩阵

hilb :希尔波特矩阵

invhilb :逆希尔波特矩阵

magic :魔术方阵

pascal :帕斯卡矩阵

toeplitz :托普利茨矩阵

wilkinson :维尔金森特征值测试矩阵

算数运算符

+:矩阵加

- :减

* :乘

.* :数组乘

^ :矩阵乘方

.^ :数组乘方

\ :矩阵左除

/ :矩阵右除

.\ :数组左除

./ :数组右除

kron :克罗内克张量积

关系运算符

& :逻辑与

| :逻辑或

~ :逻辑非

xor :逻辑异或

∶:冒号,用于创建数组和下表

[] :方括号,构成向量或矩阵

() :圆括号,表示算术表达式优先级、放置函数参数、放置矩阵下标{} :单元数组(cell array)专用

. :句点,小数点表示、数组运算符组成部分、字段(属性)访问

.. :父目录,与cd 一起使用

... :连续三点,一行末尾表示续行

, :逗号,格开参数

; :分号,表示矩阵一行结束或者语句末尾使得执行结果不显示

% :注释符

' :单引号,矩阵后表示转置或者成对出现括起字符串

.' :数组转置

= :赋值

逻辑函数

all :向量中是否所有分量均非零

any :是否有元素非零

exist :指定变量或文件是否存在

find :返回矩阵中非零元素的索引和置

is* :is系列,大部分根据名称可以知道功能

iscell()

iscellstr()

isempty() :是否空数组

isequal() :数组是否相等

isfield() :是否结构数组中的字段

isfinite() :数组中元素是否有限

isglobal() :是否全局变量

ishandle() :是否有效图形句柄

ishold() :hold命令处于on状态与否

isieee :是否使用IEEE算法

isinf() :是否无穷大

isletter() :数组元素是否是字母表中字母

islogical() :是否逻辑数组

isnan() :是否非数值数

isnumeric() :是否数值数组

isobject() :是否对象

isprime() :是否质数

isreal() :是否实数

isspace() :是否空字符

issparse() :是否是按稀疏类别存储

isstruct() :是否结构类

isstudent :matlab版本是否学生版

isunix :是否unix版本

isa() :指定对象是否属于指定类

logical() :把数值数组转变为逻辑数组

A(B) :A为数值数组,B为逻辑数组时,按B索引的非零元素返回A中相应位置元素

mislocked() :当前文件是否锁定

仿真命令:

sim ---仿真运行一个simulink模块

sldebug ---调试一个simulink模块

simset ---设置仿真参数

simget ---获取仿真参数

线性化和整理命令:

linmod ---从连续时间系统中获取线性模型

linmod2 ---也是获取线性模型,采用高级方法

dinmod ---从离散时间系统中获取线性模型

trim ---为一个仿真系统寻找稳定的状态参数

构建模型命令:

open_system --打开已有的模型

close_system --关闭打开的模型或模块

new_system --创建一个新的空模型窗口

load_system --加载已有的模型并使模型不可见

save_system --保存一个打开的模型

add_block --添加一个新的模块

add_line --添加一条线(两个模块之间的连线)

delete_block --删除一个模块

delete_line --删除一根线

find_system --查找一个模块

hilite_system --使一个模块醒目显示

replace_block --用一个新模块代替已有的模块

set_param --为模型或模块设置参数

get_param --获取模块或模型的参数

add_param --为一个模型添加用户自定义的字符串参数

delete_param --从一个模型中删除一个用户自定义的参数

bdclose --关闭一个simulink窗口

bdroot --根层次下的模块名字

gcb --获取当前模块的名字

gcbh --获取当前模块的句柄

gcs --获取当前系统的名字

getfullname --获取一个模块的完全路径名

slupdate --将1.x的模块升级为3.x的模块

addterms --为未连接的端口添加terminators模块

boolean --将数值数组转化为布尔值

slhelp --simulink挠没虻蓟蛘吣?榘镏?nbsp;

封装命令:

hasmask --检查已有模块是否封装

hasmaskdlg --检查已有模块是否有封装的对话框

hasmaskicon --检查已有模块是否有封装的图标

iconedit --使用ginput函数来设计模块图标

maskpopups --返回并改变封装模块的弹出菜单项

movemask --重建内置封装模块为封装的子模块

诊断命令:

sllastdiagnostic --上一次诊断信息

sllasterror --上一次错误信息

sllastwarning --上一次警告信息

sldiagnostics --为一个模型获取模块的数目和编译状态

硬拷贝和打印命令:

frameedit --编辑打印画面

print --将simulink系统打印成图片,或将图片保存为m文件

printopt --打印机默认设置

orient --设置纸张的方向

help rtw看看,rtw相关的命令

有三个命令:

rtwgen -从一个模型中创建一个rtw文件(model.rtw),用此函数可以指定一些rtw的属

性设置

tlc -调用目标语言编译器

rtwbuild -对一个模型调用rtw的build程序

相关的命令好像还有make_rtw,rtw_c,tlc_c

MATLAB运算基础第2章答案

实验01讲评、参考答案 讲评 未交实验报告的同学名单 批改情况: 问题1: 不仔细,式子中出错。 问题2: 提交的过程不完整。 问题3: 使用语句尾分号(;)不当,提交的过程中不该显示的结果显示。 问题4: 截屏窗口没有调整大小。

附参考答案: 实验01 MATLAB 运算基础 (第2章 MATLAB 数据及其运算) 一、实验目的 1、 熟悉启动与退出MATLAB 的方法。 2、 熟悉MATLAB 命令窗口的组成。 3、 掌握建立矩阵的方法。 4、 掌握MATLAB 各种表达式的书写规则以及常用函数的使用。 二、实验内容 1、 数学表达式计算 先求下列表达式的值,然后显示MATLAB 工作空间的使用情况并保存全部变量。 1、1 计算三角函数 12 2sin 851z e =+(注意:度要转换成弧度,e 2如何给出) 示例:点击Command Window 窗口右上角的,将命令窗口提出来成悬浮窗口,适当调 整窗口大小。 命令窗口中的执行过程: 《MATLAB 软件》课内实验 王平

1、2 计算自然对数 221 ln(1)2z x x =++,其中2120.45 5i x +??=??-??(提示:clc 命令擦除命令窗口,clear 则清除工作空间中的所有变量,使用时注意区别,慎用clear 命令。 应用点乘方) 命令窗口中的执行过程: 1、3 求数学表达式的一组值 0.30.330.3sin(0.3)ln , 3.0, 2.9, ,2.9,3.022 a a e e a z a a --+=++=-- 提示:利用冒号表达式生成a 向量,求各点的函数值时用点乘运算。 命令窗口中的执行过程:

实验一 基本信号在MATLAB中的表示和运算

实验一 基本信号在MATLAB 中的表示和运算 一、实验目的 1. 学会用MA TLAB 表示常用连续信号的方法; 2. 学会用MA TLAB 进行信号基本运算的方法; 二、实验原理 1. 连续信号的MATLAB 表示 MATLAB 提供了大量的生成基本信号的函数,例如指数信号、正余弦信号。表示连续 时间信号有两种方法,一是数值法,二是符号法。数值法是定义某一时间范围和取样时间间 隔,然后调用该函数计算这些点的函数值,得到两组数值矢量,可用绘图语句画出其波形; 符号法是利用MATLAB 的符号运算功能,需定义符号变量和符号函数,运算结果是符号表 达的解析式,也可用绘图语句画出其波形图。 例1-1指数信号 指数信号在MATLAB 中用exp 函数表示。 如at Ae t f =)(,调用格式为 ft=A*exp(a*t) 程序是 A=1; a=-0.4; t=0:0.01:10; %定义时间点 ft=A*exp(a*t); %计算这些点的函数值 plot(t,ft); %画图命令,用直线段连接函数值表示曲线 grid on; %在图上画方格 例1-2 正弦信号 正弦信号在MATLAB 中用 sin 函数表示。 调用格式为 ft=A*sin(w*t+phi) A=1; w=2*pi; phi=pi/6; t=0:0.01:8; %定义时间点 ft=A*sin(w*t+phi); %计算这些点的函数值 plot(t,ft); %画图命令 grid on; %在图上画方格 例1-3 抽样信号 抽样信号Sa(t)=sin(t)/t 在MA TLAB 中用 sinc 函数表示。定义为 )/(sin )(πt c t Sa = t=-3*pi:pi/100:3*pi; ft=sinc(t/pi); plot(t,ft); grid on; axis([-10,10,-0.5,1.2]); %定义画图范围,横轴,纵轴 title('抽样信号') %定义图的标题名字 例1-4 三角信号 三角信号在MATLAB 中用 tripuls 函数表示。

matlab中的矩阵的基本运算命令

1.1 矩阵的表示 1.2 矩阵运算 1.2.14 特殊运算 1.矩阵对角线元素的抽取 函数diag 格式X = diag(v,k) %以向量v的元素作为矩阵X的第k条对角线元素,当k=0时,v为X的主对角线;当k>0时,v为上方第k条对角线;当k<0时,v为下方第k条对角线。 X = diag(v) %以v为主对角线元素,其余元素为0构成X。 v = diag(X,k) %抽取X的第k条对角线元素构成向量v。k=0:抽取主对角线元素;k>0:抽取上方第k条对角线元素;k<0抽取下方第k条对角线元素。 v = diag(X) %抽取主对角线元素构成向量v。 2.上三角阵和下三角阵的抽取 函数tril %取下三角部分 格式L = tril(X) %抽取X的主对角线的下三角部分构成矩阵L L = tril(X,k) %抽取X的第k条对角线的下三角部分;k=0为主对角线;k>0为主对角线以上;k<0为主对角线以下。函数triu %取上三角部分 格式U = triu(X) %抽取X的主对角线的上三角部分构成矩阵U U = triu(X,k) %抽取X的第k条对角线的上三角部分;k=0为主对角线;k>0为主对角线以上;k<0为主对角线以下。3.矩阵的变维 矩阵的变维有两种方法,即用“:”和函数“reshape”,前者主要针对2个已知维数矩阵之间的变维操作;而后者是对于一个矩阵的操作。 (1)“:”变维 (2)Reshape函数变维 格式 B = reshape(A,m,n) %返回以矩阵A的元素构成的m×n矩阵B B = reshape(A,m,n,p,…) %将矩阵A变维为m×n×p×… B = reshape(A,[m n p…]) %同上 B = reshape(A,siz) %由siz决定变维的大小,元素个数与A中元素个数 相同。 (5)复制和平铺矩阵 函数repmat 格式 B = repmat(A,m,n) %将矩阵A复制m×n块,即B由m×n块A平铺而成。 B = repmat(A,[m n]) %与上面一致 B = repmat(A,[m n p…]) %B由m×n×p×…个A块平铺而成 repmat(A,m,n) %当A是一个数a时,该命令产生一个全由a组成的m×n矩阵。 1.3 矩阵分解 1.3.1 Cholesky分解 函数chol 格式R = chol(X) %如果X为n阶对称正定矩阵,则存在一个实的非奇异上三角阵R,满足R'*R = X;若X非正定,则产生错误信息。 [R,p] = chol(X) %不产生任何错误信息,若X为正定阵,则p=0,R与上相同;若X非正定,则p为正整数,R是有序的上三角阵。 1.3.2 LU分解

matlab基本运算与函数

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):正弦函数

实验一 MATLAB运算基础

实验一 MATLAB 运算基础 一、实验目的 1.熟悉启动和退出MATLAB 的方法; 2.熟悉MATLAB 命令窗口的组成; 3.掌握建立矩阵的方法; 4.掌握MATLAB 各种表达式的书写规则以及常用函数的使用。 二、实验内容 1.先求下列表达式的值,然后显示MATLAB 工作空间的使用情况并保存全部变量。 ⑴21185sin 2e z +?=; >> z1=2*sin(85*pi/180)/(1+exp(2)) z1 = 0.2375 ⑵)1ln(2122x x z ++=,其中?? ????-+=545.0212i x ; >> x=[2 1+2i;-0.45 5]; >> z2=1/2*log(x+sqrt(1+x^2)) z2 = 0.7114 - 0.0253i 0.8968 + 0.3658i 0.2139 + 0.9343i 1.1541 - 0.0044i ⑶0.3,9.2,8.2,,8.2,9.2,0.3,2 3.0ln )3.0sin(23.03.03 ---=+++-=-a a a e e z a a >> a=(-3.0:0.1:3.0); >> z3=(exp(0.3.*a)-exp(-0.3.*a))./2.*sin(a+0.3)+log((0.3+a)./2) z3 = Columns 1 through 3 0.7388 + 3.1416i 0.7696 + 3.1416i 0.7871 + 3.1416i Columns 4 through 6 0.7913 + 3.1416i 0.7822 + 3.1416i 0.7602 + 3.1416i Columns 7 through 9

MatLab基本运算

MatLab & 数学建模 第一讲简介及基本运算 一、简介 MATLAB名字由MATrix和 LABoratory 两词的前三个字母组合而成。那是20世纪七十年代后期的事:时任美国新墨西哥大学计算机科学系主任的Cleve Moler教授出于减轻学生编程负担的动机,为学生设计了一组调用LINPACK和EISPACK库程序的“通俗易用”的接口,此即用FORTRAN编写的萌芽状态的MATLAB。 经几年的校际流传,在Little的推动下,由Little、Moler、Steve Bangert合作,于1984年成立了MathWorks公司,并把MATLAB正式推向市场。从这时起,MATLAB的内核采用C语言编写,而且除原有的数值计算能力外,还新增了数据图视功能。 MATLAB以商品形式出现后,仅短短几年,就以其良好的开放性和运行的可靠性,使原先控制领域里的封闭式软件包(如英国的UMIST,瑞典的LUND和SIMNON,德国的KEDDC)纷纷淘汰,而改以MATLAB为平台加以重建。在时间进入20世纪九十年代的时候,MATLAB 已经成为国际控制界公认的标准计算软件。 在欧美大学里,诸如应用代数、数理统计、自动控制、数字信号处理、模拟与数字通信、时间序列分析、动态系统仿真等课程的教科书都把MATLAB作为内容。这几乎成了九十年代教科书与旧版书籍的区别性标志。在那里,MATLAB是攻读学位的大学生、硕士生、博士生必须掌握的基本工具。 在国际学术界,MATLAB已经被确认为准确、可靠的科学计算标准软件。在许多国际一流学术刊物上,(尤其是信息科学刊物),都可以看到MATLAB的应用。 在设计研究单位和工业部门,MATLAB被认作进行高效研究、开发的首选软件工具。如美国National Instruments公司信号测量、分析软件LabVIEW,Cadence公司信号和通信分析设计软件SPW等,或者直接建筑在MATLAB之上,或者以MATLAB为主要支撑。又如HP公司的VXI硬件,TM公司的DSP,Gage公司的各种硬卡、仪器等都接受MATLAB的支持。 MATLAB具有用法简易、可灵活运用、程式结构强又兼具延展性。以下为其几个特色: ?功能强的数值运算 - 在MATLAB环境中,有超过500种数学、统计、科学及工程方面的函数可使用,函数的标示自然,使得问题和解答像数学式子一般简单明了,让使用者可全力发挥在解题方面,而非浪费在电脑操作上。 ?先进的资料视觉化功能 - MATLAB的物件导向图形架构让使用者可执行视觉数据分,并制作高品质的图形,完成科学性或工程性图文并茂的文章。 ?高阶但简单的程式环境 - 作为一种直译式的程式语言,MATLAB容许使用者在短时间内写完程式,所花的时间约为用 FORTRAN 或 C 的几分之一,而且不需要编译 (compile)及联结 (link) 即能执行,同时包含了更多及更容易使用的内建功能。 ?开放及可延伸的架构 - MATLAB容许使用者接触它大多数的数学原使码,检视运算法,更改现存函数,甚至加入自己的函数使 MATLAB成为使用者所须要的环境。 ?丰富的程式工具箱 - MATLAB的程式工具箱融合了套装前软体的优点,与一个灵活的开放但容易操作之环境,这些工具箱提供了使用者在特别应用领域所需之许多函数。现有工具箱有:符号运算(利用Maple V的计算核心执行)、影像处理、统计分析、讯号处理、神经网路、模拟分析、控制系统、即时控制、系统确认、强建控制、弧线分析、最佳化、模糊逻辑、mu分析及合成、化学计量分析。 二、MatLab界面

(完整版)matlab基础练习题及答案

第1章MATLAB基础 1.4 MATLAB操作桌面有几个窗口?如何使某个窗口脱离桌面成为独立窗口?又如何将脱离出去的窗口重新放置到桌面上? 答:在MATLAB操作桌面上有五个窗口。在每个窗口的右上角有两个小按钮,一个是关闭窗口的Close 按钮,一个是可以使窗口成为独立窗口的Undock按钮,点击Undock按钮就可以使该窗口脱离桌面成为独立窗口。在独立窗口的Desktop菜单中选择Dock...项就可以将独立的窗口重新放置到桌面上。 1.5 如何启动M文件编辑/调试器? 答:在操作桌面上选择“建立新文件”或“打开文件”操作时,M文件编辑/调试器将被启动。在命令窗口中键入edit命令时也可以启动M文件编辑/调试器。 1.6 存储在工作空间中的数组能编辑吗?如何操作? 答:存储在工作空间的数组可以通过数组编辑器进行编辑:在工作空间浏览器中双击要编辑的数组名打开数组编辑器,再选中要修改的数据单元,输入修改内容即可。 1.7 命令历史窗口除了可以观察前面键入的命令外,还有什么用途? 答:命令历史窗口除了用于查询以前键入的命令外,还可以直接执行命令历史窗口中选定的内容、将选

定的内容拷贝到剪贴板中、将选定内容直接拷贝到M 文件中。 1.8 如何设置当前目录和搜索路径,在当前目录上的文件和在搜索路径上的文件有什么区别? 答:当前目录可以在当前目录浏览器窗口左上方的输入栏中设置,搜索路径可以通过选择操作桌面的file 菜单中的Set Path 菜单项来完成。在没有特别说明的情况下,只有当前目录和搜索路径上的函数和文件能够被MATLAB 运行和调用,如果在当前目录上有与搜索路径上相同文件名的文件时则优先执行当前目录上的文件,如果没有特别说明,数据文件将存储在当前目录上。 1.9 在MATLAB 中有几种获得帮助的途径? 答:(1)帮助浏览器:选择view 菜单中的Help 菜单项或选择Help 菜单中的MATLAB Help 菜单项可以打开帮助浏览器。 (2)help 命令:在命令窗口键入“help ” 命令可以列出帮助主题,键入“help 函数名”可以得到指定函数的在线帮助信息。 (3)lookfor 命令:在命令窗口键入“lookfor 关键词”可以搜索出一系列与给定关键词相关的命令和函数。 (4)模糊查询:输入命令的前几个字母,然后按Tab 键,就可以列出所有以这几个字母开始的命令和函数。 注意:lookfor 和模糊查询查到的不是详细信息,通常还需要在确定了具体函数名称后用help 命令显示详细信息。 第2章 MATLAB 矩阵运算基础 2.1 在MATLAB 中如何建立矩阵?? ? ? ??194375,并将其赋予变量a ? 答:在Command Window 窗口输入操作:

实验一 MATLAB 运算基础

实验一MATLAB 运算基础 二、1(3) for a=-0.3:0.1:3.0 z3=((exp(0.3*a)-exp(-0.3*a)))/2*sin(a+0.3)+log((0.3+a)/2); disp('z3='); disp(z3); end 结果是: z3=-Inf,-3.0017,-2.3085,-1.8971,-1.5978,-1.3575,-1.1531,-0.9723,-0.8083,-0.6567,-0.5151,-0.381 9,-0.2561,-0.1374,-0.0255,0.0792,0.1766,0.2663,0.3478,0.4206,0.4841,0.5379,0.5815,0.6145,0.63 66,0.6474,0.6470,0.6351,0.6119,0.5777,0.5327,0.4774,0.4126,0.3388 二、1(4) for t=0:0.5:2.5; if 0<=t&t<1 z4=t*t; disp('z4=t*t='); disp(z4); end if 1<=t&t<2 z4=t*t-1; disp('z4=t*t-1='); disp(z4); end if 2<=t&t<3 z4=t*t-2*t+1; disp('z4=t*t-2*t+1='); disp(z4); end end 结果:z4=t*t=0 z4=t*t=0.2500 z4=t*t-1=0 z4=t*t-1=1.2500 z4=t*t-2*t+1=1 z4=t*t-2*t+1=2.2500 二、4(1) data=0; for t=100:999 if rem(t,21)==0; data=data+1; end end disp('100到999之间能被21整除的数的个数是:') disp(data); 结果:100到999之间能被21整除的数的个数是:43 二、4(2)

实验一 MATLAB基本操作及运算

实验一 MATLAB 基本操作及运算 一、 实验目的 二、 实验的设备及条件 三、 实验内容 1、 建立以下标量: 1) a=3 2) ,(j 为虚数单位) 3) c=3/2πj e 2、 建立以下向量: 1) Vb= 2.71382882????????-???? 2) Vc=[4 3.8 … -3.8 -4 ] (向量中的数值从4到-4,步长为-0.2) 3、 建立以下矩阵: 1) 3333Ma ????=?????? L M O M L Ma 为一个7×7的矩阵,其元素全为3. 2) 111912129210 20100Mb ??????=?????? L O M M O M L

Mb 为一个10×10的矩阵. 3) 114525173238Mc ????=?????? 4、 使用题1中的变量计算下列等式的x,y,z 的值: 1) ((15)/6)111a x e --=+ 2) 2x π= 3) 3ln([()()]sin(/3))x b c b c a π=+-R ,其中R 表示复数实部。 5、 求解函数值22/(2.25)ct y e -=,其中c 取值见题1,t 的取值范围为题2中行 向量Vc 。 6、 使用题1和题3中所产生的标量和矩阵计算等式 1()()T Mx a Mc Mc Mc -=?? 其中*为矩阵所对应行列式的值,参考det 。 7、 函数的使用和矩阵的访问。 1) 计算矩阵Mb 每一列的和,结果应为行向量形式。 2) 计算整个矩阵Mb 的平均值。 3) 用向量[1 1…1] 替换Mb 的最上一行的值 4) 将矩阵Mb 的第2~5行,第3到9列的元素所构成的矩阵赋值给矩阵 SubMb 。 5) 删除矩阵Mb 的第一行; 6) 使用函数rand 产生一个1×10的向量r ,并将r 中值小于0.5的元素设置 为0。 8、 已知CellA (1, 1)=‘中国’,CellA (1,2)=‘北京’,CellA (2,1) 是一个3乘3的单位阵,CellA (2, 2)=[1 2 3],试用MATLAB 创建一个2×2的细胞数组CellA 。 9、 已知结构数组student 中信息包含有姓名,学号,性别,年龄和班级,试 用MATLAB 创建相应的结构数组student 。该数组包含有从自己学号开始连续5个同学的信息(如果学号在你后面的同学不足5个则往前排序),创建完成后查看自己的信息。

基于MATLAB的图像处理的基本运算

课程设计任务书 学生姓名:专业班级: 指导教师:工作单位: 题目: 基于MATLAB的图像处理的基本运算 初始条件: 要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求) (1)能够对图像亮度和对比度变化调整,并比较结果 (2)编写程序通过最近邻插值和双线性插值等算法将用户所选取的图像区域进行放大和缩小整数倍的和旋转操作,并保存,比较几 种插值的效果 (3)图像直方图统计和直方图均衡,要求显示直方图统计,比较直方图均衡后的效果。 (4)对图像加入各种噪声,比较效果。 时间安排: 指导教师签名:年月日 系主任(或责任教师)签名:年月日

目录 摘要..................................................................................................................................................... - 2 -1 MATLAB简介 ................................................................................................................................... - 2 -2图像选择及变换.............................................................................................................................. - 3 -2.1 原始图像选择读取.................................................................................................................. - 3 - 2.1.1 原理图的读入与基本变换 ............................................................................................... - 3 - 2.1.2 程序源代码及调试结果 ................................................................................................... - 4 - 2.2 转换图像为灰阶图像.............................................................................................................. - 6 - 3 图像处理及代码程序 ..................................................................................................................... - 6 -3.1 图像亮度对比度调整.............................................................................................................. - 7 - 3.1.1 函数说明及参数选择....................................................................................................... - 7 - 3.1.2 源程序及运行结果........................................................................................................... - 7 -3.2 图像放大和缩小...................................................................................................................... - 8 - 3.2.1 函数说明及参数选择....................................................................................................... - 8 - 3.2.2 源程序及运行结果........................................................................................................... - 8 -3.3 图像任意角度的旋转.............................................................................................................. - 9 - 3.3.1 函数说明及参数旋转....................................................................................................... - 9 - 3.3.2 源程序及运行结果........................................................................................................... - 9 -3.4图像直方图统计和均衡......................................................................................................... - 10 - 3.4.1 函数说明及参数选择..................................................................................................... - 10 - 3.4.2 源程序及运行结果......................................................................................................... - 11 -3.5 图像加入噪声........................................................................................................................ - 13 - 3.5.1 函数说明及参数选择..................................................................................................... - 13 - 3.5.2 源程序及运行结果......................................................................................................... - 13 - 4 图像处理结果比较分析 ............................................................................................................... - 16 -4.1 调整对比度和亮度后图像比较 ............................................................................................ - 16 -4.2 图像放大缩小及旋转后比较 ................................................................................................ - 16 -4.3 进行直方图均衡后图像比较 ................................................................................................ - 17 -4.4加入各种噪声后图像比较 ..................................................................................................... - 18 -5感悟体会小结................................................................................................................................ - 19 -参考文献........................................................................................................................................... - 20 -

练习一:matlab基本运算

2.1 在MA TLAB 中如何建立矩阵?? ? ? ??194375,并将其赋予变量a ? >> a=[5 7 3;4 9 1] 2.3 在进行算术运算时,数组运算和矩阵运算各有什么要求? 进行数组运算的两个数组必须有相同的尺寸。进行矩阵运算的两个矩阵必须满足矩阵运算规则,如矩阵a 与b 相乘(a*b )时必须满足a 的列数等于b 的行数。 2.4 数组运算和矩阵运算的运算符有什么区别? 在加、减运算时数组运算与矩阵运算的运算符相同,乘、除和乘方运算时,在矩阵运算的运算符前加一个点即为数组运算,如a*b 为矩阵乘,a.*b 为数组乘。 2.5 计算矩阵??????????897473535与???? ? ?????638976242之和。 >> a=[5 3 5;3 7 4;7 9 8]; >> b=[2 4 2;6 7 9;8 3 6]; >> a+b ans = 7 7 7 9 14 13 15 12 14 2.7 计算???? ??=572396a 与?? ? ???=864142b 的数组乘积。 >> a=[6 9 3;2 7 5]; >> b=[2 4 1;4 6 8]; >> a.*b ans = 12 36 3 8 42 40 2.8 “左除”与“右除”有什么区别? 在通常情况下,左除x=a\b 是a*x=b 的解,右除x=b/a 是x*a=b 的解,一般情况下,a\b ≠b/a 。

2.9 对于B AX =,如果??????????=753467294A ,???? ? ?????=282637B ,求解X 。 >> A=[4 9 2;7 6 4;3 5 7]; >> B=[37 26 28]’; >> X=A\B X = -0.5118 4.0427 1.3318 2.10 已知:???? ? ?????=987654321a ,分别计算a 的数组平方和矩阵平方,并观察其结果。 >> a=[1 2 3;4 5 6;7 8 9]; >> a.^2 ans = 1 4 9 16 25 36 49 64 81 >> a^ 2 ans = 30 36 42 66 81 96 102 126 150 2.11 ? ? ?? ??=654321a ,??? ???-=263478b ,观察a 与b 之间的六种关系运算的结果。 >> a=[1 2 3;4 5 6]; >> b=[8 –7 4;3 6 2]; >> a>b ans = 0 1 0 1 0 1 >> a>=b ans =

实验二 MATLAB运算基础

实验二、MATLAB 运算基础 一、 实验目的 1.熟悉启动和退出MATLAB 的方法。 2.熟悉MATLAB 命令窗口的组成。 3.掌握建立矩阵的方法。 4.掌握MATLAB 各种表达式的书写规则以及常用函数的使用。 二、 实验内容及结果 1.先求出下列表达式的值,然后显示MATLAB 工作空间的使用情况并保存全部变量。 (1)2 1e 185sin 2z +? = (2))(22x 1x ln 21 z ++= ,其中??????+=545 .0-i 212x (3)2 a 3.0ln 3.0a sin 2e -e z a 3.0-a 3.03+++=)(,a=-0.3,-2.9,-2.8,…,2.8,2.9,3.0 提示:利用冒号表达式生成a 向量,求各点的函数值时用点乘运算。

(4)?? ? ??<≤+-<≤-<≤=32,1221,110,z 2224t t t t t t t ,其中t=0:0.5:2.5 提示:用逻辑表达式求分段函数值。 2.已知: ??????????=7653877344-3412A ,?? ?? ? ?????=72-33021-31B 求下列表达式的值: (1)A+6*B 和A-B+I (其中I 为单位矩阵) (2)A*B 和A.*B (3)A^3和A.^3 (4)A/B 及B\A (5)[A,B]和[A([1,3],:);B^2] 程序:

结果:

3.设有矩阵A 和B ??? ???? ???? ?? ???=2524 23222120191817161514 13121110987654321A ,????? ??? ????????=111340794-23096-171603B (1)求它们的乘积C 。

(完整版)第一讲Matlab基本数值计算.doc

2012 年数学建模培训材料——Matlab 软件的使用 第一讲Matlab基本数值计算 一、矩阵 在Matlab 中,一个矩阵可以使数学意义上的矩阵,也可以是标量或者向量。对于一个标量(一个数)可以将之作为 1 1的矩阵,而向量(一行或一列)则可以认为是 1 n 或者 n 1的矩阵。另外,一个 0 0 矩阵在 Matlab 中被认为是空矩阵,用“[] ”表示。 1、矩阵的创建 矩阵的创建可以有以下几种形式 ⑴直接输入 >> A=[1 2 3;4 3 7;2 4 1] 注意:每行间的元素用逗号或空格分开,行与行之间用分号或回车分开,矩阵标示是一对中括号[ ] 。 也可以采用数组编辑器(Array Editor )像在 Excel 电子表格中据那样输入数据。 ⑵通过语句和函数产生 常用的特殊矩阵: zeros:全零矩阵 ,ones:全 1 矩阵, eye:单位矩阵, rand:随机矩阵, diag:对角阵等。 例: >> A=ones(3,4) >>E=eye(3) >>D=diag([3 5 2]) ⑶对矩阵进行裁剪或拼接 ⑷从外部文件装入数据

外部数据文件可以是以保存的Matlab 工作空间,也可以是文本(.txt)文件,或者是电子表格创建的文件( .xls). 例:已知一个文本格式的数据文件 E:\Mathmodel\data1.txt >> load e:\Mathmodel\data1.txt 得到一个变量名与文件名相同的矩阵(data1)。注意:文件的扩展名不能省略。 例:已知一个 Excel 文件的路径为E:\Mathmodel\data2.xls a. 缺省操作 : >> NUMBER=xlsread('E:\Mathmodel\data2.xls') >>[NUMBER,TXT]=xlsread('E:\Mathmodel\data2.xls') 默认操作是从第一个工作表(sheet1)中提取数据。 b.从指定的工作表(而不是第一个)中提取数据: >> NUMBER=xlsread('E:\Mathmodel\data2.xls','S2') 或者 >>NUMBER=xlsread('E:\Mathmodel\data2.xls',2) c.从指定的工作表中读取指定区域的数据: >>NUMBER=xlsread('E:\Mathmodel\data2.xls',2,'g3:i8') 2、Matlab 的矩阵运算 ⑴基本运算 矩阵的加( +)、减( -)、乘( * )、乘方( ^)运算法则与代数中的定义完全一致。例如: >>A=[1 2;3 4];B=[3 1;4 8];

MATLAB矩阵运算基础练习题

第2章 MATLAB 矩阵运算基础 在MATLAB 中如何建立矩阵?? ?? ??194375,并将其赋予变量a 请产生一个100*5的矩阵,矩阵的每一行都是[1 2 3 4 5] 产生一个1x10的随机矩阵,大小位于(-5 5) 有几种建立矩阵的方法各有什么优点 可以用四种方法建立矩阵: ①直接输入法,如a=[2 5 7 3],优点是输入方法方便简捷; ②通过M 文件建立矩阵,该方法适用于建立尺寸较大的矩阵,并且易于修改; ③由函数建立,如y=sin(x),可以由MATLAB 的内部函数建立一些特殊矩阵; ④通过数据文件建立,该方法可以调用由其他软件产生数据。 在进行算术运算时,数组运算和矩阵运算各有什么要求 进行数组运算的两个数组必须有相同的尺寸。进行矩阵运算的两个矩阵必须满足矩阵运算规则,如矩阵a 与b 相乘(a*b )时必须满足a 的列数等于b 的行数。 数组运算和矩阵运算的运算符有什么区别 在加、减运算时数组运算与矩阵运算的运算符相同,乘、除和乘方运算时,在矩阵运算的运算符前加一个点即为数组运算,如a*b 为矩阵乘,a.*b 为数组乘。 计算矩阵??????????897473535与???? ??????638976242之和,差,积,左除和右除。 求?? ?? ??+-+-+-+-++=i 44i 93i 49i 67i 23i 57i 41i 72i 53i 84x 的共轭转置。 计算???? ??=572396a 与??????=864142b 的数组乘积。 “左除”与“右除”有什么区别 在通常情况下,左除x=a\b 是a*x=b 的解,右除x=b/a 是x*a=b 的解,一般情况下,a\bb/a 。 对于B AX =,如果??????????=753467294A ,???? ??????=282637B ,求解X 。 已知:???? ??????=987654321a ,分别计算a 的数组平方和矩阵平方,并观察其结果。 ??????-=463521a ,?? ????-=263478b ,观察a 与b 之间的六种关系运算的结果。

相关主题