matlab函数coth,matlab函数

读书笔录——matlab函数1

2011-02-25 11:19:50|  分类: 学习 |  标签:|举报|字号

通用指令:

cd显示或改变工作目录 dir显示目录下文件type显示文件内容clear清除内存变量clf清除图形窗口

pack收集内存碎片clc 清除工作窗echo工作窗口信息显示开关hold图形保持开关 disp显示变量或文字内容

path显示搜索目录save 保存内存变量到指定文件load 加载指定文件的变量quit退出matlab!调用doc命令

单元型变量常用函数

cell预分配存储空间生成单元型变量celldisp显示单元型变量的内容cellplot 图形显示单元型变量内容

cell2struct将单元型变量转换为结构型变量 num2cell将数值数组转变为单元型变量cellfun对单元型变量中元素作用的函数    struct 创建结构型变量

向量的生成:生成向量最直接的方法是在命令窗口中直接输入,格式上的要求是,向量元素需要用“[ ]”括起来,元素之间可以用空格、逗号、或者分号分隔,且用逗号和空格分隔生成的是行向量,用分号分隔生成的是列向量。

冒号表达式:基本形式为x=x0 :step:xn,其中x0,step,xn分别是给定的首元素数值、元素之间的间隔、末元素数值。

线性等分向量的生成:利用Linspace,可以生成线性等分向量,例:y=linspace(x1,x2) 生成100维的行向量,使得y(1)=x1,y(100)=x2,y=linspace(x1,x2,n),生成n维等分行向量

向量点积:点积是指两个向量在其中某一个向量上的投影的乘积,dot(a,b) 返回向量a和b的数量点积,a和b必须同维,或者用sum(a.*b)。

eval执行包含MATLAB表达式/命令的字符串

eval(expression) 输入:expression——包含MATLAB表达式的字符串

例:

>>d='cd';

>>eval(d)

E:\matlab65\work

disp显示文本或数组

disp(X)显示一个数组的内容,数组的名称不显示。如果X包含一个文本字符串,则显示该文本字符串

d = det(X)返回方阵X的行列式,如果X是整数矩阵,则结果d也是整数

inv求矩阵的逆矩阵

Y = inv(X)

求方阵X的逆矩阵。如果X是奇异方阵或接近奇异方阵那么输出一个警告信息。

实际上,很少需要用矩阵的逆矩阵。inv函数被频繁滥用当解线性方程A*X = b时。一个方法是用x = inv(A)*b,更好的方法是,无论在执行时间上还是数值精度上,用矩阵除法操作 x = A\b.这是用高斯消元法求解的,没有用到逆矩阵。

LU矩阵分解

矩阵的三角分解有称LU分解,目的是将一个矩阵分解为一个下三角矩阵L和一个上三角矩阵U的乘积,即A=LU。

[L,U] = lu(A) book.iLoveMatlab.cn

U为上三角阵,L为下三角阵或其变换形式,满足LU=X。

[L,U,P] = lu(A)

U为上三角阵,L为下三角阵,P为单位矩阵的行变换矩阵,满足LU=PA.

k

svd命令计算矩阵的奇异值分解。

s = svd(X)

返回由奇异值组成的一个向量s。

[U,S,V] = svd(X)

生成一个与X有相同维数的对角矩阵S,其非负对角元是降序排列的,酉矩阵U和V满足X=U*S*V'。

[U,S,V] = svd(X,0)

生成一个''有效大小''的分解,如果X是m*n的并m>n,则svd仅仅计算U的前n列,S是n*n的。

[U,S,V] = svd(X,'econ')

也生成一个''有效大小''的分解,如果X是m*n的并m>=n,等价于svd(X,0)。如果m

rank函数求矩阵的秩k = rank(A)

返回矩阵A中精度大于默认精度max(size(A))*eps(norm(A))的奇异值的个数。

k = rank(A,tol)

返回矩阵A中大于tol的奇异值的个数。

randn:产生正态分布的随机数或矩阵的函数 产生均值为0,方差 σ^2 = 1,标准差σ = 1的正态分布的随机数或矩阵的函数。

用法:

Y = randn(n)

返回一个n*n的随机项的矩阵。如果n不是个数量,将返回错误信息。

Y = randn(m,n) 或 Y = randn([m n])

返回一个m*n的随机项矩阵。

Y = randn(m,n,p,...) 或 Y = randn([m n p...])

产生随机数组。

Y = randn(size(A))

返回一个和A有同样维数大小的随机数组。

randn

返回一个每次都变化的数量。

s = randn('state')

举例

Example 1. R = randn(3,4) 将生成矩阵

R =

1.1650 0.3516 0.0591 0.8717

0.6268 -0.6965 1.7971 -1.4462

0.0751 1.6961 0.2641 -0.7012

