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/Candu3_Shuffling_proc/f2_ObjStrat.c2m | |
Initial commit from Polytechnique Montreal
Diffstat (limited to 'Donjon/data/Candu3_Shuffling_proc/f2_ObjStrat.c2m')
| -rwxr-xr-x | Donjon/data/Candu3_Shuffling_proc/f2_ObjStrat.c2m | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/Donjon/data/Candu3_Shuffling_proc/f2_ObjStrat.c2m b/Donjon/data/Candu3_Shuffling_proc/f2_ObjStrat.c2m new file mode 100755 index 0000000..46b7306 --- /dev/null +++ b/Donjon/data/Candu3_Shuffling_proc/f2_ObjStrat.c2m @@ -0,0 +1,51 @@ +MODULE END: ; +PROCEDURE p9_Data ; +ECHO "Début de ObjStrat.c2m" ; +STRING proc := "TAVG" ; +REAL B1 R2 R3 PC PG eA F BREF BEND LIMC LIMG P E B PGb PCb ; +:: >>BEND<< >>PC<< >>PG<< >>eA<< ; +p9_Data :: <<proc>> >>BREF<< >>LIMC<< >>LIMG<< ; +EVALUATE PGb := LIMG PG - LIMG / 10. * ; +EVALUATE PCb := LIMC PC - LIMC / 120. * ; +ECHO "BEND BREF: " BEND BREF ; +*** Calcul de fréquence maximale +IF proc "TAVG-MX" = THEN +EVALUATE P := 0.0 PGb + PCb + ; +IF eA 0.050 >= THEN EVALUATE F := -500.0 ; +ELSEIF eA 0.0500 < eA 0.0100 >= * THEN EVALUATE E := -10.0 ; +ELSEIF eA 0.0100 < eA 0.0050 >= * THEN EVALUATE E := -4.0 ; +ELSEIF eA 0.0050 < eA 0.0010 >= * THEN EVALUATE E := -1.0 ; +ELSEIF eA 0.0010 < eA 0.0005 >= * THEN EVALUATE E := -0.5 ; +ELSEIF eA 0.0005 < THEN EVALUATE E := 0.0 ; +ENDIF ; +EVALUATE B := BEND BREF / ; +ECHO "Maximisation burnup - P E B: " P E B ; +IF eA 0.050 < THEN EVALUATE F := P E B + + ; +ENDIF ; +*** Atteinte cible et bonus diminution facteur de puissance +ELSE +* Facteurs bonus pour baisser les puissances max +IF PC LIMC > PG LIMG > * THEN EVALUATE P := -200. PCb + ; +ELSEIF PC LIMC > PG LIMG <= * THEN EVALUATE P := -100. PGb + PCb + ; +ELSEIF PC LIMC <= PG LIMG > * THEN EVALUATE P := -50. PGb + PCb + ; +ELSEIF PC LIMC <= PG LIMG <= * THEN EVALUATE P := 0. PGb + PCb + ; +ENDIF ; +IF eA 0.050 >= THEN EVALUATE F := -500.0 ; +ELSEIF eA 0.0500 < eA 0.0100 >= * THEN EVALUATE E := -10.0 ; +ELSEIF eA 0.0100 < eA 0.0050 >= * THEN EVALUATE E := -4.0 ; +ELSEIF eA 0.0050 < eA 0.0010 >= * THEN EVALUATE E := -1.0 ; +ELSEIF eA 0.0010 < eA 0.0005 >= * THEN EVALUATE E := -0.5 ; +ELSEIF eA 0.0005 < THEN EVALUATE E := 0.0 ; +ENDIF ; +EVALUATE B := BEND BREF - BREF / ABS -100. * ; +ECHO proc " Atteinte cible - P E B: " P E B ; +IF eA 0.050 < THEN EVALUATE F := P E B + + ; +ENDIF ; +*** +ENDIF ; +*** +:: <<F>> ; +*** +ECHO "Fin de ObjStrat.c2m" ; +END: ; +QUIT "LIST" .
\ No newline at end of file |
