Equation for radiation power upper limit author: P B Lloyd, CCFE, Culham Science Centre args : output structure : residual error; constraint value; residual error in physical units; output string; units string Equation for radiation power upper limit #=# physics #=#=# fradpwr, pradmaxpv and hence also optional here. Logic change during pre-factoring: err, symbol, units will be assigned only if present. falpha : input real : fraction of alpha power deposited in plasma pinjmw : input real : total auxiliary injected power (MW) vol : input real : plasma volume (m3) palppv : input real : alpha power per volume (MW/m3) pchargepv : input real : non-alpha charged particle fusion power per volume (MW/m3) pohmpv : input real : ohmic heating power per volume (MW/m3) fradpwr : input real : f-value for core radiation power limit pradpv : input real : total radiation power per volume (MW/m3)
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=dp), | intent(out) | :: | tmp_cc | |||
real(kind=dp), | intent(out) | :: | tmp_con | |||
real(kind=dp), | intent(out) | :: | tmp_err | |||
character(len=1), | intent(out) | :: | tmp_symbol | |||
character(len=10), | intent(out) | :: | tmp_units |
subroutine constraint_eqn_017(tmp_cc, tmp_con, tmp_err, tmp_symbol, tmp_units)
!! Equation for radiation power upper limit
!! author: P B Lloyd, CCFE, Culham Science Centre
!! args : output structure : residual error; constraint value;
!! residual error in physical units; output string; units string
!! Equation for radiation power upper limit
!! #=# physics
!! #=#=# fradpwr, pradmaxpv
!! and hence also optional here.
!! Logic change during pre-factoring: err, symbol, units will be assigned only if present.
!! falpha : input real : fraction of alpha power deposited in plasma
!! pinjmw : input real : total auxiliary injected power (MW)
!! vol : input real : plasma volume (m3)
!! palppv : input real : alpha power per volume (MW/m3)
!! pchargepv : input real : non-alpha charged particle fusion power per volume (MW/m3)
!! pohmpv : input real : ohmic heating power per volume (MW/m3)
!! fradpwr : input real : f-value for core radiation power limit
!! pradpv : input real : total radiation power per volume (MW/m3)
use physics_variables, only: falpha, vol, palppv, pchargepv, pohmpv, pradpv
use current_drive_variables, only: pinjmw
use constraint_variables, only: fradpwr
implicit none
real(dp), intent(out) :: tmp_cc
real(dp), intent(out) :: tmp_con
real(dp), intent(out) :: tmp_err
character(len=1), intent(out) :: tmp_symbol
character(len=10), intent(out) :: tmp_units
real(dp) :: pradmaxpv
!! Maximum possible power/vol that can be radiated (local)
pradmaxpv = pinjmw/vol + palppv*falpha + pchargepv + pohmpv
tmp_cc = 1.0D0 - fradpwr * pradmaxpv / pradpv
tmp_con = pradmaxpv * (1.0D0 - tmp_cc)
tmp_err = pradpv * tmp_cc
tmp_symbol = '<'
tmp_units = 'MW/m3'
end subroutine constraint_eqn_017