constraint_eqn_051 Subroutine

public subroutine constraint_eqn_051(tmp_cc, tmp_con, tmp_err, tmp_symbol, tmp_units)

Equation to enforce startup flux = available startup flux 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 to enforce startup flux = available startup flux #=# pfcoil #=#=# consistency and hence also optional here. Logic change during pre-factoring: err, symbol, units will be assigned only if present. vsres : input real : resistive losses in startup V-s (Wb) vsind : input real : internal and external plasma inductance V-s (Wb)) vssu : input real : total flux swing for startup (Wb)

Arguments

Type IntentOptional AttributesName
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

Contents

Source Code


Source Code

   subroutine constraint_eqn_051(tmp_cc, tmp_con, tmp_err, tmp_symbol, tmp_units)
      !! Equation to enforce startup flux = available startup flux
      !! 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 to enforce startup flux = available startup flux
      !! #=# pfcoil
      !! #=#=# consistency
      !! and hence also optional here.
      !! Logic change during pre-factoring: err, symbol, units will be assigned only if present.
      !! vsres : input real : resistive losses in startup V-s (Wb)
      !! vsind : input real :  internal and external plasma inductance V-s (Wb))
      !! vssu : input real :  total flux swing for startup (Wb)
      use physics_variables, only: vsres, vsind
      use pfcoil_variables, only: vssu, fvssu
      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

      tmp_cc =  1.0D0 - fvssu * abs((vsres+vsind) / vssu)
      tmp_con = vssu * (1.0D0 - tmp_cc)
      tmp_err = vssu * tmp_cc
      tmp_symbol = '='
      tmp_units = 'V.s'

   end subroutine constraint_eqn_051