* fichier : multilayer.dgibi
************************************************************************
* Section : Thermique Conduction
************************************************************************
*******************************************************************
* Cas test de non-régression CAST3M
* Propriétés physiques de murs multicouches
* auteur G.bonic 19/04/05
******************************************************************* 

* Procédure d'affichage 
'DEBP' BOUYOU ;
'ARGU' RXT * 'TABLE' ;
PERSO = rxt . 'TABPERSO' ;
COMPT = PERSO.'COMPT';
FREQ = PERSO.'FREQ' ;
'SI' (RXT.'TIC'.'NUPADT' 'EGA' ('ENTI'(COMPT * FREQ)));
  PERSO.'COMPT' = PERSO.'COMPT' + 1 ;
  VN = 'VECT' (RXT.'TIC'.'UN') 0.1 'UX' 'UY'  'BLANC';
*  TRAC  VN RXT.'GEO'.'Mvtf' RXT.'TIC'.'TF' (CONT RXT.'GEO'.'Mvtf')
*   'NCLK' ('TITR' RXT.'TIC'.'Tps') ;
'FINSI';
FINPROC;
***********
'OPTI' 'DIME' 2;
OPTI TRAC X ;
'OPTI' 'ELEM' 'QUA8' ; 

EPSI = 0.0001;
P1 = -5. 0. ;
P2 = 5. 0. ;
P3 = 5.1 0. ;
P4 = -5.1 0. ;
Df = P1 'DROI' P2 50 ;
Dwd = P2 'DROI' P3 1  COUL BLEU;
Dwg = P4 'DROI' P1 1  COUL ROUGE;
*trac (DF ET Dwd ET Dwg) 'NCLK';
BASE = Dwg 'ET' (Df 'COUL' 'BLAN') 'ET' Dwd ;
PLAF = BASE 'PLUS' (0. 10.) ;
V1 = 'TRAN' 50 BASE (0. 10.) ;
'ELIM' EPSI (PLAF 'ET' V1);
*trac V1 'NCLK';
Wbas = 'TRAN' 1 BASE (0. -0.1) ;
Whaut = 'TRAN' 1 PLAF (0. 0.1) ;
Wcor = Wbas 'ET' Whaut 'COUL' 'VERT' ;
Wd = V1 'ELEM' 'BLEU' ;
Wg = V1 'ELEM' 'ROUG' ;
Vflu = DIFF V1 Wd ;
Vflu = DIFF Vflu Wg ;
CAPDRO = Vflu 'POIN' 'PROC' (P1 'PLUS' ((49. * 10. / 50.) 5.));
CAPGAU = Vflu 'POIN' 'PROC' (P1 'PLUS' ((1. * 10. / 50.) 5.));
ELIM (Vflu 'ET' Wcor 'ET' WD 'ET' Wg 'ET' CAPDRO 'ET' CAPGAU) EPSI ;
*trac (Vflu ET Wcor ET WD ET Wg) ;
'LIST' ('NBNO'(Vflu ET Wcor ET WD ET Wg)) ;
Wex = CONT (Vflu ET Wcor ET WD ET Wg);
*
*'TRAC' (wd 'ET' wg) ;
*'TRAC' (Vflu 'ET' capdro 'ET' capgau) ;
*'TRAC' (Vflu 'ET' Wcor 'ET' WD 'ET' Wg) ;
*'TRAC' Wex ;
****
RXT = 'TABLE' ;                                                         
rxt.'VERSION'= 'V0'                                           ;
RXT.'vtf' = Vflu ;                                                       
*RXT.'breche' = AB ;
*RXT.'axe' = AXE ;                                                
*RXT.'diru1' = (0 1) ;                                                 
RXT.'pi' = ( Vflu 'POIN' 'PROC' (0.0 2.0)) ;                         
RXT.'IMPR' = 2 ;                                                        
                                                                        
RXT.'THERMP' = VRAI ;                                                   
RXT.'vtp' = (Wcor 'ET' Wg 'ET' Wd) ;                                                       
RXT.'LAMBDA' = 3000.0 ;                                                   
RXT.'ROCP' = (78.0 '*' 500.0) ;                                       
*RXT.'ROCP' = (78.0 '*' 500.0) ;                                       
RXT.'Tp0' = 500.0 ;                                                     
RXT.'ECHAN' = 4000.0 ;

*RXT.'Lv' = 2.2E6 ;

