blob: d88a23c1e8c659cdba815cc99a4f4a63b06179a1 (
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
|
*----
* TEST CASE mpo_mco_refl
* Compare a Multicompo and a MPO reflector
*----
* Define STRUCTURES and MODULES used
*----
MODULE NCR: MCR: UTL: GREP: ABORT: END: ;
LINKED_LIST REFL MACRO1 MACRO2 ADF1 ADF2 ;
SEQ_ASCII _REFL :: FILE './_Multicompo_Refl_MCompRefl.txt' ;
HDF5_FILE MPOREFL :: FILE './MpoRefl.hdf' ;
REAL densB1 := 700.0 ; ! reference Boron concentration in ppm
REAL value1 value2 DELTA ;
************************************************************************
* Multicompo reflector *
************************************************************************
REFL := _REFL ;
MACRO1 := NCR: REFL :: EDIT 2 MACRO NMIX 5
COMPO REFL Radial MIX 5 FROM 2 SET 'C-BORE' <<densB1>> SET 'Method'
'DF-NEM' SET 'Palier' 'EPR' ENDMIX ;
UTL: MACRO1 :: IMPR STATE-VECTOR * DUMP ;
************************************************************************
* MPO reflector *
************************************************************************
MACRO2 := MCR: MPOREFL :: EDIT 3 MACRO NMIX 5
MPO MPOREFL output_0 MIX 5 FROM 2 SET 'C-BORE' <<densB1>> SET 'Method'
'DF-NEM' SET 'Palier' 'EPR' ENDMIX ;
UTL: MACRO2 :: IMPR STATE-VECTOR * DUMP ;
************************************************************************
* statistics *
************************************************************************
GREP: MACRO1 :: GETVAL 'ALBEDO' 1 >>value1<< ;
GREP: MACRO2 :: GETVAL 'ALBEDO' 1 >>value2<< ;
ECHO "alb1=" value1 "alb2=" value2 ;
EVALUATE DELTA := value1 value2 - value2 / ABS ;
IF DELTA 5.0E-5 < THEN
PRINT "TEST ALBEDO SUCCESSFUL; DELTA=" DELTA ;
ELSE
PRINT "----------------------" ;
PRINT "TEST FAILURE ON ALBEDO" ;
PRINT "----------------------" ;
PRINT "alb(macrolib1)=" value1 "alb(macrolib1)=" value2 ;
ABORT: ;
ENDIF ;
ADF1 := MACRO1 :: STEP UP ADF ;
ADF2 := MACRO2 :: STEP UP ADF ;
GREP: ADF1 :: GETVAL "FD_B" 5 >>value1<< ;
GREP: ADF2 :: GETVAL "FD_00001" 5 >>value2<< ;
ECHO "adf1=" value1 "adf2=" value2 ;
EVALUATE DELTA := value1 value2 - value2 / ABS ;
IF DELTA 5.0E-5 < THEN
PRINT "TEST ADF SUCCESSFUL; DELTA=" DELTA ;
ELSE
PRINT "-------------------" ;
PRINT "TEST FAILURE ON ADF" ;
PRINT "-------------------" ;
PRINT "adf(macrolib1)=" value1 "adf(macrolib1)=" value2 ;
ABORT: ;
ENDIF ;
END: ;
ECHO "mpo_mco_refl completed" ;
END: ;
|