From 01ca30a09da346ba4d9d4fcc2214880ac5f27d61 Mon Sep 17 00:00:00 2001 From: MatthewPaskin Date: Thu, 17 Oct 2024 11:04:43 +0000 Subject: [PATCH] [GH Actions] fprettify source code --- src/suews/src/suews_phys_stebbs.f95 | 582 ++++++++++++++-------------- 1 file changed, 291 insertions(+), 291 deletions(-) diff --git a/src/suews/src/suews_phys_stebbs.f95 b/src/suews/src/suews_phys_stebbs.f95 index 956673b2..17eea421 100644 --- a/src/suews/src/suews_phys_stebbs.f95 +++ b/src/suews/src/suews_phys_stebbs.f95 @@ -869,13 +869,13 @@ SUBROUTINE stebbsonlinecouple( & ! ! DO i = 1, nbtype, 1 CALL suewsstebbscouple(blds(i), flginit, datetimeLine, & - qheat_dom, qcool_dom, dom_temp, qfb_hw_dom, qfm_dom, qfb_dom_air, & - Qsw_transmitted_window, Qsw_absorbed_window, Qsw_absorbed_wallroof, & - Qcond_ground, Qlw_net_extwallroof_to_outair, Qlw_net_extwindow_to_outair, & - Qconv_extwallroof_to_outair, Qconv_extwindow_to_outair, & - QStar, QEC, QH, QS, QBAE, QWaste, & - Textwallroof, Tintwallroof, Textwindow, Tintwindow, Tair_ind & - ) + qheat_dom, qcool_dom, dom_temp, qfb_hw_dom, qfm_dom, qfb_dom_air, & + Qsw_transmitted_window, Qsw_absorbed_window, Qsw_absorbed_wallroof, & + Qcond_ground, Qlw_net_extwallroof_to_outair, Qlw_net_extwindow_to_outair, & + Qconv_extwallroof_to_outair, Qconv_extwindow_to_outair, & + QStar, QEC, QH, QS, QBAE, QWaste, & + Textwallroof, Tintwallroof, Textwindow, Tintwindow, Tair_ind & + ) END DO ! ! ! ! @@ -1057,7 +1057,7 @@ SUBROUTINE suewsstebbscouple(self, flginit, datetimeLine, & QStar, QEC, QH, QS, QBAE, QWaste, & Textwallroof, Tintwallroof, Textwindow, Tintwindow, Tair_ind ! - character(len=256) :: debug_array_dir + CHARACTER(len=256) :: debug_array_dir CASE = self%CASE Area = self%Afootprint @@ -1077,11 +1077,11 @@ SUBROUTINE suewsstebbscouple(self, flginit, datetimeLine, & Qlw_dn_extroof = sout%Lroof(tstep) ! debug_array_dir = './debug_array.csv' - if (sout%ws_exch(tstep) < 0) then + IF (sout%ws_exch(tstep) < 0) THEN sout%ws_exch(tstep) = 0.2 - write(*, *) 'Wind speed is negative, set to 0.2' - end if - + WRITE (*, *) 'Wind speed is negative, set to 0.2' + END IF + self%h_o(1) = ext_conv_coeff(sout%ws_exch(tstep), sout%Tair_exch(tstep) - sout%Tsurf_exch(tstep)) self%h_o(2) = ext_conv_coeff(sout%ws_exch(tstep), sout%Tair_exch(tstep) - sout%Tsurf_exch(tstep)) @@ -1411,7 +1411,7 @@ SUBROUTINE tstep( & IMPLICIT NONE ! INTEGER, INTENT(in) :: flginit - REAL(rprc), dimension(5), INTENT(in) :: datetimeLine + REAL(rprc), DIMENSION(5), INTENT(in) :: datetimeLine INTEGER :: i REAL(rprc) :: Tair_out, Tground_deep, Tsurf, & density_air_out, cp_air_out, Qsw_dn_extroof, & @@ -1599,7 +1599,7 @@ SUBROUTINE tstep( & Qtotal_net_intgroundfloor = 0.0, Qtotal_net_extgroundfloor = 0.0 ! ! - character(len=256) :: fout + CHARACTER(len=256) :: fout ! ! Output cleaning ! @@ -1642,142 +1642,142 @@ SUBROUTINE tstep( & ! ! if ((timestep % resolution) == 0) { ! for (int i=0;i<(timestep/resolution);i++) { - if ( mod(timestep, resolution) == 0 ) then - looptime: do i = 1, int(timestep/resolution), 1 + IF (MOD(timestep, resolution) == 0) THEN + looptime: DO i = 1, INT(timestep/resolution), 1 ! - Qsw_transmitted_window = windowInsolation(Qsw_dn_extwall, winT, Awindow) - Qsw_absorbed_window = windowInsolation(Qsw_dn_extwall, winA, Awindow) + Qsw_transmitted_window = windowInsolation(Qsw_dn_extwall, winT, Awindow) + Qsw_absorbed_window = windowInsolation(Qsw_dn_extwall, winA, Awindow) ! // Awallroof excludes windows and includes floor area - Qsw_absorbed_wallroof = & - wallInsolation(Qsw_dn_extwall, walA, Awallroof - Afootprint) + & - wallInsolation(Qsw_dn_extroof, walA, Afootprint) !//separate the wall and roof + Qsw_absorbed_wallroof = & + wallInsolation(Qsw_dn_extwall, walA, Awallroof - Afootprint) + & + wallInsolation(Qsw_dn_extroof, walA, Afootprint) !//separate the wall and roof !// printf("Qconv_indair_to_indoormass: %f Tindoormass: %f Tair_ind: %f ", Qconv_indair_to_indoormass, Tindoormass, Tair_ind); - Qconv_indair_to_indoormass = internalConvectionHeatTransfer(conv_coeff_indoormass, Aindoormass, Tindoormass, Tair_ind) + Qconv_indair_to_indoormass = internalConvectionHeatTransfer(conv_coeff_indoormass, Aindoormass, Tindoormass, Tair_ind) !// printf("Qconv_indair_to_indoormass: %f Tindoormass: %f Tair_ind: %f \n", Qconv_indair_to_indoormass, Tindoormass, Tair_ind); - Qlw_net_intwallroof_to_allotherindoorsurfaces = indoorRadiativeHeatTransfer() ! // for wall internal radiative exchange - Qlw_net_intwindow_to_allotherindoorsurfaces = Qlw_net_intwallroof_to_allotherindoorsurfaces ! // for window internal radiative exchange - TODO: currently no distinction in internal radiative exchanges - Qlw_net_intgroundfloor_to_allotherindoorsurfaces = Qlw_net_intwallroof_to_allotherindoorsurfaces ! // for ground floor internal radiative exchange - TODO: currently no distinction in internal radiative exchanges + Qlw_net_intwallroof_to_allotherindoorsurfaces = indoorRadiativeHeatTransfer() ! // for wall internal radiative exchange + Qlw_net_intwindow_to_allotherindoorsurfaces = Qlw_net_intwallroof_to_allotherindoorsurfaces ! // for window internal radiative exchange - TODO: currently no distinction in internal radiative exchanges + Qlw_net_intgroundfloor_to_allotherindoorsurfaces = Qlw_net_intwallroof_to_allotherindoorsurfaces ! // for ground floor internal radiative exchange - TODO: currently no distinction in internal radiative exchanges !// - Q_appliance = & - internalApplianceGains(appliance_power_rating, appliance_usage_factor, appliance_totalnumber) - Q_ventilation = & - ventilationHeatTransfer(density_air_ind, cp_air_ind, ventilation_rate, Tair_out, Tair_ind) - Qconv_indair_to_intwallroof = & - indoorConvectionHeatTransfer(conv_coeff_intwallroof, Awallroof, Tintwallroof, Tair_ind) - Qconv_indair_to_intwindow = & - indoorConvectionHeatTransfer(conv_coeff_intwindow, Awindow, Tintwindow, Tair_ind) - Qconv_indair_to_intgroundfloor = & - indoorConvectionHeatTransfer(conv_coeff_intgroundfloor, Afootprint, Tintgroundfloor, Tair_ind) + Q_appliance = & + internalApplianceGains(appliance_power_rating, appliance_usage_factor, appliance_totalnumber) + Q_ventilation = & + ventilationHeatTransfer(density_air_ind, cp_air_ind, ventilation_rate, Tair_out, Tair_ind) + Qconv_indair_to_intwallroof = & + indoorConvectionHeatTransfer(conv_coeff_intwallroof, Awallroof, Tintwallroof, Tair_ind) + Qconv_indair_to_intwindow = & + indoorConvectionHeatTransfer(conv_coeff_intwindow, Awindow, Tintwindow, Tair_ind) + Qconv_indair_to_intgroundfloor = & + indoorConvectionHeatTransfer(conv_coeff_intgroundfloor, Afootprint, Tintgroundfloor, Tair_ind) !// - q_heating_timestep = heating(Ts(1), Tair_ind, heating_efficiency_air, maxheatingpower_air) - q_cooling_timestep = cooling(Ts(2), Tair_ind, coeff_performance_cooling, maxcoolingpower_air) - - !internalOccupancyGains(occupants, metabolic_rate, ratio_metabolic_latent_sensible, Qmetabolic_sensible, Qmetabolic_latent) - Qm = internalOccupancyGains(occupants, metabolic_rate, ratio_metabolic_latent_sensible) -! - Qmetabolic_sensible = Qm(1) - Qmetabolic_latent = Qm(2) -! - Qloss_efficiency_heating_air = & - additionalSystemHeatingEnergy(q_heating_timestep, heating_efficiency_air) - Qcond_wallroof = & - wallConduction(conductivity_wallroof, Awallroof, Tintwallroof, Textwallroof, thickness_wallroof) - Qcond_window = & - windowConduction(conductivity_window, Awindow, Tintwindow, Textwindow, thickness_window) - Qcond_groundfloor = & - wallConduction(conductivity_groundfloor, Afootprint, Tintgroundfloor, Textgroundfloor, thickness_groundfloor) - Qcond_ground = & - wallConduction(conductivity_ground, Afootprint, Textgroundfloor, Tground_deep, depth_ground) - ! ; // conduction from ground floor to external ground - depth of the ground can be set (depth_ground) and ground temperature should be determined accordingly.. - ! //add the longwave radiation between sky and external envelope; Assume surrounding surface and ground surface temperature is the same (e.g. assumed outdoor air temperature as in EnergyPlus) - ! // Qlw_net_extwallroof_to_outair = outdoorRadiativeHeatTransfer(BVF_extwall, Awallroof, emissivity_extwallroof, Textwallroof, Tsurf)+outdoorRadiativeHeatTransfer(SVF_extwall, Awallroof, emissivity_extwallroof, Textwallroof, Tsky); - ! // Qlw_net_extwindow_to_outair = outdoorRadiativeHeatTransfer(BVF_extwall, Awindow, emissivity_extwindow, Textwindow, Tsurf)+outdoorRadiativeHeatTransfer(SVF_extwall, Awindow, emissivity_extwindow, Textwindow, Tsky); - ! // call outdoorRadiativeHeatTransfer with LW instead of temp - Qlw_net_extwallroof_to_outair = & - lwoutdoorRadiativeHeatTransfer & - (Awallroof, emissivity_extwallroof, Textwallroof, & - ((Qlw_dn_extwall * (Awallroof - Afootprint)) + (Qlw_dn_extroof * Afootprint)) / Awallroof) - Qlw_net_extwindow_to_outair = lwoutdoorRadiativeHeatTransfer(Awindow, emissivity_extwindow, Textwindow, Qlw_dn_extwall) - Qconv_extwallroof_to_outair = outdoorConvectionHeatTransfer(conv_coeff_extwallroof, Awallroof, Textwallroof, Tair_out) - Qconv_extwindow_to_outair = outdoorConvectionHeatTransfer(conv_coeff_extwindow, Awindow, Textwindow, Tair_out) + q_heating_timestep = heating(Ts(1), Tair_ind, heating_efficiency_air, maxheatingpower_air) + q_cooling_timestep = cooling(Ts(2), Tair_ind, coeff_performance_cooling, maxcoolingpower_air) + + !internalOccupancyGains(occupants, metabolic_rate, ratio_metabolic_latent_sensible, Qmetabolic_sensible, Qmetabolic_latent) + Qm = internalOccupancyGains(occupants, metabolic_rate, ratio_metabolic_latent_sensible) +! + Qmetabolic_sensible = Qm(1) + Qmetabolic_latent = Qm(2) +! + Qloss_efficiency_heating_air = & + additionalSystemHeatingEnergy(q_heating_timestep, heating_efficiency_air) + Qcond_wallroof = & + wallConduction(conductivity_wallroof, Awallroof, Tintwallroof, Textwallroof, thickness_wallroof) + Qcond_window = & + windowConduction(conductivity_window, Awindow, Tintwindow, Textwindow, thickness_window) + Qcond_groundfloor = & + wallConduction(conductivity_groundfloor, Afootprint, Tintgroundfloor, Textgroundfloor, thickness_groundfloor) + Qcond_ground = & + wallConduction(conductivity_ground, Afootprint, Textgroundfloor, Tground_deep, depth_ground) + ! ; // conduction from ground floor to external ground - depth of the ground can be set (depth_ground) and ground temperature should be determined accordingly.. + ! //add the longwave radiation between sky and external envelope; Assume surrounding surface and ground surface temperature is the same (e.g. assumed outdoor air temperature as in EnergyPlus) + ! // Qlw_net_extwallroof_to_outair = outdoorRadiativeHeatTransfer(BVF_extwall, Awallroof, emissivity_extwallroof, Textwallroof, Tsurf)+outdoorRadiativeHeatTransfer(SVF_extwall, Awallroof, emissivity_extwallroof, Textwallroof, Tsky); + ! // Qlw_net_extwindow_to_outair = outdoorRadiativeHeatTransfer(BVF_extwall, Awindow, emissivity_extwindow, Textwindow, Tsurf)+outdoorRadiativeHeatTransfer(SVF_extwall, Awindow, emissivity_extwindow, Textwindow, Tsky); + ! // call outdoorRadiativeHeatTransfer with LW instead of temp + Qlw_net_extwallroof_to_outair = & + lwoutdoorRadiativeHeatTransfer & + (Awallroof, emissivity_extwallroof, Textwallroof, & + ((Qlw_dn_extwall*(Awallroof - Afootprint)) + (Qlw_dn_extroof*Afootprint))/Awallroof) + Qlw_net_extwindow_to_outair = lwoutdoorRadiativeHeatTransfer(Awindow, emissivity_extwindow, Textwindow, Qlw_dn_extwall) + Qconv_extwallroof_to_outair = outdoorConvectionHeatTransfer(conv_coeff_extwallroof, Awallroof, Textwallroof, Tair_out) + Qconv_extwindow_to_outair = outdoorConvectionHeatTransfer(conv_coeff_extwindow, Awindow, Textwindow, Tair_out) ! ! /**************************/ ! /*** DOMESTIC HOT WATER ***/ - ifVwater_tank: if (Vwater_tank > 0.0 ) then - ! // convective heat flux to internal wall of hot water tank - Qconv_water_to_inttankwall = & - indoorConvectionHeatTransfer & - (conv_coeff_intwall_tank, Asurf_tank, Tintwall_tank, Twater_tank) + ifVwater_tank: IF (Vwater_tank > 0.0) THEN + ! // convective heat flux to internal wall of hot water tank + Qconv_water_to_inttankwall = & + indoorConvectionHeatTransfer & + (conv_coeff_intwall_tank, Asurf_tank, Tintwall_tank, Twater_tank) - ! // heat flux by conduction through wall of hot water tank - Qcond_tankwall = & - wallConduction & - (conductivity_wall_tank, Asurf_tank, Tintwall_tank, Textwall_tank, thickness_tankwall) + ! // heat flux by conduction through wall of hot water tank + Qcond_tankwall = & + wallConduction & + (conductivity_wall_tank, Asurf_tank, Tintwall_tank, Textwall_tank, thickness_tankwall) - ! // convective heat flux for external wall of hot water tank - Qconv_exttankwall_to_indair = & - outdoorConvectionHeatTransfer & - (conv_coeff_extwall_tank, Asurf_tank, Textwall_tank, Tair_ind) - ! // radiative heat flux for external wall of hot water tank - ! //TODO: Should expand to consider windows and floor as well. + ! // convective heat flux for external wall of hot water tank + Qconv_exttankwall_to_indair = & + outdoorConvectionHeatTransfer & + (conv_coeff_extwall_tank, Asurf_tank, Textwall_tank, Tair_ind) + ! // radiative heat flux for external wall of hot water tank + ! //TODO: Should expand to consider windows and floor as well. - Qlw_net_exttankwall_to_intwallroof = & - outdoorRadiativeHeatTransfer & - (BVF_tank, Asurf_tank, emissivity_extwall_tank, Textwall_tank, Tintwallroof) ! // to building walls - Qlw_net_exttankwall_to_indoormass = & - outdoorRadiativeHeatTransfer & - (MVF_tank, Asurf_tank, emissivity_extwall_tank, Textwall_tank, Tindoormass) ! // to internal mass + Qlw_net_exttankwall_to_intwallroof = & + outdoorRadiativeHeatTransfer & + (BVF_tank, Asurf_tank, emissivity_extwall_tank, Textwall_tank, Tintwallroof) ! // to building walls + Qlw_net_exttankwall_to_indoormass = & + outdoorRadiativeHeatTransfer & + (MVF_tank, Asurf_tank, emissivity_extwall_tank, Textwall_tank, Tindoormass) ! // to internal mass - ! // heat input into water of hot water tank - qhwt_timestep = & - heating & - (setTwater_tank, Twater_tank, heating_efficiency_water, maxheatingpower_water) + ! // heat input into water of hot water tank + qhwt_timestep = & + heating & + (setTwater_tank, Twater_tank, heating_efficiency_water, maxheatingpower_water) - ! //Heat release from hot water heating due to efficiency losses - Qloss_efficiency_heating_water = & - additionalSystemHeatingEnergy(qhwt_timestep, heating_efficiency_water) + ! //Heat release from hot water heating due to efficiency losses + Qloss_efficiency_heating_water = & + additionalSystemHeatingEnergy(qhwt_timestep, heating_efficiency_water) ! - endif ifVwater_tank + END IF ifVwater_tank ! ! ! ! - ifVwater_vessel: if (Vwater_vessel > 0.0 ) then + ifVwater_vessel: IF (Vwater_vessel > 0.0) THEN ! - ! // heat flux to internal wall of vessels holding DHW in use in building - Qconv_water_to_intvesselwall = & - indoorConvectionHeatTransfer & - (conv_coeff_intwall_vessel, Awater_vessel, Tintwall_vessel, Twater_vessel) + ! // heat flux to internal wall of vessels holding DHW in use in building + Qconv_water_to_intvesselwall = & + indoorConvectionHeatTransfer & + (conv_coeff_intwall_vessel, Awater_vessel, Tintwall_vessel, Twater_vessel) - ! // heat flux by conduction through wall of vessels holding DHW in use in building - Qcond_vesselwall = & - wallConduction & - (conductivity_wall_vessel, Awater_vessel, Tintwall_vessel, Textwall_vessel, thickness_wall_vessel) + ! // heat flux by conduction through wall of vessels holding DHW in use in building + Qcond_vesselwall = & + wallConduction & + (conductivity_wall_vessel, Awater_vessel, Tintwall_vessel, Textwall_vessel, thickness_wall_vessel) - ! // convective heat flux to external wall of vessels holding DHW in use in building - Qconv_extvesselwall_to_indair = & - outdoorConvectionHeatTransfer & - (conv_coeff_extwall_vessel, Awater_vessel, Textwall_vessel, Tair_ind) - ! // radiative heat flux to external wall of vessels holding DHW in use in building - ! // TODO: Should expand to consider windows and floor as well. - Qlw_net_extvesselwall_to_wallroof = & - outdoorRadiativeHeatTransfer & - (BVF_tank, Awater_vessel, emissivity_extwall_vessel, Textwall_vessel, Tintwallroof) - Qlw_net_extvesselwall_to_indoormass = & - outdoorRadiativeHeatTransfer & - (MVF_tank, Awater_vessel, emissivity_extwall_vessel, Textwall_vessel, Tindoormass) + ! // convective heat flux to external wall of vessels holding DHW in use in building + Qconv_extvesselwall_to_indair = & + outdoorConvectionHeatTransfer & + (conv_coeff_extwall_vessel, Awater_vessel, Textwall_vessel, Tair_ind) + ! // radiative heat flux to external wall of vessels holding DHW in use in building + ! // TODO: Should expand to consider windows and floor as well. + Qlw_net_extvesselwall_to_wallroof = & + outdoorRadiativeHeatTransfer & + (BVF_tank, Awater_vessel, emissivity_extwall_vessel, Textwall_vessel, Tintwallroof) + Qlw_net_extvesselwall_to_indoormass = & + outdoorRadiativeHeatTransfer & + (MVF_tank, Awater_vessel, emissivity_extwall_vessel, Textwall_vessel, Tindoormass) - ! //Heat transfer due to use and replacement of water - ! //qhwt_v = waterUseHeatTransfer(density_water, cp_water, flowrate_water_supply, Tincomingwater_tank, Twater_tank) + ! //Heat transfer due to use and replacement of water + ! //qhwt_v = waterUseHeatTransfer(density_water, cp_water, flowrate_water_supply, Tincomingwater_tank, Twater_tank) ! - elseif ( Vwater_vessel == minVwater_vessel .and. & - flowrate_water_supply < flowrate_water_drain ) then + ELSEIF (Vwater_vessel == minVwater_vessel .AND. & + flowrate_water_supply < flowrate_water_drain) THEN ! - ! //Set Drain Flow rate to be same as usage flow rate to avoid hot water storage going below the set minimum threshold (minVwater_vessel) - flowrate_water_drain = flowrate_water_supply + ! //Set Drain Flow rate to be same as usage flow rate to avoid hot water storage going below the set minimum threshold (minVwater_vessel) + flowrate_water_drain = flowrate_water_supply ! - endif ifVwater_vessel + END IF ifVwater_vessel ! ! ! @@ -1786,36 +1786,36 @@ SUBROUTINE tstep( & ! /************************************************************/ ! // Need to calculate the temperature change in the hot water tank due to energy flux - Qtotal_net_water_tank = qhwt_timestep - Qconv_water_to_inttankwall + Qtotal_net_water_tank = qhwt_timestep - Qconv_water_to_inttankwall ! /************************************************************/ ! ! /************************************************************/ ! // Need to calculate the temperature change in the hot water tank internal walls to energy flux - Qtotal_net_intwall_tank = Qconv_water_to_inttankwall - Qcond_tankwall + Qtotal_net_intwall_tank = Qconv_water_to_inttankwall - Qcond_tankwall ! /************************************************************/ ! ! /************************************************************/ ! // Need to calculate the temperature change in the hot water tank external walls to energy flux - Qtotal_net_extwall_tank = & - Qcond_tankwall - Qconv_exttankwall_to_indair - & - Qlw_net_exttankwall_to_intwallroof - Qlw_net_exttankwall_to_indoormass + Qtotal_net_extwall_tank = & + Qcond_tankwall - Qconv_exttankwall_to_indair - & + Qlw_net_exttankwall_to_intwallroof - Qlw_net_exttankwall_to_indoormass ! /************************************************************/ ! ! /************************************************************/ ! // Need to calculate the temperature change in the DHW vessels (i.e. in use hot water) due to energy flux - Qtotal_net_water_vessel = - Qconv_water_to_intvesselwall + Qtotal_net_water_vessel = -Qconv_water_to_intvesselwall ! /************************************************************/ ! ! /************************************************************/ ! // Need to calculate the temperature change in tthe DHW vessels (i.e. in use hot water) internal walls to energy flux - Qtotal_net_intwall_vessel = Qconv_water_to_intvesselwall - Qcond_vesselwall + Qtotal_net_intwall_vessel = Qconv_water_to_intvesselwall - Qcond_vesselwall ! /************************************************************/ ! /************************************************************/ ! // Need to calculate the temperature change in the hot water tank external walls to energy flux - Qtotal_net_extwall_vessel = & - Qcond_vesselwall - Qconv_extvesselwall_to_indair - & - Qlw_net_extvesselwall_to_wallroof - Qlw_net_extvesselwall_to_indoormass + Qtotal_net_extwall_vessel = & + Qcond_vesselwall - Qconv_extvesselwall_to_indair - & + Qlw_net_extvesselwall_to_wallroof - Qlw_net_extvesselwall_to_indoormass ! /************************************************************/ ! /*** END DOMESTIC HOT WATER ***/ @@ -1823,23 +1823,23 @@ SUBROUTINE tstep( & ! ! /************************************************************/ ! // Need to calculate the temperature change in the internal mass object due to energy flux, given its heat capacity - Qtotal_net_indoormass = & - Qsw_transmitted_window + Qconv_indair_to_indoormass + & - Qlw_net_intwallroof_to_allotherindoorsurfaces + & - Qlw_net_exttankwall_to_indoormass + Qlw_net_extvesselwall_to_indoormass + Qtotal_net_indoormass = & + Qsw_transmitted_window + Qconv_indair_to_indoormass + & + Qlw_net_intwallroof_to_allotherindoorsurfaces + & + Qlw_net_exttankwall_to_indoormass + Qlw_net_extvesselwall_to_indoormass ! ! /************************************************************/ ! ! /************************************************************/ ! // Need to calculate the temperature change in the internal volume of air due to energy flux to/from internal mass object AND to/from internal walls. ! // and to/from hot water tanks and to/from the DHW held in use in the building. - Qtotal_net_indair = & - Q_appliance + Qmetabolic_sensible + Q_ventilation + & - q_heating_timestep - q_cooling_timestep - Qconv_indair_to_indoormass - & - Qlw_net_intwallroof_to_allotherindoorsurfaces - Qconv_indair_to_intwallroof - & - Qconv_indair_to_intwindow - Qconv_indair_to_intgroundfloor + & - Qloss_efficiency_heating_air + Qconv_exttankwall_to_indair + & - Qconv_extvesselwall_to_indair + Qloss_efficiency_heating_water + Qtotal_net_indair = & + Q_appliance + Qmetabolic_sensible + Q_ventilation + & + q_heating_timestep - q_cooling_timestep - Qconv_indair_to_indoormass - & + Qlw_net_intwallroof_to_allotherindoorsurfaces - Qconv_indair_to_intwallroof - & + Qconv_indair_to_intwindow - Qconv_indair_to_intgroundfloor + & + Qloss_efficiency_heating_air + Qconv_exttankwall_to_indair + & + Qconv_extvesselwall_to_indair + Qloss_efficiency_heating_water ! ! // TODO: Have not yet considered the latent heat component from occupancy gains!! ! @@ -1847,62 +1847,62 @@ SUBROUTINE tstep( & ! ! /************************************************************/ ! // Need to calculate the temperature change of the internal wall surface due to internal heat exchanges and conduction through wall. Need an internal wall thermal mass also. - Qtotal_net_intwallroof = & - Qconv_indair_to_intwallroof - Qcond_wallroof - & - Qlw_net_intwallroof_to_allotherindoorsurfaces + & - Qlw_net_exttankwall_to_intwallroof + Qlw_net_extvesselwall_to_wallroof + Qtotal_net_intwallroof = & + Qconv_indair_to_intwallroof - Qcond_wallroof - & + Qlw_net_intwallroof_to_allotherindoorsurfaces + & + Qlw_net_exttankwall_to_intwallroof + Qlw_net_extvesselwall_to_wallroof ! ! /************************************************************/ ! ! /************************************************************/ ! // Need to calculate the temperature change of the external wall surface due to the conduction through the wall as well as wall surface exchanges with outside environment. Need an external wall thermal mass also. - Qtotal_net_extwallroof = & - Qcond_wallroof + Qsw_absorbed_wallroof - & - Qlw_net_extwallroof_to_outair - Qconv_extwallroof_to_outair + Qtotal_net_extwallroof = & + Qcond_wallroof + Qsw_absorbed_wallroof - & + Qlw_net_extwallroof_to_outair - Qconv_extwallroof_to_outair ! /************************************************************/ ! ! /************************************************************/ ! // Need to calculate the temperature change of the internal window surface due to internal heat exchanges and conduction through wall. Need an internal window thermal mass also. - Qtotal_net_intwindow = & - Qconv_indair_to_intwindow - Qcond_window - & - Qlw_net_intwindow_to_allotherindoorsurfaces + Qtotal_net_intwindow = & + Qconv_indair_to_intwindow - Qcond_window - & + Qlw_net_intwindow_to_allotherindoorsurfaces ! /************************************************************/ ! ! /************************************************************/ ! // Need to calculate the temperature change of the external window surface due to the conduction through the window as well as window surface exchanges with outside environment. Need an external window thermal mass also. - Qtotal_net_extwindow = & - Qcond_window + Qsw_absorbed_window - & - Qlw_net_extwindow_to_outair - Qconv_extwindow_to_outair + Qtotal_net_extwindow = & + Qcond_window + Qsw_absorbed_window - & + Qlw_net_extwindow_to_outair - Qconv_extwindow_to_outair ! ! /************************************************************/ ! ! /************************************************************/ ! // Need to calculate the temperature change of the internal ground floor surface due to internal heat exchanges and conduction through floor. Need an internal floor thermal mass also. - Qtotal_net_intgroundfloor = & - Qconv_indair_to_intgroundfloor - Qcond_groundfloor - & - Qlw_net_intgroundfloor_to_allotherindoorsurfaces + Qtotal_net_intgroundfloor = & + Qconv_indair_to_intgroundfloor - Qcond_groundfloor - & + Qlw_net_intgroundfloor_to_allotherindoorsurfaces ! /************************************************************/ ! ! /************************************************************/ ! // Need to calculate the temperature change of the external ground floor surface due to the conduction through the floor as well as surface exchanges with outside ground environment. Need an external wall thermal mass also. - Qtotal_net_extgroundfloor = Qcond_groundfloor - Qcond_ground + Qtotal_net_extgroundfloor = Qcond_groundfloor - Qcond_ground ! // Accumulate the heat storage flux by wall/roof, window, floor, internal mass and air - QS_total = & - Qtotal_net_extwallroof + Qtotal_net_intwallroof + & - Qtotal_net_extwindow + Qtotal_net_intwindow + & - Qtotal_net_extgroundfloor + Qtotal_net_intgroundfloor + & - Qtotal_net_indoormass + Qtotal_net_indair -! - QS_fabric = & - Qtotal_net_extwallroof + Qtotal_net_intwallroof + Qtotal_net_extwindow + & - Qtotal_net_intwindow + Qtotal_net_extgroundfloor + Qtotal_net_intgroundfloor + & - Qtotal_net_indoormass -! - QS_air = Qtotal_net_indair + QS_total = & + Qtotal_net_extwallroof + Qtotal_net_intwallroof + & + Qtotal_net_extwindow + Qtotal_net_intwindow + & + Qtotal_net_extgroundfloor + Qtotal_net_intgroundfloor + & + Qtotal_net_indoormass + Qtotal_net_indair +! + QS_fabric = & + Qtotal_net_extwallroof + Qtotal_net_intwallroof + Qtotal_net_extwindow + & + Qtotal_net_intwindow + Qtotal_net_extgroundfloor + Qtotal_net_intgroundfloor + & + Qtotal_net_indoormass +! + QS_air = Qtotal_net_indair ! /************************************************************/ ! ! /************************************************************/ @@ -1914,7 +1914,7 @@ SUBROUTINE tstep( & ! //if (Qconv_extwindow_to_outair < 0) Qconv_extwindow_to_outair=0; ! //if (Q_ventilation > 0) Q_ventilation=0; ! - Qf_ground_timestep = Qcond_ground * resolution + Qf_ground_timestep = Qcond_ground*resolution ! ! /************************************************************/ ! @@ -1922,86 +1922,86 @@ SUBROUTINE tstep( & ! // STS - 31/0718: Adds time resolution heat flux to all building Energy Exchanges ! // for building model timestep. Allows for calculating QfB and ! // Qs outside of building energy model. - Qsw_transmitted_window_tstepTotal = & - Qsw_transmitted_window_tstepTotal + Qsw_transmitted_window * resolution + Qsw_transmitted_window_tstepTotal = & + Qsw_transmitted_window_tstepTotal + Qsw_transmitted_window*resolution ! - Qsw_absorbed_window_tstepTotal = & - Qsw_absorbed_window_tstepTotal + Qsw_absorbed_window * resolution + Qsw_absorbed_window_tstepTotal = & + Qsw_absorbed_window_tstepTotal + Qsw_absorbed_window*resolution ! - Qsw_absorbed_wallroof_tstepTotal = & - Qsw_absorbed_wallroof_tstepTotal + Qsw_absorbed_wallroof * resolution + Qsw_absorbed_wallroof_tstepTotal = & + Qsw_absorbed_wallroof_tstepTotal + Qsw_absorbed_wallroof*resolution ! - Qconv_indair_to_indoormass_tstepTotal = & - Qconv_indair_to_indoormass_tstepTotal + Qconv_indair_to_indoormass * resolution + Qconv_indair_to_indoormass_tstepTotal = & + Qconv_indair_to_indoormass_tstepTotal + Qconv_indair_to_indoormass*resolution ! - Qlw_net_intwallroof_to_allotherindoorsurfaces_tstepTotal = & - Qlw_net_intwallroof_to_allotherindoorsurfaces_tstepTotal + & - Qlw_net_intwallroof_to_allotherindoorsurfaces * resolution + Qlw_net_intwallroof_to_allotherindoorsurfaces_tstepTotal = & + Qlw_net_intwallroof_to_allotherindoorsurfaces_tstepTotal + & + Qlw_net_intwallroof_to_allotherindoorsurfaces*resolution ! - Qlw_net_intwindow_to_allotherindoorsurfaces_tstepTotal = & - Qlw_net_intwindow_to_allotherindoorsurfaces_tstepTotal + & - Qlw_net_intwindow_to_allotherindoorsurfaces * resolution + Qlw_net_intwindow_to_allotherindoorsurfaces_tstepTotal = & + Qlw_net_intwindow_to_allotherindoorsurfaces_tstepTotal + & + Qlw_net_intwindow_to_allotherindoorsurfaces*resolution ! - Qlw_net_intgroundfloor_to_allotherindoorsurfaces_tstepTotal = & - Qlw_net_intgroundfloor_to_allotherindoorsurfaces_tstepTotal + & - Qlw_net_intgroundfloor_to_allotherindoorsurfaces * resolution + Qlw_net_intgroundfloor_to_allotherindoorsurfaces_tstepTotal = & + Qlw_net_intgroundfloor_to_allotherindoorsurfaces_tstepTotal + & + Qlw_net_intgroundfloor_to_allotherindoorsurfaces*resolution ! - Q_appliance_tstepTotal = Q_appliance_tstepTotal + Q_appliance * resolution + Q_appliance_tstepTotal = Q_appliance_tstepTotal + Q_appliance*resolution ! - Q_ventilation_tstepTotal = Q_ventilation_tstepTotal + Q_ventilation * resolution + Q_ventilation_tstepTotal = Q_ventilation_tstepTotal + Q_ventilation*resolution ! - Qconv_indair_to_intwallroof_tstepTotal = & - Qconv_indair_to_intwallroof_tstepTotal + & - Qconv_indair_to_intwallroof * resolution + Qconv_indair_to_intwallroof_tstepTotal = & + Qconv_indair_to_intwallroof_tstepTotal + & + Qconv_indair_to_intwallroof*resolution ! - Qconv_indair_to_intwindow_tstepTotal = & - Qconv_indair_to_intwindow_tstepTotal + Qconv_indair_to_intwindow * resolution + Qconv_indair_to_intwindow_tstepTotal = & + Qconv_indair_to_intwindow_tstepTotal + Qconv_indair_to_intwindow*resolution ! - Qconv_indair_to_intgroundfloor_tstepTotal = & - Qconv_indair_to_intgroundfloor_tstepTotal + Qconv_indair_to_intgroundfloor * resolution + Qconv_indair_to_intgroundfloor_tstepTotal = & + Qconv_indair_to_intgroundfloor_tstepTotal + Qconv_indair_to_intgroundfloor*resolution - Qloss_efficiency_heating_air_tstepTotal = & - Qloss_efficiency_heating_air_tstepTotal + Qloss_efficiency_heating_air * resolution + Qloss_efficiency_heating_air_tstepTotal = & + Qloss_efficiency_heating_air_tstepTotal + Qloss_efficiency_heating_air*resolution - Qcond_wallroof_tstepTotal = Qcond_wallroof_tstepTotal + Qcond_wallroof * resolution + Qcond_wallroof_tstepTotal = Qcond_wallroof_tstepTotal + Qcond_wallroof*resolution - Qcond_window_tstepTotal = Qcond_window_tstepTotal + Qcond_window * resolution + Qcond_window_tstepTotal = Qcond_window_tstepTotal + Qcond_window*resolution - Qcond_groundfloor_tstepTotal = Qcond_groundfloor_tstepTotal + Qcond_groundfloor * resolution + Qcond_groundfloor_tstepTotal = Qcond_groundfloor_tstepTotal + Qcond_groundfloor*resolution - Qcond_ground_tstepTotal = Qcond_ground_tstepTotal + Qcond_ground * resolution + Qcond_ground_tstepTotal = Qcond_ground_tstepTotal + Qcond_ground*resolution - Qlw_net_extwallroof_to_outair_tstepTotal = & - Qlw_net_extwallroof_to_outair_tstepTotal + Qlw_net_extwallroof_to_outair * resolution + Qlw_net_extwallroof_to_outair_tstepTotal = & + Qlw_net_extwallroof_to_outair_tstepTotal + Qlw_net_extwallroof_to_outair*resolution - Qlw_net_extwindow_to_outair_tstepTotal = & - Qlw_net_extwindow_to_outair_tstepTotal + Qlw_net_extwindow_to_outair * resolution + Qlw_net_extwindow_to_outair_tstepTotal = & + Qlw_net_extwindow_to_outair_tstepTotal + Qlw_net_extwindow_to_outair*resolution - Qconv_extwallroof_to_outair_tstepTotal = & - Qconv_extwallroof_to_outair_tstepTotal + Qconv_extwallroof_to_outair * resolution + Qconv_extwallroof_to_outair_tstepTotal = & + Qconv_extwallroof_to_outair_tstepTotal + Qconv_extwallroof_to_outair*resolution - Qconv_extwindow_to_outair_tstepTotal = & - Qconv_extwindow_to_outair_tstepTotal + Qconv_extwindow_to_outair * resolution + Qconv_extwindow_to_outair_tstepTotal = & + Qconv_extwindow_to_outair_tstepTotal + Qconv_extwindow_to_outair*resolution - q_cooling_timestepTotal = & - q_cooling_timestepTotal + & - (q_cooling_timestep + additionalSystemCoolingEnergy(q_cooling_timestep, coeff_performance_cooling)) * resolution + q_cooling_timestepTotal = & + q_cooling_timestepTotal + & + (q_cooling_timestep + additionalSystemCoolingEnergy(q_cooling_timestep, coeff_performance_cooling))*resolution - qsensible_timestepTotal = qsensible_timestepTotal + Qmetabolic_sensible*resolution + qsensible_timestepTotal = qsensible_timestepTotal + Qmetabolic_sensible*resolution - qlatent_timestepTotal = qlatent_timestepTotal + Qmetabolic_latent*resolution + qlatent_timestepTotal = qlatent_timestepTotal + Qmetabolic_latent*resolution ! /************************************************************/ ! //Adds timestep of heat storage flux - QS_tstepTotal = QS_tstepTotal + QS_total * resolution - QS_fabric_tstepTotal = QS_fabric_tstepTotal + QS_fabric*resolution - QS_air_tstepTotal = QS_air_tstepTotal + QS_air*resolution + QS_tstepTotal = QS_tstepTotal + QS_total*resolution + QS_fabric_tstepTotal = QS_fabric_tstepTotal + QS_fabric*resolution + QS_air_tstepTotal = QS_air_tstepTotal + QS_air*resolution ! /************************************************************/ ! // Adds timestep heating/cooling to overall heating/cooling for building model - Qtotal_heating = Qtotal_heating + (q_heating_timestep * resolution) - Qtotal_cooling = Qtotal_cooling + (q_cooling_timestep * resolution) + Qtotal_heating = Qtotal_heating + (q_heating_timestep*resolution) + Qtotal_cooling = Qtotal_cooling + (q_cooling_timestep*resolution) ! ! /***** DOMESTIC HOT WATER HEATING *****/ - Qtotal_water_tank = Qtotal_water_tank + (qhwt_timestep * resolution) + Qtotal_water_tank = Qtotal_water_tank + (qhwt_timestep*resolution) ! /**************************************/ ! ! /************************************************************/ @@ -2016,69 +2016,69 @@ SUBROUTINE tstep( & ! /**** DOMESTIC HOT WATER ****/ ! ! // temperature (K) of DHW in use in Building due to heat transfer to building - if ( Vwater_vessel > 0.0 ) then - dTwater_vessel = & - (Qtotal_net_water_vessel / (density_water * cp_water) * Vwater_vessel) * resolution + IF (Vwater_vessel > 0.0) THEN + dTwater_vessel = & + (Qtotal_net_water_vessel/(density_water*cp_water)*Vwater_vessel)*resolution - Twater_vessel = Twater_vessel + dTwater_vessel - endif + Twater_vessel = Twater_vessel + dTwater_vessel + END IF ! ! //DHW "vessel" Internal Wall surface temperature (K) - if (Vwall_vessel > 0.0) then - dTintwall_vessel = & - (Qtotal_net_intwall_vessel/((density_wall_vessel * cp_wall_vessel) * (Vwall_vessel / 2))) * resolution - Tintwall_vessel = Tintwall_vessel + dTintwall_vessel + IF (Vwall_vessel > 0.0) THEN + dTintwall_vessel = & + (Qtotal_net_intwall_vessel/((density_wall_vessel*cp_wall_vessel)*(Vwall_vessel/2)))*resolution + Tintwall_vessel = Tintwall_vessel + dTintwall_vessel ! //DHW "vessel" External Wall surface temperature (K) - dTextwall_vessel = & - (Qtotal_net_extwall_vessel/((density_wall_vessel * cp_wall_vessel) * (Vwall_vessel / 2))) * resolution - Textwall_vessel = Textwall_vessel + dTextwall_vessel - endif + dTextwall_vessel = & + (Qtotal_net_extwall_vessel/((density_wall_vessel*cp_wall_vessel)*(Vwall_vessel/2)))*resolution + Textwall_vessel = Textwall_vessel + dTextwall_vessel + END IF ! ! //Heat transfer to sewer/drain based on water in building going to drain. - Qloss_drain = & - waterUseEnergyLossToDrains(density_water, cp_water, flowrate_water_drain, Twater_vessel, resolution) + Qloss_drain = & + waterUseEnergyLossToDrains(density_water, cp_water, flowrate_water_drain, Twater_vessel, resolution) ! ! //Need to recalculate the volume of DHW in use in building before calculating the temperature (K) of DHW in use. - dVwater_vessel = (flowrate_water_supply - flowrate_water_drain) * resolution - Vwater_vessel = Vwater_vessel + dVwater_vessel + dVwater_vessel = (flowrate_water_supply - flowrate_water_drain)*resolution + Vwater_vessel = Vwater_vessel + dVwater_vessel ! ! //Avoid going below a given minimum volume - if (Vwater_vessel < minVwater_vessel) then - Vwater_vessel = minVwater_vessel - endif + IF (Vwater_vessel < minVwater_vessel) THEN + Vwater_vessel = minVwater_vessel + END IF ! ! //Need to recalculate the temperature after mixing of water - Twater_vessel = & - (((flowrate_water_supply * resolution) * Twater_tank) + & - ((Vwater_vessel - (flowrate_water_supply * resolution)) * Twater_vessel)) / Vwater_vessel + Twater_vessel = & + (((flowrate_water_supply*resolution)*Twater_tank) + & + ((Vwater_vessel - (flowrate_water_supply*resolution))*Twater_vessel))/Vwater_vessel ! ! /**********/ ! //Recalculate DHW vessel surface area and wall volume based on new volume and maintaining the previous - if (Vwater_vessel > 0.0)then ! //Checks that Volume isn't zero - Awater_vessel = Vwater_vessel / VARatio_water_vessel - else ! // if Volume is zero it makes the area also zero - Awater_vessel = 0.0 - endif - Vwall_vessel = Awater_vessel * thickness_wall_vessel + IF (Vwater_vessel > 0.0) THEN ! //Checks that Volume isn't zero + Awater_vessel = Vwater_vessel/VARatio_water_vessel + ELSE ! // if Volume is zero it makes the area also zero + Awater_vessel = 0.0 + END IF + Vwall_vessel = Awater_vessel*thickness_wall_vessel ! /**********/ ! ! //Hot Water Tank water temperature (K) - if (Vwater_tank > 0.0) then - dTwater_tank = (Qtotal_net_water_tank/((density_water * cp_water) * Vwater_tank)) * resolution !//(Q_hwt/((density_water*cp_water)*Vwater_tank))*resolution ! // resolution in seconds - Twater_tank = Twater_tank + dTwater_tank + IF (Vwater_tank > 0.0) THEN + dTwater_tank = (Qtotal_net_water_tank/((density_water*cp_water)*Vwater_tank))*resolution !//(Q_hwt/((density_water*cp_water)*Vwater_tank))*resolution ! // resolution in seconds + Twater_tank = Twater_tank + dTwater_tank !// write(*,*)"HWT Water Temperature: %f, dTwt: %f, Heating Q_hwt_timestep: %f \n", Twater_tank, dTwt, qhwt_timestep - endif + END IF ! ! // Hot Water Tank Internal Wall surface temperature (K) - dTintwall_tank = & - (Qtotal_net_intwall_tank/((density_wall_tank * cp_wall_tank) * (Vwall_tank / 2))) * resolution - Tintwall_tank = Tintwall_tank + dTintwall_tank + dTintwall_tank = & + (Qtotal_net_intwall_tank/((density_wall_tank*cp_wall_tank)*(Vwall_tank/2)))*resolution + Tintwall_tank = Tintwall_tank + dTintwall_tank ! ! // Hot Water Tank External Wall surface temperature (K) - dTextwall_tank = & - (Qtotal_net_extwall_tank/((density_wall_tank * cp_wall_tank) * (Vwall_tank / 2))) * resolution - Textwall_tank = Textwall_tank + dTextwall_tank + dTextwall_tank = & + (Qtotal_net_extwall_tank/((density_wall_tank*cp_wall_tank)*(Vwall_tank/2)))*resolution + Textwall_tank = Textwall_tank + dTextwall_tank ! ! //Need to recalculate the volume of water in hot water tank before calculating the temperature (K) after mixing with mains water ! //NOTE: Currently not implemented as the water tank volume is considered constant at all times. @@ -2086,21 +2086,21 @@ SUBROUTINE tstep( & ! //Vwater_tank = Vwater_tank + dVwt; ! ! //Need to recalculate the temperature after mixing of mains water with hot water remaining in the tank - Twater_tank = & - (((flowrate_water_supply * resolution) * Tincomingwater_tank) + & - ((Vwater_tank - (flowrate_water_supply * resolution)) * Twater_tank)) / Vwater_tank + Twater_tank = & + (((flowrate_water_supply*resolution)*Tincomingwater_tank) + & + ((Vwater_tank - (flowrate_water_supply*resolution))*Twater_tank))/Vwater_tank ! ! /** END DOMESTIC HOT WATER **/ ! /****************************/ ! ! ! // Indoor thermal mass temperature (K) - dTindoormass = (Qtotal_net_indoormass / ((density_indoormass * cp_indoormass) * Vindoormass)) * resolution ! // resolution in seconds - Tindoormass = Tindoormass + dTindoormass + dTindoormass = (Qtotal_net_indoormass/((density_indoormass*cp_indoormass)*Vindoormass))*resolution ! // resolution in seconds + Tindoormass = Tindoormass + dTindoormass ! ! // Indoor air temperature (K) - dTair_ind = (Qtotal_net_indair / ((density_air_ind * cp_air_ind) * Vair_ind)) * resolution ! // resolution in seconds - Tair_ind = Tair_ind + dTair_ind + dTair_ind = (Qtotal_net_indair/((density_air_ind*cp_air_ind)*Vair_ind))*resolution ! // resolution in seconds + Tair_ind = Tair_ind + dTair_ind ! ! // print "dTi: " + str(dTi) ! // print "Tair_ind: " + str(self.Tair_ind) @@ -2108,38 +2108,38 @@ SUBROUTINE tstep( & ! // print "q_heating_timestep: " + str(q_heating_timestep) ! ! // Internal wall surface temperature (K), use x1 to split heat capacity, impacting surface temperature change with time - dTintwallroof = & - (Qtotal_net_intwallroof / ((density_wallroof * cp_wallroof) * & - (Vwallroof * (1 - weighting_factor_heatcapacity_wallroof)))) * resolution ! // resolution in seconds - Tintwallroof = Tintwallroof + dTintwallroof + dTintwallroof = & + (Qtotal_net_intwallroof/((density_wallroof*cp_wallroof)* & + (Vwallroof*(1 - weighting_factor_heatcapacity_wallroof))))*resolution ! // resolution in seconds + Tintwallroof = Tintwallroof + dTintwallroof ! ! // print "Tintwallroof: " + str(self.Tintwallroof) ! ! // External wall surface temperature (K) - dTextwallroof = & - (Qtotal_net_extwallroof / ((density_wallroof * cp_wallroof) * & - (Vwallroof * weighting_factor_heatcapacity_wallroof))) * resolution ! // resolution in seconds - Textwallroof = Textwallroof + dTextwallroof + dTextwallroof = & + (Qtotal_net_extwallroof/((density_wallroof*cp_wallroof)* & + (Vwallroof*weighting_factor_heatcapacity_wallroof)))*resolution ! // resolution in seconds + Textwallroof = Textwallroof + dTextwallroof ! ! // Internal window surface temperature (K) - dTintwindow = (Qtotal_net_intwindow / ((density_window * cp_window) * (Vwindow / 2))) * resolution ! // resolution in seconds - Tintwindow = Tintwindow + dTintwindow + dTintwindow = (Qtotal_net_intwindow/((density_window*cp_window)*(Vwindow/2)))*resolution ! // resolution in seconds + Tintwindow = Tintwindow + dTintwindow ! ! // External window surface temperture - dTextwindow = (Qtotal_net_extwindow / ((density_window * cp_window) * (Vwindow / 2))) * resolution ! // resolution in seconds - Textwindow = Textwindow + dTextwindow + dTextwindow = (Qtotal_net_extwindow/((density_window*cp_window)*(Vwindow/2)))*resolution ! // resolution in seconds + Textwindow = Textwindow + dTextwindow ! ! // Internal ground floor surface temperature (K) - dTintgroundfloor = & - (Qtotal_net_intgroundfloor / ((density_groundfloor * cp_groundfloor) * (Vgroundfloor / 2))) * & - resolution ! // resolution in seconds - Tintgroundfloor = Tintgroundfloor + dTintgroundfloor + dTintgroundfloor = & + (Qtotal_net_intgroundfloor/((density_groundfloor*cp_groundfloor)*(Vgroundfloor/2)))* & + resolution ! // resolution in seconds + Tintgroundfloor = Tintgroundfloor + dTintgroundfloor ! ! // External ground floor surface temperature (K) - dTextgroundfloor = & - (Qtotal_net_extgroundfloor / ((density_groundfloor * cp_groundfloor) * (Vgroundfloor / 2))) * & - resolution ! // resolution in seconds - Textgroundfloor = Textgroundfloor + dTextgroundfloor + dTextgroundfloor = & + (Qtotal_net_extgroundfloor/((density_groundfloor*cp_groundfloor)*(Vgroundfloor/2)))* & + resolution ! // resolution in seconds + Textgroundfloor = Textgroundfloor + dTextgroundfloor ! /************************************************************/ END DO looptime