Download inj.dgibi

Back to the list

* fichier :  inj.dgibi
*
* INJ.DGIBI (Cataldo Caroli) Mai 99
* Teste la procedure ENCEINTE
*
*
*
*
fin ;
*opti trace psc ;
COMPLET= FAUX  ;
debproc visu rx*table                                 ;

 epsi  =     1.0e-3                                   ;
 px    = -1000.0     0.0     0.0                      ;
 py    =     0.0 -1000.0     0.0                      ;
 pz    =     0.0     0.0 -1000.0                      ;
 px1   = -1000.0     0.0    10.0                      ;
 py1   =     0.0 -1000.0    10.0                      ;
 pz1   =     0.0     0.0    10.0                      ;

 $vtf  = rx.'TIC'.'$vtf'                                    ;
 $vtp  = rx.'TIC'.'$vtp'                                    ;
 vtf   = doma $vtf maillage                           ;
 vtp   = doma $vtp maillage                           ;

 un    = rx.tic.'UN'                                  ;
 tf    = rx.tic.'TF'                                  ;
 rvp   = rx.tic.'RVP'                                 ;
 rho   = rx.tic.'RHO'                                 ;
 tp    = rx.tic.'TP'                                  ;
 si (rxt.'ASPERS')                                    ;
  vn    = rx.tic.'VN'                                 ;
  xd    = rx.tic.'XD'                                 ;
  dd    = rx.tic.'DD'                                 ;
  td    = rx.tic.'TD'                                 ;
  kgas  = rx.tic.'KGAS'                               ;
  kdis  = rx.tic.'KDIS'                               ;
  hgas  = rx.tic.'HGAS'                               ;
  hdis  = rx.tic.'HDIS'                               ;
  sdia  = rx.tic.'SDIA'                               ;
  sxd   = rx.tic.'SXD'                                ;
  srho  = rx.tic.'SRHO'                               ;
 finsi                                                ;
 roi   = rx.tic.'ROI'                                 ;
 rovi  = rx.tic.'ROVI'                                ;

 x y z = coor  vtf                                    ;
 ptx   = x poin egsupe     0.0                        ;
 pty   = y poin egsupe     0.0                        ;
 ptz   = z poin inferieur 11.0                        ;
 vtfx  = vtf elem appuie strictement ptx              ;
 vtfy  = vtf elem appuie strictement pty              ;
 vtfz  = vtf elem appuie strictement ptz              ;

 x y z = coor  vtp                                    ;
 ptx   = x poin egsupe  0.0                           ;
 pty   = y poin egsupe  0.0                           ;
 ptz   = z poin eginfe 11.0                           ;
 vtpx  = vtp elem appuie strictement ptx              ;
 vtpy  = vtp elem appuie strictement pty              ;
 vtpz  = vtp elem appuie strictement ptz              ;

 ptxz  = poin (chan vtf poi1) plan p0  px  pz  epsi   ;
 ptyz  = poin (chan vtf poi1) plan p0  py  pz  epsi   ;
 ptxy  = poin (chan vtf poi1) plan px1 py1 pz1 1e-0   ;
 plxz  = elem (chan vtf poi1) 'APPUIE' 'STRICTEMENT' ptxz ;
 plyz  = elem (chan vtf poi1) 'APPUIE' 'STRICTEMENT' ptyz ;
 plxy  = elem (chan vtf poi1) 'APPUIE' 'STRICTEMENT' ptxy ;

 un_v  = vect       un         1.0 ux uy uz jaun      ;
 uxzv  = vect (redu un ptxz  ) 1.0 ux uy uz jaun      ;
 uyzv  = vect (redu un ptyz  ) 1.0 ux uy uz jaun      ;
 uxyv  = vect (redu un ptxy  ) 1.0 ux uy uz jaun      ;

*titr 'Un   ' ; trac    un_v vtf                      ;
*titr 'Un yz' ; trac px uyzv plyz                     ;
 titr 'Un xz' ; trac py uxzv plxz                     ;
 titr 'Un xy' ; trac pz uxyv plxy                     ;

  si (ega (rxt.'discr') 'QUAF')                       ;
     vtfx = chan vtfx 'DECL'                          ;
     vtfy = chan vtfy 'DECL'                          ;
     vtfz = chan vtfz 'DECL'                          ;
     vtpx = chan vtpx 'DECL'                          ;
     vtpy = chan vtpy 'DECL'                          ;
     vtpz = chan vtpz 'DECL'                          ;
  finsi                                               ;

  mess 'min Tf  ' (mini tf)    'max Tf  ' (maxi tf)   ;
* titr 'Tf   yz' ; trac px vtfx tf                    ;
  titr 'Tf   xz' ; trac py vtfy tf                    ;
* titr 'Tf   xy' ; trac pz vtfz tf                    ;
  mess 'min Tp  ' (mini tp)    'max Tp  ' (maxi tp)   ;
* titr 'Tp   yz' ; trac px vtpx tp                    ;
  titr 'Tp   xz' ; trac py vtpy tp                    ;