For a histogram of the randn distribution, see hist.

Example 2. 产生一个随机分布的指定均值和方差的矩阵:将randn产生的结果乘以标准差,然后加上期望均值即可。例如,产生均值为0.6,方差为0.1的一个5*5的随机数方式如下:x = .6 + sqrt(0.1) * randn(5)

magic生成幻方

M = magic(n)

生成一个n*n的矩阵,矩阵元素是由整数1到n^2组成的并且任何行任何列的和都相等,阶数n必须是大于等于3的标量。

ones创建元素都为1的数组或矩阵

Y = ones(n) 返回一个元素都为1的n*n矩阵。如果参数n不是一个标量就是报错。

Y = ones(m,n) 或 Y = ones([m n])

返回元素都为1的m*n矩阵,m和n都为标量。

zeros创建元素为零的数组或矩阵B = zeros(n)

返回一个n*n的矩阵,其元素都为零,如果参数n不是一个标量就会报错。《Simulink与信号处理》

B = zeros(m,n) 或 B = zeros([m n])

返回一个m*n的零矩阵

eye生成单位矩阵

Y = eye(n)

生成n*n的单位阵。

Y = eye(m,n)或Y = eye([m n])

生成m*n的单位阵,其中对角线上为1,其他都为0,m,n大小应该为非负整数,负数被认为是0。

abs求绝对值或者复数的模

real求复数的实部

imag求复数的虚部

rref:求行阶梯形式矩阵

R = rref(A)

用高斯-约旦消元法和行主元法求A的行最简行矩阵R。用默认误差(max(size(A))*eps *norm(A,inf))测试可以忽略不计列的元素。

[R,jb] = rref(A)

同时返回向量jb满足:

r = length(jb)是矩阵A的秩;

x(jb)是线性方程Ax = b的主元变量。

A(:,jb)是A的列向量基。

R(1:r,jb)是r*r的单位矩阵。

[R,jb] = rref(A,tol) 用指定精度tol替代默认的。

A = magic(4), R = rref(A)

A =

16 2 3 13

5 11 10 8

9  7  6 12

4  14 15 1

R =

1 0 0 1

0 1 0 3

0 0 1 -3

0 0 0 0

cov(x)返回协方差矩阵

如果x是一个向量,cov(x)返回x中元素的方差。

如果x是一个矩阵,并且是各行为观测值、各列为变量的矩阵,cov(x)计算x的协方差。diag(cov(X))是包含每列的方差的向量,sqrt(diag(cov(X)))是包含标准差的向量。当X和Y是大小相同的矩阵时,cov(X,Y)等价于cov([X(:) Y(:)])。

A = [-1 1 2 ; -2 3 1 ; 4 0 3],对A每一列求方差:

v = diag(cov(A))'

v =

10.3333 2.3333 1.0000

比较v和协方差C:

C=cov(A)

C =

10.3333 -4.1667 3.0000 www.iLoveMatlab.cn

-4.1667  2.3333 -1.5000

3.0000 -1.5000 1.0000

对角元素C(i,i)代表A中每一列的方差,非对角元素代表列i和列j的协方差。

M = mean(A)求数组的平均数或者均值

M = mean(A)

返回沿数组中不同维的元素的平均值。

如果A是一个向量,mean(A)返回A中元素的平均值。

如果A是一个矩阵,mean(A)将中的各列视为向量,把矩阵中的每列看成一个向量,返回一个包含每一列所有元素的平均值的行向量。book.iLoveMatlab.cn

如果A是一个多元数组,mean(A)将数组中第一个非单一维的值看成一个向量,返回每个向量的平均值。

M = mean(A,dim)

返回A中沿着标量dim指定的维数上的元素的平均值。对于矩阵,mean(A,2)就是包含每一行的平均值的列向量。

A = [1 2 3; 3 3 6; 4 6 8; 4 7 7];

mean(A)

ans =

3.0000 4.5000 6.0000

mean(A,2)

ans =

2.0000

4.0000

6.0000

6.0000

R = corrcoef(X)计算相关系数

R = corrcoef(X)

返回相关系数矩阵R,对行是观测值、列是变量的矩阵X计算相关系数得到相关系数矩阵R。 《Simulink与信号处理》

阵R=corrcoef(X)与协方差矩阵C=cov(X)有以下关系:

公式

R = corrcoef(x,y)

如果x和y都是列向量,那么其功能和corrcoef([x y])是相同的。

如果x和y不是列向量,corrcoef函数转化他们为列向量,例如,在这种情况下R=corrcoef(x,y)是等价于R=corrcoef([x(:) y(:)])。

find函数:找出矩阵中不为零的元素[r,c,v] = find(X),r向量为行号,c向量为列号,V向量为对应的元素

s = std(X) 计算标准差

s = std(X,flag,dim)

