* fichier : lapq.dgibi
* Comparaison a la solution analytique en regime permanent
* de la conduction dans un massif avec source
* volumique. La temperature de paroi est imposee (Tw)
* En 2D et 3D
*
* Lapn T + q = 0.
*
*
* T - Tw = 1/2 lambda/q (r**2 - x**2)
*
*
opti dime 2 elem QUA4 ;
GRAPH=VRAI ;
GRAPH=FAUX ;
DISCR = LINE ;
NBIT = 5 ;
hz= 2. ;
r0=1. ;
p0=0 0 ;P1= r0 0 ; p2= r0 1 ; P3= 0 1 ;
n1 = 4 ;
n2 = 2 ;
nz= 2 ;
ab = p0 d n1 p1 ;
wall = p1 d n2 p2 ;
bc = p2 d n1 p3 ;
axe = P3 d n2 p0 ;
mt= daller ab wall bc axe ;
Mmt= chan QUAF mt ;
Mwall = chan QUAF wall ;
elim (Mwall et Mmt) 1.e-5 ;
$wall = mode Mwall 'NAVIER_STOKES' DISCR ;
wall = doma $wall maillage ;
$mt= mode Mmt 'NAVIER_STOKES' DISCR ;
mt= doma $mt maillage ;
Lambda = 3.142 ;
DT=1. ;
SRC= 7.5 ;
tw= 1.46 ;
rt=eqex 'OMEGA' 1. 'NITER' 1 ITMA 1 'FIDT' 1
'OPTI' 'EF' 'IMPL'
ZONE $mt 'OPER' 'LAPN' lambda 'INCO' 'TN'
ZONE $mt 'OPER' 'FIMP' src 'INCO' 'TN'
'OPTI' 'EFM1' 'IMPL' 'CENTREE'
ZONE $mt OPER DFDT 1. 'TNM' DT INCO 'TN'
;
RT= eqex RT CLIM
TN TIMP wall tw ;
;
rt.'METHINV'.TYPINV=1 ;
rt.'METHINV'.IMPINV=0 ;
rt.'METHINV'.NITMAX=400;
rt.'METHINV'.PRECOND=3 ;
rt.'METHINV'.RESID =1.e-8 ;
rt. 'METHINV' . 'FCPRECT'=1 ;
rt. 'METHINV' . 'FCPRECI'=1 ;
rt.'INCO'=table 'INCO';
rt.inco.'TN'= kcht $mt scal sommet 1. ;
rt.inco.'TNM'= kcht $mt scal sommet 1. ;
xr= coor 1 mt ;
t =tw + (src / lambda / 2. * ((r0*r0) - (xr*xr))) ;
dg=doma $mt 'XXDIAGSI' ;
repeter bloc1 nbit ;
exec rt ;
tn=rt.inco.'TN' ;
ec= t - tn ;
el2= somt (dg * (ec*ec)) ;
mess 'Erreur L2 ' el2 ;
fin bloc1 ;
evb= evol 'CHPO' tn ab;
evh= evol 'CHPO' tn (inve bc);
eva= evol 'CHPO' t ab;
tab1=table ;
tab1.1 = 'MARQ CROI REGU' ;
tab1.2 = 'MARQ TRIA REGU' ;
tab1.3 = 'MARQ LOSA REGU' ;
tab1.'TITRE' = table ;
tab1.'TITRE'. 1 = 'MOT' 'bas ' ;
tab1.'TITRE'. 2 = 'MOT' 'haut' ;
tab1.'TITRE'. 3 = 'MOT' 'Sol analytique' ;
Si GRAPH ;
dess (evh et evb et eva)
LEGE TAB1 DATE MIMA TITR
' Temperature ' ;
Finsi ;
si ( El2 > 1.E-9 ) ; erreur 5 ; finsi ;
opti dime 3 elem cub8 ;
mt0 = mt volu nz 'TRAN' (0 0 hz) ;
mt1= syme mt0 'PLAN' p0 p1 (1 0 hZ) ;
mt = mt1 et mt0 ;
wal = wall et (syme wall 'POINT' p1) ;
wall = wal trans nz (0 0 hz) ;
elim (mt et wall) 1.e-5 ;
Mmt= chan QUAF mt ;
Mwall = chan QUAF wall ;
elim (Mwall et Mmt) 1.e-5 ;
$wall = mode Mwall 'NAVIER_STOKES' DISCR ;
wall = doma $wall maillage ;
$mt= mode Mmt 'NAVIER_STOKES' DISCR ;
mt= doma $mt maillage ;
Lambda = 2. ;
DT=1. ;
SRC= 0.5 ;
tw= 1. ;
rt=eqex 'OMEGA' 1. 'NITER' 1 ITMA 1 'FIDT' 1
'OPTI' 'EF' 'IMPL'
ZONE $mt 'OPER' 'LAPN' Lambda 'INCO' 'TN'
ZONE $mt 'OPER' 'FIMP' src 'INCO' 'TN'
'OPTI' 'EFM1' 'IMPL' 'CENTREE'
ZONE $mt OPER DFDT 1. 'TNM' DT INCO 'TN'
;
RT= eqex RT CLIM
'TN' TIMP wall tw ;
rt.'METHINV'.TYPINV=1 ;
rt.'METHINV'.IMPINV=0 ;
rt.'METHINV'.NITMAX=400;
rt.'METHINV'.PRECOND=3 ;
rt.'METHINV'.RESID =1.e-8 ;
rt. 'METHINV' . 'FCPRECT'=1 ;
rt. 'METHINV' . 'FCPRECI'=1 ;
rt.'INCO'=table 'INCO';
rt.inco.'TN'= kcht $mt scal sommet 1. ;
rt.inco.'TNM'= kcht $mt scal sommet 1. ;
xr= coor 1 mt ;
t =tw + (src / lambda / 2. * ((r0*r0) - (xr*xr))) ;
dg=doma $mt 'XXDIAGSI' ;
repeter bloc1 nbit ;
exec rt ;
tn=rt.inco.'TN' ;
ec= t - tn ;
el2= somt (dg * (ec*ec)) ;
mess 'Erreur L2 ' el2 ;
fin bloc1 ;
evb= evol 'CHPO' tn ab;
evh= evol 'CHPO' tn (inve bc);
eva= evol 'CHPO' t ab;
tab1=table ;
tab1.1 = 'MARQ CROI REGU' ;
tab1.2 = 'MARQ TRIA REGU' ;
tab1.3 = 'MARQ LOSA REGU' ;
tab1.'TITRE' = table ;
tab1.'TITRE'. 1 = 'MOT' 'bas ' ;
tab1.'TITRE'. 2 = 'MOT' 'haut' ;
tab1.'TITRE'. 3 = 'MOT' 'Sol analytique' ;
Si GRAPH ;
dess (evh et evb et eva)
LEGE TAB1 DATE MIMA TITR
' Temperature ' ;
Finsi ;
si ( El2 > 1.E-9 ) ; erreur 5 ; finsi ;
FIN ;
© Cast3M 2003 - All rights reserved.
Disclaimer