第一篇:Matlab软件函数

一、软件操作函数

1)命令窗口函数:

clc:清空命令窗口,使用向上箭头翻看命令。

open:打开文件,文本文件(*.doc),可执行文件(*.exe),图形文件(*.fig),超文本文件(*.html,*.htm),MATLAB数据库文件(*.mat),simulink模型文件*.mdl),MATLAB p文件(*.p),PDF文件(*,pdf),PPT文件(*.ppt),工程文件(*.prj),网址(*.url)和变量等。

format:设置数据输出格式。format('command')

disp:在commandwindow中显示字符和矩阵。

disp(x)---x为矩阵

disp('x')---x为字符

disp(['x' a 'y'])---打印字符合集

clear:从工作空间中清空变量。clear, clear name,clear global name, clear –regexpexpr1 expr2

clear:清空工作空间的所有变量

clear name---clear('name'):清空以name命名的m文件,mex文件或变量名

clear globe name:完全清空以name命名的全局变量,清空后该全局变量不能被函数调用。

2)帮助函数

demo:通过help浏览器访问工具箱的演示文件。---demo'MATLAB'

doc:在help浏览器中打开相应帮助页面。

help:在MATLAB命令窗口中显示MATLAB的m函数,mdl文件,工具箱等的帮助信息。

二、文件编程函数

1)文件目录操作函数

dir:显示当前工作空间目录文件   dir; dirname;

files=dir('directory'):返回指定目录中的文件信息到结构体file中,结构体file中包含的信息为:name,data,bytes,isdir,datenum

2)文件编辑调试函数

dbstep:从当前断点中执行一行或多行代码  dbstep; dbstep nlines;dbstep in

dbstop:设置断点    dbstop inmfile  ; dbstop in mfile at lineno

debug:列举出m文件的调试函数

mlint:检查m文件可能出现的问题,并报告结果---mlint('m-filename')

profile:调试优化m文件代码---界面Desktop--Profiler

3)文件脚本函数

function:声明函数   function [out1, out2, ...]=funname(in1,in2,...):定义一个名为funname的函数,该函数输入参数为in1、in2、……输出参数为out1、out2、……

input:请求用户输入   user_entry=input('prompt') :在屏幕上显示prompt作为提示,等待键盘输入,并返回用户输入的值。user_entry=input('prompt','s'):将键入的字符返回为文本变量而非变量名或数值。

4)语句控制函数

break:终止执行for循环或者while循环, break语句结束循环,把语句控制返回给循环结束后的语句。

continue:传递控制给下一个for或while循环

case:条件为真时执行代码,case是switch语法中的允许有条件执行语句的一部分。case语句块由case函数,case表达式和其后的一条或多条语句构成。

switch:有条件执行的代码,在基本语法中,当switch_expr ==case_expr时执行相关语句,如果没有实例表达式与switch表达式相匹配,则语句控制传递给otherwise语句块。

实例:

 
  1. method='bigger';

  2. switch method

  3. case'bigger'

  4. a=3;

  5. case'middle'

  6. a=2;

  7. case'small'

  8. a=1;

  9. otherwise

  10. a=0;

  11. end

If:如果条件为真,则执行相关语句   if expression, statements, end

elseif:---if expression1,statement1,elseifexpresstion,statement2,end

else:如果条件为假时执行语句

end:终止代码块,或为数组的最后一位数字索引, end用来终止for、while、switch、try和if语句---end函数也作为数组的最后一个索引,如X(3:end)和X(1,1:2:end-1)。可以用end增加数组,如X存在的情况下使用X(end+1)=5。

error:显示信息并终止函数---error('说明信息')

for:反复运算指定代码块  forvariable=initval:endval, statements, end

while:当条件为真时重复执行语句---whileexpression,statement,end

return:从调用函数中返回

5)内存控制函数

global:声明全局变量   初始化为一个空矩阵

isglobal:判断一个变量是否是全局变量

persistent:定义静态全局常量

第二篇:数据类型函数

三、基本数据类型函数

1)数值函数

double:转换为双精度浮点数

single:转换为单精度浮点数

typecast:在不改变数据大小情况下转换数据类型  Y=typecast(X,type)

type可选范围:'uint8'、'int8'、'uint16'、'int16'、'uint32'、'int32'、'uint64'、'int64'、'single'、'double'

arrayfun:把函数应用到数组中的每个元素 A=arrayfun(fun, S)应用fun函数到数组S中的每个元素,将结果返回给数组A。

