constraint_eqn_075 Subroutine

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

Ensure that TF coil current / copper area < Maximum value author: P B Lloyd, CCFE, Culham Science Centre args : output structure : residual error; constraint value; residual error in physical units; output string; units string Ensure that TF coil current / copper area < Maximum value ONLY used for croco HTS coil #=# physics #=#=# f_coppera_m2, copperA_m2_max and hence also optional here. Logic change during pre-factoring: err, symbol, units will be assigned only if present. copperA_m2 : input real : TF coil current / copper area (A/m2) copperA_m2_max : input real : Maximum TF coil current / copper area (A/m2) f_coppera_m2 : input real : f-value for TF coil current / copper area < copperA_m2_max

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_075(tmp_cc, tmp_con, tmp_err, tmp_symbol, tmp_units)
      !! Ensure that TF coil current / copper area < Maximum value
      !! author: P B Lloyd, CCFE, Culham Science Centre
      !! args : output structure : residual error; constraint value;
      !! residual error in physical units; output string; units string
      !! Ensure that TF coil current / copper area < Maximum value
      !! ONLY used for croco HTS coil
      !! #=# physics
      !! #=#=# f_coppera_m2, copperA_m2_max
      !! and hence also optional here.
      !! Logic change during pre-factoring: err, symbol, units will be assigned only if present.
      !! copperA_m2 : input real : TF coil current / copper area (A/m2)
      !! copperA_m2_max : input real : Maximum TF coil current / copper area (A/m2)
      !! f_coppera_m2 : input real : f-value for TF coil current / copper area < copperA_m2_max
      use rebco_variables, only: copperA_m2, copperA_m2_max, f_coppera_m2
      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 - f_coppera_m2 * copperA_m2_max / copperA_m2
      tmp_con = copperA_m2
      tmp_err = copperA_m2 * tmp_cc
      tmp_symbol = '<'
      tmp_units = 'A/m2'

   end subroutine constraint_eqn_075