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

📄 palls123.m

📁 内燃机转子仿真
💻 M
字号:
%
%function [TTmm]=pa6l280(zhuansu) 

clear all;
clc;



close all;
format long;
we=[0.2369269 0.4786287 0.5688889 0.4786287 0.2369269];
xi=[-0.9061798 -0.538469 0 0.538469 0.9061798];
AA=42975;
aa=63;
zhuansu=800;

if9=[0 600 120 480 240 360]/3;

tu1=2;
Ts=1;                                
d=60.0/zhuansu/360*3.0;               
TD=rem(Ts,d);
TT=Ts-TD;
nn=TT/d;                            
         

n=13;
f=zeros(n,1);
o1=zeros(n,480);
o2=zeros(n,1);
xyz=zeros(n,nn);
xyz1=zeros(n,nn);
Txyz=zeros(n,nn);
xy=zeros(n,nn);


ctt=(1:2:91);
ctt1=ctt';
countx2=[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]';
x=countx2;
temp=diag(eye(2*n));

guanliang=[9.8790 2.6700 8.1140 5.9840 8.1140 8.1140 5.9840 8.1140 30.6800 14.583 7.243 325.838 4.462];
gangdu=[0.1 0.6679*1e6 0.5149*1e8 0.3413*1e8 0.3413*1e8 0.3413*1e8 0.3413*1e8 0.3413*1e8 0.66*1e8 0.4683*1e8 0.48704*1e8 0.152271e8 0.152271e8 0.1]; %stiffness(n*m/rad)
%E=[19.627 9.599 0.509 13.018  9.908  13.018 13.018 9.908 13.018 42.11 49.09 177.6 14007.5 11.759585 308.155203 310.113323];
%F=[0.651 39.86 32.75 32.75 32.75 32.75 32.75 32.75 325 0.316 205 9.7768 11.75483 3.11507 11.10479]*1.0e6;
bgd=[0 0 0 0 0 0 0 0 0 0 0 0];
adamp=[0 0 230 230 230 230 230 230 0 0 0 0 0];
rdamp=[2700 0 0 0 0 0 0 0 0 0 0 0 0]; 


dm=zeros(n,n);
dc=zeros(n,n);
for i=1:n
   dm(i,i)=guanliang(i);
end
for i=2:n-1
   dc(i,i)=rdamp(i-1)+rdamp(i);
end
dc(1,1)=rdamp(1);
dc(n,n)=rdamp(n-1);
for i=1:n-1;
   dc(i,i+1)=-rdamp(i);
   dc(i+1,i)=-rdamp(i);
end
for i=1:n
   dc(i,i)=dc(i,i)+adamp(i);
end


M=dm;
C=dc;



w=zhuansu*2*pi/60;


mj=73.5;

lamd=0.2544;
stroke=0.29;  
R=stroke/2; 
D=0.28;    

load data11
load PA6.dat
alph=PA6(:,1);
  
pressure1=PA6(:,2);


alph=alph*pi/180;



 for i=1:240
     
 if i>240
         ii=rem(i,240)+1;
  else
       ii=i;
   end 
   
   beta(i)=asin(lamd*sin(alph(ii)));
   
   Mg81(i)=(pi*(D^2)*R*pressure1(ii)/4)*sin(alph(ii)+beta(i))/cos(beta(ii));
 
  Mg82(i)=mj*(R^2)*(w^2)*(0.25*lamd*sin(alph(ii))-0.5*sin(2*alph(ii))-0.75*lamd*sin(3*alph(ii))-0.25*(lamd)^2*sin(4*alph(ii)));
  
   Mg8(i)=(Mg81(i)+Mg82(i)); 
 end
%Mg8(241)=0; 
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%&&&&me
 tq=(0:239)*4*pi/240;
 tq1=(1:240)*4*pi/240;
aa0=sum(Mg8)/240 ;

aa1=zeros(24,1);

aa2=zeros(24,1);
for i=1:24
    aa1(i,1)=2*sum(Mg8.*cos(i*tq/2))/240;
    aa2(i,1)=2*sum(Mg8.*sin(i*tq/2))/240;
end
%aa1()=sum(aa1);
%aa2=sum(aa2);
cc=sqrt(aa1.^2+aa2.^2);
tanff=tan(aa1./aa2);
tanf=atan(tanff);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%tt(1)=0;
tt(1:1001)=(0:d:1000*d);
ffm1=zeros(1,length(tt));