用指定的标量dim沿着数据X的维数来计算标准差,设置flag为0用n-1去标准化X,设置flag为1用n去标准化。

var:计算方差

V = var(X,w,dim)

沿着指定维数dim求X的方差,默认用N-1标准化这时w为0,w为1时用N标准化

附录1 常用命令

附录1.1 管理用命令函数名 功能描述 函数名 功能描述

addpath 增加一条搜索路径 rmpath 删除一条搜索路径

demo 运行Matlab演示程序 type 列出.M文件

doc 装入超文本文档 version 显示Matlab的版本号

help 启动联机帮助 what 列出当前目录下的有关文件

lasterr 显示最后一条信息 whatsnew 显示Matlab的新特性

lookfor 搜索关键词的帮助 which 造出函数与文件所在的目录

path 设置或查询Matlab路径

附录1.2管理变量与工作空间用命令 函数名 功能描述 函数名功能描述

clear 删除内存中的变量与函数 pack 整理工作空间内存

disp 显示矩阵与文本 save 将工作空间中的变量存盘

length 查询向量的维数 size 查询矩阵的维数

load 从文件中装入数据 who,whos 列出工作空间中的变量名

附录1.3文件与操作系统处理命令 函数名 功能描述 函数名 功能描述

cd 改变当前工作目录 edit 编辑.M文件

delete 删除文件 matlabroot 获得Matlab的安装根目录

diary 将Matlab运行命令存盘 tempdir 获得系统的缓存目录

dir 列出当前目录的内容 tempname 获得一个缓存(temp)文件

! 执行操作系统命令

附录1.4窗口控制命令 函数名 功能描述 函数名 功能描述

echo 显示文件中的Matlab中的命令 more 控制命令窗口的输出页面

format 设置输出格式

附录1.5启动与退出命令 函数名 功能描述 函数名 功能描述

matlabrc 启动主程序 quit 退出Matlab环境

startup

Matlab自启动程序

附录2 运算符号与特殊字符附录

2.1运算符号与特殊字符函数名 功能描述 函数名 功能描述

+ 加 ... 续行标志

- 减 , 分行符(该行结果不显示)

* 矩阵乘 ; 分行符(该行结果显示)

.* 向量乘 % 注释标志

^ 矩阵乘方 ! 操作系统命令提示符

.^ 向量乘方 矩阵转置

kron 矩阵kron积 . 向量转置

\ 矩阵左除 = 赋值运算

/ 矩阵右除 == 关系运算之相等

.\ 向量左除 ~= 关系运算之不等

./ 向量右除 < 关系运算之小于

: 向量生成或子阵提取 <= 关系运算之小于等于

() 下标运算或参数定义 > 关系运算之大于

[] 矩阵生成 >= 关系运算之大于等于

{} & 逻辑运算之与

. 结构字段获取符 | 逻辑运算之或

. 点乘运算,常与其他运算符联合使用(如.\) ~ 逻辑运算之非

xor 逻辑运算之异成

附录2.2逻辑函数 函数名 功能描述 函数名 功能描述

all 测试向量中所用元素是否为真 is*(一类函数)

检测向量状态.其中*表示一个确定的函数(isinf)

any 测试向量中是否有真元素 *isa 检测对象是否为某一个类的对象

exist 检验变量或文件是否定义 logical 将数字量转化为逻辑量

find 查找非零元素的下标

附录3 语言结构与调试

附录3.1编程语言 函数名 功能描述 函数名 功能描述

builtin 执行Matlab内建的函数 global 定义全局变量

eval 执行Matlab语句构成的字符串 nargchk 函数输入输出参数个数检验

feval 执行字符串指定的文件 scrīpt Matlab语句及文件信息

function Matlab函数定义关键词

附录3.2控制流程 函数名 功能描述 函数名 功能描述

break 中断循环执行的语句 if 条件转移语句

case 与switch结合实现多路转移 otherwise 多路转移中的缺省执行部分

else 与if一起使用的转移语句 return 返回调用函数

elseif 与if一起使用的转移语句 switch 与case结合实现多路转移

end 结束控制语句块 warning 显示警告信息

error 显示错误信息 while 循环语句

for 循环语句

附录3.3交互输入 函数名 功能描述 函数名 功能描述

input 请求输入 menu 菜单生成

keyboard 启动键盘管理 pause 暂停执行

附录3.4面向对象编程 函数名 功能描述 函数名 功能描述

class 生成对象 isa 判断对象是否属于某一类

double 转换成双精度型 superiorto 建立类的层次关系

inferiorto 建立类的层次关系 unit8 转换成8字节的无符号整数

inline 建立一个内嵌对象

附录3.5调试 函数名 功能描述 函数名 功能描述

dbclear 清除调试断点 dbstatus 列出所有断点情况