A=arrayfun(fun, S, T, …)

实例:

  1.  
    x(1).f1=2;x(2).f1=3;
  2.  
    x(1).f2=3;x(2).f2=3;
  3.  
    result=arrayfun(@(x)isequal(x.f1,x.f2),x)

cast:转变数值数据类型  B=cast(A,newclass)

实例:

 
  1. a=int16(2);

  2. b=cast(a,'char');

  3. cate=class(b)

cat:连接数组   C=cat(dim, A,B)--cat(2,A,B)与[A,B]相同,cat(1,A,B)与[A;B]相同

class:创建对象或者返回对象类型   obj=class(s,'class_name')

find:寻找非零元素的索引和值

ind=find(X);X可以是逻辑式,返回非零元素的索引

ind=find(X, k, 'first') 返回数组X中所有非零元素的前k个元素。

ind=find(X, k, 'last')  返回数组X中所有非零元素的后k个元素。

[row,col,v]=find(X,...)返回列向量,行向量,v表示非零值

isequal :判断两个对象是否相等 比较结构体是否相等时,结构体中子域的顺序不重要  NaNs在此函数中认识不相等---isequal(A,B,...)相同返回1,不同返回0

isequalwithequalnans:把NaN视为相等的情况下判断两个数组是否相等

2)字符串转化数值函数

base2dec :把指定进制的数字字符串转换为十进制数  d=base2dec('strn', base)

bin2dec :把二进制数字字符串转换为十进制数  bin2dec(binarystr)

hex2dec :把十六进制数字字符串转换为十进制数  d=hex2dec('hex_value')

hex2num :把十六进制数字字符串转换为双精度浮点数 n=hex2num(S)

str2double :把字符串转换为双精度浮点数

str2num :把字符串转换为数字

3)数值转化为字符串函数

dec2base:把十进制数转换为指定基下的数值字符串 str=dec2base(d, base)

dec2bin :把十进制数转换为二进制数值字符串

dec2hex :把十进制数转换为十六进制的数值字符串

int2str :把整数转换为字符串

mat2str :把矩阵转换为字符串

num2str :把数字转换为字符串

四、高级数据类型函数

1)结构体函数

cell2struct :把元胞数组转换成结构体数组 s=cell2struct(c, fields,dim) fields指结构体数组的域名,fields可以说字符数组或者字符串元胞数组。

size(c,dim)==length(fields)%如果fields是元胞数组 size

(c,dim)==size(fields,1)%如果fields是字符数组

实例:

 
  1. c={'Tom','math',80;'Jane','math',70}

  2. feilds={'name','subject','grade'};

  3. s=cell2struct(c,fields,2)

struct:创建结构体数组 s=struct('field1', values1, 'field2',values2, ...)

struct2cell :把结构体数组转换为元胞数组

structfun :把函数应用于结构体中的每一个子域 A=structfun(fun, s)

2)元胞数组函数

cell :创建元胞数组    c=cell(n)c=cell(m,n)

celldisp :显示元胞数组的内容

cellfun :把函数应用于元胞数组中的每个元素  A=cellfun(fun, C, D,...)

cellplot :以图形形式显示元胞数组的结构

实例:

 
  1. c{1,1}='2-by-2';c{1,2}='eigenvalues ofeye(2)';

  2. c{2,1}=eye(2);c{2,2}=eig(eye(2));

  3. cellplot(c)

cellstr :根据字符串数组创建字符串元胞数组

mat2cell :把矩阵分割为元胞数组  c=mat2cell(x,m, n)

num2cell :把数值数组转变为元胞数组   C=num2cell(A)

3)字符串函数

func2str :根据函数句柄构建函数名称字符串  s=func2str(fhandle)

char :把整数数组转化为字符串  S=char(X)

eval :执行包含MATLAB表达式的字符串  eval(expression)

findstr :在长字符串中寻找匹配的短字符串,返回字符串索引

sprintf :把一定格式把数据写入字符串   [s, errmsg]=sprintf(format,A, ...)

strcat :水平连接字符串   t=strcat(s1,s2, s3, ...)

strcmp,strcmpi :比较字符串---strcmp('str1','str2')相同返回1,不同返回0

strings函数:连接字符串name=['abc' 'def' 'ghj']

strread :从字符串中读取指定格式数据

