Проектирование мотоустановки среднемагистрального пассажирского самолета
Страница 29

* Pza(14)/.26,.26,.26,.26,.26,.26,.26,.27,.43,.67,

* .91,.9,.6,0./,

* Pzb(14)/3.95,3.95,3.9,3.75,2.7,1.6,1.2,.62,.4,.3,

* .2,.15,.12,0./,

* X(14)/0.,.0125,.025,.05,.1103,.15,.181,.3,.4304,

* .55,.65,.774,.9,1./

real*8 gamm(14)/44.,24.,16.,7.,5.,2.,1.5,-2.,-8.,-10.,-11.,

* -12.,-12.,-12./

real*8 R(14)/1.,1.06,1.11,1.145,1.2,1.21,1.225,1.24,1.16,

* 1.15,1.07,.95,.815,.72/

real*8 alf,bett,q,t,Ln,Lk,ref,fin,sh,dfi,r1ef,r2ef,fif,

* Myx(5),Mzx(5),L,Pyc(5),Pxc(5),Pzc(5),P(5),Xc(5),Xcc(5),xt,pi

write(*,*) 'Введите начальное значение угла Fi'

read(6,*) fin

write(*,*) 'Введите конечное значение угла Fi'

read(6,*) fi

write(6,*) 'Введите начальную Xотн'

read(6,*) Ln

write(6,*) 'Введите конечную Xотн'

read(6,*) Lk

write(*,*) 'Введите значение угла BETTA'

read(*,*) bett

write(*,*) 'Введите значение угла ALFA'

read(*,*) alf

write(*,*) 'Введите значение q'

read(*,*) q

pi=4*datan(1)

fi=fi*pi/180.

fin=fin*pi/180.

alf=alf*pi/180.

bett=bett*pi/180.

L=5.6

sh=.003

dfi=2.*pi/1257.

xt=Ln

do 4 i=1,13

if(xt.lt.x(i)) goto 5

4 continue

5 i=i-1

do 103 ik=1,5

Pyc(ik)=0.

Pzc(ik)=0.

Pxc(ik)=0.

Myx(ik)=0.

Mzx(ik)=0.

Xc(ik)=0.

103 Xcc(ik)=0.

write(*,*) 'Номер участка',i

gamm(i)=gamm(i)*pi/180.

do 1 t=Ln,Lk,sh

if(xt.gt.x(i+1)) then

i=i+1

write(*,*) 'Номер участка',i

gamm(i)=gamm(i)*pi/180.

endif

do 2 fif=fin,fi,dfi

c write(*,*) fif*180./pi,xt,r(i)

c Учет пилона **********************************

C if((xt.gt.x(5).and.xt.lt.x(6)).and.

C * (fif.lt.1.449.or.fif.gt.1.693)) goto 6

C if((xt.gt.x(6).and.xt.lt.x(7)).and.

C * (fif.lt.1.344.or.fif.gt.1.798)) goto 6

C if(xt.gt.0.1103.and.(fif.gt.1.2915.and.fif.lt.1.85))

C * goto 3

6 continue

r1ef=dcos(fif+dfi/2.)

r2ef=dcos(fif+dfi/2.)

if(xt.gt.0.1103.and.(fif.gt.0 and.fif.le.pi/2.))then

r1ef=1.

r2ef=1.

c write(*,*) '1 *********',fif

c pause

endif

if(xt.gt.0.1103.and.(fif.gt.pi/2.and.fif.le.pi))then

r1ef=-1.

r2ef=-1.

c write(*,*) '2 *********',fif

c pause

endif

c write(*,*) fif*180./pi,xt,r1ef,r2ef

c PAUSE' '

P(1)=(Po(i)+Py(i)*alf*dsin(fif+dfi/2.)+Pza(i)*alf*r1ef

* -Pzb(i)*bett*r2ef)*q*L*dfi*R(i)*sh

c write(*,*) P/(sh*L*R(i)*dfi),xt,fif

c pause

P(2)=Po(i)*q*L*dfi*R(i)*sh

P(3)=Py(i)*alf*dsin(fif+dfi/2.)*q*L*dfi*R(i)*sh

P(4)=Pza(i)*alf*r1ef*q*L*dfi*R(i)*sh

P(5)=-Pzb(i)*bett*r2ef*q*L*dfi*R(i)*sh

do 1000 ik=1,5

Pyc(ik)=Pyc(ik)+P(ik)*dsin(fif+dfi/2.)

Pzc(ik)=Pzc(ik)+P(ik)*dcos(fif+dfi/2.)

Myx(ik)=Myx(ik)+P(ik)*dsin(fif+dfi/2.)*xt

Mzx(ik)=Mzx(ik)+P(ik)*dcos(fif+dfi/2.)*xt

Pxc(ik)=Pxc(ik)+P(ik)*dtan(gamm(i))

1000 continue

3 continue

2 continue

xt=xt+sh

R(i)=R(i)+sh*L*dtan(gamm(i))

1 continue

do 100 ik=1,5

if(dabs(Pyc(ik)).gt.1.d-10) then

Xc(ik)=Myx(ik)/Pyc(ik)

else

write(*,*)ik,'Myx=',Myx(ik)

endif

if(dabs(Pzc(ik)).gt.1.d-10) then

Xcc(ik)=Mzx(ik)/Pzc(ik)

else

write(*,*)ik,'Mzx=',Mzx(ik)

endif

write(*,*) 'Значения аэр. сил в Ц.Д.'

100 write(*,12) Pxc(ik),Pyc(ik),Pzc(ik),Xc(ik)*L,Xcc(ik)*L

12 format(1x,'Pxc=',f10.2,/,1x,'Pyc=',f10.2/,1x,'Pzc=',f10.2/,

* 1x,'Xyc=',f15.7,/,1x,'Xzc=',f15.7)

open(1,file='aer.res')

write(1,*) 'Начальное значение угла Fi'

write(1,*) fin*180./pi

write(1,*) 'Конечное значение угла Fi'

write(1,*) fi*180./pi

write(1,*) 'Начальная Xнач'

write(1,*) Ln*5.6

write(1,*) 'Конечная Xкон'

write(1,*) Lk*5.6

write(1,*) 'Значение угла BETTA'

write(1,*) bett*180./pi

write(1,*) 'Значение угла ALFA'

write(1,*) alf*180./pi

write(1,*) 'Значение q'

write(1,*) q

write(1,*) 'Значения аэр. сил в Ц.Д.'

do 102 ik=1,5

102 write(1,12) Pxc(ik),Pyc(ik),Pzc(ik),Xc(ik)*L,Xcc(ik)*L

close(1)

Страницы: 25 26 27 28 29 30