In GitLab by @mkovari on May 18, 2023, 11:53
This code falsifies the current drive fractions so they do not add to 1. No error message appears in the output file.
EDIT: the variable names have been changed. The code is now as follows.
current_drive_variables.f_c_plasma_internal = (
current_drive_variables.f_c_plasma_bootstrap
+ current_drive_variables.f_c_plasma_diamagnetic
+ current_drive_variables.f_c_plasma_pfirsch_schluter
)
# Plasma driven current fraction (Bootstrap + Diamagnetic
# + Pfirsch-Schlüter) constrained to be less than
# or equal to the total fraction of the plasma current
# produced by non-inductive means (which also includes
# the current drive proportion)
physics_module.err243 = 0
if (
current_drive_variables.f_c_plasma_internal
> physics_variables.f_c_plasma_non_inductive
):
current_drive_variables.f_c_plasma_internal = min(
current_drive_variables.f_c_plasma_internal,
physics_variables.f_c_plasma_non_inductive,
)
This variable is only used in one place:
# Fraction of plasma current produced by auxiliary current drive
physics_variables.f_c_plasma_auxiliary = (
physics_variables.f_c_plasma_non_inductive
- current_drive_variables.f_c_plasma_internal
)
This is needed because f_c_plasma_non_inductive can be an iteration variable, so we need to be able to calculate things from it.
Although negative auxiliary current drive is physically possible, we don't have any way of handling it in PROCESS.
As far as I can see, f_c_plasma_auxiliary is only used in one place:
# Calculate the injected power for the primary heating method
current_drive_variables.p_hcd_primary_injected_mw = (
1.0e-6
* (
physics_variables.f_c_plasma_auxiliary
- current_drive_variables.f_c_plasma_hcd_secondary
)
* physics_variables.plasma_current
/ current_drive_variables.eta_cd_hcd_primary
)
@stuartmuldrew ?
In GitLab by @mkovari on May 18, 2023, 11:53
This code falsifies the current drive fractions so they do not add to 1. No error message appears in the output file.
EDIT: the variable names have been changed. The code is now as follows.
This variable is only used in one place:
This is needed because
f_c_plasma_non_inductivecan be an iteration variable, so we need to be able to calculate things from it.Although negative auxiliary current drive is physically possible, we don't have any way of handling it in PROCESS.
As far as I can see,
f_c_plasma_auxiliaryis only used in one place:@stuartmuldrew ?