如何用matlab分析labview中的声压

网上科普有关“如何用matlab分析labview中的声压”话题很是火热,小编也是针对如何用matlab分析labview中的声压寻找了一些与之相关的一些信息进行分析,如果能碰...

网上科普有关“如何用matlab分析labview中的声压”话题很是火热,小编也是针对如何用matlab分析labview中的声压寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。

%A计权声压级频谱分析

clc;

clear;

close all;

%时域分析

y=wavread('abc.wav');

%频域分析

fs=51200;%采样频率

p0=2e-5;%参考声压

f=[1.00 1.25 1.600 2.00 2.50 3.15 4.00 5.00 6.30 8.0]; %基准中心频率

f1=[20.00 25.0 31.5 40.0 50.0 63.0 80];

fc=[f1,100*f,1000*f,10000*f]; %%%%%%%%%中心频率%%%%%%%%

%20-16000Hz A声级计权值

cf=[-50.5,-44.7,-39.4,-34.6,-30.2,-26.2,-22.5,-19.1,-16.1,-13.4,-10.9,-8.6,-6.6,-4.8,-3.2,-1.9,-0.8,0,0.6,1.0,1.2,1.3,1.2,1.0,0.5,-0.1,-1.1,-2.5,-4.3,-6.6];

x=y(t1*fs:t2*fs);%截取需要处理的数据段

n=length(x);

t=(0:1/fs:(n-1)/fs);

subplot(221);

plot(t,x);%瞬时声压时程图

w=hanning(n); %汉宁窗

xx=1.633*x.*w; %加汉宁窗(恢复系数为1.633)

nfft=2^nextpow2(n);

%nextpow2(n)-取最接近的较大2次幂

a = fft(xx,nfft);

f = fs/2*linspace(0,1,nfft/2);

w=2*abs(a(1:nfft/2)/n);

subplot(222);

plot(f,w);%绘制频谱图

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%1/3倍频程计算

oc6=2^(1/6);

nc=length(cf);

%下面这个求1/3倍频程的程序是按照振动振级计算那个来的

for j=1:nc

fl=fc(j)/oc6;

fu=fc(j)*oc6;

nl=round(fl*nfft/fs+1);

nu=round(fu*nfft/fs+1);

if fu>fs/2

m=j-1;

break;

end

b=zeros(1,nfft);

b(nl:nu)=a(nl:nu);

b(nfft-nu+1:nfft-nl+1)=a(nfft-nu+1:nfft-nl+1);

c=ifft(b,nfft);

yc(j)=sqrt(var(real(c(1:nnn))));

end

aj_sumn=0;

for i=1:nc

Lp1(i)=20*log10(yc(i)/p0);%未计权1/3倍频程声压级

end

%%%%%

for jj=1:nc

aj_sumn=aj_sumn+10^(0.1*Lp1(j));

end

Lp=10*log10(aj_sumn);%未计权总声压级

subplot(223);%绘制未计权1/3倍频程声压级图谱

bar(Lp1(1:nc));

gg=zeros(1,nc);

for i=1:nc

gg(1:nc)=fc(1:nc);

end

ggg=1:nc;

set(gca,'xtick',ggg);

set(gca,'xticklabel',gg);

%%%%%A计权1/3倍频程声压级

Lap=Lp1+cf;

aj_sum=0;

for j=1:nc

aj_sum=aj_sum+10^(0.1*Lap(j));

end

LA=10*log10(aj_sum);%Aa计权总声压级

subplot(224);%绘制A计权1/3倍频程声压级图谱

bar(Lap(1:nc));

gg=zeros(1,nc);

for i=1:nc

gg(1:nc)=fc(1:nc);

end

ggg=1:nc;

set(gca,'xtick',ggg);

set(gca,'xticklabel',gg);

matlab用od45解微分方程组。求改错。

可以这样做:

主程序

clc;clear

A=[1,2];

B=[2,3];

C=[1,4];

[CC,Radius]=CircleThru3Dots(A,B,C);

fprintf('坐标:(%f,%f)\n',CC)