strrep :发现和替换子字符串   str=strrep(str1, str2, str3) ---将str1内的所有子字符串str2替换为str3

strtrim :删除字符串开头和结尾的空字符

blanks :创建空格字符串数组

isletter :判断字符串中字符是否为英文字母

isspace :判断字符串中字符是否为空格

isstrprop :判断字符串中是否含有指定类别的字符tf=isspace('str')

dblank :删除字符串末尾空格

第三篇:矩阵函数

五、数组和矩阵函数

1)数组基本函数

display:显示字符或者数组

isempty :判断数组是否为空,空返回1,不空返回0

isequal :判断数组是否相同 (认为NaN不同)

isequalwithequalnans:判断数组是否相同,把NaN看成相同的数

isfinite :判断数组元素是否为有限数

isfloat :判断数组元素是否为浮点数

isinf :判断数组元素是否为无限数

isinteger :判断元素是否为整数

islogical :判断元素是否为逻辑变量

isnan :判断元素是否为NaN

isnumeric :判断数组元素是否为数值

isscalar :判断输入是不是离散量

issparse :判断矩阵是否为稀疏矩阵

isvector :判断输入是否为向量

length :计算向量的长度

max :找出向量中的最大元素

C=max(A) A为一个向量,返回向量最大值,矩阵A,返回每列向量最大值

C=max(A,B) A、B维数一样,返回对应位置最大元素

max(A,[],dim)

[C,I]=max(A)找出最大值和索引

min :找出向量中的最小元素

ndims :计算矩阵的维数   ndims同length(size(x)) 一致

numel:计算数组中元素的个数或者下标数组表达式的个数

size :计算数组维数大小  d=size(X) [m,n]=size(X)m行n列 m=size(X,dim)

2)数组操作函数

bsxfun:两个数组间元素逐个计算  C=bsxfun(fun,A,B)

@plus(加)@minus(减)@times(数组乘)@rdivide(左除)@ldivide(右除)@power(幂)@max@min@rem(整除)@mod(模除)

dot :向量点乘 C=dot(A,B)

3)基础矩阵函数

create :生成随机数流   [s1,s2,…]=RandStream.create('gentype','NumStreams',n)

eye :生成单位矩阵 Y=eye([m,n])对角线1,其他0

ones :生成元素为1的数组  Y=ones(n) Y=ones(m,n)

rand :生成均匀分布的伪随机数矩阵 r=rand(n) rand(m,n,p,…)

randi :生成均匀分布的伪随机整数矩阵 randi(imax) r=randi(imax,n)

r=randi(imax,m,n,p,…) r=randi([imin,imax],…) 例:r=randi([5,10],[2,3])

randn :生成[-1,1]之间随机分布数矩阵 r=randn(n) randn(m,n)randn(m,n,p,…)

randstream :生成随机数据流

set (RandStream) :设置随机数据流属性set(S,'PropertyName',Value)

set(S,'Property')

4)矩阵处理函数

reshape :改变矩阵维数   B=reshape(A,m,n)

sort :把数组元素按升序或降序排列

B=sort(A,dim) B=sort(...,mode) [B,IX]=sort(A,2)返回B元素在A中的位置的索引

sortrows :矩阵行按照升序排列

5)矩阵分析函数

det :求方阵行列式值

norm :计算向量或者矩阵范数   n=norm(A) n=norm(A,p)

normest :返回矩阵2-范数估计值

null :计算矩阵零空间

rank :返回矩阵的秩

subspace :返回两个子空间夹角

trace :返回矩阵的迹对角元素之和

6)矩阵特征值函数

eig :计算矩阵特征值和特征向量

condeig :计算特征值对应的条件数

eigs :计算矩阵的最大特征值和特征向量

gsvd :矩阵广义奇异值分解

svd :矩阵奇异值分解

第四篇 数学函数

六、基本数学函数

1)基本运算符

+:加法运算符

-:减法运算符

*:矩阵乘法

.*:数组乘法

/:斜杠或者矩阵右除   B/A等于公式B*inv(A)

./:数组右除    A./B等于A(i,j)/B(i,j)

\:反斜杠或者矩阵左除    A\B等于inv(A)*B

.\:数组左除     A.\B等于B(i,j)/A(i,j)

^:矩阵幂计算

.^:数组幂计算    A.^B等于A(i,j)的B(i,j)次幂

’:矩阵转置

[]:表示空矩阵,A(m,:)删除A中的一行,A(:,n)删除A中的一列

