summaryrefslogtreecommitdiff
path: root/Donjon/data/Test4x4coupl_nompi_proc/FlxCellG2.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 /Donjon/data/Test4x4coupl_nompi_proc/FlxCellG2.c2m
Initial commit from Polytechnique Montreal
Diffstat (limited to 'Donjon/data/Test4x4coupl_nompi_proc/FlxCellG2.c2m')
-rwxr-xr-xDonjon/data/Test4x4coupl_nompi_proc/FlxCellG2.c2m137
1 files changed, 137 insertions, 0 deletions
diff --git a/Donjon/data/Test4x4coupl_nompi_proc/FlxCellG2.c2m b/Donjon/data/Test4x4coupl_nompi_proc/FlxCellG2.c2m
new file mode 100755
index 0000000..c469008
--- /dev/null
+++ b/Donjon/data/Test4x4coupl_nompi_proc/FlxCellG2.c2m
@@ -0,0 +1,137 @@
+*DECK FlxCellG2.c2m
+*----
+* Nom : FlxCellG2.c2m
+* Type : procedure DRAGON
+* Usage : Calcul de flux et evolution pour une cellule
+* Auteur : G. Marleau
+* Date : 2002/12/03
+*
+* Description de la procedure :
+*
+* Flux Burnup Biblio := FlxCellG2 [Flux Burnup] Biblio GeoS GeoF
+* IntLinS IntLinF ::
+* <<BibOpt>>
+* <<Power>> <<DeltaT>> <<Impression>> ;
+* Flux : structure contenant les flux de cellule
+* Burnup : structure contenant les concentrations
+* isotopiques en fonction du temps.
+* Biblio : structure contenant la bibliotheque
+* de section efficace originale
+* GeoS : Structure contenant le tracking de la
+* geometrie pour auto protection
+* GeoF : Structure contenant le tracking de la
+* geometrie pour calcul de flux
+* IntLinS : Fichier contenant contenant les lignes
+* d'integration pour auto protection
+* IntLinF : Fichier contenant contenant les lignes
+* d'integration pour calcul de flux
+* BibOpt : Options de calcul
+* BibOpt = 0 -> Initialiser le Burnup
+* aux conditions initiales sans
+* mise a jour en fonction du
+* temps d'evolution.
+* BibOpt = 1 -> Initialiser la blbliotheque
+* aux conditions initiales et
+* mettre a jour
+* utilisant l'information dans
+* ConcEvol.
+* power : Puissance d'evolution en kW/kg
+* Timei : Intervalle d'evolution en jours
+* Impression : Niveau d'impression
+* 0 -> Minimum
+* 1 -> Standard
+* >1 -> Pour verification
+*----
+* Parametres de la procedure
+*----
+PARAMETER Flux Burnup Biblio GeoS GeoF
+ IntLinS IntLinF ::
+ EDIT 1
+ ::: LINKED_LIST Flux Burnup Biblio GeoS GeoF ;
+ ::: SEQ_BINARY IntLinS IntLinF ; ;
+INTEGER BibOpt ;
+REAL Power DeltaT ;
+INTEGER Impression ;
+:: >>BibOpt<<
+ >>Power<< >>DeltaT<< >>Impression<< ;
+*----------
+* Definir les options locales
+*----------
+MODULE SHI: ASM: FLU: EVO: DELETE: ;
+XSM_FILE PIJ ;
+REAL LTi LTf LDT ;
+INTEGER IREFUEL ;
+REAL Delt Curt Finalt ;
+*----
+* Analyser les options de calcul
+* DeltaT = 0 Calcul de flux initial
+* avec creation Burnup
+* DeltaT > 0 Calcul de flux initial,
+* evolution, calcul du flux final
+*----
+*----
+* Calcul de flux initial
+*----
+Biblio := SHI: Biblio GeoS IntLinS :: EDIT 0 ;
+PIJ := ASM: Biblio GeoF IntLinF ;
+Flux := FLU: PIJ Biblio GeoF :: TYPE B B0 PNL ;
+PIJ := DELETE: PIJ ;
+*----
+* Sauver information sur Burnup si necessaire
+*----
+IF DeltaT 0.0 = THEN
+ IF BibOpt 0 = THEN
+ Burnup Biblio := EVO: Biblio Flux GeoF ::
+ EDIT <<Impression>>
+ SAVE 0.0 DAY POWR <<Power>> ;
+ ENDIF ;
+ELSE
+ IF BibOpt 0 = THEN
+ Burnup Biblio := EVO: Biblio Flux GeoF ::
+ EDIT <<Impression>>
+ SAVE 0.0 DAY POWR <<Power>> ;
+ ENDIF ;
+ EVALUATE LTi LTf := 0.0 DeltaT ;
+ EVALUATE Delt Curt := 5.0 LTi ;
+ IF Curt 1000.0 >= THEN
+ EVALUATE Delt := 200.0 ;
+ ELSEIF Curt 200.0 >= THEN
+ EVALUATE Delt := 50.0 ;
+ ELSEIF Curt 80.0 >= THEN
+ EVALUATE Delt := 20.0 ;
+ ELSEIF Curt 30.0 >= THEN
+ EVALUATE Delt := 10.0 ;
+ ENDIF ;
+*----------
+* Boucle d'evolution
+*----------
+ WHILE Curt LTf < DO
+ EVALUATE Finalt := Curt Delt + ;
+ IF Finalt LTf > THEN
+ EVALUATE Delt := LTf Curt - ;
+ ENDIF ;
+ ECHO "Deplete with Delt=" Delt "Day and power=" Power ;
+ Burnup Biblio := EVO: Burnup Biblio Flux GeoF ::
+ EDIT <<Impression>>
+ DEPL <<Delt>> DAY POWR <<Power>> ;
+ Biblio := SHI: Biblio GeoS IntLinS :: EDIT 0 ;
+ PIJ := ASM: Biblio GeoF IntLinF ;
+ Flux := FLU: Flux PIJ Biblio GeoF ::
+ EDIT <<Impression>> TYPE B B0 PNL ;
+ PIJ := DELETE: PIJ ;
+*----------
+* Changer intervalle d'evolution a temps precis
+*----------
+ EVALUATE Curt := Curt Delt + ;
+ IF Curt 1000.0 >= THEN
+ EVALUATE Delt := 200.0 ;
+ ELSEIF Curt 200.0 >= THEN
+ EVALUATE Delt := 50.0 ;
+ ELSEIF Curt 80.0 >= THEN
+ EVALUATE Delt := 20.0 ;
+ ELSEIF Curt 30.0 >= THEN
+ EVALUATE Delt := 10.0 ;
+ ENDIF ;
+ ENDWHILE ;
+ENDIF ;
+QUIT "LIST" .