Download fuausm.eso

Back to the list

   1 : C FUAUSM    SOURCE    CHAT      05/01/13    00:11:14     5004           
   2 :       SUBROUTINE FUAUSM(ALPHA,BETA,MG,MD,MPLUS,MMINUS,PPLUS,PMINUS)
   3 : C************************************************************************
   4 : C
   5 : C PROJET            :  CASTEM 2000
   6 : C
   7 : C NOM               :  FUAUSM
   8 : C
   9 : C DESCRIPTION       :  voir FAUSMP, FAUSM2
  10 : C
  11 : C LANGUAGE          :  FORTRAN 77 
  12 : C      
  13 : C AUTEUR            :  A. BECCANTINI DRN/DMT/SEMT/LTMF  
  14 : C
  15 : C************************************************************************
  16 : C
  17 : C APPELES 
  18 : C
  19 : C NONE
  20 : C          
  21 : C
  22 : C************************************************************************
  23 : C
  24 : C**** Entrées:
  25 : C
  26 : C     ALPHA, BETA     =  parametres reels
  27 : C
  28 : C     MG, MD          =  nombres de MACH (gauche et droite) normales
  29 : C
  30 : C**** Sorties:
  31 : C
  32 : C     MPLUS, MMINUS   
  33 : C     PPLUS, PMINUS   =  parametres qui interviennent dans le calcul
  34 : C                        de flux numerique AUSM+
  35 : C
  36 : C************************************************************************
  37 : C
  38 : C HISTORIQUE (Anomalies et modifications éventuelles)
  39 : C
  40 : C HISTORIQUE :  Créé le 30.10.2000
  41 : C
  42 : C************************************************************************
  43 : C
  44 : C N.B.: Toutes les variables sont DECLAREES
  45 : C                          
  46 :       IMPLICIT INTEGER(I-N)
  47 :       REAL*8 ALPHA,BETA,MG,MD,MPLUS,MMINUS,PPLUS,PMINUS
  48 : C
  49 : C**** Machs AUSM+
  50 : C
  51 : C
  52 :       IF(ABS(MG).GT.1.0D0)THEN
  53 :          MPLUS=0.5D0*(MG+ABS(MG))
  54 :       ELSE
  55 :          MPLUS=0.25D0 * ((MG+1.0D0)**2) + (BETA * ((MG**2 - 1.0D0)**2))
  56 :       ENDIF
  57 : *
  58 :       IF(ABS(MD).GT.1.0D0)THEN
  59 :         MMINUS=0.5D0*(MD-ABS(MD))
  60 :       ELSE
  61 :         MMINUS=-0.25D0 * ((MD-1.0D0)**2) - (BETA * ((MD**2 - 1.0D0)**2))
  62 :       ENDIF
  63 : C
  64 : C     N.B. MMINUS(M) = - MMPLUS(-M)
  65 : C
  66 : C**** PPLUS, PMINUS
  67 : C
  68 : *
  69 :       IF(ABS(MG).GT.1.0D0)THEN
  70 :         PPLUS=0.5D0*(1+ABS(MG)/MG)
  71 :       ELSE
  72 :         PPLUS=0.25D0 * ((MG+1.0D0)**2) * (2.0D0-MG) +
  73 :      *         ALPHA * MG * ((MG**2 - 1.0D0)**2)
  74 :       ENDIF
  75 : *
  76 :       IF(ABS(MD).GT.1.0D0)THEN
  77 :         PMINUS=0.5D0*(1-ABS(MD)/MD)
  78 :       ELSE
  79 :         PMINUS=0.25D0 * ((MD-1.0D0)**2) * (2.0D0+MD)
  80 :      *          - ALPHA * MD * ((MD**2 - 1.0D0)**2)
  81 :       ENDIF
  82 : C
  83 : C     N.B. PMINUS(M) = PPLUS(-M)
  84 : C
  85 :       RETURN
  86 :       END
  87 :  
  88 :  

© Cast3M 2003 - All rights reserved.
Disclaimer