* fichier : rayo-3D-1.dgibi
************************************************************************
************************************************************************
****************************************************************
*
* test 3D couplage conduction-rayonnement
* REFERENCE: cas TPNV 02/89 du guide VPCS
*
* DONNEES
* cavité cubique de cote 1.
*
* 1000K e=1.0
* -----
* e=0.5 | | e=0.5
* | |
* -----
* 2000K e=0.1
*
*
* RESULTATS
* temperature de la surface latérale : 1214K (solution analytique)
* Remarques :
* 2 types d'éléments pour décrire la cavité
* option convexe pour FFOR ou bien avec plan de symetrie
* (dans ce cas la cavite est parallelipipedique 1x2x1 d'ou
* une solution differente)
* calcul en permanent et en transitoire (PASAPAS)
****************************************************************
*** Options ...
graph = faux ;
* options supplementaires: cavite convexe ou plan de symetrie
* cvxe = vrai ; syme = faux ;
* cvxe = faux ; syme = faux ;
*** Paramètres ...
* proprietes physiques
lam = 20. ;
e_sup=1.0 ; e_inf=0.1 ; e_late = 0.5 ;
T_sup = 1000. ; T_inf = 2000. ;
* solution de reference
*** Points ...
p1 = -0.5 -0.5 0. ; p2 = 0.5 -0.5 0. ;
p3 = 0.5 0.5 0. ; p4 = -0.5 0.5 0. ;
* pour le plan de symetrie
*** Surfaces ...
* plan inferieur
* plan supérieur
si 2elem;
sinon;
finsi ;
cbase = p1p2 et p2p3 et p3p4 et p4p1 ;
* surface laterale
* sarri est le plan de symetrie: points P1 P4 Q4
slate = sfron et sdroi et sgauc ;
sinon;
slate = sfron et sarri et sdroi et sgauc ;
finsi;
cavite = sbase et shaut et slate ;
* centre du cube ;
c = 0. 0. 0.5 ;
* epaisseur des parois : dz=10mmm
dz = 0.01 ; r = 1.01 ;
*** Volumes ...
tout = z1 et z2 et z3 ;
titr 'Le maillage de la cavite' ;
*** Modélisation ...
* conduction
lamb = lam/dz ;
mcd = modeli tout thermique ;
si cvxe;
mr1= modeli sbase thermique rayonnement 'CAVITE' 'CONVEXE'
CONS 'CAV1';
mr2= modeli shaut thermique rayonnement 'CAVITE' 'CONVEXE'
CONS 'CAV1';
mr3= modeli slate thermique rayonnement 'CAVITE' 'CONVEXE'
CONS 'CAV1';
sinon;
mr1= modeli sbase thermique rayonnement 'CAVITE'
'SYMETRIE' P4 P1 Q4 CONS 'CAV1' ;
mr2= modeli shaut thermique rayonnement 'CAVITE'
'SYMETRIE' P4 P1 Q4 CONS 'CAV1' ;
mr3= modeli slate thermique rayonnement 'CAVITE'
'SYMETRIE' P4 P1 Q4 CONS 'CAV1' ;
sinon;
mr1= modeli sbase thermique rayonnement 'CAVITE' CONS 'CAV1' ;
mr2= modeli shaut thermique rayonnement 'CAVITE' CONS 'CAV1' ;
mr3= modeli slate thermique rayonnement 'CAVITE' CONS 'CAV1' ;
finsi;
finsi;
mrt = mr1 et mr2 et mr3 ;
e = e1 et e2 et e3 ;
*** calcul des facteurs de forme
* opti impi 1; comm pour bilans et condition de reciprocite ;
* opti 'IMPI' 0 ;
*** Quelques verifications ...
* list mrt ; list e ;
* list fft ;
* mess ' surfaces: ' ; list surf ;
* mess ' nface ' nface ;
*
* impression des facteurs de forme
*
* si (non 2elem);
* repe iface nface;
* fi = extr fft MIDL 1 &iface 1;
* mess ' ';
* mess ' elem: ' &iface ' Fij: ' ;
* list fi ;
* fin iface ;
* finsi;
*
*
tta= prray mrt;
* list tta ;
tta_int = tta . 1 ;
* list tta_int;
* opti donn 5;
*** Matrice de rayonnement ...
*** Conditions aux limites ...
*** Initialisation de la température ...
* calcul en permanent
* -------------------
*** Résolution (par itérations) ...
* Coeff. de relaxation ...
alfa = 0.4 ;
maxiter = 100 ;
critconv = 1.e-5 ;
* opti echo 1 ;
REPE bloc1 ;
nbiter = &bloc1 ;
cndtot = cnd et cr et c1 et c2 ;
residu = cndtot * tp ;
* mess ' La norme du flux résiduel = ' normres ;
si((nbiter > 1) et (normres < critconv)) ;
quitter bloc1 ;
finsi ;
si(nbiter > maxiter) ;
' itérations !' ;
quitter bloc1 ;
finsi ;
* mess '-----------------------------------------' ;
* mess 'Itération N° ' &bloc1 ;
tt = resou cndtot (tim1 et tim2) ;
* mess ' La norme de delta t = ' normdt ;
tn = (alfa * tt) + ((1.-alfa) * tp) ;
tp =tn ;
* mess ' Température obtenue = ' (maxi(redu tt slate)) ;
FIN bloc1 ;
* opti echo 1 ;
*** Post-traitement ...
si(graph) ;
titr 'Le champ de temperature final' ;
trac tout t ;
finsi ;
err_s = ABS((tsol - tana)/tana) ;
err_s = err_s * 100. ;
mess 'Erreur relative en permanent' err_s '%' ;
* calcul en transitoire
* ---------------------
tabnl = table ;
tabnl . 'MODELE' = mcd et mrt;
tabnl . 'CARACTERISTIQUES' = k et e ;
tabnl . 'BLOCAGES_THERMIQUES' = c1 et c2 ;
tabnl . 'TEMPERATURES' . 0 = Tinit;
tabnl . 'PROCEDURE_THERMIQUE' = 'DUPONT' ;
* tabnl . 'PROCEDURE_THERMIQUE' = 'NONLINEAIRE';
*** Résolution (avec PASAPAS) ...
pasapas tabnl ;
*** Petit post-traitement ...
repeter surpas nbpas ;
lindice = &surpas - 1 ;
* mess (mini valT) (maxi valT) ;
fin surpas ;
* mess (mini valT) (maxi valT) ;
titr 'Evolution de temperature laterale' ;
err_t = abs ((valobt - tana) / tana) ;
err_t = 100. * err_t;
mess 'soit une erreur de ' err_t ' %' ;
*** Test de bon fonctionnement
si ( (err_s <EG 2.e-1) et (err_t <EG 2.E-1) );
sinon;
finsi ;
FIN;
					© Cast3M 2003 - Tous droits réservés.
					Mentions légales