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 /Dragon/data/CFC-CELL_proc/POWER.c2m | |
Initial commit from Polytechnique Montreal
Diffstat (limited to 'Dragon/data/CFC-CELL_proc/POWER.c2m')
| -rw-r--r-- | Dragon/data/CFC-CELL_proc/POWER.c2m | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/Dragon/data/CFC-CELL_proc/POWER.c2m b/Dragon/data/CFC-CELL_proc/POWER.c2m new file mode 100644 index 0000000..ea6ca7d --- /dev/null +++ b/Dragon/data/CFC-CELL_proc/POWER.c2m @@ -0,0 +1,67 @@ +* DRAGON POWER PROCEDURE DECK +*********************************************************************** +* Purpose: +* set nominal and pertubed power for cross-section of 2-D cell +* of CANDU reactor. +* +* author: +* MAJID FASSI FEHRI 09/09/10 +* CNSC +* +* Modified: +* Richard CHAMBON 11/04/29 +* Ecole Polytechnique +* +* Note: +* - by default (CALCU>0) only current and nominal values of properties +* are returned +* - for CALCU=0 nominal bundle power and its range of perturbation are +* returned. +* PowFB = 0 power feedback is NOT computed in the FBM database +* in that case arbitrary values of power are used in CFC +* to compute feedback coeficients all equal to 0 +* = 1 power feedback is computed in the FBM database +* +*********************************************************************** +REAL POW PowRef PowU PowI PowD ; +REAL PowBundRef PowBundU PowBundI PowBundD ; +INTEGER CALCU ; +INTEGER PowFB := 1 ; +MODULE END: ; +IF PowFB 0 = THEN +EVALUATE PowRef PowU PowI PowD := + 31.9713 31.9713 31.9713 31.9713 ; +ELSE +EVALUATE PowRef PowU PowI PowD := + 31.9713 49.3866 27.2926 3.4656 ; +ENDIF ; +EVALUATE PowBundRef := 615.0 ; +IF PowFB 0 = THEN +EVALUATE PowBundU := PowRef 1.5 * ; +EVALUATE PowBundI := PowRef 0.8 * ; +EVALUATE PowBundD := PowRef 0.15 * ; +ELSE +EVALUATE PowBundU := PowBundRef PowU * PowRef / ; +EVALUATE PowBundI := PowBundRef PowI * PowRef / ; +EVALUATE PowBundD := PowBundRef PowD * PowRef / ; +ENDIF ; + +:: >>CALCU<< ; + +IF CALCU 21 = THEN + EVALUATE POW := PowD ; +ELSEIF CALCU 20 = THEN + EVALUATE POW := PowI ; +ELSEIF CALCU 19 = THEN + EVALUATE POW := PowU ; +ELSE + EVALUATE POW := PowRef ; +ENDIF ; + +:: <<POW>> <<PowRef>> ; + +* Needed for the CFC: module only +IF CALCU 0 = THEN + :: <<PowBundRef>> <<PowBundU>> <<PowBundI>> <<PowBundD>> ; +ENDIF ; +END: ; |