* titr 'Tp   xy' ; trac pz vtpz tp                    ;
  mess 'min Rho ' (mini rho)   'max Rho ' (maxi rho)  ;
* titr 'Rho  yz' ; trac px vtfx rho                   ;
  titr 'Rho  xz' ; trac py vtfy rho                   ;
* titr 'Rho  xy' ; trac pz vtfz rho                   ;
  mess 'min Rvp ' (mini rvp)   'max Rvp ' (maxi rvp)  ;
* titr 'Rvp  yz' ; trac px vtfx rvp                   ;
  titr 'Rvp  xz' ; trac py vtfy rvp                   ;
* titr 'Rvp  xy' ; trac pz vtfz rvp                   ;

 si (rxt.'ASPERS')                                    ;
  vn    = rx.tic.'VN'                                 ;
  vxzv  = vect (redu vn plxz  ) 1.0e-0 ux uy uz roug  ;
  vyzv  = vect (redu vn plyz  ) 1.0e-0 ux uy uz roug  ;
  vxyv  = vect (redu vn plxy  ) 1.0e-0 ux uy uz roug  ;
  cmps  =  extr un comp                               ;
  us    = (psca un un cmps cmps) ** 0.5               ;
  vs    = (psca vn vn cmps cmps) ** 0.5               ;
* titr 'Vn yz' ; trac px vyzv plyz                    ;
  titr 'Vn xz' ; trac py vxzv plxz                    ;
* titr 'Vn xy' ; trac pz vxyv plxy                    ;
  mess 'min Dd  ' (mini dd)    'max Dd  ' (maxi dd)   ;
* titr 'Dd   yz' ; trac px vtfx dd                    ;
  titr 'Dd   xz' ; trac py vtfy dd                    ;
* titr 'Dd   xy' ; trac pz vtfz dd                    ;
  mess 'min Xd  ' (mini xd)    'max Xd  ' (maxi xd)   ;
* titr 'Xd   yz' ; trac px vtfx xd                    ;
  titr 'Xd   xz' ; trac py vtfy xd                    ;
* titr 'Xd   xy' ; trac pz vtfz xd                    ;
  mess 'min Td  ' (mini td)    'max Td  ' (maxi td)   ;
* titr 'Td   yz' ; trac px vtfx td                    ;
  titr 'Td   xz' ; trac py vtfy td                    ;
* titr 'Td   xy' ; trac pz vtfz td                    ;
 finsi                                                ;
finproc                                               ;





 opti dime 3 elem cu20                                        ;

 ri   = 10.000      ; sp   =  1.000      ; hc   = 20.000      ;
 'SI' COMPLET ;
 n1   =  1          ; n2   =  2          ; n3   =  1          ;
 n4   =  4          ;                                         ;
 'SINON' ;
 n1   =  1          ; n2   =  1          ; n3   =  1          ;
 n4   =  1          ;                                         ;
 'FINSI' ;
 epsi =  1.000e-2   ;                                         ;

 p0   =     0.000             0.000                0.000      ;
 px   = -1000.000             0.000                0.000      ;
 py   =     0.000         -1000.000                0.000      ;
 pz   =     0.000             0.000             1000.000      ;
 cd   =     0.000             0.000              -20.000      ;
 ph0  =     0.000             0.000                hc         ;
 phx  =     ri                0.000                hc         ;
 phy  =     0.000             ri                   hc         ;

 p1   =  (ri*0.4)             0.000                0.000      ;
 p2   =  (ri*0.3)             (ri*0.3)             0.000      ;
 p3   =  0.000                (ri*0.4)             0.000      ;
 p4   =   ri                  0.000                0.000      ;
 p5   =  0.000                 ri                  0.000      ;
 p6   =  (ri+sp)              0.000                0.000      ;
 p7   =  0.000                (ri+sp)              0.000      ;

 l1   =  droi p0 p1 n1                                        ;
 l2   =  droi p1 p2 n1                                        ;
 l3   =  droi p2 p3 n1                                        ;
 l4   =  droi p3 p0 n1                                        ;
 l5   =  cerc p4 p0 p5 (2*n1)                                 ;
 l6   =  cerc p6 p0 p7 (2*n1)                                 ;

 basf =  dall l1 l2 l3 l4                                     ;
 basf =  basf et (regl (l2 et l3) l5 n2) ; elim basf epsi     ;
 basf =  basf et (syme  basf droi p0 p3) ; elim basf epsi     ;
 basf =  basf et (syme  basf droi p0 p1) ; elim basf epsi     ;

 basm =  regl l5 l6 n3                                        ;
 basm =  basm et (syme  basm droi p0 p3) ; elim basm epsi     ;
 basm =  basm et (syme  basm droi p0 p1) ; elim basm epsi     ;

 domf =  basf proj cyli pz sphe cd phx                        ;
 domm =  basm proj cyli pz plan    ph0 phx phy                ;

 aria =  volu basf domf n4                                    ;
 muro = (volu basm domm n4) coul roug                         ;
 elim (aria et muro) epsi                                     ;

 pjg  =  poin basf proc (0.000    0.000    0.000)             ;
