blob: 967a0c7f0fd017c9ddfeabf0db138c9509873417 (
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
|
****************************************************************
* *
* Procedure : SPH_SN_Proc.c2m *
* Purpose : Perform a transport-diffusion SPH equivalence *
* Author : A. Hebert *
* *
* CALL : *
* SPH_SN_Proc Geom ; *
* *
* Input objects: *
* Geom : macro-geometry LCM object *
* ApexName : Apex file name *
* ncals : number of calculations in the Apex file *
* *
****************************************************************
PARAMETER Geom ::
::: LINKED_LIST Geom ; ;
STRING ApexName ;
:: >>ApexName<< ;
INTEGER ncals ;
:: >>ncals<< ;
MODULE SPH: SNT: ASM: FLU: UTL: GREP: DELETE: END: ;
LINKED_LIST TRACK MACRO2 MACRO OPTIM SYSTEM FLUX ;
HDF5_FILE APEX_FILE :: FILE <<ApexName>> ;
INTEGER IterEmax := 1000 ;
REAL K_EFF_REF ;
PROCEDURE SPHPicardSN assertS ;
*
ECHO "SPH_SN_Proc: ApexName=" ApexName "ncals=" ncals ;
TRACK := SNT: Geom :: EDIT 1 SN 4 SCAT 1 QUAD 1 ;
*----
* Perform fixed point SPH equivalence for each branch calculation
*----
INTEGER ical := 0 ;
REPEAT
EVALUATE ical := ical 1 + ;
ECHO "process branch=" ical "/" ncals ;
MACRO2 := SPH: APEX_FILE :: 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 := SPHPicardSN MACRO2 Geom 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
*----
APEX_FILE := SPH: APEX_FILE OPTIM :: EDIT 1 STEP AT <<ical>>
IDEM SPOP EQUI 'EQV_DIFF_S3' ;
OPTIM := DELETE: OPTIM ;
*----
* Verification calculation
*----
SYSTEM := ASM: MACRO TRACK :: EDIT 0 ARM ;
FLUX := FLU: MACRO TRACK SYSTEM :: EDIT 1 TYPE K B0 SIGS ;
assertS FLUX :: 'K-EFFECTIVE' 1 <<K_EFF_REF>> ;
MACRO SYSTEM FLUX := DELETE: MACRO SYSTEM FLUX ;
UNTIL ical ncals = ;
ECHO "Equivalence_SPH_SN_Proc completed" ;
END: ;
|