24小时热门版块排行榜    

查看: 2125  |  回复: 5
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

罗敬

银虫 (初入文坛)

[交流] 谁有美国标准大气模型 1976 跪求呀已有3人参与

找了好久没找到,希望小木虫的大神可以帮帮忙!!感激不尽
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

水晶杯喝茶

新虫 (正式写手)


小木虫: 金币+0.5, 给个红包,谢谢回帖
引用回帖:
2楼: Originally posted by mingkeng at 2014-07-26 19:26:23
c  1976年美国标准大气
      PROGRAM STD                                                               
      DIMENSION HBASE(9)
      DATA HBASE/ 0.,1.1E4,2.E4,3.2E4,4.7E4,5.1E4,7.1E4,2*84852.0/
...

这用什么程序执行啊
4楼2014-07-26 20:38:17
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 6 个回答

mingkeng

至尊木虫 (正式写手)


小木虫: 金币+0.5, 给个红包,谢谢回帖
c  1976年美国标准大气
      PROGRAM STD                                                               
      DIMENSION HBASE(9)
      DATA HBASE/ 0.,1.1E4,2.E4,3.2E4,4.7E4,5.1E4,7.1E4,2*84852.0/
      PRINT 1002                                                               
1002 FORMAT(1H1,1X,'STANDARD ATMOSPHERE LAYERS  - ',
     2           2X,' FROM US STANDARD ATMOSPHERE, 1976 ',/)
      PRINT 1008
      PRINT 1009
