**************************************************************** * * * Procedure : ThermoParam.c2m * * Purpose : Thermo-hydraulics coupling * * Author : A. Hebert * * * * CALL : * * Fmap Matex Flux := ThermoParam Fmap Matex Cpo Track * * :: (data) ; * * * **************************************************************** PARAMETER Fmap Matex Flux Cpo Track :: ::: LINKED_LIST Fmap Matex Flux Cpo Track ; ; MODULE NCR: MACINI: TRIVAA: FLUD: THM: FLPOW: GREP: DELETE: END: ; LINKED_LIST Thm MacroF System Macro1 Macro2 Power ; REAL powi densB pbore_0 temp_comb_0 temp_mode_0 dens_mode_0 ; :: >>powi<< >>densB<< >>pbore_0<< >>temp_comb_0<< >>temp_mode_0<< >>dens_mode_0<< ; STRING Dir := "EDI2B" ; INTEGER iter := 0 ; REAL keffn erra1 ; LOGICAL CONV ; REPEAT EVALUATE iter := iter 1 + ; ECHO "-------------------------------" ; ECHO "Thermo-hydraulics coupling loop" ; ECHO "iter=" iter "densB=" densB "powi=" powi ; ECHO "-------------------------------" ; *-- * Cross-section database interpolation *-- MacroF := NCR: Cpo Fmap :: EDIT 2 MACRO LINEAR TABLE Cpo <> 'burnup' MIX 1 INST-BURN SET LINEAR 'burnup' MAP SET LINEAR 'ppmBore' <> SET CUBIC 'TF' <> SET CUBIC 'TCA' <> SET CUBIC 'DCA' <> ADD 'ppmBore' <> MAP REF 'burnup' SAMEASREF 'TF' <> 'TCA' <> 'DCA' <> ENDREF ADD 'TCA' <> MAP REF 'burnup' SAMEASREF 'ppmBore' <> 'TF' <> 'DCA' <> ENDREF ADD 'TF' <> MAP REF 'burnup' SAMEASREF 'ppmBore' <> 'TCA' <> 'DCA' <> ENDREF ADD 'DCA' <> MAP REF 'burnup' SAMEASREF 'ppmBore' <> 'TCA' <> 'TF' <> ENDREF ENDMIX ; Macro1 := NCR: Cpo :: * dummy reflector -- please use more realistic data EDIT 0 MACRO LINEAR NMIX 2 COMPO Cpo <> MIX 2 SET LINEAR 'burnup' 15000.0 SET LINEAR 'ppmBore' <> SET CUBIC 'TF' <> SET CUBIC 'TCA' <> SET CUBIC 'DCA' <> ENDMIX ; Macro2 Matex := MACINI: Matex Macro1 MacroF ; *-- * Steady-state diffusion calculation *-- System := TRIVAA: Macro2 Track ; IF iter 1 = THEN Flux := FLUD: System Track :: EDIT 2 ADI 4 ACCE 5 3 ; ELSE Flux := FLUD: Flux System Track :: EDIT 2 RELAX 0.8 ; ENDIF ; System MacroF Macro1 Macro2 := DELETE: System MacroF Macro1 Macro2 ; *-- * Thermo-hydraulics calculation *-- Power Fmap := FLPOW: Fmap Flux Track Matex :: EDIT 10 PTOT <> ; Power := DELETE: Power ; GREP: Flux :: GETVAL 'K-EFFECTIVE ' 1 >>keffn<< ; ECHO "K-effective = " keffn " densB=" densB ; IF iter 1 = THEN Thm Fmap := THM: Fmap :: EDIT 3 CRITFL 1.80E+6 (* W/m^2 *) ASSMB 264 25 CWSECT 3.86 (* m^2 *) 67398.0 (* m^3/hr *) INLET 15500000.0 (* Pa *) 560.95 (* K *) RADIUS 0.4095E-2 0.418E-2 0.475E-2 0.6025E-2 (* m *) SET-PARAM 'C-BORE' <> RELAX 0.5 ; ELSE Thm Fmap := THM: Thm Fmap ; ENDIF ; *-- * Convergence test *-- GREP: Thm :: GETVAL 'ERROR-T-FUEL' 1 >>erra1<< ; ECHO "error on fuel temperature at iteration" iter "=" erra1 ; EVALUATE CONV := erra1 1.0 < iter 50 > + ; ECHO "CONV =" CONV ; ECHO "-------------------------------" ; UNTIL CONV ; END: ;