blob: bb51e9e76cee7da41efba92e28ea177a2a8e05a1 (
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
|
*----
* TEST CASE Equivalence_SPH_RT_APEX
* 5 x 5 UMZONE ASSEMBLY WITH TRIVAC
* Input cross section data from APEX
*----
* Define STRUCTURES and MODULES used
*----
LINKED_LIST ASSMB TRACK SYSTEM MACRO2 MACRO OPTIM FLUX ;
STRING Apex_name := './UOX_5x5_TG6_sym8_multiDom.h5' ;
HDF5_FILE UOX_5x5 :: FILE <<Apex_name>> ;
MODULE GEO: SPH: TRIVAT: TRIVAA: FLUD: UTL: HUTL: GREP: DELETE: END: ;
INTEGER IterEmax := 1000 ;
INTEGER ncals ;
REAL K_EFF_REF ;
PROCEDURE SPHPicardRT ;
PROCEDURE assertS ;
REAL side1 := 1.26 ;
REAL side2 := side1 1.26 + ;
REAL side3 := side2 1.26 + ;
REAL side4 := side3 1.26 + ;
REAL side5 := side4 1.26 + ;
ASSMB := GEO: :: CAR2D 5 5 (*ASSEMBLY 5 X 5*)
X- DIAG X+ REFL
Y- REFL Y+ DIAG
MESHX 0.0 <<side1>> <<side2>> <<side3>> <<side4>> <<side5>>
MIX 6 5 4 5 6
3 2 3 5
1 2 4
3 5
6
;
TRACK := TRIVAT: ASSMB ::
TITLE 'SIMPLE 5x5 FUEL ASSEMBLY'
EDIT 0 MAXR 3000 DUAL 3 1 ;
*----
* Perform fixed point SPH equivalence for each branch calculation
*----
HUTL: UOX_5x5 :: GREP 'NCALS' 1 >>ncals<< ;
INTEGER ical := 0 ;
REPEAT
EVALUATE ical := ical 1 + ;
ECHO "process branch=" ical "/" ncals ;
MACRO2 := SPH: UOX_5x5 :: EDIT 1 STEP AT <<ical>> MACRO OFF LEAK ;
GREP: MACRO2 :: GETVAL 'K-EFFECTIVE' 1 >>K_EFF_REF<< ;
ECHO "ical=" ical "reference k-effective=" K_EFF_REF ;
MACRO OPTIM := SPHPicardRT MACRO2 ASSMB TRACK
:: 0.0 10.0 1.0E-6 <<IterEmax>> ;
ECHO "control variables at convergence for ical=" ical ;
UTL: OPTIM :: IMPR 'VAR-VALUE' * ;
MACRO2 := DELETE: MACRO2 ;
*----
* Write SPH factors on APEX file
*----
UOX_5x5 := SPH: UOX_5x5 OPTIM :: EDIT 1 STEP AT <<ical>>
IDEM SPOP EQUI 'EQV_DIFF_RT2' ;
OPTIM := DELETE: OPTIM ;
*----
* Verification calculation
*----
SYSTEM := TRIVAA: MACRO TRACK :: EDIT 0 ;
FLUX := FLUD: SYSTEM TRACK :: EDIT 2 ADI 3 EXTE 1.E-07 200 ;
assertS FLUX :: 'K-EFFECTIVE' 1 <<K_EFF_REF>> ;
MACRO SYSTEM FLUX := DELETE: MACRO SYSTEM FLUX ;
UNTIL ical ncals = ;
ECHO "Equivalence_SPH_RT_APEX completed" ;
END: ;
|