summaryrefslogtreecommitdiff
path: root/Donjon/data/rep900EnrichCOMPO.x2m
diff options
context:
space:
mode:
authorstainer_t <thomas.stainer@oecd-nea.org>2025-09-08 13:48:49 +0200
committerstainer_t <thomas.stainer@oecd-nea.org>2025-09-08 13:48:49 +0200
commit7dfcc480ba1e19bd3232349fc733caef94034292 (patch)
tree03ee104eb8846d5cc1a981d267687a729185d3f3 /Donjon/data/rep900EnrichCOMPO.x2m
Initial commit from Polytechnique Montreal
Diffstat (limited to 'Donjon/data/rep900EnrichCOMPO.x2m')
-rw-r--r--Donjon/data/rep900EnrichCOMPO.x2m230
1 files changed, 230 insertions, 0 deletions
diff --git a/Donjon/data/rep900EnrichCOMPO.x2m b/Donjon/data/rep900EnrichCOMPO.x2m
new file mode 100644
index 0000000..57343bc
--- /dev/null
+++ b/Donjon/data/rep900EnrichCOMPO.x2m
@@ -0,0 +1,230 @@
+*
+* Input file to compute diffusion flux on a homogenize assembly
+* in an infinite space
+* Homogenization can be homogeneous or heterogeneous
+*
+* Author : R. Chambon (05/2014)
+* modified : R. Chambon (09/2015)
+*
+SEQ_ASCII XCOMPOU :: FILE '_CompoAss_1BU' ;
+*
+SEQ_ASCII AMF Amap AFLU ATRK :: FILE 'AMF' 'Amap' 'AFLU' 'ATRK' ;
+SEQ_ASCII ACPOnew :: FILE 'ACPOnew' ;
+LINKED_LIST Cpo DONNEES GeoInf GeoRes Matex Flux Track Micro
+ MacroF Macro2 System Fmap Macro ;
+*
+MODULE GEO: USPLIT: TRIVAT: FLUD: TRIVAA: NCR: DELETE: GREP: NAP: UTL: ABORT: END: ;
+*
+*REAL pbore_0 := 600. ; ! natural boron concentration in ppm
+
+INTEGER maxstep istep npin npinHt ifx ;
+INTEGER MaxR := 16 ;
+REAL Cote Lame mxel mxhl mxhr mxer Size ;
+REAL burnup ppmBore crod ;
+INTEGER iBoreMax := 1 ; !5
+INTEGER iTfMax := 1 ;
+INTEGER iTcaMax := 1 ;
+INTEGER iDcaMax := 1 ;
+INTEGER iBarrMax := 2 ;
+*
+EVALUATE Cote := 1.262082 ;
+EVALUATE Lame := .07792594 ;
+*
+STRING TypeCompo := "Heter0" ;
+STRING Dir ;
+*
+IF TypeCompo "Heter0" = THEN
+ EVALUATE npinHt := 1 ;
+* EVALUATE Dir := "EDI2A " ;
+ EVALUATE Dir := "Ass " ;
+ELSEIF TypeCompo "Heter1" = THEN
+ EVALUATE npinHt := 1 ;
+ EVALUATE Dir := "EDI2C " ;
+ENDIF ;
+IF TypeCompo "Heter0" = THEN
+ EVALUATE ifx := 0 ;
+ELSE
+ EVALUATE ifx := npinHt ;
+ENDIF ;
+*
+REAL keff2 ;
+*
+EVALUATE npin := 17 ;
+EVALUATE mxer := npin I_TO_R Cote * Lame 2. * + 2. / ;
+EVALUATE mxhr := npin npinHt 2 * - I_TO_R Cote * 2. / ;
+EVALUATE mxhl := mxhr -1. * ;
+EVALUATE mxel := mxer -1. * ;
+EVALUATE Size := npin I_TO_R Cote * Lame 2. * + ;
+ECHO mxel mxhl mxhr mxer ;
+*
+Cpo := XCOMPOU ;
+
+IF ifx 0 = THEN
+ GeoInf := GEO: :: CAR2D 1 1
+ EDIT 1
+ X- REFL X+ REFL
+ Y- REFL Y+ REFL
+ MIX 1
+ MESHX <<mxel>> <<mxer>>
+ MESHY <<mxel>> <<mxer>>
+ SPLITX 1
+ SPLITY 1
+ ;
+ Track := TRIVAT: GeoInf ::
+ MAXR <<MaxR>> MCFD 1 ;
+ELSE
+ GeoInf := GEO: :: CAR2D 3 3
+ EDIT 1
+ X- REFL X+ REFL
+ Y- REFL Y+ REFL
+ MIX 3 2 3
+ 2 1 2
+ 3 2 3
+ MESHX <<mxel>> <<mxhl>> <<mxhr>> <<mxer>>
+ MESHY <<mxel>> <<mxhl>> <<mxhr>> <<mxer>>
+ SPLITX 1 1 1
+ SPLITY 1 1 1
+ ;
+ Track := TRIVAT: GeoInf ::
+ MAXR <<MaxR>> DUAL 3 3 ;
+ENDIF ;
+ATRK := Track ;
+
+ EVALUATE maxstep := 1 ;
+* EVALUATE maxstep := 6 ;
+ DONNEES := UTL: ::
+ CREA
+ BURN <<maxstep>> =
+0.0
+! 0.0 9.37498 18.7500 37.4999 74.9999 150.000
+ ;
+
+DONNEES := UTL: DONNEES ::
+* EDIT 10
+ CREA
+ CBOR <<iBoreMax>> =
+* 0.0 600.0 1200.0 1800.0 2400.0
+* 0.0 600.0
+ 0.0
+ CREA
+ TCOM <<iTfMax>> =
+ 5.58150024E+02
+ CREA
+ FLUE <<iTcaMax>> =
+ 0.0
+ CREA
+ DCOM <<iDcaMax>> =
+ 7.01012015E-01
+ CREA
+ BARR <<iBarrMax>> =
+ 1.00000000E+00 2.00000000E+00
+ ;
+INTEGER iBoreStep := 0 ;
+
+ECHO "$$$ Crod loop" ;
+INTEGER iCrodStep := 0 ;
+WHILE iCrodStep iBoreMax < DO
+ EVALUATE iCrodStep := iCrodStep 1 + ;
+ ECHO "iCrodStep = " iCrodStep " of " iBarrMax ;
+ GREP: DONNEES :: GETVAL 'BARR' <<iCrodStep>> >>crod<< ;
+
+ECHO "$$$ Boron loop" ;
+EVALUATE iBoreStep := 0 ;
+WHILE iBoreStep iBoreMax < DO
+ EVALUATE iBoreStep := iBoreStep 1 + ;
+ ECHO "iBoreStep = " iBoreStep " of " iBoreMax ;
+ GREP: DONNEES :: GETVAL 'CBOR' <<iBoreStep>> >>ppmBore<< ;
+
+ECHO "$$$ Burnup loop" ;
+
+EVALUATE istep := 0 ;
+WHILE istep maxstep < DO
+ EVALUATE istep := istep 1 + ;
+ GREP: DONNEES :: GETVAL 'BURN' <<istep>> >>burnup<< ;
+
+IF ifx 0 = THEN
+ Micro := NCR: Cpo ::
+ EDIT 0
+ NMIX 1
+ COMPO Cpo <<Dir>>
+ MIX 1 FROM 1 SET 'BURN' <<burnup>>
+ SET 'CBOR' <<ppmBore>>
+ SET 'TCOM' 5.58150024E+02
+ SET 'DMOD' 7.01012015E-01
+ SET 'FLUE' 0.0
+ SET 'BARR' <<crod>>
+ ENDMIX
+ ;
+ELSE
+ Micro := NCR: Cpo ::
+ EDIT 0
+ NMIX 3
+ COMPO Cpo <<Dir>>
+ MIX 1 FROM 1 SET 'BURN' <<burnup>>
+ SET 'CBOR' <<ppmBore>>
+ SET 'TCOM' 5.58150024E+02
+ SET 'DMOD' 7.01012015E-01
+ SET 'FLUE' 0.0
+ SET 'BARR' <<crod>>
+ ENDMIX
+ MIX 2 FROM 2 SET 'BURN' <<burnup>>
+ SET 'CBOR' <<ppmBore>>
+ SET 'TCOM' 5.58150024E+02
+ SET 'DMOD' 7.01012015E-01
+ SET 'FLUE' 0.0
+ SET 'BARR' <<crod>>
+ ENDMIX
+ MIX 3 FROM 3 SET 'BURN' <<burnup>>
+ SET 'CBOR' <<ppmBore>>
+ SET 'TCOM' 5.58150024E+02
+ SET 'DMOD' 7.01012015E-01
+ SET 'FLUE' 0.0
+ SET 'BARR' <<crod>>
+ ENDMIX
+ ;
+ENDIF ;
+MacroF := Micro :: STEP UP MACROLIB ;
+
+*AMF := MacroF ;
+
+Macro2 := MacroF ;
+
+System := TRIVAA: Macro2 Track ;
+
+Flux := FLUD: System Track ::
+ EDIT 0
+ ADI 5
+;
+*AFLU := Flux ;
+GREP: Flux ::
+ GETVAL 'K-EFFECTIVE ' 1 >>keff2<< ;
+ECHO "ppmBore=" ppmBore "K-effective 2 = " keff2 ;
+
+Cpo := NAP: Cpo Track Flux ::
+ EDIT 10
+ PROJECTION
+ STEP <<Dir>>
+ IFX <<ifx>>
+ SET 'BURN' <<burnup>>
+ SET 'CBOR' <<ppmBore>>
+ SET 'TCOM' 5.58150024E+02
+ SET 'DMOD' 7.01012015E-01
+ SET 'FLUE' 0.0
+ SET 'BARR' <<crod>>
+;
+
+Flux MacroF Macro2 Micro System
+ := DELETE:
+Flux MacroF Macro2 Micro System ;
+
+ENDWHILE ; ! reference burnup loop
+
+ENDWHILE ; ! boron loop
+
+ENDWHILE ; ! crod loop
+
+ACPOnew := Cpo ;
+
+ECHO "test rep900EnrichCOMPO.x2m completed" ;
+END: ;
+QUIT .