{}:元胞组赋值

关系操作符:< <= > >= == ~ =

逻辑操作符 : 逻辑:&&  ||  数组:&  |  ~

2)数据操作函数

sort :数组元素按升序或降序排列  B=sort(A) B=sort(A,dim) B=sort(...,mode)[B,IX]=sort(A,...)

sortrows :把矩阵中每行按照升序排列   B=sortrows(A) B=sortrows(A,column)

sum :求数列元素的和   B=sum(A) A是向量,向量求和,A是矩阵就没列求和 B=sum(A,dim)

3)统计分析函数

brush:交互式标记、删除、修改以及保存图片中的观测量位   data brush

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

cov :返回协方差矩阵  cov(x)

max :求数组中的最大元素     C=max(A) C=max(A,B) C=max(A,[],dim)

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

median :返回数组的中间值  M=median(A) M=median(A,dim)

mode :求数组中出现频率最多的值    M=mode(X) M=mode(X, dim)

[M,F]=mode(X, ...)

std :计算标准差 s=std(X)

var :计算方差  V=var(X)

4)三角函数

acos :以弧度的形式返回反余弦值

实例:

 
  1. x=-1:.05:1;

  2. plot(x,acos(x));grid on

acosd :以角度的形式返回反余弦值

acosh :以弧度形式返回反双曲余弦值

acot :以弧度的形式返回反余切值

acotd :以角度的形式返回反余切值

acoth :以弧度的形式返回反双曲余切值

acsc :以弧度的形式返回反余割值

acscd :以角度的形式返回反正割值

acsch :以弧度的形式反双曲余割值

asec :以弧度的形式返回反正割值

asecd :以角度的形式返回反正割值

asech :以弧度的形式返回反双曲正割值

asin :以弧度的形式返回反正弦值

asind :以角度形式返回反正弦值

asinh :以弧度的形式返回反双曲正弦值

atan :以弧度的形式返回反正切值

atand :以角度的形式返回反正切值

atanh :以弧度的形式返回反双曲正切值

cos :以弧度的形式返回输入的余弦值

cosd :以角度的形式返回输入的余弦值

cosh :以弧度的形式返回输入的双曲余弦值

cot :以弧度的形式返回输入的余切

cotd :以角度的形式返回输入的余切值

coth :以弧度的形式返回输入的双曲余切值

csc :以弧度的形式返回输入的余割值

cscd :以角度形式返回输入的余割值

csch :以弧度的形式返回双曲余割值

sec :以弧度的形式返回输入的正割值

secd :以角度的形式返回输入的正割值

sech :以弧度的形式返回双曲正割值

sin :以弧度的形式返回输入的正弦

sind :以角度的形式返回输入的正弦值

sinh :以弧度的形式返回输入的双曲正弦值

tan :以弧度的形式返回输入的正切值

tand :以角度的形式返回输入的正切值

tanh :以弧度的形式返回双曲正切

5)指数函数

exp :计算指数

log :计算自然对数

log10 :计算平凡对数(以10为底)

log2 :计算以2为底数的对

pow2 :计算以2为底的幂

nthroot:计算实数值的实n阶方根。y=nthroot(X,n)

sqrt :计算平方根

abs :计算绝对值和复数模值

6)除法函数

ceil :向正无穷方向舍入

fix :向零方向舍入

floor :向负无穷方向舍入

idivide :舍入操作   C=idivide(A,B, opt)

mod :计算相除后的模值

7)排列函数

factorial:阶乘---factorial(N),N!

perms:元素所有可能的全排列

七、高级数学函数

1)微分方程解函数

decic :计算和ode15i(ode常微分方程)相容的初始条件

[y0mod,yp0mod]=decic(odefun,t0,y0,fixed_y0,yp0,fixed_yp0)

deval :计算微分方程的解     sxint=deval(sol,xint)   sol是求解器返回的结构体,(ode45, ode23, dde23  xint是点或向量,函数求解的是该点上的值。

deval :计算微分方程的解     sxint=deval(sol,xint)

2)极值函数

fminbnd :在指定区间上求解单变量函数的最小值x=fminbnd(fun,x1,x2)x=fminbnd(fun,x1,x2,options)   结构体options用于指定优化参数

[x,fval]=fminbnd(...)     [x,fval,exitflag]=fminbnd(...)

[x,fval,exitflag,output]=fminbnd(...)

