summaryrefslogtreecommitdiff
path: root/Donjon/data/Test4x4coupl_nompi_proc/MainDraG2.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/MainDraG2.c2m
Initial commit from Polytechnique Montreal
Diffstat (limited to 'Donjon/data/Test4x4coupl_nompi_proc/MainDraG2.c2m')
-rwxr-xr-xDonjon/data/Test4x4coupl_nompi_proc/MainDraG2.c2m247
1 files changed, 247 insertions, 0 deletions
diff --git a/Donjon/data/Test4x4coupl_nompi_proc/MainDraG2.c2m b/Donjon/data/Test4x4coupl_nompi_proc/MainDraG2.c2m
new file mode 100755
index 0000000..7dff990
--- /dev/null
+++ b/Donjon/data/Test4x4coupl_nompi_proc/MainDraG2.c2m
@@ -0,0 +1,247 @@
+*DECK MainDraG2.c2m
+*----
+* Nom : MainDraG2.c2m
+* Type : Procedure de calcul
+* Usage : Evolution d'une cellule de cellule CANDU-6 avec historique
+* Auteur : G. Marleau -- 2003/03/24
+* Modifie : R. Chambon -- 2003/05/21
+* G. Marleau -- 2003/06/30
+*
+* Description de la procedure:
+* History MACRES := MainDraG2 History MACRES RESEAU
+* GeoS GeoF IntLinS IntLinF ::
+* <<ncha>> <<nbun>> <<ibgncha>> <<iendcha>>
+* <<RefLib>> << NivImp >> <<ppm>> <<purmod>> ;
+* Structures de donnees:
+* History : historique du calcul de cellule (L_HISTORY).
+* MACRES : bibilotheque macroscopique pour le reseau
+* de calcul (L_MACROLIB).
+* RESEAU : reseau de calcul pour le rechargement
+* (L_MAP).
+* GeoS : volumes, surfaces et parametres d'integration
+* pour l'autoprotection des resonances (L_TRACK).
+* GeoF : volumes, surfaces et parametres d'integration
+* pour le calcul de flux (L_TRACK).
+* IntLinS : lignes d'integration pour l'autoprotection
+* des resonances
+* IntLinF : lignes d'integration pour le calcul des flux
+* Parametres de controle:
+* ncha : nombre de cannaux de combustible
+* nbun : nombre de grappes de combustible par cannal
+* ibgncha : numero de cannal de depart pour le calcul courant
+* iendcha : numero de cannal de fin pour le calcul courant
+* RefLib : Type de bibliotheque
+* "Winfrith" -> Bibliotheque Winfrith WIMS-AECL
+* "ENDFB5" -> Bibliotheque ENDF/B-V WIMS-AECL
+* (defaut)
+* "ENDFB6" -> Bibliotheque ENDF/B-VI WIMS-AECL
+* "IGE227W" -> Bibliotheque Winfrith WIMS-AECL
+* isotopes de IGE227
+* "IGE227E5" -> Bibliotheque ENDF/B-V WIMS-AECL
+* isotopes de IGE227
+* NivImp : Niveau d'impression
+* ppm : Bore dans moderateur en ppm
+* purmod : Purete D2O moderateur (%)
+* Procedure requise:
+* BibCellG2 : Mise a jour de la bibliotheque de section
+* efficace pour le calcul de cellule
+* FlxCellG2 : Calcul de flux et evolution pour une cellule
+* Modules DRAGON/DONJON requis:
+* HST: : controle l'historique.
+* EDI: : Gestion des sorties de DRAGON.
+* CPO: : Gestion des base de donnees CPO de DRAGON/DONJON
+* CRE: : Creation des macrolib pour DONJON.
+*----
+* Procedures et Modules
+*----
+PARAMETER History MACRES RESEAU GeoS GeoF
+ IntLinS IntLinF ::
+ EDIT 1
+ ::: XSM_FILE History ;
+ ::: LINKED_LIST MACRES RESEAU GeoS GeoF ;
+ ::: SEQ_BINARY IntLinS IntLinF ; ;
+INTEGER ncha nbun ibgncha iendcha NivImp ;
+STRING RefLib ;
+REAL ppm purmod ;
+*----
+* Reccuperer information transferee a la procedure
+*----
+:: >>ncha<< >>nbun<< >>ibgncha<< >>iendcha<<
+ >>RefLib<< >>NivImp<< >>ppm<< >>purmod<< ;
+PROCEDURE BibCellG2 FlxCellG2 ;
+MODULE HST: EDI: CPO: CRE: DELETE: END: ;
+ MODULE ABORT: ;
+*----
+* Definir les parametres globaux
+*----
+REAL TMod PMod DMod BMod :=
+ 345.66 purmod 0.0 ppm ;
+*----
+* Definir les parametres locaux
+* *A is after refueling
+* *B is before refueling
+*----
+REAL TCombA ECombA DCombA
+ TCaloA PCaloA DCaloA ;
+REAL TCombB ECombB DCombB
+ TCaloB PCaloB DCaloB ;
+INTEGER BibOpt ;
+*----
+* Definir les options locales pour les calculs de cellule
+* *A is after refueling
+* *B is before refueling
+*----
+REAL PowerA DeltaTA
+ PowerB DeltaTB ;
+*----
+* Structures de donnees locales
+*----
+LINKED_LIST Biblio Flux Burnup Edition Cpo ;
+*----
+* Parametres de reacteur
+* nglo = nunber of global parameters = 4
+* nloc = nunber of local parameters = 6
+* bunl = bundle length in cm = 49.53 cm
+*----
+EVALUATE BibOpt := 1 ;
+INTEGER nglo nloc :=
+ 4 6 ;
+REAL PkW DTCombA DTCombB ;
+REAL bunl := 49.53 ;
+REAL mbun := 400.559 bunl * 1000. / ;
+INTEGER icha ibun ;
+INTEGER istep ;
+*
+History := HST: History RESEAU :: EDIT 2 ;
+*
+EVALUATE icha := ibgncha ;
+WHILE icha iendcha <= DO
+ EVALUATE istep := icha ;
+ EVALUATE ibun := 1 ;
+ WHILE ibun nbun <= DO
+*----
+* recover in Reseau power and burnup for each bundle
+* and save them on History after execution
+*----
+ ECHO "Channel bundle =" icha ibun istep ;
+*
+ Burnup := HST: History ::
+ EDIT 2
+ PUT TMod >>TMod<< PMod >>PMod<<
+ DMod >>DMod<< BMod >>BMod<<
+ CELLID <<icha>> <<ibun>>
+ PUT BREFL BURN >>DeltaTB<< >>PowerB<<
+ TComb >>TCombB<< TCalo >>TCaloB<<
+ EComb >>ECombB<< PCalo >>PCaloB<<
+ DComb >>DCombB<< DCalo >>DCaloB<<
+ AREFL BURN >>DeltaTA<< >>PowerA<<
+ TComb >>TCombA<< TCalo >>TCaloA<<
+ EComb >>ECombA<< PCalo >>PCaloA<<
+ DComb >>DCombA<< DCalo >>DCaloA<< ;
+*
+*
+* COMPUTE FUEL TEMPERATURE AS A FUNCTION OF POWER
+*
+ IF RefLib "IGE227W" = THEN
+ EVALUATE TCombB := 941.29 ;
+ EVALUATE TCombA := 941.29 ;
+ ELSEIF RefLib "IGE227E5" = THEN
+ EVALUATE TCombB := 941.29 ;
+ EVALUATE TCombA := 941.29 ;
+ ELSE
+*----
+* Temperature du combustible en fonction de la puissance P
+* et de la temperature du caloporteur
+* T_{fuel}=T_{Cool}+ 0.476 P + 0.0002267 P^{2}
+* Reference: D. Rozon, Introduction a la cinetique des reacteurs
+* nucleaires. p. 217
+*----
+ EVALUATE PkW := PowerB mbun * ;
+ EVALUATE DTCombB := 2.267E-4 PkW * PkW * 0.476 PkW * + ;
+ EVALUATE TCombB := TCaloB DTCombB + ;
+ EVALUATE PkW := PowerA mbun * ;
+ EVALUATE DTCombA := 2.267E-4 PkW * PkW * 0.476 PkW * + ;
+ EVALUATE TCombA := TCaloA DTCombA + ;
+ ENDIF ;
+ ECHO "Before DeltaT=" DeltaTB ;
+ ECHO "Before Power =" PowerB ;
+ ECHO "Before TComb =" TCombB ;
+ ECHO "Before EComb =" ECombB ;
+ ECHO "Before DComb =" DCombB ;
+ ECHO "Before TCalo =" TCaloB ;
+ ECHO "Before PCalo =" PCaloB ;
+ ECHO "Before DCalo =" DCaloB ;
+ ECHO "After DeltaT=" DeltaTA ;
+ ECHO "After Power =" PowerA ;
+ ECHO "After TComb =" TCombA ;
+ ECHO "After EComb =" ECombA ;
+ ECHO "After DComb =" DCombA ;
+ ECHO "After TCalo =" TCaloA ;
+ ECHO "After PCalo =" PCaloA ;
+ ECHO "After DCalo =" DCaloA ;
+*----
+* Burn before refueling
+*----
+ IF DeltaTB 0.0 > THEN
+ Biblio := BibCellG2 Burnup ::
+ <<RefLib>> <<BibOpt>>
+ <<TCombB>> <<ECombB>> <<DCombB>>
+ <<TCaloB>> <<PCaloB>> <<DCaloB>>
+ <<TMod>> <<PMod>> <<DMod>> <<BMod>>
+ <<NivImp>> ;
+ Flux Burnup Biblio := FlxCellG2 Biblio Burnup
+ GeoS GeoF IntLinS IntLinF ::
+ <<BibOpt>>
+ <<PowerB>> <<DeltaTB>> <<NivImp>> ;
+ Flux Biblio := DELETE: Flux Biblio ;
+ ENDIF ;
+*----
+* Burn after refueling
+*----
+ Biblio := BibCellG2 Burnup ::
+ <<RefLib>> <<BibOpt>>
+ <<TCombA>> <<ECombA>> <<DCombA>>
+ <<TCaloA>> <<PCaloA>> <<DCaloA>>
+ <<TMod>> <<PMod>> <<DMod>> <<BMod>>
+ <<NivImp>> ;
+ Flux Burnup Biblio := FlxCellG2 Biblio Burnup
+ GeoS GeoF IntLinS IntLinF ::
+ <<BibOpt>>
+ <<PowerA>> <<DeltaTA>> <<NivImp>> ;
+ History := HST: History Burnup ::
+ EDIT 2
+ CELLID <<icha>> <<ibun>> ;
+*----
+* Update DONJON MAC
+*----
+ Edition := EDI: Flux Biblio GeoF ::
+ EDIT <<NivImp>>
+ MERGE COMP
+* COND 0.625
+ COND 4.0
+ SAVE ON 'END-CASE' ;
+ Cpo := CPO: Edition ::
+ STEP 'END-CASE' NAME BUNDLE ;
+ ECHO "NUMERO_DE_MIX = " istep ;
+ IF istep ibgncha = THEN
+ MACRES := CRE: Cpo ::
+ EDIT 1 NMIX 64
+ READ
+ COMPO Cpo MIX <<istep>> 'BUNDLE 1' ENDMIX
+ ;
+ ELSE
+ MACRES := CRE: MACRES Cpo ::
+ READ
+ COMPO Cpo MIX <<istep>> 'BUNDLE 1' ENDMIX
+ ;
+ ENDIF ;
+ Burnup Flux Biblio Cpo Edition := DELETE:
+ Burnup Flux Biblio Cpo Edition ;
+ EVALUATE istep := istep ncha + ;
+ EVALUATE ibun := ibun 1 + ;
+ ENDWHILE ;
+ EVALUATE icha := icha 1 + ;
+ENDWHILE ;
+
+END: ;
+QUIT "LIST" .