Download bif.procedur

Back to the list

   1 : * BIF       PROCEDUR  CARO      97/07/25    09:49:47     2769           
   2 : 
   3 :   debproc bif   rx*table                                            ;
   4 : 
   5 : * Operateur BIF
   6 : * -------------
   7 : *
   8 : * Description: The BIF operator computes the qdm and energy
   9 : *              interactions coefficients between a gas and a
  10 : *              'particles fluid'
  11 : *
  12 : * qdm:         Bif computes Kp and Kg. The terms Ip and Ig are
  13 : *              assembled via FROT.
  14 : *
  15 : *              Ig   : gas      qdm source term
  16 : *              Ip   : particle qdm source term
  17 : *              [Ig] = [Ip] = m/s^2 (force/unit mass)
  18 : *              Ig   = Kg * (Upart - Ugas)
  19 : *              Ip   = Kp * (Ugas  - Upart)
  20 : *              Kg   = Fd * alpha
  21 : *              Kp   = Fd * rhog / rhop
  22 : *              Fd   = (36/2) * nug * (1 + 0.150 * Re^0.681) /Dp^2
  23 : *
  24 : * energy:      Bif computes Hp and Hg. The terms Qp and Qg are
  25 : *              assembled via ECHI.
  26 : *
  27 : *              Qg   : gas      energy source term
  28 : *              Qp   : particle energy source term
  29 : *              [Qg] = [Qp] = K/s
  30 : *              Qg   = Hg * Volume * (Tpart - Tgas)
  31 : *              Qp   = Hp * Volume * (Tgas  - Tpart)
  32 : *              Hg   = H  * 6 * alpha / Dp / rhoCpg / Volume
  33 : *              Hp   = H  * 6 / Dp / rhoCpp / Volume
  34 : *              H    = Nu * lambdag / Dp
  35 : *
  36 : * Syntax (EQEX) :
  37 : *
  38 : *         BIF TABBIF
  39 : 
  40 : * tabbif           TABLE
  41 : * tabbif.'RHOF'    FLOTTANT Fluid density
  42 : * tabbif.'RHOP'    FLOTTANT Particle density
  43 : * tabbif.'DPART'   FLOTTANT Particle diameter
  44 : * tabbif.'NUF'     FLOTTANT Fluid kinematic viscosity
  45 : * tabbif.'ALPHA'   MOT     CHPOINT (SCAL SOMMET) in table INCO for alpha
  46 : * tabbif.'UFLUID'  MOT     CHPOINT (VECT SOMMET) in table INCO for Uflui
  47 : * tabbif.'UPART'   MOT     CHPOINT (VECT SOMMET) in table INCO for Upart
  48 : * tabbif.'KFLUID'  MOT     CHPOINT (VECT CENTRE) in table INCO for Kf
  49 : * tabbif.'KPART'   MOT     CHPOINT (VECT CENTRE) in table INCO for Kp
  50 : *
  51 : * The following only in case of thermal analysis
  52 : *
  53 : * tabbif.'HPART'   MOT     CHPOINT (SCAL CENTRE) in table INCO for Hp
  54 : * tabbif.'HFLUID'  MOT     CHPOINT (SCAL CENTRE) in table INCO for Hf
  55 : * tabbif.'LAMBDAF' FLOTTANT Fluid thermal conductivity
  56 : * tabbif.'ROCPF'   FLOTTANT Fluid thermal capacity (rho * Cp)
  57 : * tabbif.'ROCPP'   FLOTTANT Particle thermal capacity (rho * Cp)
  58 : * tabbif.'TGASN'   MOT     CHPOINT (SCAL SOMMET) in table INCO for Tgas
  59 : * tabbif.'TGASE'   MOT     CHPOINT (SCAL CENTRE) in table INCO for Tgas
  60 : * tabbif.'TPARTN'  MOT     CHPOINT (SCAL SOMMET) in table INCO for Tpart
  61 : * tabbif.'TPARTE'  MOT     CHPOINT (SCAL CENTRE) in table INCO for Tpart
  62 : *
  63 : * note: Bif checks the existence of tabbif.'HPART'
  64 : *       if tabbif.'HPART' exists         ====> computes Kp, Kg, Hp, Hg
  65 : *       if tabbif.'HPART' does not exist ====> computes Kg, Kp
  66 : *
  67 : 
  68 : 
  69 : 
  70 : * Reading the arguments
  71 : 
  72 :   tb      = rx.arg1                                                  ;
  73 :   nug     = tb.'NUF'                                                 ;
  74 :   Dp      = tb.'DPART'                                               ;
  75 :   uname   = tb.'UFLUID'                                              ;
  76 :   vname   = tb.'UPART'                                               ;
  77 :   aname   = tb.'ALPHA'                                               ;
  78 :   kfname  = tb.'KFLUID'                                              ;
  79 :   kpname  = tb.'KPART'                                               ;
  80 :   rop     = tb.'RHOP'                                                ;
  81 :   rog     = tb.'RHOF'                                                ;
  82 :   coef    = rog/rop                                                  ;
  83 :   rv      = rx.eqex                                                  ;
  84 :   ug      = rv.inco.uname                                            ;
  85 :   up      = rv.inco.vname                                            ;
  86 :   alpha   = rv.inco.aname                                            ;
  87 :   tdom    = rv.domaine                                               ;
  88 : 
  89 : * Reynolds
  90 : 
  91 :   ur      = kops up      '-'   ug                                    ;
  92 :   ur2     = kops ur   'PSCA'   ur                                    ;
  93 :   urn     = kops ur2    '**'  0.5                                    ;
  94 :   Re      = kops urn     '*'  (Dp/nug)                               ;
  95 : 
  96 : * Fd
  97 : 
  98 :   Fd      = (kops 1.0 '+' (kops 0.150 '*' (kops Re '**' 0.687)))     ;
  99 :   Fd      =  kops Fd  '*' (18.0*nug/Dp/Dp)                           ;
 100 : * Fd      = 18.0*nug*(1.0+(0.150*(Re**0.687)))/(Dp*Dp)               ;
 101 : 
 102 : * Sf and Sp
 103 : 
 104 :   Sg      = kcht tdom scal sommet (Fd * alpha)                       ;
 105 :   Sp      = kcht tdom scal sommet (Fd * coef)                        ;
 106 : 
 107 :   Sgx     = nomc 'UX'     Sg                                         ;
 108 :   Sgy     = nomc 'UY'     Sg                                         ;
 109 :   Sgv     = Sgx et Sgy                                               ;
 110 :   Spx     = nomc 'UX'     Sp                                         ;
 111 :   Spy     = nomc 'UY'     Sp                                         ;
 112 :   Spv     = Spx et Spy                                               ;
 113 : 
 114 :   rv.inco.kfname = kcht tdom vect centre (noel tdom Sgv)             ;
 115 :   rv.inco.kpname = kcht tdom vect centre (noel tdom Spv)             ;
 116 : 
 117 : * Thermal analysis
 118 : 
 119 :   si (exist rx arg1 'HPART')                                         ;
 120 : 
 121 : * Reading the arguments for the thermal analysis
 122 : 
 123 :   hfname  = tb.'HFLUID'                                              ;
 124 :   hpname  = tb.'HPART'                                               ;
 125 :   lambdag = tb.'LAMBDAF'                                             ;
 126 :   rocpp   = tb.'ROCPP'                                               ;
 127 :   rocpg   = tb.'ROCPF'                                               ;
 128 :   tgnname = tb.'TGASN'                                               ;
 129 :   tgename = tb.'TGASE'                                               ;
 130 :   tpnname = tb.'TPARTN'                                              ;
 131 :   tpename = tb.'TPARTE'                                              ;
 132 : 
 133 : *   Prandtl and Nusselt
 134 : 
 135 :     Pr      = nug*rocpg/lambdag                                      ;
 136 : 
 137 :     Nu      = (kops Re '**' 0.5)                                     ;
 138 :     Nu      =  kops 2.0 '+' (kops (0.6*(Pr**0.333)) '*' Nu)          ;
 139 : *   Nu      = (2.0+(0.6*(Pr**0.333)*(Re**0.5)))                      ;
 140 : 
 141 : *   Heat transfer coefficient H
 142 : 
 143 :     H       = kops Nu '*' (lambdag / Dp)                             ;
 144 :     Hg      = kops H  '*' (kops alpha '*' (6.0/Dp/rocpg))            ;
 145 :     Hp      = kops H  '*'                 (6.0/Dp/rocpp)             ;
 146 : 
 147 :     rv.inco.Hfname = kcht tdom scal centre (noel tdom Hg)            ;
 148 :     rv.inco.Hpname = kcht tdom scal centre (noel tdom Hp)            ;
 149 : 
 150 :     rv.inco.tgename = noel tdom (rv.inco.tgnname)                    ;
 151 :     rv.inco.tpename = noel tdom (rv.inco.tpnname)                    ;
 152 : 
 153 :   finsi                                                              ;
 154 : 
 155 :   finproc                                                            ;
 156 :  
 157 :  

© Cast3M 2003 - All rights reserved.
Disclaimer