for i=1:1001
  sums1=aa0; 
  ccct=aa0;
for j=0.5:0.5:12
    sums1=sums1+aa1(j*2,1)*cos(j*w*tt(i))+aa2(j*2,1)*sin(j*w*tt(i));%1000r/500T
    ccct=ccct+cc(2*j)*sin(j*w*tt(i)+tanf(2*j));
   
    
end
ffm1(1,i)=sums1;
ffm2(1,i)=ccct;
end
%ffm1(1,1)=0;
%ffm2(1,1)=0;
cci=(0.5:0.5:12);
cci=cci';
%ccct=aa0+sum(cc*sin(cci*200*pi*tt(i)/6+tanf));
%for ii=1:240
%f4(:,ii)=aa0+sum(cc.*sin(cci*200*pi/6*tt(ii)+tanf));
%end
ctt=(1:2:46)*0.48332193495134;

figure(1);
plot(tt(1:1001),ffm1(1:1001));

figure(2);
plot(tt(1:1001),ffm2(1:1001));

%figure(3);
%plot(tt,f4);
%kkk(1,:)=Mg8;
%kkk(2,:)=ffm1(1:240);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%&&&me
  w=2*pi*zhuansu/60;
t(1,1)=0;
  F1=zeros(2*n,1);
  N=20;
  N1=20;
  a=pi/6;
  h=d;
  dt=h/2^N;

  kn=0;
  www(1:n,1)=w;
 vk=zeros(2*n,1);
 %vk(n+1:2*n,1)=M*www;
 xyz(:,1)=vk(1:n,1);
xyz1(:,1)=vk(1:n,1);
tt0=if9*d;
kkn=0; 
    
 


for i=1:nn
    
    t(:,i)=(i-1)*h;
     
    oo=w*t(:,i);
  % vk(1:n)=vk(1:n)+oo;

    if oo<=2*kn*pi+0.5*pi-a&oo>=2*kn*pi

        ff(:,i)=1;
    elseif oo<=2*kn*pi+0.5*pi+a&oo>2*kn*pi+0.5*pi-a

        ff(:,i)=0.5*(1+cos((0.5*(oo-0.5*pi+a)/a)*pi));
    elseif oo<=2*kn*pi+3*pi/2-a&oo>2*kn*pi+0.5*pi+a

        ff(:,i)=0;
    elseif oo<=2*kn*pi+3*pi/2+a&oo>2*kn*pi+3*pi/2-a

        ff(:,i)=0.5*(1-cos((0.5*(oo-3*pi/2+a)/a)*pi));
    
    elseif 2*kn*pi+3*pi/2+a<oo<=2*pi+2*kn*pi
         ff(:,i)=1;
    end
   
    kt(2:n)=gangdu(2:n)-bgd*ff(:,i);
    kt(1)=0.1;
    kt(n+1)=0.1;
    for ii=1:n
   K(ii,ii)=kt(ii)+kt(ii+1);
    end

%K(1,1)=kt(1);


%K(n,n)=kt(n-1);
for ii=2:n;

  K(ii-1,ii)=-kt(ii);
   K(ii,ii-1)=-kt(ii);
end

   H=[-inv(M)*C/2 inv(M);0.25*C*inv(M)*C-K -0.5*C*inv(M)];
   [Hx Hn]=eig(H);
   I=eye(size(H));
   Ta=H*dt+(H*dt)^2*(I+(H*dt)/3+(H*dt)^2/12+(H*dt)^3/60)/2;
   for jj=1:N
    Ta=2*Ta+Ta*Ta;
  end
  T=I+Ta;
%%%%%%%%%%%%%%%%%%%%%%% &&&me 
 sumf7=aa0;
for j=0.5:0.5:12
    sumf7=sumf7+cc(2*j)*sin(j*w*t(:,i)+tanf(2*j));
    %ccct=sums1+cc(2*j)*sin(j*200*pi*tt(i)/6+tanf(2*j));
end
Ffff2(:,i)=sumf7;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%&&&me

%v(:,i)=vk;%给定初值
vf=0;
    for ii=1:5
        h1=h*(1-xi(ii))/2;
        dt1=h1/2^N1;
       Ta1=H*dt1+(H*dt1)^2*(I+(H*dt1)/3+(H*dt1)^2/12+(H*dt1)^3/60)/2;
       for j=1:N1%求总Ta1
    Ta1=2*Ta1+Ta1*Ta1;
  end
  T1=I+Ta1;
  for ix=1:2
      f(ix)=0;
  end
      
      sumf1=aa0;
      sumf2=aa0;
      sumf3=aa0;
      sumf4=aa0;
      sumf5=aa0;
      sumf6=aa0;
     
      for iw=0.5:0.5:12