dbcont 调试继续执行 dbstep 单步执行

dbdown 改变局部工作空间内存 dbstop 设置调试断点

dbmex 启动对Mex文件的调试 sbtype 列出带命令行标号的.M文件

dbquit 退出调试模式 dbup 改变局部工作空间内容

dbstack 列出函数调用关系

附录4 基本矩阵与矩阵处理

附录4.1基本矩阵 函数名 功能描述 函数名 功能描述

eye 产生单位阵 rand 产生随机分布矩阵

linspace 构造线性分布的向量 randn 产生正态分布矩阵

logspace 构造等对数分布的向量 zeros 产生零矩阵

ones 产生元素全部为1的矩阵 : 产生向量

附录4.2特殊向量与常量 函数名 功能描述 函数名 功能描述

ans 缺省的计算结果变量 non 非数值常量常由0/0或Inf/Inf获得

computer 运行Matlab的机器类型 nargin 函数中参数输入个数

eps 精度容许误差(无穷小) nargout 函数中输出变量个数

flops 浮点运算计数 pi 圆周率

i 复数单元 realmax 最大浮点数值

inf 无穷大 realmin 最小浮点数值

inputname 输入参数名 varargin 函数中输入的可选参数

j 复数单元 varargout 函数中输出的可选参数

附录4.3时间与日期 函数名 功能描述 函数名 功能描述

calender 日历 eomday 计算月末

clock 时钟 etime 所用时间函数

cputime 所用的CPU时间 now 当前日期与时间

date 日期 tic 启动秒表计时器

datenum 日期(数字串格式) toc 读取秒表计时器

datestr 日期(字符串格式) weekday 星期函数

datevoc 日期(年月日分立格式)

附录4.4矩阵处理 函数名 功能描述 函数名 功能描述

cat 向量连接 reshape 改变矩阵行列个数

diag 建立对角矩阵或获取对角向量 rot90 将矩阵旋转90度

fliplr 按左右方向翻转矩阵元素 tril 取矩阵的下三角部分

flipud 按上下方向翻转矩阵元素 triu 取矩阵的上三角部分

repmat 复制并排列矩阵函数

附录5 特殊矩阵 函数名 功能描述 函数名 功能描述

compan 生成伴随矩阵 invhilb 生成逆hilbert矩阵

gallery 生成一些小的测试矩阵 magic 生成magic矩阵

hadamard 生成hadamard矩阵 pascal 生成pascal矩阵

hankel 生成hankel矩阵 toeplitz 生成toeplitz矩阵

hilb 生成hilbert矩阵 wilkinson 生成wilkinson特征值测试矩阵

附录6 数学函数

附录6.1三角函数 函数名 功能描述 函数名 功能描述

sin/asin 正弦/反正弦函数 sec/asec 正割/反正割函数

sinh/asinh 双曲正弦/反双曲正弦函数 sech/asech 双曲正割/反双曲正割函数

cos/acos 余弦/反余弦函数 csc/acsc 余割/反余割函数

cosh/acosh 双曲余弦/反双曲余弦函数 csch/acsch 双曲余割/反双曲余割函数

tan/atan 正切/反正切函数 cot/acot 余切/反余切函数

tanh/atanh 双曲正切/反双曲正切函数 coth/acoth 双曲余切/反双曲余切函数

atan2 四个象限内反正切函数

附录6.2指数函数 函数名 功能描述 函数名 功能描述

exp 指数函数 log10 常用对数函数

log 自然对数函数 sqrt 平方根函数

附录6.3复数函数 函数名 功能描述 函数名 功能描述

abs 绝对值函数 imag 求虚部函数

angle 角相位函数 real 求实部函数

conj 共轭复数函数

附录6.4数值处理 函数名 功能描述 函数名 功能描述

fix 沿零方向取整 round 舍入取整

floor 沿-∞方向取整 rem 求除法的余数

ceil 沿+∞方向取整 sign 符号函数

附录6.5其他特殊数学函数 函数名 功能描述 函数名 功能描述

airy airy函数 erfcx 比例互补误差函数

besselh bessel函数(hankel函数) erfinv 逆误差函数

bessili 改进的第一类bessel函数 expint 指数积分函数

besselk 改进的第二类bessel函数 gamma gamma函数

besselj 第一类bessel函数 gammainc 非完全gamma函数

bessely 第二类bessel函数 gammaln gamma对数函数

beta beta函数 gcd 最大公约数

betainc 非完全的beta函数 lcm 最小公倍数

betaln beta对数函数 log2 分割浮点数

elipj Jacobi椭圆函数 legendre legendre伴随函数

ellipke 完全椭圆积分 pow2 基2标量浮点数

erf 误差函数 rat 有理逼近

erfc 互补误差函数 rats 有理输出

你可能感兴趣的:(matlab函数coth)