diff options
| author | stainer_t <thomas.stainer@oecd-nea.org> | 2025-09-08 13:48:49 +0200 |
|---|---|---|
| committer | stainer_t <thomas.stainer@oecd-nea.org> | 2025-09-08 13:48:49 +0200 |
| commit | 7dfcc480ba1e19bd3232349fc733caef94034292 (patch) | |
| tree | 03ee104eb8846d5cc1a981d267687a729185d3f3 /Donjon/data/Test4x4coupl_nompi_proc/MainDraG2.c2m | |
Initial commit from Polytechnique Montreal
Diffstat (limited to 'Donjon/data/Test4x4coupl_nompi_proc/MainDraG2.c2m')
| -rwxr-xr-x | Donjon/data/Test4x4coupl_nompi_proc/MainDraG2.c2m | 247 |
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" . |
