MATLAB常见用法总结————工程数据分析与数值分析

MATLAB常用总结————工程数据分析与数值分析

1、基本函数
max(x)最大值
min(x)最小值
mean(x)平均值
median(x)中值
sort(x)升序排列
sortrows(x)降序排列
std(x)标准差
factor(n)求取含有n值的所在矢量
primes(n)给出小于n的质数
2、常用函数
fplot(f,[a,b])
fmin(f,[a,b])寻找[a,b]间的最小值
fimis(f,'x')寻找x附近的最小值
fzreo(f,x0)寻找x0附近的零点
del2离散函数
diff(x)求x差分
gradient(f)求f的数值梯度
3、求极值
diff微分 solve求解
4、有限差分
(1)差分和近似微分diff

>> x = [1 2 3 6 5 8 7 4];
>> diff(x)
ans =
  1          1          3         -1          3         -1         -3 
>> diff(x,2)
ans =
  0          2         -4          4         -4         -2 

(2)数值梯度函数gradient

5、插值
(1)一维插值函数interpl(x,y,xi,method)
method可选:nearest最邻近插值方式linear线性插值spline三次线性插值pchip分段三次多项式插值…

>> x = 0:10;
>> y = sin(x);
>> xi = 0:2.5:10;
>> yi = interp1(x,y,xi);
>> t = 1900:10:1990;
>> p = [75.995 91.972 105.711 123.203 131.669 150.697 179.323 203.212 226.505 249.633];
>> x = 1900:1:2000;
>> y = interp1(t,p,x,'nearest');
>> plot(t,p,'bo',x,y,'r')
>> y = interp1(t,p,x,'linear');
>> plot(t,p,'bo',x,y,'r')

(2)二维插值函数interp2(x,y,z,xi,yi,method)
method可选:Nearest不连续Linear,Cubic,Spline精度最好

>> [x,y] = meshgrid(-3:.25:3);
>> z = peaks(x,y);
>> [xi,yi] = meshgrid(-3:.125:3);
>> zi = interp2(x,y,z,xi,yi);
>> mesh(x,y,z),hold,mesh(xi,yi,zi+15)

meshgrid:用于生成网格采样点的函数
peaks:是一个典型的多元函数。它本质上是一个二元高斯分布的概率密度函数
mesh:画三维图
(3)样本插值
yy = spline(x,y,xx)
6、曲线拟合
p = polyfit(x,y,N)
polyval也可以
7、多项式
(1)数值表示[1 2 3 4 5]:(x-1)(x-2)(x-3)(x-4)(x-5)

>> P = [1 2 3 4 5];
>> poly(P)
ans =
     1   -15    85  -225   274  -120

(2)符号表示poly2sym(p,‘v’)

>> poly2sym(P)
ans =
x^4 + 2*x^3 + 3*x^2 + 4*x + 5

(3)求零点root
(4)求解多项式的值
polyval(p,a)求多项式p在a处的值
polyvalm(p,a)a为方阵

>> polyval(P,8)
ans =
        5349

(5)四则运算
加+,减-
乘:conv(),除:deconv()
(6)微分
polyder( P )求P的微分

>> polyder(P)
ans =
     4     6     6     4

(7)多项式的有理分式
residue(a,b):a分子,b分母
也可进行逆运算

>> a = 5*[1 3];
>> b = [1;2;3;4];
>> [r,p,k] = residue(a,b)
r =
   1.4759 + 0.0000i
  -0.7380 - 2.3203i
  -0.7380 + 2.3203i
p =
  -1.6506 + 0.0000i
  -0.1747 + 1.5469i
  -0.1747 - 1.5469i
k =
     []

r留数p极点k直接项

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MATLAB是一种非常强大的声音信号分析与处理工具。基于MATLAB,我们可以利用其丰富的信号处理函数和工具箱来实现声音信号的分析和处理。 首先,声音信号的强度可以通过MATLAB中的音频采样数据来计算得出。我们可以使用MATLAB提供的函数,如audioread()来读取声音信号的音频数据,并利用这些数据来计算声音信号的能量或强度。 其次,声音信号的响度可以通过MATLAB中的音频信号处理工具箱来计算得出。具体来说,我们可以使用MATLAB中的声音测量函数,如loudness()来计算声音信号的平均响度。 除了基本的声音信号分析,MATLAB还提供了丰富的声音信号处理功能。例如,我们可以利用MATLAB中的滤波器设计函数和滤波器库来进行声音信号的滤波处理。还可以利用MATLAB中的时频分析工具来进行声音信号的时频分析,比如短时傅里叶变换(STFT)和连续小波变换(CWT)等。 此外,MATLAB还提供了各种音频信号处理算法的实现,比如噪音消除、语音增强、音频编解码等。我们可以利用这些算法和函数来对声音信号进行处理和增强,以满足特定应用的需求。 综上所述,基于MATLAB可以实现声音信号的分析与处理。通过利用MATLAB丰富的信号处理函数和工具箱,我们可以计算声音信号的强度和响度,并进行各种声音信号处理操作,从而满足不同应用场景的需求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值