1008 FORMAT(10X,'     P          Z                     T       TGRAD
     2          DENSITY')
1009 FORMAT(10X,'     MB       METERS        FEET    DEG C     DEG/M
     2           KG/M3')

      HMT=HBASE(1)
      CALL STDZ2P(P,HMT, 0, TCENT, DENS)                                       
      DO1I= 2,8
      PP=P
      PHMT=HMT
      PTCENT=TCENT
      PDENS=DENS
      HMT=HBASE(I)
      CALL STDZ2P(P,HMT, 0, TCENT, DENS)                                       
      TGRAD=(TCENT-PTCENT)/(HMT-PHMT)
      HFT=PHMT/.3048
      WRITE (6,1007)PP,PHMT,HFT,PTCENT,TGRAD,PDENS,PP
1007 FORMAT(10X,F9.4,2F12.2,F10.2,F10.5,F20.8,E16.8)
1     CONTINUE                                                                  
      TGRAD=0.
      HFT=HMT/.3048
      WRITE (6,1007)P,HMT,HFT,TCENT,TGRAD,DENS,P
C
C DO P2Z SUBROUTINE                                                            
      PRINT 1003                                                               
1003 FORMAT(1H1,1X,'PRINT FOR PRESSURE LEVELS')                                
      PRINT 1005                                                               
      PRINT 1006                                                               
      PINC=50.                                                                  
      P=1000.                                                                  
   10 CALL STDP2Z(P,Z,ZFT,TCENT,DENS)                                          
      PRINT 1004,P,Z,ZFT,TCENT,DENS
1004 FORMAT(10X,F7.2,2F10.0,F10.2,F16.6)
1005 FORMAT(10X,'   P        Z                   T           DENSITY')         
1006 FORMAT(10X,'   MB     METERS      FEET      DEG C          KG/M3')        
      IF(P.LE.100.) PINC=10.                                                   
      IF(P.LE.10.)PINC=1.                                                      
      IF(P.LE.1.)PINC=.1                                                        
      P=P-PINC                                                                  
      IF(P.GE..09) GO TO 10                                                     
      END                                                                       
      SUBROUTINE STDZ2P(P,H1,L,TCENT,RHO)                                       
C
C COMPUTES PRESSURE, TEMPERATURE, AND DENSITY VALUES FROM INPUT HEIGHTS
C  BASED ON US STANDARD ATMOSPHERE, 1976
C  VALUES NOT VALID ABOVE 84852 M.
C
C INPUT
C       H1    - HEIGHT IN FEET OR METERS
C       L     - UNITS FLAG - 0=METERS, 1=FEET
C OUTPUT
C       P     - PRESSURE IN MB
C       TCENT - TEMPERATURE IN DEG C
C       RHO   - DENSITY IN KG/M3
C
      DIMENSION HBASE(10),HTOP(10),TB(10),GRAD(10),ABS(10)
      DIMENSION PB(11),RB(10)
      DATA HBASE/ 0.,1.1E4,2.E4,3.2E4,4.7E4,5.1E4,7.1E4,3*84852.0/
      DATA HTOP /1.1E4,2.E4,3.2E4,4.7E4,5.1E4,7.1E4,4*84852.0/
      DATA TB / 15.,2*-56.5,-44.5,2*-2.5,-58.5,3*-86.2/
      DATA GRAD/-.0065,0.,.001,.0028,0.,-.0028,-.002,3*0./
      DATA CHECK/0./                                                            
C     H1 IS ALTITUDE, IF IN METERS SET L .LE. 0.  IF IN FEET SET L .GE. 1      
C     P IS PRESSURE IN MB.  TCENT IS TEMP CELSIUS.  RHO IS DENSITY IN KG/M**3   
C                                                                              
      IF(CHECK.NE.0.) GO TO 16                                                  
      ABSZ = 273.15                                                            
      PZERO=1013.250                                                            
      G=980.665                                                                 
      R = 83143200./28.9644                                                     
      PB(1) = PZERO                                                            
      DO 3  I=1,8                                                               
      ABS(I) = TB(I) + ABSZ                                                     
    3 CONTINUE                                                                  
       DO 15  I=1,8                                                            
      IF (GRAD(I) .EQ. 0)  GO TO 10                                             
C  HERE FOR TEMP GRADIENT NOT ZERO                                             
    5 PB(I+1) = PB(I)*((ABS(I+1)/ABS(I))**(100.*G/(-GRAD(I)*R)))               
      GO TO 12                                                                  
C  HERE FOR TEMP GRADIENT ZERO                                                  
   10 PB(I+1) = PB(I)*2.7182818**((-100.*G/(R*ABS(I)))*(HTOP(I)-HBASE(I)        
     X  ))                                                                     
   12 RB(I) = 1000.*PB(I)/(R*ABS(I)) * 1000.                                    
   15 CONTINUE                                                                  
      CHECK=10.                                                                 
   16 CONTINUE                                                                  
C                                                                              
      IF(L. LT.1) GO TO 30                                                      
C                                                                              
      H = H1*.3048                                                              
      GO TO 4                                                                  
30    H = H1                                                                    
4     CONTINUE                                                                  
C  FIND THE ATMOSPHERIC LAYER WE ARE IN                                         
   35 DO 55  I = 1,8                                                            
      IF  (H .GT. HBASE(I+1)) GO TO 55                                          
   37 IF (GRAD(I)) 39,43,39                                                     
C  TEMP GRADIENT NOT ZERO                                                      
   39 P= PB(I)*((H-HBASE(I))*GRAD(I)/ABS(I)+1)**(-100.*G/(GRAD(I)*R))           
      GO TO 45                                                                  
C  ISOTHERMAL LAYER                                                            
   43 P= PB(I)*EXP((H-HBASE(I))*(-G)/(.01*R*ABS(I)))                           
   45 T = ABS(I) + GRAD(I)*(H-HBASE(I))                                         
      TCENT = T - ABSZ                                                         
      RHO = 1.E6* P/(R*T)                                                      
      RETURN                                                                    
   55 CONTINUE                                                                  
   56 WRITE(6,98)H
98    FORMAT(' STDATM -  ALTITUDE OUT OF RANGE ',F12.2,//)
      END                                                                       
      SUBROUTINE STDP2Z(P,H,HFT,TCENT,DENS)                                    
C
C COMPUTES HEIGHT, TEMPERATURE, AND DENSITY VALUES FROM INPUT PRESSURES
C  BASED ON US STANDARD ATMOSPHERE, 1976
C  VALUES NOT VALID ABOVE 84852 KM.
C
C INPUT
C       P     - PRESSURE IN MB
C OUTPUT
C       H     - HEIGHT IN METERS
C       HFT   - HEIGHT IN FEET
C       TCENT - TEMPERATURE IN DEG C
C       DENS  - DENSITY IN KG/M3
C
      DIMENSION HBASE(10),HTOP(10),TB(10),GRAD(10),ABS(10),PB(10),RB(10)        
      DATA HBASE/ 0.,1.1E4,2.E4,3.2E4,4.7E4,5.1E4,7.1E4,3*84852.0/
      DATA HTOP /1.1E4,2.E4,3.2E4,4.7E4,5.1E4,7.1E4,4*84852.0/
      DATA GRAD/-.0065,0.,.001,.0028,0.,-.0028,-.002,3*0./
      DATA ABS/288.15,216.65,216.65,228.65,270.65,270.65,                       
     2  214.65,186.95,2*0./
      DATA PB/1013.25,0.22632064E+03,0.54748887E+02,0.86801870E+01,
     2 0.11090631E+01,0.66938874E+00,0.39564205E-01,0.37338360E-02,
     3 2*0./
      ABSZ = 273.15                                                            
      G=980.665                                                                 
      R = 83143200./28.9644                                                     
      IF(P  .GT. PB(1)) GO TO 56                                                
   35 DO 55  I = 1,8                                                            
      IF (P .GE. PB(I+1))  GO TO 37                                             
   55 CONTINUE                                                                  
   56 PRINT 1001,P                                                              
1001 FORMAT (' STDATM- PRESSURE OUT OF EXCEEDED ',F8.2)
   37 IF (GRAD(I)) 39,43,39                                                     
C  TEMP GRADIENT NOT ZERO                                                      
   39 H = ABS(I)/(-GRAD(I)) *(1. -(P/PB(I))**(-GRAD(I)*R/(100.*G)))            
     X  + HBASE(I)                                                              
      GO TO 45                                                                  
C  ISOTHERMAL LAYER                                                            
   43 H = HBASE(I) + .01*R*ABS(I)/G *(ALOG(PB(I)/P))                           
   45 T = ABS(I) + GRAD(I)*(H-HBASE(I))                                         
      TCENT = T - ABSZ                                                         
      DENS = 1000*1000.*P/(R*T)                                                
      HFT = H/.3048                                                            
      RETURN                                                                    
      END
2楼2014-07-26 19:26:23
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

mingkeng

至尊木虫 (正式写手)

引用回帖:
2楼: Originally posted by mingkeng at 2014-07-26 19:26:23
c  1976年美国标准大气
      PROGRAM STD                                                               
      DIMENSION HBASE(9)
      DATA HBASE/ 0.,1.1E4,2.E4,3.2E4,4.7E4,5.1E4,7.1E4,2*84852.0/
...

执行这个程序,就可以算出美国标准大气的参数,然后随便找个软件绘图即可。
3楼2014-07-26 19:26:55
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

mingkeng

至尊木虫 (正式写手)


小木虫: 金币+0.5, 给个红包,谢谢回帖
引用回帖:
4楼: Originally posted by 水晶杯喝茶 at 2014-07-26 20:38:17
这用什么程序执行啊...

这是Fortran程序
5楼2014-07-27 08:18:38
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通表情 高级回复(可上传附件)
信息提示
请填处理意见