fprintf('半径:%f\n\n',Radius)

函数程序

function?[CC,Radius]=CircleThru3Dots(A,B,C)

Ah=A*A';

Bh=B*B';

Ch=C*C';

CC=zeros(size(A));

G=(C(2)-B(2))*A(1)+(A(2)-C(2))*B(1)+(B(2)-A(2))*C(1);

CC(1)=((Bh-Ch)*A(2)+(Ch-Ah)*B(2)+(Ah-Bh)*C(2))/(2*G);

CC(2)=-((Bh-Ch)*A(1)+(Ch-Ah)*B(1)+(Ah-Bh)*C(1))/(2*G);

Radius=sqrt((A-CC)*(A-CC)');

theta=linspace(0,2*pi,101);

x=CC(1)+Radius*cos(theta);

y=CC(2)+Radius*sin(theta);

plot(x,y,'r-')

ABC=[A;B;C];

hold?on

plot(ABC(:,1),ABC(:,2),'b.','markersize',20)

plot(CC(1),CC(2),'r.','markersize',20)

grid?on

box?off

axis?equal

end

效果图

怎样用MATLAB拟合两个自变量的函数系数和指数

a、b、c的取值有问题,长度不为10,检查一下。

法一:在script和function里面申明abc为全局变量

global a b c

法二:使用匿名函数

clc

format long

t=0.001:0.001:20;

x0=[3 -4 2];

a=0.3:0.3:3;

b=-6:-1:-15;

c=-1:-1:-10;

for k=1:10

f=@(t,x)([a(k)*x(1)-x(2)*x(3);b(k)*x(2)+x(1)*x(3);c(k)*x(3)+x(1)*x(2)]);

[t,x]=ode45(f,t,x0);

plot(t,x);

hold on

end

xlabel('t'),legend('x','y','z');

这个就看做是非线性拟合吧,仿照下面的例子:

function shiyan2

x1 = linspace( 0.5, 10, 15 );

x2 = linspace( 10, 20, 15 );

y = 2.5 * x1.^0.5 .* x2.^0.3;? % 假设公式是这样的

% 利用已知数据进行非线性拟合,根据经验给abc一个初始值1, 1, 1,初始值不一定非要很准确

p = lsqcurvefit( @subfun, [ 1, 1, 1 ], [ x1', x2' ], y' );

disp( '拟合参数结果如下:' )

disp( [ 'a = ', num2str( p( 1 ) ), ', b = ', num2str( p( 2 ) ), ...

', c = ', num2str( p( 3 ) ) ] );

function ydata = subfun( p, xdata )

ydata = p( 1 ) * xdata( :, 1 ).^p( 2 ) .* xdata( :, 2 ).^p( 3 );

关于“如何用matlab分析labview中的声压”这个话题的介绍,今天小编就给大家分享完了,如果对你有所帮助请保持对本站的关注!

本文来自作者[梦旋]投稿,不代表创健号立场,如若转载,请注明出处:https://chuangjian-nb.com/cshi/202505-14091.html

(175)

文章推荐

  • 实测教程“雀神广东麻将可以开挂吗(狂热农场2)

    网上科普有关“雀神广东麻将可以开挂吗”话题很是火热,小编也是针对雀神广东麻将可以开挂吗寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。  您好,雀神广东麻将可以开挂吗这款游戏可以开挂的,确实是有挂的,通过微信【游戏】很多玩家在这款游戏中打牌都会发现很多

    2025年03月04日
    65
  • 3分钟学会“微乐麻将怎样退出微信登陆的(详细真的有挂)

    3分钟学会“微乐麻将怎样退出微信登陆的网上科普有关“3分钟学会“微乐麻将怎样退出微信登陆的”话题很是火热,小编也是针对3分钟学会“微乐麻将怎样退出微信登陆的寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。  您好,3分钟学会“微乐麻将怎样退出微

    2025年03月26日
    77
  • 3分钟学会“多多大厅真能买到挂吗(透视挂真的假的)

    网上科普有关“多多大厅真能买到挂吗”话题很是火热,小编也是针对同城衡阳字牌作弊开挂的方法寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。  您好,多多大厅真能买到挂吗这款游戏可以开挂的,确实是有挂的,通过微信【游戏】很多玩家在这款游戏中打牌都会发现

    2025年04月03日
    54
  • 3分钟学会“星悦云南麻将是不是有挂(详细透视开挂教程)

    网上科普有关“星悦云南麻将是不是有挂”话题很是火热,小编也是针对同城衡阳字牌作弊开挂的方法寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。  您好,星悦云南麻将是不是有挂这款游戏可以开挂的,确实是有挂的,通过微信【游戏】很多玩家在这款游戏中打牌都会

    2025年04月04日
    57
  • 3分钟学会“魅力红中麻将是不是有挂”实测确实有挂

    网上科普有关“魅力红中麻将是不是有挂”话题很是火热,小编也是针对同城衡阳字牌作弊开挂的方法寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。  您好,魅力红中麻将是不是有挂这款游戏可以开挂的,确实是有挂的,通过微信【游戏】很多玩家在这款游戏中打牌都会

    2025年04月04日
    44
  • 教程辅助!摸一把跑得快能开挂吗”(其实是有挂)

    摸一把跑得快能开挂吗网上科普有关“摸一把跑得快能开挂吗”话题很是火热,小编也是针对摸一把跑得快能开挂吗寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。  您好,摸一把跑得快能开挂吗这款游戏可以开挂的,确实是有挂的,通过微信【】很多玩家在这款游戏

    2025年04月09日
    38
  • 实测教程“微乐陕西三代有透视挂吗”实测确实有挂

    微乐陕西三代有透视挂吗网上科普有关“微乐陕西三代有透视挂吗”话题很是火热,小编也是针对微乐陕西三代有透视挂吗寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。  您好,微乐陕西三代有透视挂吗这款游戏可以开挂的,确实是有挂的,通过微信【】很多玩家在

    2025年04月20日
    34
  • 三分钟普及“天天乐清麻将到底怎么开挂(万能开挂器通用版)

    天天乐清麻将到底怎么开挂网上科普有关“天天乐清麻将到底怎么开挂”话题很是火热,小编也是针对天天乐清麻将到底怎么开挂寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。  您好,天天乐清麻将到底怎么开挂这款游戏可以开挂的,确实是有挂的,通过微信【】很

    2025年04月25日
    32
  • 疫情严重的省市有哪些地方不能去北京(疫情哪些城市不能进京)

    2022北京疫情进出京最新限行政策1、出京最新政策第一类是限制进京人员:主要针对14日内有1例以上本土新冠病毒感染者所在县旅居史人员;第二类是非必要不进京人员:主要针对陆路边境口岸所在县旅居史人员,这些地区主要分布在黑龙江省、内蒙古、新疆、西藏、云南、广西。2、-环京地区通勤人员:首次进(返)

    2025年05月16日
    20
  • 实测辅助”买手机麻将软件在哪里买”确实真的有挂

    网上科普有关“买手机麻将软件在哪里买”话题很是火热,小编也是针对同城衡阳字牌作弊开挂的方法寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。  您好,买手机麻将软件在哪里买这款游戏可以开挂的,确实是有挂的,通过微信【游戏】很多玩家在这款游戏中打牌都会

    2025年05月19日
    5

发表回复

本站作者后才能评论

评论列表(4条)

  • 梦旋
    梦旋 2025年05月20日

    我是创健号的签约作者“梦旋”!

  • 梦旋
    梦旋 2025年05月20日

    希望本篇文章《如何用matlab分析labview中的声压》能对你有所帮助!

  • 梦旋
    梦旋 2025年05月20日

    本站[创健号]内容主要涵盖:国足,欧洲杯,世界杯,篮球,欧冠,亚冠,英超,足球,综合体育

  • 梦旋
    梦旋 2025年05月20日

    本文概览:网上科普有关“如何用matlab分析labview中的声压”话题很是火热,小编也是针对如何用matlab分析labview中的声压寻找了一些与之相关的一些信息进行分析,如果能碰...