*pjg  =  poin basf proc ((ri/2.0) 0.000    0.000)             ;
 jg   = (elem basf 'APPUIE' 'LARGEMENT' pjg) coul vert        ;

 pjd  =  poin domf proc (0.000 0.000 hc)                      ;
 jd   = (elem domf 'APPUIE' 'LARGEMENT' pjd) coul vert        ;


 DT0  =      1.0e-0                                           ;

 rxt          =  table                                        ;

 rxt.'vtf'    =   aria                                        ;
 rxt.'vtp'    =   muro                                        ;
 rxt.'breche' =   jg                                          ;
*rxt.'aspinj' =   jd                                          ;
*rxt.'toitf'  =   domf                                        ;
 rxt.'pi'     =  (0.0 0.0 10.0)                               ;
*
*rxt.'vtf'    =   vtf                                         ;
*rxt.'vtp'    =   vtp                                         ;
*rxt.'breche' =   breche                                      ;
*rxt.'paroif' =   paroif                                      ;
*rxt.'aspinj' =   breche                                      ;
*rxt.'pi'     =   (-3.0 -3.0 50.0) ;                          ;

*rxt.'ASPERS' =  VRAI                                         ;
 rxt.'ASPERS' =  FAUX                                         ;
*rxt.'rod'    =  1.000e+3                                     ;
*rxt.'Cpd'    =  4.180e+3                                     ;

 rxt.'scenario'          = table                              ;
 rxt.'scenario'.'TF0'    =       50.0                         ;
 rxt.'scenario'.'PT0'    =        1.0e5                       ;
 rxt.'scenario'.'Yvap0'  =        0.1                         ;
 rxt.'scenario'.'Yhe0'   =        0.0                         ;
 rxt.'scenario'.'TP0'    =       20.0                         ;
 rxt.'scenario'.'t'      = prog   0.0 100.0                   ;
 rxt.'scenario'.'Qvap'   = prog  10.0  10.0                   ;
 rxt.'scenario'.'qair'   = prog   0.0   0.0                   ;
 rxt.'scenario'.'qhe'    = prog   0.0   0.0                   ;
 rxt.'scenario'.'tinj'   = prog 100.0 100.0                   ;
*
*rxt.'scenario'.'vzinj'  = prog  -1.000e-1  -1.000e-1         ;
*rxt.'scenario'.'xdinj'  = prog   1.000e-3   1.000e-3         ;
*rxt.'scenario'.'tdinj'  = prog   5.000e+1   5.000e+1         ;
*rxt.'scenario'.'ddinj'  = prog   5.000e-4   5.000e-4         ;

*rxt.'discr'  =   'QUAF'                                      ;
*rxt.'ALGO'   = 'IMPL'                                        ;
*rxt.'KPRESS' = 'CENTREP1'                                    ;

 rxt.'epsi'   =  1.0e-4                                       ;
 rxt.'DT0'    =  DT0                                          ;

 rxt.'VAPEUR' = VRAI                                          ;
 rxt.'lamb'   =  2.300                                        ;
 rxt.'rocpb'  =  2.100e+6                                     ;
 rxt.'muair'  =  1.800e-5                                     ;
 rxt.'alf'    =  1.800e-5                                     ;
 rxt.'lamair' =  2.580e-2                                     ;
 rxt.'db'     =  1.000e-5                                     ;
 rxt.'KH'     =  1.000e+1                                     ;
 rxt.'MUT'    =  1.000e-2                                     ;

 rxt.'Cpair' =  1000.0                              ;
 rxt.'Cph2o' =  1700.0                              ;
 rxt.'Cphe'  = 14550.0                              ;
 rxt.'Lv'    =     2.3E6                            ;
 rxt.'Rgair' = ((80. * 296.9) + (20. * 259.8))/100. ;
 rxt.'Rgh2o' =   461.0                              ;
 rxt.'Rghe'  =  4157.0                              ;

 rxt.'FROG'=1.   ;
 rxt.'FROC'=0.2  ;

 rxt.'alfg'=0.5 ;
 rxt.'alfc'=0.5 ;

 'SI' COMPLET ;
 rxt.'GRAPH'= vrai ;
 enceinte 10                   rxt ;
 visu rxt ;
 'SINON' ;
 enceinte 3 rxt ;
 un = (rxt.tic.'UN') ;
 vmax=maxi un ;
 vmin=mini un ;
 mess ' Vmax = ' vmax 'Vmin = ' vmin ;
 er = (abs (vmax - .70325) ) + (abs (vmin + 4.05197E-02)) ;
 mess ' Ecart sur Min Max ' er ;
 err1= 5.e-5 ;
 si ( er > err1 ) ; erreur 5 ; finsi ;

 'FINSI' ;
  'FIN' ;

 

 

 

 

 

 

© Cast3M 2003 - All rights reserved.
Disclaimer