summaryrefslogtreecommitdiff
path: root/Dragon/data/rep900_het_gff_proc/GeoHom.c2m
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 /Dragon/data/rep900_het_gff_proc/GeoHom.c2m
Initial commit from Polytechnique Montreal
Diffstat (limited to 'Dragon/data/rep900_het_gff_proc/GeoHom.c2m')
-rw-r--r--Dragon/data/rep900_het_gff_proc/GeoHom.c2m277
1 files changed, 277 insertions, 0 deletions
diff --git a/Dragon/data/rep900_het_gff_proc/GeoHom.c2m b/Dragon/data/rep900_het_gff_proc/GeoHom.c2m
new file mode 100644
index 0000000..bfa5a3a
--- /dev/null
+++ b/Dragon/data/rep900_het_gff_proc/GeoHom.c2m
@@ -0,0 +1,277 @@
+*DECK GeoHom
+*----
+* Name : GeoHom.c2m
+* Type : DRAGON procedure
+* Use : Geometry generation homogenization
+* Author : R. Chambon
+*
+* Procedure called as:
+*
+*ALLGEO:= GeoHom :: <<Cote>> <<CoteL>> ;
+*
+* Input data :
+* Cote : Lattice pitch (cm)
+* CoteL : Lattice pitch + Water space (cm)
+*
+* Output data :
+* ALLGEO : All Geometries for homogenizations
+*
+PARAMETER ALLGEO ::
+ EDIT 0
+ ::: LINKED_LIST ALLGEO ;
+ ;
+LINKED_LIST GEOTMP ASSMB_HOM ;
+
+*----
+* Modules used in this procedure
+*----
+MODULE GEO: DELETE: BACKUP: END: ;
+
+*----
+* Input data recovery
+*----
+* ;
+REAL Cote CoteL ;
+:: >>Cote<< >>CoteL<< ;
+STRING namgeohom namgeoht1 namgeoht2 namgeopin :=
+ "GEOHOM" "GEOHT1" "GEOHT2" "GEOPIN" ;
+STRING namsphhom namsphht1 namsphht2 namsphpin :=
+ "SPHHOM" "SPHHT1" "SPHHT2" "SPHPIN" ;
+*
+* GEOMETRY for MULTICOMPO
+*
+*
+*----
+* Homogeneous assembly
+*----
+REAL Lassp Lassm ;
+EVALUATE Lassp := Cote 15. * CoteL 2. * + 2. / ;
+EVALUATE Lassm := Lassp -1. * ;
+GEOTMP := GEO: :: CAR2D 1 1
+ EDIT 0
+ X- REFL X+ REFL
+ Y- REFL Y+ REFL
+ MIX 1
+ MESHX <<Lassm>> <<Lassp>>
+ MESHY <<Lassm>> <<Lassp>>
+;
+ALLGEO := BACKUP: GEOTMP ::
+EDIT 0
+STEP UP <<namgeohom>>
+;
+GEOTMP := DELETE: GEOTMP ;
+*----
+* Heterogeneous assembly
+*----
+REAL LHetp LHetm ;
+EVALUATE LHetp := Cote 15. * 2. / ;
+EVALUATE LHetm := LHetp -1. * ;
+GEOTMP := GEO: :: CAR2D 3 3
+ EDIT 0
+ X- REFL X+ REFL
+ Y- REFL Y+ REFL
+ MIX 3 2 3
+ 2 1 2
+ 3 2 3
+ MESHX <<Lassm>> <<LHetm>> <<LHetp>> <<Lassp>>
+ MESHY <<Lassm>> <<LHetm>> <<LHetp>> <<Lassp>>
+;
+ALLGEO := BACKUP: ALLGEO GEOTMP ::
+EDIT 0
+STEP UP <<namgeoht1>>
+;
+GEOTMP := DELETE: GEOTMP ;
+*
+EVALUATE LHetp := Cote 13. * 2. / ;
+EVALUATE LHetm := LHetp -1. * ;
+GEOTMP := GEO: :: CAR2D 3 3
+ EDIT 0
+ X- REFL X+ REFL
+ Y- REFL Y+ REFL
+ MIX 3 2 3
+ 2 1 2
+ 3 2 3
+ MESHX <<Lassm>> <<LHetm>> <<LHetp>> <<Lassp>>
+ MESHY <<Lassm>> <<LHetm>> <<LHetp>> <<Lassp>>
+;
+ALLGEO := BACKUP: ALLGEO GEOTMP ::
+EDIT 0
+STEP UP <<namgeoht2>>
+;
+GEOTMP := DELETE: GEOTMP ;
+*
+*----
+* Pin by pin assembly
+*----
+REAL Lp1p Lp1m Lp2p Lp2m Lp3p Lp3m Lp4p Lp4m
+ Lp5p Lp5m Lp6p Lp6m Lp7p Lp7m Lp8p Lp8m ;
+EVALUATE Lp1p := Cote 1. * 2. / ;
+EVALUATE Lp1m := Lp1p -1. * ;
+EVALUATE Lp2p := Cote 3. * 2. / ;
+EVALUATE Lp2m := Lp2p -1. * ;
+EVALUATE Lp3p := Cote 5. * 2. / ;
+EVALUATE Lp3m := Lp3p -1. * ;
+EVALUATE Lp4p := Cote 7. * 2. / ;
+EVALUATE Lp4m := Lp4p -1. * ;
+EVALUATE Lp5p := Cote 9. * 2. / ;
+EVALUATE Lp5m := Lp5p -1. * ;
+EVALUATE Lp6p := Cote 11. * 2. / ;
+EVALUATE Lp6m := Lp6p -1. * ;
+EVALUATE Lp7p := Cote 13. * 2. / ;
+EVALUATE Lp7m := Lp7p -1. * ;
+EVALUATE Lp8p := Cote 15. * 2. / ;
+EVALUATE Lp8m := Lp8p -1. * ;
+GEOTMP := GEO: :: CAR2D 17 17
+ EDIT 0
+ X- REFL X+ REFL
+ Y- REFL Y+ REFL
+ MIX
+ 45 44 42 39 35 30 24 17 9 17 24 30 35 39 42 44 45
+ 44 43 41 38 34 29 23 16 8 16 23 29 34 38 41 43 44
+ 42 41 40 37 33 28 22 15 7 15 22 28 33 37 40 41 42
+ 39 38 37 36 32 27 21 14 6 14 21 27 32 36 37 38 39
+ 35 34 33 32 31 26 20 13 5 13 20 26 31 32 33 34 35
+ 30 29 28 27 26 25 19 12 4 12 19 25 26 27 28 29 30
+ 24 23 22 21 20 19 18 11 3 11 18 19 20 21 22 23 24
+ 17 16 15 14 13 12 11 10 2 10 11 12 13 14 15 16 17
+ 9 8 7 6 5 4 3 2 1 2 3 4 5 6 7 8 9
+ 17 16 15 14 13 12 11 10 2 10 11 12 13 14 15 16 17
+ 24 23 22 21 20 19 18 11 3 11 18 19 20 21 22 23 24
+ 30 29 28 27 26 25 19 12 4 12 19 25 26 27 28 29 30
+ 35 34 33 32 31 26 20 13 5 13 20 26 31 32 33 34 35
+ 39 38 37 36 32 27 21 14 6 14 21 27 32 36 37 38 39
+ 42 41 40 37 33 28 22 15 7 15 22 28 33 37 40 41 42
+ 44 43 41 38 34 29 23 16 8 16 23 29 34 38 41 43 44
+ 45 44 42 39 35 30 24 17 9 17 24 30 35 39 42 44 45
+ MESHX <<Lassm>> <<Lp8m>> <<Lp7m>> <<Lp6m>> <<Lp5m>> <<Lp4m>>
+ <<Lp3m>> <<Lp2m>> <<Lp1m>> <<Lp1p>> <<Lp2p>> <<Lp3p>>
+ <<Lp4p>> <<Lp5p>> <<Lp6p>> <<Lp7p>> <<Lp8p>> <<Lassp>>
+ MESHY <<Lassm>> <<Lp8m>> <<Lp7m>> <<Lp6m>> <<Lp5m>> <<Lp4m>>
+ <<Lp3m>> <<Lp2m>> <<Lp1m>> <<Lp1p>> <<Lp2p>> <<Lp3p>>
+ <<Lp4p>> <<Lp5p>> <<Lp6p>> <<Lp7p>> <<Lp8p>> <<Lassp>>
+;
+ALLGEO := BACKUP: ALLGEO GEOTMP ::
+EDIT 0
+STEP UP <<namgeopin>>
+;
+GEOTMP := DELETE: GEOTMP ;
+*
+* GEOMETRY for SPH calculations
+*
+*
+*
+* Original geometry for flux calculation
+* CELL TI C01 C03 T1 C08 C13 T2 C23 C31 L1
+* C02 C04 C06 C09 C14 C18 C24 C32 L1
+* C05 C07 C10 C15 C19 C25 C33 L1
+* T1 C11 C16 T2 C26 C34 L1
+* C12 C17 C20 C27 C35 L1
+* T2 C21 C28 C36 L1
+* C22 C29 C37 L1
+* C30 C38 L1
+* C39 L1
+* L2
+
+REAL Lp9p ;
+EVALUATE Lp9p := Cote 17. * 2. / ;
+*----
+* Homogeneous assembly
+*----
+ASSMB_HOM := GEO: :: CAR2D 10 10
+ X- DIAG X+ REFL Y- SYME Y+ DIAG
+ MIX 1 1 1 1 1 1 1 1 1 1
+ 1 1 1 1 1 1 1 1 1
+ 1 1 1 1 1 1 1 1
+ 1 1 1 1 1 1 1
+ 1 1 1 1 1 1
+ 1 1 1 1 1
+ 1 1 1 1
+ 1 1 1
+ 1 1
+ 1
+ MESHX <<Lp1m>> <<Lp1p>> <<Lp2p>> <<Lp3p>> <<Lp4p>> <<Lp5p>>
+ <<Lp6p>> <<Lp7p>> <<Lp8p>> <<Lp9p>> <<Lassp>>
+ MESHY <<Lp1m>> <<Lp1p>> <<Lp2p>> <<Lp3p>> <<Lp4p>> <<Lp5p>>
+ <<Lp6p>> <<Lp7p>> <<Lp8p>> <<Lp9p>> <<Lassp>>
+ ;
+ALLGEO := BACKUP: ALLGEO ASSMB_HOM ::
+EDIT 0
+STEP UP <<namsphhom>>
+;
+ASSMB_HOM := DELETE: ASSMB_HOM ;
+*----
+* Heterogeneous assembly
+*----
+*(1 pin thick outer layer in DRAGON)
+ASSMB_HOM := GEO: :: CAR2D 10 10
+ X- DIAG X+ REFL Y- SYME Y+ DIAG
+ MIX 1 1 1 1 1 1 1 1 2 2
+ 1 1 1 1 1 1 1 2 2
+ 1 1 1 1 1 1 2 2
+ 1 1 1 1 1 2 2
+ 1 1 1 1 2 2
+ 1 1 1 2 2
+ 1 1 2 2
+ 1 2 2
+ 3 3
+ 3
+ MESHX <<Lp1m>> <<Lp1p>> <<Lp2p>> <<Lp3p>> <<Lp4p>> <<Lp5p>>
+ <<Lp6p>> <<Lp7p>> <<Lp8p>> <<Lp9p>> <<Lassp>>
+ MESHY <<Lp1m>> <<Lp1p>> <<Lp2p>> <<Lp3p>> <<Lp4p>> <<Lp5p>>
+ <<Lp6p>> <<Lp7p>> <<Lp8p>> <<Lp9p>> <<Lassp>>
+ ;
+ALLGEO := BACKUP: ALLGEO ASSMB_HOM ::
+EDIT 0
+STEP UP <<namsphht1>>
+;
+ASSMB_HOM := DELETE: ASSMB_HOM ;
+*(2 pins thick outer layer in DRAGON)
+ASSMB_HOM := GEO: :: CAR2D 10 10
+ X- DIAG X+ REFL Y- SYME Y+ DIAG
+ MIX 1 1 1 1 1 1 1 2 2 2
+ 1 1 1 1 1 1 2 2 2
+ 1 1 1 1 1 2 2 2
+ 1 1 1 1 2 2 2
+ 1 1 1 2 2 2
+ 1 1 2 2 2
+ 1 2 2 2
+ 3 3 3
+ 3 3
+ 3
+ MESHX <<Lp1m>> <<Lp1p>> <<Lp2p>> <<Lp3p>> <<Lp4p>> <<Lp5p>>
+ <<Lp6p>> <<Lp7p>> <<Lp8p>> <<Lp9p>> <<Lassp>>
+ MESHY <<Lp1m>> <<Lp1p>> <<Lp2p>> <<Lp3p>> <<Lp4p>> <<Lp5p>>
+ <<Lp6p>> <<Lp7p>> <<Lp8p>> <<Lp9p>> <<Lassp>>
+ ;
+ALLGEO := BACKUP: ALLGEO ASSMB_HOM ::
+EDIT 0
+STEP UP <<namsphht2>>
+;
+ASSMB_HOM := DELETE: ASSMB_HOM ;
+*----
+* Pin by pin assembly
+*----
+ASSMB_HOM := GEO: :: CAR2D 10 10
+ X- DIAG X+ REFL Y- SYME Y+ DIAG
+MIX 1 2 3 4 5 6 7 8 9 9
+ 10 11 12 13 14 15 16 17 17
+ 18 19 20 21 22 23 24 24
+ 25 26 27 28 29 30 30
+ 31 32 33 34 35 35
+ 36 37 38 39 39
+ 40 41 42 42
+ 43 44 44
+ 45 45
+ 45
+ MESHX <<Lp1m>> <<Lp1p>> <<Lp2p>> <<Lp3p>> <<Lp4p>> <<Lp5p>>
+ <<Lp6p>> <<Lp7p>> <<Lp8p>> <<Lp9p>> <<Lassp>>
+ MESHY <<Lp1m>> <<Lp1p>> <<Lp2p>> <<Lp3p>> <<Lp4p>> <<Lp5p>>
+ <<Lp6p>> <<Lp7p>> <<Lp8p>> <<Lp9p>> <<Lassp>>
+ ;
+ALLGEO := BACKUP: ALLGEO ASSMB_HOM ::
+EDIT 0
+STEP UP <<namsphpin>>
+;
+ASSMB_HOM := DELETE: ASSMB_HOM ;
+END: ;
+QUIT .