blob: 3949390c69edf2cd958d7016dd150f93f638d1c8 (
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
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
|
****************************************************************
* *
* Procedure : ThermoParam.c2m *
* Purpose : Thermo-hydraulics coupling *
* Author : A. Hebert *
* *
* CALL : *
* Fmap Matex Flux := ThermoParam Fmap Matex Cpo Track *
* :: (data) ; *
* *
****************************************************************
PARAMETER Fmap Matex Flux Cpo Track ::
::: LINKED_LIST Fmap Matex Flux Cpo Track ; ;
MODULE NCR: MACINI: TRIVAA: FLUD: THM: FLPOW: GREP: DELETE: END: ;
LINKED_LIST Thm MacroF System Macro1 Macro2 Power ;
REAL powi densB pbore_0 temp_comb_0 temp_mode_0 dens_mode_0 ;
:: >>powi<< >>densB<< >>pbore_0<< >>temp_comb_0<< >>temp_mode_0<<
>>dens_mode_0<< ;
STRING Dir := "EDI2B" ;
INTEGER iter := 0 ;
REAL keffn erra1 ;
LOGICAL CONV ;
REPEAT
EVALUATE iter := iter 1 + ;
ECHO "-------------------------------" ;
ECHO "Thermo-hydraulics coupling loop" ;
ECHO "iter=" iter "densB=" densB "powi=" powi ;
ECHO "-------------------------------" ;
*--
* Cross-section database interpolation
*--
MacroF := NCR: Cpo Fmap ::
EDIT 2
MACRO LINEAR
TABLE Cpo <<Dir>> 'burnup'
MIX 1 INST-BURN
SET LINEAR 'burnup' MAP
SET LINEAR 'ppmBore' <<pbore_0>>
SET CUBIC 'TF' <<temp_comb_0>>
SET CUBIC 'TCA' <<temp_mode_0>>
SET CUBIC 'DCA' <<dens_mode_0>>
ADD 'ppmBore' <<pbore_0>> MAP
REF 'burnup' SAMEASREF
'TF' <<temp_comb_0>>
'TCA' <<temp_mode_0>>
'DCA' <<dens_mode_0>>
ENDREF
ADD 'TCA' <<temp_mode_0>> MAP
REF 'burnup' SAMEASREF
'ppmBore' <<pbore_0>>
'TF' <<temp_comb_0>>
'DCA' <<dens_mode_0>>
ENDREF
ADD 'TF' <<temp_comb_0>> MAP
REF 'burnup' SAMEASREF
'ppmBore' <<pbore_0>>
'TCA' <<temp_mode_0>>
'DCA' <<dens_mode_0>>
ENDREF
ADD 'DCA' <<dens_mode_0>> MAP
REF 'burnup' SAMEASREF
'ppmBore' <<pbore_0>>
'TCA' <<temp_mode_0>>
'TF' <<temp_comb_0>>
ENDREF
ENDMIX
;
Macro1 := NCR: Cpo ::
* dummy reflector -- please use more realistic data
EDIT 0
MACRO LINEAR NMIX 2
COMPO Cpo <<Dir>>
MIX 2 SET LINEAR 'burnup' 15000.0
SET LINEAR 'ppmBore' <<densB>>
SET CUBIC 'TF' <<temp_comb_0>>
SET CUBIC 'TCA' <<temp_mode_0>>
SET CUBIC 'DCA' <<dens_mode_0>>
ENDMIX
;
Macro2 Matex := MACINI: Matex Macro1 MacroF ;
*--
* Steady-state diffusion calculation
*--
System := TRIVAA: Macro2 Track ;
IF iter 1 = THEN
Flux := FLUD: System Track ::
EDIT 2 ADI 4 ACCE 5 3 ;
ELSE
Flux := FLUD: Flux System Track ::
EDIT 2 RELAX 0.8 ;
ENDIF ;
System MacroF Macro1 Macro2 := DELETE: System MacroF Macro1 Macro2 ;
*--
* Thermo-hydraulics calculation
*--
Power Fmap := FLPOW: Fmap Flux Track Matex
:: EDIT 10 PTOT <<powi>> ;
Power := DELETE: Power ;
GREP: Flux ::
GETVAL 'K-EFFECTIVE ' 1 >>keffn<< ;
ECHO "K-effective = " keffn " densB=" densB ;
IF iter 1 = THEN
Thm Fmap := THM: Fmap ::
EDIT 3
CRITFL 1.80E+6 (* W/m^2 *)
ASSMB 264 25
CWSECT 3.86 (* m^2 *) 67398.0 (* m^3/hr *)
INLET 15500000.0 (* Pa *) 560.95 (* K *)
RADIUS 0.4095E-2 0.418E-2 0.475E-2 0.6025E-2 (* m *)
SET-PARAM 'C-BORE' <<densB>>
RELAX 0.5
;
ELSE
Thm Fmap := THM: Thm Fmap ;
ENDIF ;
*--
* Convergence test
*--
GREP: Thm :: GETVAL 'ERROR-T-FUEL' 1 >>erra1<< ;
ECHO "error on fuel temperature at iteration" iter "=" erra1 ;
EVALUATE CONV := erra1 1.0 < iter 50 > + ;
ECHO "CONV =" CONV ;
ECHO "-------------------------------" ;
UNTIL CONV ;
END: ;
|