subroutine strands_SS_flux_port_comm(me)
type(strand_t), intent(inout) :: me
integer :: ii
real(dp) :: lambdS, DerlambdS, cpMS
real(dp) :: B,St,Tc,Tc0,Bc,Bc0,Jc0,Jop,TcS
lambdS=0.0_dp
DerlambdS=0.0_dp
cpMS=0.0_dp
lambdS=lambdS+me%ct(STAB)%area*me%mat_stab%thermal_conductivity(me%StVar%SCtemp(1),me%scen%Bfield(1))
lambdS=lambdS+me%ct(SUPC)%area*me%mat_supc%thermal_conductivity(me%StVar%SCtemp(1))
DerlambdS=DerlambdS+me%ct(STAB)%area*me%mat_stab%thermal_conductivity_der(me%StVar%SCtemp(1),me%scen%Bfield(1))
DerlambdS=DerlambdS+me%ct(SUPC)%area*me%mat_supc%thermal_conductivity_der(me%StVar%SCtemp(1))
cpMS=cpMS+me%ct(STAB)%area*me%mat_stab%density*me%mat_stab%heat_capacity(me%StVar%SCtemp(1))
B = me%scen%Bfield(1)
St = me%mat_supc%strain(B,me%scen%ElCur)
TC = me%mat_supc%critical_temperature(B,St)
Tc0 = me%mat_supc%critical_temperature(0.0_dp,St)
Bc = me%mat_supc%critical_field(me%StVar%SCtemp(1),St)
Bc0 = me%mat_supc%critical_field(0.0_dp,St)
Jc0 = me%mat_supc%critical_current_density(0.0_dp,B,St,Tc0,Bc)
Jop = abs(me%scen%ElCur)/me%ct(SUPC)%area
TcS=me%mat_supc%current_sharing_temperature(B,St,Jop,Bc0,Jc0,Tc,Tc0,Bc)
cpMS=cpMS+me%ct(SUPC)%area*me%mat_supc%density*me%mat_supc%heat_capacity(me%StVar%SCtemp(1),B,TC,TcS,Tc0)
lambdS=lambdS/sum(me%ct(:)%area)
DerlambdS=DerlambdS/sum(me%ct(:)%area)
cpMS=cpMS/(me%ct(STAB)%area*me%mat_stab%density+me%ct(SUPC)%area*me%mat_supc%density)
me%SC_Prop%in%lambdS = lambdS
me%SC_Prop%in%DerlambdS = DerlambdS
me%SC_Prop%in%cpMS = cpMS
me%SC_Prop%in%TempS = me%StVar%SCtemp(1)
lambdS=0.0_dp
DerlambdS=0.0_dp
cpMS=0.0_dp
lambdS=lambdS+me%ct(STAB)%area* &
me%mat_stab%thermal_conductivity(me%StVar%SCtemp(me%SC_Prop%NbCells),me%scen%Bfield(me%SC_Prop%NbCells))
lambdS=lambdS+me%ct(SUPC)%area* &
me%mat_supc%thermal_conductivity(me%StVar%SCtemp(me%SC_Prop%NbCells))
DerlambdS=DerlambdS+me%ct(STAB)%area*&
me%mat_stab%thermal_conductivity_der(me%StVar%SCtemp(me%SC_Prop%NbCells),me%scen%Bfield(me%SC_Prop%NbCells))
DerlambdS=DerlambdS+me%ct(SUPC)%area*&
me%mat_supc%thermal_conductivity_der(me%StVar%SCtemp(me%SC_Prop%NbCells))
cpMS=cpMS+me%ct(STAB)%area*me%mat_stab%density*me%mat_stab%heat_capacity(me%StVar%SCtemp(me%SC_Prop%NbCells))
B = me%scen%Bfield(me%SC_Prop%NbCells)
St = me%mat_supc%strain(B,me%scen%ElCur)
TC = me%mat_supc%critical_temperature(B,St)
Tc0 = me%mat_supc%critical_temperature(0.0_dp,St)
Bc = me%mat_supc%critical_field(me%StVar%SCtemp(me%SC_Prop%NbCells),St)
Bc0 = me%mat_supc%critical_field(0.0_dp,St)
Jc0 = me%mat_supc%critical_current_density(0.0_dp,B,St,Tc0,Bc)
Jop = abs(me%scen%ElCur)/me%ct(SUPC)%area
TcS=me%mat_supc%current_sharing_temperature(B,St,Jop,Bc0,Jc0,Tc,Tc0,Bc)
cpMS=cpMS+me%ct(SUPC)%area*me%mat_supc%density*me%mat_supc%heat_capacity(me%StVar%SCtemp(me%SC_Prop%NbCells),B,TC,TcS,Tc0)
lambdS=lambdS/sum(me%ct(:)%area)
DerlambdS=DerlambdS/sum(me%ct(:)%area)
cpMS=cpMS/(me%ct(STAB)%area*me%mat_stab%density+me%ct(SUPC)%area*me%mat_supc%density)
me%SC_Prop%out%lambdS = lambdS
me%SC_Prop%out%DerlambdS = DerlambdS
me%SC_Prop%out%cpMS = cpMS
me%SC_Prop%out%TempS = me%StVar%SCtemp(me%SC_Prop%NbCells)
end subroutine strands_SS_flux_port_comm