1 | include(dom.inc)
2 |
3 | SUBROUTINE MFSCHEME(k_abs,w_kabs,k_scat,V,nface,S,Di,Lb,Gi,Li, &
4 | & epsil,Le,Lpi,alpha,nfacemax)
5 |
6 | !******************************************************************!
7 | ! kabs --> Coeff. d'absorption gris !
8 | ! wkabs --> Poids associe au numero du coeff !
9 | ! k_scat --> Coeff de diffusion isotrope !
10 | ! V --> Volume de la cellule !
11 | ! S --> Vecteur des 4 surfaces (ABC, ABD, ACD et BCD) !
12 | ! Di --> Vecteur des produits (normes*direction discrete) !
13 | ! Lb --> Luminace noire emise au centre de la cellule !
14 | ! Gi --> Luminance incidente a l'iteration precedente !
15 | ! Li --> Lminance aux faces d'entree !
16 | ! epsil --> Emissivite( -1 pour les faces non parietales ) !
17 | ! Le --> Luminance calculees aux faces de sortie !
18 | ! Lpi --> Lpi total au centre de la cellule !
19 | !******************************************************************!
20 |
21 | IMPLICIT NONE
22 |
23 | include 'dom_constants.h'
24 |
25 | DOM_INT :: nface, i, ici1,nfacemax
26 | DOM_REAL :: L_IN,AREA_IN,k_abs,w_kabs, alpha
27 | DOM_REAL :: Lb, Gi, k_scat, V, ko, Lpi
28 | DOM_REAL, DIMENSION (nfacemax) :: Li, Le, Di, S, epsil
29 |
30 | DOM_REAL :: Y1, Y2
31 |
32 | L_IN=0.
33 | AREA_IN=0.
34 |
35 | DO i=1,nface
36 | IF (Di(i)<0.) THEN
37 | L_IN=L_IN+S(i)*Di(i)*Li(i)
38 | AREA_IN=AREA_IN+S(i)*Di(i)
39 | ENDIF
40 | ENDDO
41 |
42 | Y1=-L_IN+alpha*V*(k_abs*Lb+k_scat/(4*pi)*Gi)
43 | Y2=(k_abs+k_scat)*alpha*V-AREA_IN
44 | Lpi=Y1/Y2
45 |
46 | DO ici1=1,nface
47 | IF (Di(ici1)>0.) THEN
48 | Le(ici1)=(Lpi-(1.-alpha)*L_IN/AREA_IN)/alpha
49 | ENDIF
50 | ENDDO
51 |
52 | END SUBROUTINE MFSCHEME
mfscheme.F could be called by: