NREL / EnergyPlus

EnergyPlus™ is a whole building energy simulation program that engineers, architects, and researchers use to model both energy consumption and water use in buildings.
https://energyplus.net
Other
1.1k stars 387 forks source link

Output variable "Zone Interior Windows Total Transmitted Diffuse Solar Radiation Rate" (was "Zone Diff Solar from Interior Windows") may report incorrect values (or may be inconsistent with its definition). (CR #8834) #3607

Closed axelstudios closed 5 years ago

axelstudios commented 10 years ago

Possible reporting error for Zone Diff Solar from Interior Windows

Added on 2012-04-24 12:47 by @mjwitte

Description

MJW 24 Apr 2012 From user . . . On the example file attached, we have 4 zones behind a double skin zone. The problem is the smallest zone (Bloc1:Zone1) with the smallest internal window receives quite the same amount of Zone Diff Solar from Interior Windows [W] as biggest zones (BLoc1:Zone2,BLoc1:Zone3,BLoc4:Zone1).

It seems strange for windows area are very different!


Looking at zones Bloc1:Zone1 and Bloc1:Zone2

The ratio of interior window areas is 850 ft2/90ft2 = 9.4

The Ratio of ZoneDiff Solar from Interio Windows for these zones is about 1.3

Looking at "Total Shortwave Radiation Absorbed on Inside of Surface" instead, ratio is 3.6 - better but still much less than expected based on window areas.

See pictures and notes in spreadsheet

Inputs: 8834-* Weather: Chicago

TH 8/7/2012 Possible bug in SUBROUTINE ComputeDifSolExcZonesWIZWindows(NumberOfZones)

  DO SurfNum=1,TotSurfaces
    IF (.not. Surface(SurfNum)%HeatTransSurf) CYCLE
    IF (Surface(SurfNum)%ExtBoundCond <= 0) CYCLE
    IF (Surface(SurfNum)%ExtBoundCond  ==  SurfNum) CYCLE
    IF (Construct(Surface(SurfNum)%Construction)%TransDiff <= 0.0) CYCLE

    NZ=Surface(SurfNum)%Zone
    if (.not. Zone(NZ)%IntZWindow) CYCLE
    MZ=Surface(Surface(SurfNum)%ExtBoundCond)%Zone
    FractDifShortZtoZ(MZ,NZ)=FractDifShortZtoZ(MZ,NZ)+ &
                   Construct(Surface(SurfNum)%Construction)%TransDiff*VMULT(NZ)*Surface(SurfNum)%Area
    IF (VMULT(NZ) /= 0.0) RecDifShortFromZ(NZ)=.TRUE.
  END DO

correction: VMULT(NZ) should be VMULT(MZ)

Workaround

To determine total solar gains retained in a zone, use output variable "Surface Inside Face Absorbed Shortwave Radiation Rate" (was "Total Shortwave Radiation Absorbed on Inside of Surface") then sum across all surfaces in the zone.

External Ref: Ticket 5289 Last build tested: 12.04.17 V7.1.0.008

Myoldmopar commented 10 years ago

@hongtz68 This issue has been around for a long time, though there is a code fix listed right in the issue. Could you comment on whether that small change could actually be the whole fix and this could be addressed, or if it needs more work?