fminsearch :利用derivative-free算法求无约束多变量函数的最小值

x=fminsearch(fun,x0)x=fminsearch(fun,x0,options)

[x,fval,exitflag]=fminsearch(...)

fzero:求单变量连续函数的零值点 x=fzero(fun,x0) x=fzero(fun,x0,options)

isqnonneg :求解非负最小二乘法约束问题

x=lsqnonneg(C,d)返回一个向量x,满足x >= 0时(C*x-d)的范数最小。

x=lsqnonneg(C,d,x0) x=lsqnonneg(C,d,x0,options)

3)数值积分函数

dblquad :计算矩形区域的二重定积分

q=dblquad(fun,xmin,xmax,ymin,ymax)

q=dblquad(fun,xmin,xmax,ymin,ymax,tol)q=dblquad(fun,xmin,xmax,ymin,ymax,tol,method)

quad :求基于变步长Simpson法的函数定积分数值解  q=quad(fun,a,b)

实例:

  1.  
    F=@(x)1./(x.^3-2*x-5);
  2.  
    Q=quad(F,0,2)

quad2d :在平面区域求二重积分的数值解    q=quad2d(fun,a,b,c,d)

实例:Q=quad2d(@(x,y)y.*sin(x)+x.*cos(y),pi,2*pi,0,pi)

4)微分积分函数

dblquad :计算矩形区域的二重定积分 q=dblquad(fun,xmin,xmax,ymin,ymax)

cumtrapz :累积梯形数值积分  Z=cumtrapz(Y)Z=cumtrapz(X,Y) 对于多维数组从第一维开始计算  Z=cumtrapz(X,Y,dim)

diff :差分与微分近似  Y=diff(X) Y=diff(X,n) Y=diff(X,n,dim)

gradient :计算函数数值梯度   FX=gradient(F) [FX,FY]=gradient(F)

实例:绘制函数z=exp(-x.^2-y.^2)的梯度图形。

 
  1. v=-2:0.2:2;

  2. [x,y]=meshgrid(v);

  3. z=exp(-x.^2-y.^2);

  4. [px,py]=gradient(z,0.2,0.2);

  5. contour(v,v,z)

  6. hold on

  7. quiver(v,v,px,py)

trapz :梯形数值积分  Z=trapz(Y) Z=trapz(X,Y) Z=trapz(...,dim)

5)赋值函数

biltin:重载方法中执行MATLAB内部自带的函数   builtin(...) 函数和 feval(...)函数相同

evalc :计算表达式值   T=evalc(S):同函数eval(S)用法相同

feval :计算函数值    [y1, y2, ...]=feval(fhandle, x1, ..., xn)

第五篇:方程函数

八、插值函数、线性方程解函数和多项式函数

1)插值函数

interp1q :1维快速线性插值法 yi=interp1q(x,Y,xi)

interp1q正常执行条件:

(1)x单调递增列向量

(2)Y为列向量or行数为length(x)(3)xi为列向量,如果xi值在x的坐标范围外,返回NaN

实例:

 
  1. x=(-5:0.5:5)';

  2. y=sin(x);

  3. xi=(-5:0.5:5)';

  4. yi=interp1q(x,y,xi);

  5. plot(x,y,'o',xi,yi)

interp2 :2维数据插值法

ZI=interp2(X,Y,Z,XI,YI)

ZI=interp2(Z,XI,YI)

ZI=interp2(X,Y,Z,XI,YI,method)

(1)‘nearest’:最邻近插值法;

(2)‘linear’:线性插值法(默认插值方法);

(3)‘spline’:三次样条插值法;

(4)’cubic’:三次插值法

实例:

 
  1. [X,Y]=meshgrid(-2:0.5:2);

  2. Z=peaks(X,Y);

  3. [XI,YI]=meshgrid(-2:0.125:2);

  4. ZI=interp2(X,Y,Z,XI,YI);

  5. mesh(X,Y,Z)

  6. hold on

  7. mesh(XI,YI,ZI+10)

interp3 :3维数据插值法

VI=interp3(X,Y,Z,V,XI,YI,ZI)

VI=interp2(X,Y,Z,V,XI,YI,ZI,method)

(1)‘nearest’:最邻近插值法;

(2)‘linear’:线性插值法(默认插值方法);

(3)‘spline’:三次样条插值法;

(4)’cubic’:三次插值法

interpft :基于FFT方法的1维插值法 y=interpft(x,n) y=interpft(x,n,dim)