RXT.'ECHEXT' = VRAI ;
RXT.'parext' = Wex ;
RXT.'HEXT' = 5000.0 ;
RXT.'TPEXT' = 0.0 ;
                                                   
  
*RXT.'VAPEUR' = VRAI ;                                                   
*RXT.'AIR' = VRAI ;                                                   
*RXT.'HE' = VRAI ;                                                       
RXT.'TF0' = 500.1 ;                                                     
RXT.'PT0' = 1.007E5 ;                                                      
*RXT.'Yvap0' = 0.001 ;                                                   
*RXT.'Yhe0' = 0.0 ;                                                      
                                                                        
*RXT.'MODTURB' = 'NUTURB' ;                                             
*RXT.'NUT' = 5.E-3 ;                                                    
RXT.'MODTURB' = 'LMEL' ;                                                
*RXT.'LMEL' = 0.2 ;                                                      
RXT.'LMEL' = 0.08 ;                                                      
                                                                        
RXT.'epsi' = 1.E-5 ;                                                    
*RXT.'DISCR' = 'LINE' ;                                                  
*RXT.'KPRE' = 'MSOMMET' ;                                                
RXT.'DISCR' = 'MACRO' ;                                                  
RXT.'KPRE' = 'CENTREP1' ;                                                
RXT.'GRAPH' = FAUX ;                                                    
RXT.'FRPREC' = 2 ;

PERSO=TABLE;                                                            
PERSO.'COMPT' =  2 ;
PERSO.'FREQ' =  1 ;
rxt.'PERSO'   = VRAI              ;                                     
rxt.'PRCPERSO'= 'BOUYOU'           ;                                     
rxt.'TABPERSO'= PERSO             ;                                     
          
RXT.'DT0' = 0.05 ;
* Iteration fictive pour mettre en place les chpo à partir des flottants
* initiaux
EXECRXT 0 RXT ;
* Mise en évidences des zones de la paroi où il faut imposer les nouveaux
* champs
cvtp = 'DOMA' RXT.'GEO'.'$vtp' 'CENTRE' ;
cWg = 'CONT' Wg;
cWd = 'CONT' Wd;
cWh = 'CONT' Whaut;
Mg = incl cvtp cWg 'BARY' ;
Md = incl cvtp cWd 'BARY' ;
Mh = incl cvtp cWh 'BARY' ;
* Création des nouveaux CHPO
l_g = 'MANU' 'CHPO' Mg 1 'SCAL' 15.0 'NATURE' 'DISCRET' ;
l_d = 'MANU' 'CHPO' Md 1 'SCAL' 300.0 'NATURE' 'DISCRET' ;
l_h = 'MANU' 'CHPO' Mh 1 'SCAL' 300.0 'NATURE' 'DISCRET' ;
rxt.'TIC'.'LAMBDA' = 'KCHT' rxt.'GEO'.'$vtp' 'SCAL' 'CENTRE'
                     15.0 l_d l_g l_h;
r_g = 'MANU' 'CHPO' Mg 1 'SCAL' (7800.0 '*' 500.0) 'NATURE' 'DISCRET' ;
r_d = 'MANU' 'CHPO' Md 1 'SCAL' (78.0 '*' 500.0) 'NATURE' 'DISCRET' ;
r_h = 'MANU' 'CHPO' Mh 1 'SCAL' (78.0 '*' 500.0) 'NATURE' 'DISCRET' ;
rxt.'TIC'.'ROCP' = 'KCHT' rxt.'GEO'.'$vtp' 'SCAL' 'CENTRE' 
                    (7800.0 '*' 500.0) r_d r_g r_h;

EXECRXT 30 RXT;                                                              
TOLER = 5.E-4 ;
VALGr = 4.7680E+02 ;
VALDR = 4.7679E+02 ;
VALGr = 4.76895E+02 ;
VALDR = 4.60633E+02 ;
*VALD = 'REDU' rxt.tic.'TF' CAPDRO ;
*VALG = 'REDU' rxt.tic.'TF' CAPGAU ;
VALD = 'EXTR' rxt.tic.'TF' 'SCAL' CAPDRO;
VALG = 'EXTR' rxt.tic.'TF' 'SCAL' CAPGAU;
'MESS' VALGr VALDR;
'MESS' VALG  VALD ;
ERRE1 = 'ABS' (VALGr '-' VALG) '/' VALGr ;
ERRE2 = 'ABS' (VALDr '-' VALD) '/' VALDr ;
'SI' (('MAXI' ('PROG' ERRE1 ERRE2)) '>EG' TOLER);
   'MESSAGE' 'Il y a eu des erreurs' ;
   'ERREUR' 5 ;
'FINSI';   
 FIN;
 

 

 

 

 

 

 

