* fichier : rayo-2D-1.dgibi
****************************************************************
*
* test 2D couplage conduction-rayonnement
* REFERENCE: SPARROW CESS "Radiation Heat Transfer" 1978 p.189
*
* DONNEES
* cas de 2 ailettes
*
* angle entre les ailettes : 45 degres
* longueur : L=0.1m
* emissivite : 0.75
*
* conductivite lineique : LAM=4.536 W/K
* conditions aux limites base d ailette : TB= 2000 K
* extremite ailette : flux nul
* Nombre caracteristique rayonnemnent/conduction XC=1.
*
* RESULTATS
* efficacite de l ailette 0.591
* puissance rayonnee 41 kW
* temperature en milieu d ailette 1820 K
* temperature en extremite d ailette 1751 K
*
* Remarque: option convexe pour FFOR
****************************************************************
*** Options ...
OPTION echo 1 DIME 2 ELEM QUA4 ;
graph = faux ;
*** Paramètres ...
* AL angle entre les ailettes ...
AL = 45. ;
L = 0.1; C = COS(AL) ; S = SIN(AL) ;
A = SIN(AL/2.) ;
* Nombre de segments / ailette ...
N = 20 ;
* Épaisseur des ailettes : 1mm
dz = 0.001 ;
dzp = dz ;
dzn = -1 * dz ;
* Propriétés physiques ...
sig=5.67E-8 ; l=0.1; tb=2000. ; emis = 0.75 ;
* Nombre caractéristique du rayonnement
xc = 1.0 ;
*** Points ...
P1 = 0. 0. ; P2 = L 0. ;
Q1 = 0. 0. ; Q2 = (L*C) (L*S) ;
*** Lignes ...
L1= D N P1 P2 ; L2 = D N Q2 Q1 ;
*** Surfaces ...
z1 = l1 tran 1 (0. dzn) ;
z2 = l2 tran 1 ((dzn*s) (dzp*c)) ;
lim1 = cote 4 z1 ;
lim2 = cote 2 z2 ;
cavite = l1 et l2 ;
tout = z1 et z2 ;
titr 'Le maillage d ailette' ;
si(graph) ; trac tout ; finsi ;
*** Modélisation ...
* conduction
* calcul de la conductivité lineique
kr = sig*tb*tb*tb *l*l ;
lam = kr/xc ;
lamb = lam/dz ;
mcd1 = modl z1 thermique ;
mcd2 = modl z2 thermique ;
mcd = mcd1 et mcd2 ;
k = mate mcd 'K' lamb ;
cnd = cond mcd k ;
mr1 = modl l1 thermique rayonnement 'CAVITE'
'CONVEXE' 'CONS' 'CAV1';
mr2 = modl l2 thermique rayonnement 'CAVITE'
'CONVEXE' 'CONS' 'CAV1';
mrt = mr1 et mr2 ;
e1 = mate mr1 'EMIS' emis ;
e2 = mate mr2 'EMIS' emis ;
e = e1 et e2 ;
*** Matrice de rayonnement ...
* opti 'IMPI' 1 ;
fft = fforme mrt e;
* fft = fforme mrt 'NNOR' ;
* opti 'IMPI' 0 ;
* list fft;
chamr = raye mrt fft e ;
*list chamr;
*opti donn 5;
*** Conditions aux limites ...
c1 = bloq lim1 'T' ;
tim1 = depi c1 tb ;
c2 = bloq lim2 'T' ;
tim2 = depi c2 tb ;
*** Initialisation de la température ...
tp = manu chpo tout 1 'T' 2000. natu 'DIFFUS';
nbpsup = nbno tout ;
*** Résolution (par itérations) ...
* Coeff. de relaxation ...
alfa = 0.6 ;
listemp = prog ;
listres = prog ;
maxiter = 100 ;
critconv = 1.e-5 ;
opti echo 1 ;
REPE bloc1 ;
nbiter = &bloc1 ;
t_cavi = redu (exco 'T' tp 'T') cavite ;
te_cavi = chan 'CHAM' t_cavi mrt 'GRAVITE' ;
cr = rayn mrt chamr te_cavi ;
cndtot = cr et cnd et c1 et c2 ;
residu = cndtot * tp ;
normres = ((xtx (exco 'Q' residu)) / nbpsup) ** 0.5 ;
mess ' La norme du flux résiduel = ' normres ;
si((nbiter > 1) et (normres < critconv)) ;
mess 'Convergence à l itération ' (nbiter-1) ;
quitter bloc1 ;
finsi ;
si(nbiter > maxiter) ;
mess 'Erreur ! Pas de convergence après ' (nbiter-1)
' itérations !' ;
erre 2 ;
quitter bloc1 ;
finsi ;
listres = listres et (prog normres) ;
mess '---------------------------------------' ;
mess 'Itération N° ' &bloc1 ;
tt = resou cndtot (tim1 et tim2) ;
dt = exco 'T' (tt - tp) 'T' ;
normdt = ((xtx dt) / nbpsup) ** 0.5 ;
mess ' La norme de delta t = ' normdt ;
tn = (alfa * tt) + ((1.-alfa) * tp) ;
tp = tn ;
mess ' La température au bout = ' (extr tn 'T' q2) ;
listemp = listemp et (prog (extr tn 'T' q2)) ;
FIN bloc1 ;
* opti echo 1 ;
*** Post-traitement ...
titre 'Champ de température final' ;
si(graph) ; trac tout (exco 'T' tn) ; finsi ;
tana = 1751. ;
tsol = extr tn 'T' q2 ;
mess 'La température en extrémité = ' tsol ;
ppmilieu = (L/2) 0 ;
pmilieu = l1 poin proc ppmilieu ;
leurdist = norm (moin pmilieu ppmilieu) ;
si(leurdist < 1.e-6) ;
tmili = extr tn 'T' pmilieu ;
mess 'La température au milieu = ' tmili ;
sinon ;
mess 'Impossible d extraire la température'
' au milieu de l ailette' ;
finsi ;
titr 'Évolution de la température au bout de l ailette' ;
listpas = prog 1. pas 1. (nbiter - 1) ;
evtemp = evol manu 'pas' listpas 'T' listemp ;
listpas2 = prog 1. (nbiter - 1) ;
listvex = prog tana tana ;
evexa = evol manu 'pas' listpas2 'T' listvex ;
si(graph) ; dess (evtemp et evexa) ; finsi ;
* evres = evol manu 'pas' listpas 'dQ' listres ; dess evres ;
qfinal = cndtot * tn ;
rqfinal = resu qfinal ;
* list rqfinal ;
*
qreac = reac (c1 et c2) tn ;
puemis = maxi (resu (exco 'Q' qreac)) ;
mess 'Puissance émise = ' puemis ;
* efficacité de l'ailette
pref = 2. * kr * tb * (sin(AL/2.)) / L ;
effica = puemis/pref ;
mess 'Efficacité = ' effica ;
RESI=ABS((tsol -tana)/tana);
mess 'Erreur relative ' (100*RESI) '%' ;
SI(RESI <EG 5E-4);
ERRE 0;
SINO;
ERRE 5;
FINSI;
*** Bye ...
FIN;
© Cast3M 2003 - All rights reserved.
Disclaimer