实例:

 
  1. y=[1 2 3 2 1 23];

  2. N=length(y);

  3. L=5;

  4. M=N*L;

  5. x=0:L:L*N-1

  6. xi=0:M-1

  7. yi=interpft(y,M)

  8. plot(x,y,'o',xi,yi,'*')

interpn :n维数据插值(表格查询)VI=interpn(X1,X2,X3,...,V,Y1,Y2,Y3,...)

meshgrid :为3维绘图生成X和Y矩阵

[X,Y]=meshgrid(x,y) [X,Y,Z]=meshgrid(x,y,z)

ndgrid :生成可为函数和插值算法使用的n维矩阵

[X1,X2,X3,...]=ndgrid(x1,x2,x3,...)

实例:

 
  1. [X1,X2]=ndgrid(-1:0.1:1,-1:0.1:1);

  2. Z=exp(-X1.^2-X2.^2);

  3. mesh(Z)

pchip :分段三次厄密插值多项式(PCHIP) yi=pchip(x,y,xi)pp=pchip(x,y)

实例:

 
  1. x=-4:4

  2. y=[-3 -2 -2 0 0 0 2 2 3];

  3. t=-4:0.01:4;

  4. p=pchip(x,y,t);

  5. s=spline(x,y,t);

  6. plot(x,y,'o',t,p,'-',t,s,'-.')

  7. legend('data','pchip','spline',4)

spline :曲线三次样条插值   yy=spline(x,Y,xx)   pp=spline(x,Y)

实例:

 
  1. x=0:10;

  2. y=cos(x);

  3. xx=0:0.1:10;

  4. yy=spline(x,y,xx);

  5. plot(x,y,'o',xx,yy)

2)线性方程解函数

linsolve :使用部分主元LU因子分解法求解线性方程组    X = linsolve(A,B)  [X, R] = linsolve(A,B)   X = linsolve(A,B,opts)

lscov :已知协方差时求解方程的最小二乘解

x = lscov(A,b)    线性方程组A*x = b的一般最小二乘解

x = lscov(A,b,w)   线性方程组A*x = b的加权最小二乘解

x = lscov(A,b,V)    线性方程组A*x = b 的广义最小二乘解

x =lscov(A,b,V,alg)

bicg :求解线性方程的双共轭梯度法

x=bicg(A,b) bicg(A,b,tol)bicg(A,b,tol,maxit)

bicg(A,b,tol,maxit,M1,M2)bicg(A,b,tol,maxit,M1,M2,x0)[x,flag]=bicg(A,b,...)

[x,flag,relres]=bicg(A,b,...)[x,flag,relres,iter]=bicg(A,b,...)

[x,flag,relres,iter,resvec]=bicg(A,b,...)

bicgstab :求解线性方程的稳定的双共轭梯度法

bicgstabl :求解线性方程的双共轭梯度l稳定法

bicgstab :求解线性方程的稳定的双共轭梯度法

bicgstabl :求解线性方程的双共轭梯度l稳定法

cgs :求解线性方程的共轭梯度平方法

gmres :求线性方程的广义最小残差法

lsqr :求解线性方程的LSQR 方法

minres :求解线性方程的最小残差法

pcg :求解线性方程的预处理共轭梯度法

qmr :求解线性方程的准最小残差法

symmlq :求解线性方程的对称 LQ 法

tfqmr :求解线性方程的自由转置准最小残差法

3)多项式函数

polyfit :多项式拟合

p=polyfit(x,y,n) 根据拟合数据x,y求n阶多项式p(x)的系数,p是系数

[p,S]=polyfit(x,y,n) p是系数,使用S和多项式的值能得到误差估计值或预测

实例:

 
  1. x=(-3:0.2:3)';

  2. y=erf(x);

  3. p=polyfit(x,y,3)

  4. f=polyval(p,x);

  5. plot(x,y,'*',x,f,'-')

polyval :多项式求值     y=polyval(p,x)

poly :根据根求解多项式

polyder :解析求解多项式微分表达式k=polyder(p) k=polyder(a,b)

polyint :解析求解多项式积分表达式系数   polyint(p,k)

mkpp :构建分段多项式   pp=mkpp(breaks,coefs)

breaks是一个长度为L+1的向量,该向量元素严格递增。coefs为L*k的矩阵,每行元素代表

[breaks(i),breaks(i+1)]的k阶多项式的系数。