sumf1=sumf1+aa1(2*iw)*cos(iw*w*(t(:,i)+tt0(1)+0.5*h+0.5*h*xi(ii)))+aa2(2*iw)*sin(iw*w*(t(:,i)+tt0(1)+0.5*h+0.5*h*xi(ii)));
sumf2=sumf2+aa1(2*iw)*cos(iw*w*(t(:,i)+tt0(2)+0.5*h+0.5*h*xi(ii)))+aa2(2*iw)*sin(iw*w*(t(:,i)+tt0(2)+0.5*h+0.5*h*xi(ii)));
sumf3=sumf3+aa1(2*iw)*cos(iw*w*(t(:,i)+tt0(3)+0.5*h+0.5*h*xi(ii)))+aa2(2*iw)*sin(iw*w*(t(:,i)+tt0(3)+0.5*h+0.5*h*xi(ii)));
sumf4=sumf4+aa1(2*iw)*cos(iw*w*(t(:,i)+tt0(4)+0.5*h+0.5*h*xi(ii)))+aa2(2*iw)*sin(iw*w*(t(:,i)+tt0(4)+0.5*h+0.5*h*xi(ii)));
sumf5=sumf5+aa1(2*iw)*cos(iw*w*(t(:,i)+tt0(5)+0.5*h+0.5*h*xi(ii)))+aa2(2*iw)*sin(iw*w*(t(:,i)+tt0(5)+0.5*h+0.5*h*xi(ii)));
sumf6=sumf6+aa1(2*iw)*cos(iw*w*(t(:,i)+tt0(6)+0.5*h+0.5*h*xi(ii)))+aa2(2*iw)*sin(iw*w*(t(:,i)+tt0(6)+0.5*h+0.5*h*xi(ii)));

end
f(3)=sumf1;
f(4)=sumf2;
f(5)=sumf3;
f(6)=sumf4;
f(7)=sumf5;
f(8)=sumf6;    

for ix=9:13;
    f(ix)=0;
