summaryrefslogtreecommitdiff
path: root/Donjon/data/rep900_anm.x2m
blob: 16560a067168db73ec1800a4ea8baae69fd7f041 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
*----
*  Nom          : rep900_anm.x2m
*  Type         : fichier DONJON
*----
*  Definition STRUCTURES, MODULES et PROCEDURES
*----
LINKED_LIST GeoRes MacroF Track Flux Cpo L0 Reseau Matex Lib Macro1
            Macro2 Fmap Micro ;
MODULE      NSST: NSSF: GREP: MACINI: NCR: DELETE: ABORT: END: ;

PROCEDURE   GetDim GeoCo SetFuelMap SetParam ;
PROCEDURE   assertS ;
SEQ_ASCII   _ACompo ;
REAL        keff1 ;
*----
*  Parametres Locaux
*----
REAL    densB1 := 2000.0 ;
*----
*  Options de calcul
*----
INTEGER Splitx Splitz := 2 1 ;
STRING  Dir := "EDI2B" ;

REAL Rcomb1 Rcomb2 Rcomb3 Rcomb4
     R_int_TG R_ext_TG R_int_TI R_ext_TI R_int_G R_ext_G
     Cote Lame CoteL
     RmodeN1 RmodeN2
     R_ext_G2 R_ext_TGm R_ext_TIm
     N_U5_UOX N_U5_MOX
     N_Pu8 N_Pu9 N_Pu0 N_Pu1 N_Pu2 N_Am1
     densU_UOX densU_MOX densPu_MOX
     teneur1_Pu teneur2_Pu teneur3_Pu
     temp_comb temp_mode dens_mode ;

*----
*  Recover the Multicompo
*----
Cpo := _ACompo ;

*----
*  Enchainement du calcul
*----
  GetDim ::
    >>Rcomb1<< >>Rcomb2<< >>Rcomb3<< >>Rcomb4<<
    >>R_int_TG<< >>R_ext_TG<< >>R_int_TI<< >>R_ext_TI<<
    >>R_int_G<< >>R_ext_G<< >>Cote<< >>Lame<< >>CoteL<<
    >>RmodeN1<< >>RmodeN2<< >>R_ext_G2<< >>R_ext_TGm<< >>R_ext_TIm<<
    >>N_U5_UOX<< >>N_U5_MOX<< >>N_Pu8<< >>N_Pu9<< >>N_Pu0<<
    >>N_Pu1<< >>N_Pu2<< >>N_Am1<< >>densU_UOX<< >>densU_MOX<<
    >>densPu_MOX<< >>teneur1_Pu<< >>teneur2_Pu<< >>teneur3_Pu<<
    >>temp_comb<< >>temp_mode<< >>dens_mode<< ;

REAL rPavX := 17.0 ; ! assemblage 17 x 17
INTEGER iPavX := 17 ; ! assemblage 17 x 17
REAL    dx   := rPavX Cote * 2.0 Lame * + ;
INTEGER MaxR := iPavX iPavX * 33 * Splitx * Splitx * Splitz * ;
GeoRes Matex := GeoCo  ::
   <<Splitx>> <<Splitz>> <<MaxR>> <<dx>> ;

Track := NSST: GeoRes ::
   TITLE 'REP900 TESTCASE'
   MAXR <<MaxR>> ANM ;

*--
* Definition de la map de combustible et zones de combustion
*--
Fmap Matex := SetFuelMap Matex :: <<dx>> ;

Fmap := SetParam Fmap :: <<densB1>> <<temp_comb>> <<temp_mode>>
        <<dens_mode>> ;

Micro := NCR: Cpo Fmap ::
             EDIT 2
             LINEAR
             TABLE Cpo <<Dir>> 'burnup'
               MIX 1 INST-BURN ENDMIX
;
MacroF := Micro :: STEP UP MACROLIB ;
Micro := DELETE: Micro ;

Micro := NCR: Cpo ::
*            dummy reflector -- please use more realistic data
             EDIT 2
             LINEAR NMIX 2
             COMPO Cpo <<Dir>>
               MIX 2 SET 'burnup' 0.0
                     SET 'ppmBore' <<densB1>>
               ENDMIX
;
Macro1 := Micro :: STEP UP MACROLIB ;
Micro := DELETE: Micro ;

Macro2 Matex := MACINI: Matex Macro1 MacroF ;

Flux := NSSF: Track Macro2 ::
  EDIT 1 NUPD 100 3 1.0E-6 EXTE 500 1.0E-5 LEAK quadratic ;

Macro1 Macro2 := DELETE: Macro1 Macro2 ;

GREP: Flux   ::
  GETVAL 'K-EFFECTIVE ' 1  >>keff1<<  ;

ECHO "densB1=" densB1 "K-effective 1 = " keff1   ;
assertS Flux :: 'K-EFFECTIVE' 1 0.9961346 ;

ECHO "test rep900_anm.x2m completed" ;
END: ;
QUIT "LIST" .