十一、基本文件操作函数

1)文件创建函数

filemaker :把文件名与文件中函数名分开 。

filesep :文件目录分隔。

fileparts :把目标文件名拆分成字符串形式输出 。

tempdir :返回系统暂存地址名 。

tempname :返回系统暂存文件名 。

fullfile :创建文件名

2)文件打开、读取、存储函数

open:打开文件 ---用法:open('name')

load :将文件导入到MATLABworkspace中。loadfilename load filename X Y Z,

load-asciifilename ,load-mat filename,load('arg1', 'arg2', 'arg3', ...)

save:存储文件.save filename, save filename content, savefilename options

save('filename', 'var1', 'var2', ...)

daqread :读数据采集工具箱(.daq)中的文件 。

[data, time, abstime, events, daqinfo]= daqread('filename')

uiimport :调用文件导入助手

3)简单文件输入输出函数

fopen :打开文件。

fid = fopen(filename)

fid = fopen(filename,permission)

Permission值

打开模式

‘r’

只读模式

‘w’

可写入模式,覆盖已有内容

‘a’

可写入模式,写入数据到文件末尾

‘r+’

可读写模式,

‘w+’

可写入模式,覆盖已有内容

‘a+’

可写入模式,写入数据到文件末尾

‘A’

无自动删除添加

‘W’

无自动删除写入

fclose  关闭文件。status=fclose(fid) ,status=fclose('all')

fprintf:以指定格式将数据写入文件 。count = fprintf(fid, format, A, ...)

实例:

 
  1. x=1:0.1:2;

  2. y=[x,sin(x)];

  3. fid=fopen('sin.txt','wt');

  4. fprintf(fid,'%5.2f %5.6f\n',y);

  5. fclose(fid)

fscanf :以指定格式读取文件中的内容 。A =fscanf(fid, format) , [A,count] = fscanf(fid, format, size)

fread :读取文件中的二进制数据 。A =fread(fid, count ,precision, skip, machineformat)

fwrite :将二进制数据写入到文件中 。

fseek :设置文件位置指针 。status = fseek(fid,offset, origin)

ftell :获取文件位置指针 。position = ftell(fid)

fwind :把文件位置指针移动到文件起始位置 。fwind(fid)

fgetl :按行读取文件内容,并删去换行符 。tline = fgetl(fid)

fgets :按行读取文件内容,并保留换行符 。tline = fgets(fid, nchar)

frewind :将文件指针移到文件的起始位置。 frewind(fid)

feof :测试是否为文件的末尾 。message = ferror(fid)

ferro :测试文件输入输出是否有错误 。message = ferror(fid,'clear') , [message,errnum] = ferror(...)

disp :将目标文件所包含的信息以不同形式显示,如文本、数组等形式。

disp(obj)

4)电子表格操作函数

xlsfinfo :检测文件中是否包含Microsoft Excel电子表格文件 。

typ = xlsfinfo(filename) [typ,desc, fmt] = xlsfinfo(filename)

xlsread :读Microsoft Excel电子表格文件中的内容 。

num = xlsread(filename),num = xlsread(filename,sheet),num =xlsread(filename, range),num = xlsread(filename, sheet, range, 'basic')

[num,txt,raw,X]=xlsread(filename,sheet, range, 'basic')

xlswrite :将数据写入Microsoft Excel电子表格文件中 。

xlswrite(filename, M),xlswrite(filename, M, sheet, range),

[status, message] = xlswrite(filename, ...)

wk1finfo :检测文件中是否包含Lotus 1-2-3 WK1电子表格。

[extens, typ] = wk1finfo(filename)

wk1read :读取Lotus 1-2-3 WK1电子表格文件 。

M = wk1read(filename) ,M = wk1read(filename,r,c,range)

wk1write :将数据写入Lotus1-2-3 WK1电子表格文件中 。

wk1write(filename,M,r,c)

【转载】matlab常用函数的更多相关文章

  1. matlab 常用函数

    Matlab常用函数 Matlab的内部常数  eps   浮点相对精度  pi  圆周率  exp  自然对数的底数e  i 或j  虚数单位  Inf或 inf  无穷大 Matlab概率密度函数 ...

  2. MATLAB常用函数, 常见问题

    MATLAB常用函数 1.常用取整函数 round(x):四舍五入函数 floor(x) : 向下取整, 即 floor(1.2)=1,  floor(1.8) = 1 ceil(x) : 向上取整, ...

  3. Matlab常用函数集锦

    ndims(A)返回A的维数size(A)返回A各个维的最大元素个数length(A)返回max(size(A))[m,n]=size(A)如果A是二维数组,返回行数和列数nnz(A)返回A中非0元素 ...

  4. matlab 常用函数(数学建模-复习)

    常用函数 fscanf(fid, '%c', inf) -> 直接读取整个文件, 因为inf表示无穷 strtrim char(num): 将num转为ASCII字符 strtok(conten ...

  5. MATLAB常用函数

      Matlab的内部常数 pi                   圆周率 exp(1)             自然对数的底数e i 或j                虚数单位 Inf或 inf ...

  6. MATLAB常用函数(不定时更新)

    1.pause 一般情况下pause(a)表示程序暂停a秒后继续执行,但有时候也存在这种情况,程序中只有pause:并没有参数a,这样的意思是程序暂停,按任意键程序继续执行.2.uiwait(h,ti ...

  7. matlab 常用函数汇总

    1. 特殊变量与常数 主题词 意义 主题词 意义 ans 计算结果的变量名 computer 确定运行的计算机 eps 浮点相对精度 Inf 无穷大 I 虚数单位 inputname 输入参数名 Na ...

  8. Matlab常用函数:二进制和十进制转换,均值,方差

    文章目录 Size s=size(A) [r,c]=size(A) [r,c,m]=size(A) size(A,n) 二进制和十进制转换 dec2bin mean 均值 mean(a,1) mean ...

  9. Matlab常用函数(1)

    1.max() C = max(A)     A为向量,返回最大值.若为矩阵,以类向量为基准,返回每列的最大值的行向量.若为多维矩阵.切片返回每一个2维矩阵的行向 量. C = max(A,B)   ...

  10. matlab进阶:常用功能的实现,常用函数的说明

    常用功能的实现 获取当前脚本所在目录 current_script_dir = fileparts(mfilename('fullpath')); % 结尾不带'/' 常用函数的说明 bsxfun m ...

随机推荐

  1. Eclipse设置背景色等

    1.设置背景色 a.Window->Preferences->General->Editors->Text Editors b.选择Background color选择自定义颜 ...

  2. css3中-webkit是什么意思

    在CSS样式中很多样式名前缀都带有'-webkit-',但在CSS提供的API中查询不到这些样式名. 原因:CSS3中新增了一些属性,针对不同的浏览器,规定其内核名称让它们可以对这些新增属性进行解析. ...

  3. C#消息泵探索(一)

    ​消息泵 消息泵,又叫消息循环. 消息循环使用一个图形化用户界面下Microsoft Windows.具有GUI的Windows 程序是由事件驱动的.Windows为每个创建窗口的线程维护一个单独的消 ...

  4. Winform帮助文档(C#打开chm定位到特定页面)国内最全总结写法。原文文档带翻译

    下面比较啰嗦,只一句即可:Help.ShowHelp(null,"C:\help.hcm", HelpNavigator.Topic,"index.htm")方 ...

  5. Spring Boot上传文件功能的开发

    Spring Boot上传文件功能的开发 Spring Boot使用Servlet 3的API javax.servlet.http.Part来支持文件上传.Spring Boot在类Multipar ...

  6. go interface nil 比较

    package main import "fmt" type MyselfError struct{} func (m *MyselfError) Error() string { ...

  7. 解决 django channel: zadd() got an unexpected keyword argument 'daphne.response.HzSXMUhzYL!QSfUgrDObf'

    在stackoverflow上找到答案 If you are using Redis version 3.0 or above, it will not work with channels vers ...

  8. 2345 ip

    121.201.101.43 img1.2345.com121.201.101.43 img2.2345.com121.201.101.43 img3.2345.com121.201.101.43 i ...

  9. Oracle 低版本客户端连接19C报错ORA-28040

    # 适用范围12.2+# 问题概述客户使用Oracle11.2客户端连接Oracle 19c的时候,报错: ORA-28040: No matching authentication protocol ...

  10. D2-Net: Weakly-Supervised Action Localization via Discriminative Embeddings and Denoised Activations概述

    1.针对的问题 目前大多数弱监督动作定位方法通常依赖于分离前景和背景区域(前-背景分离)学习TCAMs,但是在弱监督设置下,学习到的TCAM会存在噪声,而这些方法并没有明确地处理其噪声输出. 2.主要 ...