end
%if i<=Cnn3
%f(15)=(4*AA/(0.5*pi-aa*pi/180)/pi)*sum(sin(ctt1*(0.5*pi-aa*pi/180)).*sin(ctt1*0.48332193495134*(t(i)+0.5*h+0.5*h*xi(ii)))./ctt1.^2);
%f(16)=(4*AA/(0.5*pi-aa*pi/180)/pi)*sum(sin(ctt1*(0.5*pi-aa*pi/180)).*sin(ctt1*0.48332193495134*(t(i)+0.5*h+0.5*h*xi(ii)))./ctt1.^2);
%end
%vf=vf+we(ii)*T1*(F0*sin(w*(t(:,i)+0.5*h+0.5*h*xi(ii)));

F=[o2;f];

vf=vf+we(ii)*T1*F;
end
vk(:,1)=T*vk+0.5*h*vf;    

x=vk(1:n,1);
%vk(1:n,1)=vk(1:n,1)-vk(1:n,1)/n;
 zhuanzhix=x';

xyz(:,i)=vk(1:n)+w*t(:,i);

v(:,i)=vk(:);
%%%%%%%%%%%%%%%ttt
%pvv=((vk(:)-2*pi)>=0)
    %vk(:)=vk(:)-2*pi*pvv;

%%%%%%%%%%%%%%%%%sss
vv(1:n,i)=inv(M)*(vk(n+1:2*n)-0.5*C*vk(1:n));
aaii(1:n,i)=inv(M)*(f-C*vv(1:n,i)-K*v(1:n,i));
for ll=1:(n-1)
         xiangduix(ll)=zhuanzhix(ll)-zhuanzhix(ll+1);
         xdnj(ll)=xiangduix(ll)*gangdu(ll+1);
end
Txyz(2:n,i)=xdnj';
xyz1(2:n,i)=xiangduix;    

Ffff1(:,i)=F;

if oo>2*(kn+1)*pi&w>0
    kn=kn+1;
end;

end;




save('neiranji','xyz','t','nn','Ts','h');
save('neiranji1','xyz1','t','nn','Ts','h');
save('neiranji2','Txyz','t','nn','Ts','h');
 
 
wn12=pi*(0.0001)^3/16;
wn23=pi*(0.21)^3/16;
wn34=pi*(0.21)^3/16;
wn45=pi*(0.21)^3/16;
wn56=pi*(0.21)^3/16;
wn67=pi*(0.21)^3/16;
wn78=pi*(0.21)^3/16;
wn89=pi*(0.210)^3/16;
wn910=pi*(0.200)^3/16;
wn1011=pi*(0.200)^3/16;
wn1112=pi*(0.175)^3/16;
wn1213=pi*(0.175)^3/16;

xyz12=Txyz(2,0.7*nn:nn-4);
Tmax12=max(xyz12);
yingli12=xyz12/wn12/1e6;
maxyl12=max(yingli12);
minyl12=min(yingli12);
feng12=maxyl12-minyl12;

xyz23=Txyz(3,0.7*nn:nn-4);
Tmax23=max(xyz23);
yingli23=xyz23/wn23/1e6;
maxyl23=max(yingli23);
minyl23=min(yingli23);
feng23=maxyl23-minyl23;

xyz34=Txyz(4,0.7*nn:nn-4);
Tmax34=max(xyz34);
yingli34=xyz34/wn34/1e6;
maxyl34=max(yingli34);
minyl34=min(yingli34);
feng34=maxyl34-minyl34;

xyz45=Txyz(5,0.7*nn:nn-4);
Tmax45=max(xyz45);
yingli45=xyz45/wn45/1e6;
maxyl45=max(yingli45);
minyl45=min(yingli45);
feng45=maxyl45-minyl45;

xyz56=Txyz(6,0.7*nn:nn-4);
Tmax56=max(xyz56);
yingli56=xyz56/wn56/1e6;
maxyl56=max(yingli56);
minyl56=min(yingli56);
feng56=maxyl56-minyl56;

xyz67=Txyz(7,0.7*nn:nn-4);
Tmax67=max(xyz67);
yingli67=xyz67/wn67/1e6;
maxyl67=max(yingli67);
minyl67=min(yingli67);
feng67=maxyl67-minyl67;

%%%%%%%%%%
xyz78=Txyz(8,0.7*nn:nn-4);
Tmax78=max(xyz78);
yingli78=xyz78/wn78/1e6;
maxyl78=max(yingli78);
minyl78=min(yingli78);
feng78=maxyl78-minyl78;

xyz89=Txyz(9,0.7*nn:nn-4);
Tmax89=max(xyz89);
yingli89=xyz89/wn89/1e6;
maxyl89=max(yingli89);
minyl89=min(yingli89);
feng89=maxyl89-minyl89;

xyz910=Txyz(10,0.7*nn:nn-4);
Tmax910=max(xyz910);
yingli910=xyz910/wn910/1e6;
maxyl910=max(yingli910);
minyl910=min(yingli910);
feng910=maxyl910-minyl910;

xyz1011=Txyz(10,0.7*nn:nn-4);
Tmax1011=max(xyz1011);
yingli1011=xyz1011/wn1011/1e6;
maxyl1011=max(yingli1011);
minyl1011=min(yingli1011);
feng1011=maxyl1011-minyl1011;

xyz1112=Txyz(10,0.7*nn:nn-4);
Tmax1112=max(xyz1112);
yingli1112=xyz1112/wn1112/1e6;
maxyl1112=max(yingli1112);
minyl1112=min(yingli1112);
feng1112=maxyl910-minyl1112;

xyz1213=Txyz(10,0.7*nn:nn-4);
Tmax1213=max(xyz1213);
yingli1213=xyz1213/wn1213/1e6;
maxyl1213=max(yingli1213);
minyl1213=min(yingli1213);
feng1213=maxyl1213-minyl1213;
TTmm(:,1)=[Tmax12;Tmax23;Tmax34;Tmax45;Tmax56;Tmax67;Tmax78;Tmax89;Tmax910];

%%%%%%%%%%%%%%%%%%%%%%曲线%%%%%%%%%%%%%

if tu1==0
figure(1)
plot(t(0.7*nn:nn-4),yingli12,'g');title('第12轴段变化曲线');


figure(2)
plot(t(0.7*nn:nn-4),yingli23,'g');title('第23轴段变化曲线');


figure(3)
plot(t(0.7*nn:nn-4),yingli34,'g');title('第34轴段变化曲线');
figure(4)
plot(t(0.7*nn:nn-4),yingli45,'r');title('第45轴段变化曲线');
figure(5)
plot(t(0.7*nn:nn-4),yingli56,'g');title('第56轴段变化曲线');
figure(6)
plot(t(0.7*nn:nn-4),yingli67,'r');title('第67轴段变化曲线');
figure(7)
plot(t(0.7*nn:nn-4),yingli78,'g');title('第78轴段变化曲线');
figure(8)
plot(t(0.7*nn:nn-4),yingli89,'r');title('第89轴段变化曲线');
figure(9)
plot(t(0.7*nn:nn-4),yingli910,'r');title('第910轴段变化曲线');
figure(10)
plot(t(0.7*nn:nn-4),yingli1011,'g');title('第78轴段变化曲线');
figure(11)
plot(t(0.7*nn:nn-4),yingli1112,'r');title('第89轴段变化曲线');
figure(12)
plot(t(0.7*nn:nn-4),yingli1213,'r');title('第910轴段变化曲线');

elseif tu1==1
figure(1)
plot(t,xyz(2,:),'g');title('第12轴段变化曲线');


figure(2)
plot(t,xyz(3,:),'g');title('第23轴段变化曲线');


figure(3)
plot(t,xyz(4,:),'g');title('第34轴段变化曲线');
figure(4)
plot(t,xyz(5,:),'r');title('第45轴段变化曲线');
figure(5)
plot(t,xyz(6,:),'g');title('第56轴段变化曲线');
figure(6)
plot(t,xyz(7,:),'r');title('第67轴段变化曲线');
figure(7)
plot(t,xyz(8,:),'g');title('第78轴段变化曲线');
figure(8)
plot(t,xyz(9,:),'r');title('第89轴段变化曲线');
figure(9)
plot(t,xyz(10,:),'r');title('第910轴段变化曲线');
figure(10)
plot(t,xyz(11,:),'r');title('第1011轴段变化曲线');
figure(11)
plot(t,xyz(12,:),'g');title('第78轴段变化曲线');
figure(12)
plot(t,xyz(13,:),'r');title('第89轴段变化曲线');





elseif tu1==2
figure(1)
plot(t,Txyz(2,:),'g');title('第12轴段变化曲线');


figure(2)
plot(t,Txyz(3,:),'g');title('第23轴段变化曲线');


figure(3)
plot(t,Txyz(4,:),'g');title('第34轴段变化曲线');
figure(4)
plot(t,Txyz(5,:),'r');title('第45轴段变化曲线');
figure(5)
plot(t,Txyz(6,:),'g');title('第56轴段变化曲线');
figure(6)
plot(t,Txyz(7,:),'r');title('第67轴段变化曲线');
figure(7)
plot(t,Txyz(8,:),'g');title('第78轴段变化曲线');
figure(8)
plot(t,Txyz(9,:),'r');title('第89轴段变化曲线');
figure(9)
plot(t,Txyz(10,:),'r');title('第910轴段变化曲线');
figure(10)
plot(t,Txyz(11,:),'r');title('第89轴段变化曲线');
figure(11)
plot(t,Txyz(12,:),'r');title('第910轴段变化曲线');
figure(12)
plot(t,Txyz(13,:),'r');title('第910轴段变化曲线');


elseif tu1==3
    figure(1)
plot(t,xyz1(2,:),'g');title('第12轴段变化曲线');


figure(2)
plot(t,xyz1(3,:),'g');title('第23轴段变化曲线');


figure(3)
plot(t,xyz1(4,:),'g');title('第34轴段变化曲线');
figure(4)
plot(t,xyz1(5,:),'r');title('第45轴段变化曲线');
figure(5)
plot(t,xyz1(6,:),'g');title('第56轴段变化曲线');
figure(6)
plot(t,xyz1(7,:),'r');title('第67轴段变化曲线');
figure(7)
plot(t,xyz1(8,:),'g');title('第78轴段变化曲线');
figure(8)
plot(t,xyz1(9,:),'r');title('第89轴段变化曲线');
figure(9)
plot(t,xyz1(10,:),'r');title('第910轴段变化曲线');
figure(10)
plot(t,xyz1(11,:),'r');title('第89轴段变化曲线');
figure(11)
plot(t,xyz1(12,:),'r');title('第910轴段变化曲线');
figure(12)
plot(t,xyz1(13,:),'r');title('第910轴段变化曲线');

end 
 
 
 

⌨️ 快捷键说明

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