Skip to content

Commit

Permalink
OA Details - Various fixes
Browse files Browse the repository at this point in the history
  • Loading branch information
mjwitte committed Mar 11, 2021
1 parent 49f54ac commit 1f6cb57
Show file tree
Hide file tree
Showing 2 changed files with 25 additions and 18 deletions.
12 changes: 5 additions & 7 deletions src/EnergyPlus/OutputReportTabular.cc
Original file line number Diff line number Diff line change
Expand Up @@ -6162,30 +6162,28 @@ namespace EnergyPlus::OutputReportTabular {
state.dataSysRpts->SysPreDefRep(iSys).SysTimeVentUnoccTotal);
// Average Outdoor Air During Occupancy by Airloop
if (state.dataSysRpts->SysPreDefRep(iSys).SysTimeOccupiedTotal > 0.0) {
Real64 totTimeOccSec = state.dataSysRpts->SysPreDefRep(iSys).SysTimeOccupiedTotal * SecInHour;
PreDefTableEntry(state,
state.dataOutRptPredefined->pdchOaOccAlMechVent,
state.dataAirSystemsData->PrimaryAirSystems(iSys).Name,
state.dataSysRpts->SysPreDefRep(iSys).SysMechVentTotalOcc /
state.dataSysRpts->SysPreDefRep(iSys).SysTimeOccupiedTotal,
state.dataSysRpts->SysPreDefRep(iSys).SysMechVentTotalOcc / totTimeOccSec,
4);
PreDefTableEntry(state,
state.dataOutRptPredefined->pdchOaOccAlNatVent,
state.dataAirSystemsData->PrimaryAirSystems(iSys).Name,
state.dataSysRpts->SysPreDefRep(iSys).SysNatVentTotalOcc /
state.dataSysRpts->SysPreDefRep(iSys).SysTimeOccupiedTotal,
state.dataSysRpts->SysPreDefRep(iSys).SysNatVentTotalOcc / totTimeOccSec,
4);
PreDefTableEntry(
state,
state.dataOutRptPredefined->pdchOaOccAlTotVent,
state.dataAirSystemsData->PrimaryAirSystems(iSys).Name,
(state.dataSysRpts->SysPreDefRep(iSys).SysMechVentTotalOcc + state.dataSysRpts->SysPreDefRep(iSys).SysNatVentTotalOcc) /
state.dataSysRpts->SysPreDefRep(iSys).SysTimeOccupiedTotal,
totTimeOccSec,
4);
PreDefTableEntry(state,
state.dataOutRptPredefined->pdchOaOccAlSumDynTrgVent,
state.dataAirSystemsData->PrimaryAirSystems(iSys).Name,
state.dataSysRpts->SysPreDefRep(iSys).SysTargetVentTotalVozOcc /
state.dataSysRpts->SysPreDefRep(iSys).SysTimeOccupiedTotal,
state.dataSysRpts->SysPreDefRep(iSys).SysTargetVentTotalVozOcc / totTimeOccSec,
4);
PreDefTableEntry(state,
state.dataOutRptPredefined->pdchOaOccAlTmBelow,
Expand Down
31 changes: 20 additions & 11 deletions src/EnergyPlus/SystemReports.cc
Original file line number Diff line number Diff line change
Expand Up @@ -2037,28 +2037,36 @@ namespace EnergyPlus::SystemReports {
"Sum",
state.dataAirSystemsData->PrimaryAirSystems(SysIndex).Name);

SetupOutputVariable(state,
SetupOutputVariable(state,
"Air System Mechanical Ventilation Mass Flow Rate",
OutputProcessor::Unit::kg_s,
state.dataAirLoop->AirLoopFlow(SysIndex).OAFlow,
"HVAC",
"Average",
state.dataAirSystemsData->PrimaryAirSystems(SysIndex).Name);

SetupOutputVariable(state,
"Air System Mechanical Ventilation Flow Rate",
OutputProcessor::Unit::m3_s,
state.dataSysRpts->SysMechVentFlow(SysIndex),
"HVAC",
"Sum",
"Average",
state.dataAirSystemsData->PrimaryAirSystems(SysIndex).Name);

SetupOutputVariable(state,
"Air System Natural Ventilation Flow Rate",
OutputProcessor::Unit::m3_s,
state.dataSysRpts->SysNatVentFlow(SysIndex),
"HVAC",
"Sum",
"Average",
state.dataAirSystemsData->PrimaryAirSystems(SysIndex).Name);

SetupOutputVariable(state,
"Air System Target Voz Ventilation Flow Rate",
OutputProcessor::Unit::m3_s,
state.dataSysRpts->SysTargetVentilationFlowVoz(SysIndex),
"HVAC",
"Sum",
"Average",
state.dataAirSystemsData->PrimaryAirSystems(SysIndex).Name);

SetupOutputVariable(state,
Expand Down Expand Up @@ -4779,17 +4787,18 @@ namespace EnergyPlus::SystemReports {

// loop over air loops
for (int sysNum = 1; sysNum <= NumPrimaryAirSys; ++sysNum){
Real64 mechVentFlow = state.dataAirLoop->AirLoopFlow(sysNum).OAFlow * state.dataEnvrn->StdRhoAir;
Real64 mechVentFlow = state.dataAirLoop->AirLoopFlow(sysNum).OAFlow / state.dataEnvrn->StdRhoAir;
state.dataSysRpts->SysMechVentFlow(sysNum) = mechVentFlow;
state.dataSysRpts->SysPreDefRep(sysNum).SysMechVentTotal += mechVentFlow;
state.dataSysRpts->SysPreDefRep(sysNum).SysNatVentTotal += state.dataSysRpts->SysNatVentFlow(sysNum);;
state.dataSysRpts->SysPreDefRep(sysNum).SysMechVentTotal += mechVentFlow * TimeStepSys * DataGlobalConstants::SecInHour;
state.dataSysRpts->SysPreDefRep(sysNum).SysNatVentTotal +=
state.dataSysRpts->SysNatVentFlow(sysNum) * TimeStepSys * DataGlobalConstants::SecInHour;
// set time mechanical+natural ventilation is below, at, or above target Voz-dyn
// MJWToDo - InfilVolume should be NatVentVolume or similar after this is split in AFN
Real64 totMechNatVentVolFlowStdRho =
mechVentFlow + state.dataSysRpts->SysNatVentFlow(sysNum);

Real64 targetFlowVoz = state.dataSysRpts->SysTargetVentilationFlowVoz(sysNum);
state.dataSysRpts->SysPreDefRep(sysNum).SysTargetVentTotalVoz += targetFlowVoz;
state.dataSysRpts->SysPreDefRep(sysNum).SysTargetVentTotalVoz += targetFlowVoz * TimeStepSys * DataGlobalConstants::SecInHour;
// Allow 1% tolerance
if (totMechNatVentVolFlowStdRho < (0.99 * targetFlowVoz)) {
state.dataSysRpts->SysTimeBelowVozDyn(sysNum) = TimeStepSys;
Expand All @@ -4805,9 +4814,9 @@ namespace EnergyPlus::SystemReports {
}
if (state.dataSysRpts->SysAnyZoneOccupied(sysNum)) {
state.dataSysRpts->SysPreDefRep(sysNum).SysTimeOccupiedTotal += TimeStepSys;
state.dataSysRpts->SysPreDefRep(sysNum).SysMechVentTotalOcc += mechVentFlow;
state.dataSysRpts->SysPreDefRep(sysNum).SysNatVentTotalOcc += state.dataSysRpts->SysNatVentFlow(sysNum);
state.dataSysRpts->SysPreDefRep(sysNum).SysTargetVentTotalVozOcc += targetFlowVoz;
state.dataSysRpts->SysPreDefRep(sysNum).SysMechVentTotalOcc += mechVentFlow * TimeStepSys * DataGlobalConstants::SecInHour;
state.dataSysRpts->SysPreDefRep(sysNum).SysNatVentTotalOcc += state.dataSysRpts->SysNatVentFlow(sysNum) * TimeStepSys * DataGlobalConstants::SecInHour;
state.dataSysRpts->SysPreDefRep(sysNum).SysTargetVentTotalVozOcc += targetFlowVoz * TimeStepSys * DataGlobalConstants::SecInHour;
state.dataSysRpts->SysPreDefRep(sysNum).SysTimeBelowVozDynTotalOcc += state.dataSysRpts->SysTimeBelowVozDyn(sysNum);
state.dataSysRpts->SysPreDefRep(sysNum).SysTimeAboveVozDynTotalOcc += state.dataSysRpts->SysTimeAboveVozDyn(sysNum);
state.dataSysRpts->SysPreDefRep(sysNum).SysTimeAtVozDynTotalOcc += state.dataSysRpts->SysTimeAtVozDyn(sysNum);
Expand Down

5 comments on commit 1f6cb57

@nrel-bot-3
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

OADetailsReportPart2 (mjwitte) - x86_64-MacOS-10.15-clang-11.0.0: Tests Failed (2735 of 3061 tests passed, 241 test warnings)

Messages:\n

  • 485 tests had: AUD diffs.
  • 477 tests had: RDD diffs.
  • 326 tests had: Table big diffs.
  • 63 tests had: Table small diffs.

Failures:\n

regression Test Summary

  • Passed: 396
  • Failed: 326

Build Badge Test Badge

@nrel-bot-2c
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

OADetailsReportPart2 (mjwitte) - x86_64-Linux-Ubuntu-18.04-gcc-7.5-UnitTestsCoverage-Debug: OK (1614 of 1615 tests passed, 0 test warnings)

Failures:\n

EnergyPlusFixture Test Summary

  • Passed: 1123
  • Child aborted: 1

Build Badge Test Badge Coverage Badge

@nrel-bot-2
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

OADetailsReportPart2 (mjwitte) - x86_64-Linux-Ubuntu-18.04-gcc-7.5: Tests Failed (2775 of 3101 tests passed, 241 test warnings)

Messages:\n

  • 485 tests had: AUD diffs.
  • 477 tests had: RDD diffs.
  • 326 tests had: Table big diffs.
  • 63 tests had: Table small diffs.

Failures:\n

regression Test Summary

  • Passed: 416
  • Failed: 326

Build Badge Test Badge

@nrel-bot
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

OADetailsReportPart2 (mjwitte) - Win64-Windows-10-VisualStudio-16: OK (2310 of 2310 tests passed, 0 test warnings)

Build Badge Test Badge

@nrel-bot-2c
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

OADetailsReportPart2 (mjwitte) - x86_64-Linux-Ubuntu-18.04-gcc-7.5-IntegrationCoverage-Debug: OK (727 of 727 tests passed, 0 test warnings)

Build Badge Test Badge Coverage Badge

Please sign in to comment.