⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gonglp.m

📁 内燃机转子仿真
💻 M
字号:
%function [pyy1,pyy2,yy1,yy2,ff]=gonglp(v,ng,step)
clear all;
clc;
close all;
format short;
load 'sjjl';
step=2*pi/5^0.5/400;
y1=v(2,:);
y2=v(3,:);
%step=0.001;
sf=1/step;
t=0:step:4;
%y1=sin(2*pi*10*t);
%y2=sin(2*pi*5*t);
ng=length(y1);
nfft=2^nextpow2(ng);
%nfft=128;
w1=xcorr(y1,200);
w2=xcorr(y1,200);
x=-200*step:step:200*step;
yy1=fft(y1,nfft);
pyy1=yy1.*conj(yy1)/nfft;
yy2=fft(y2,nfft);
pyy2=yy2.*conj(yy2)/nfft;
ff=(0:sf/nfft:sf/2-sf/nfft)*2*pi;
nn=1:length(ff);
figure(1);
plot(ff(nn),pyy1(nn));
xlim([0,30]);
ylim('auto');
figure(2);
plot(ff(nn),pyy2(nn));
xlim([0,30]);
ylim('auto');
%figure(3);
%plot(x,w1);
%figure(4);
%plot(x,w2);
temp=0;
tt=1;
for jj=1:length(ff)-1;
    if pyy1(jj+1)>pyy1(jj)&pyy1(jj+1)>pyy1(jj+2)
       temp=pyy1(jj+1); 
       tt=tt+1;
       ji=jj+1;
        ni(:,tt)=ji;
    end
end
sumni=0;
nx=length(ni);
for i=2:nx
    sumni=sumni+pyy1(ni(i));
end
psum=sumni/nx;
pfn=0.3*psum;
tt=1;
for i=2:nx
    if pyy1(ni(i))>pfn
        fw1(tt)=ff(ni(i));
        tt=tt+1;
    end
end
temp=0;
tt=1;
for jj=1:length(ff)-1;
    if pyy2(jj+1)>pyy2(jj)&pyy2(jj+1)>pyy2(jj+2)
       temp=pyy2(jj+1); 
       tt=tt+1;
       ji=jj+1;
        ni(:,tt)=ji;
    end
end
sumni=0;
nx=length(ni);
for i=2:nx
    sumni=sumni+pyy2(ni(i));
end
psum=sumni/nx;
pfn=2*psum;
tt=1;
for i=2:nx
    if pyy2(ni(i))>pfn
        fw2(tt)=ff(ni(i));
        tt=tt+1;
    end
end  
if d1k==0&d2k==0

    for i=1:length(fw1)
            fw11=abs(fn1-fw1);
        if fw11(i)==min(fw11)
            dfn1=sign(fw1(i)-fn1)*min(fw11);
            break;
        end
    end

    for i=1:length(fw2)
            fw22=abs(fn2-fw2);
        if fw22(i)==min(fw22)
            dfn2=sign(fw2(i)-fn2)*min(fw22);
            break;
        end
    end
else

for i=1:length(fw1)-1
    if fn1-fw1(i)>0&fn1-fw1(i+1)<0
        dfn1=fw1(i)-fn1;
        break;
    end
end
for i=1:length(fw2)-1
    if fn2-fw2(i)>0&fn2-fw2(i+1)<0
        dfn2=fw2(i)-fn2;
        break;

    end
end
end
bdfn1=dfn1/fn1;
bdfn2=dfn2/fn2;
yyy=[d1k d2k fn1 dfn1 bdfn1 fn2 dfn2 bdfn2]












⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -