{"action":"created","comment":{"url":"https://api.github.com/repos/NREL/EnergyPlus/pulls/comments/71783919","id":71783919,"diff_hunk":"@@ -218,394 +277,722 @@ namespace FaultsManager {\n \t\tArray1D_string cAlphaFieldNames( 10 );\n \t\tArray1D_string cNumericFieldNames( 10 );\n \t\tArray1D< Real64 > rNumericArgs( 10 ); // Numeric input items for object\n+\t\tstd::string cFaultCurrentObject;\n \n-\t\tint i;\n-\t\tint j; \t//Number of fault objects of type 101-105\n-\t\tint jFoulingCoil; //Number of fault objects of type 106: fouling coil\n-\t\tint jFaultyThermostat; //Number of fault objects of type 107: faulty thermostat\n-\t\tint jFaultyHumidistat; //Number of fault objects of type 108: faulty humidistat\n-\t\tint jFaultyAirFilter; //Number of fault objects of type 109: fouled air filter\n-\t\tint jj;\n-\t\tint iFaults;\n-\t\tstd::string cFault1;\n-\n-\t\tif ( RunMeOnceFlag ) return;\n+\t\tif ( RunFaultMgrOnceFlag ) return;\n \n \t\t// check number of faults\n \t\tNumFaults = 0;\n-\t\tfor ( i = 1; i <= NumFaultTypes; ++i ) {\n-\t\t\tiFaults = GetNumObjectsFound( cFaults( i ) );\n-\t\t\tNumFaults += iFaults;\n+\t\tNumFaultyEconomizer = 0;\n+\t\tfor ( int NumFaultsTemp = 0, i = 1; i <= 10; ++i ){ //@@ i <= NumFaultTypes\n+\t\t\tNumFaultsTemp = GetNumObjectsFound( cFaults( i ) );\n+\t\t\tNumFaults += NumFaultsTemp;\n+\t\t\t\n+\t\t\tif( i <= 5 ){\n+\t\t\t\t// 1st-5th fault: economizer sensor offset\n+\t\t\t\tNumFaultyEconomizer += NumFaultsTemp;\n+\t\t\t} else if( i == 6 ) {\n+\t\t\t\t// 6th fault: Coil fouling \n+\t\t\t\tNumFouledCoil = NumFaultsTemp;\n+\t\t\t} else if( i == 7 ) {\n+\t\t\t\t// 7th fault: Faulty thermostat\n+\t\t\t\tNumFaultyThermostat = NumFaultsTemp;\n+\t\t\t} else if( i == 8 ) {\n+\t\t\t\t// 8th fault: Faulty humidistat \n+\t\t\t\tNumFaultyHumidistat = NumFaultsTemp;\n+\t\t\t} else if( i == 9 ) {\n+\t\t\t\t// 9th fault: Fouled air filter\n+\t\t\t\tNumFaultyAirFilter = NumFaultsTemp;\n+\t\t\t} else if( i == 10 ) {\n+\t\t\t\t// 10th fault: Faulty Chillers Supply Water Temperature Sensor \n+\t\t\t\tNumFaultyChillerSWTSensor = NumFaultsTemp;\n+\t\t\t} else if( i == 11 ) {\n+\t\t\t\t// 11th fault: Faulty Condenser Supply Water Temperature Sensor\n+\t\t\t\tNumFaultyCondenserSWTSensor = NumFaultsTemp; \n+\t\t\t} else if( i == 12 ) {\n+\t\t\t\t// 12th fault: Faulty Towers with Scaling\n+\t\t\t\tNumFaultyTowerScaling = NumFaultsTemp;\n+\t\t\t} else if( i == 13 ) {\n+\t\t\t\t// 13th fault: Faulty Coil Supply Air Temperature Sensor\n+\t\t\t\tNumFaultyCoilSATSensor = NumFaultsTemp;  \n+\t\t\t}\n \t\t}\n-\n-\t\t// Coil fouling is the 6th fault\n-\t\tNumFouledCoil = GetNumObjectsFound( cFaults( 6 ) );\n-\t\t// Faulty thermostat is the 7th fault\n-\t\tNumFaultyThermostat = GetNumObjectsFound( cFaults( 7 ) );\n-\t\t// Faulty humidistat is the 8th fault\n-\t\tNumFaultyHumidistat = GetNumObjectsFound( cFaults( 8 ) );\n-\t\t// Fouled air filter is the 9th fault\n-\t\tNumFaultyAirFilter = GetNumObjectsFound( cFaults( 9 ) );\n-\n+\t\n \t\tif ( NumFaults > 0 ) {\n \t\t\tAnyFaultsInModel = true;\n \t\t} else {\n \t\t\tAnyFaultsInModel = false;\n \t\t}\n \n \t\tif ( ! AnyFaultsInModel ) {\n-\t\t\tRunMeOnceFlag = true;\n+\t\t\tRunFaultMgrOnceFlag = true;\n \t\t\treturn;\n \t\t}\n \n-\t\t// read faults input\n-\t\tFaults.allocate( NumFaults );\n-\t\tFouledCoils.allocate( NumFouledCoil );\n-\t\tFaultsThermostatOffset.allocate( NumFaultyThermostat );\n-\t\tFaultsHumidistatOffset.allocate( NumFaultyHumidistat );\n-\t\tFaultsFouledAirFilters.allocate( NumFaultyAirFilter );\n-\n-\t\tj = 0;\n-\t\tjFoulingCoil = 0;\n-\t\tjFaultyThermostat = 0;\n-\t\tjFaultyHumidistat = 0;\n-\t\tjFaultyAirFilter = 0;\n-\n-\t\tfor ( i = 1; i <= NumFaultTypes; ++i ) {\n-\t\t\tcFault1 = cFaults( i ); // fault object string\n-\t\t\tiFaults = GetNumObjectsFound( cFault1 );\n-\n-\t\t\tfor ( jj = 1; jj <= iFaults; ++jj ) {\n-\t\t\t\tGetObjectItem( cFault1, jj, cAlphaArgs, NumAlphas, rNumericArgs, NumNumbers, IOStatus, lNumericFieldBlanks, lAlphaFieldBlanks, cAlphaFieldNames, cNumericFieldNames );\n+\t\t// allocate fault array\n+\t\tif( NumFaultyEconomizer > 0 ) FaultsEconomizer.allocate( NumFaultyEconomizer );\n+\t\tif( NumFouledCoil > 0 ) FouledCoils.allocate( NumFouledCoil );\n+\t\tif( NumFaultyThermostat > 0 ) FaultsThermostatOffset.allocate( NumFaultyThermostat );\n+\t\tif( NumFaultyHumidistat > 0 ) FaultsHumidistatOffset.allocate( NumFaultyHumidistat );\n+\t\tif( NumFaultyAirFilter > 0 ) FaultsFouledAirFilters.allocate( NumFaultyAirFilter );\n+\t\tif( NumFaultyChillerSWTSensor > 0 ) FaultsChillerSWTSensor.allocate( NumFaultyChillerSWTSensor );\n+\t\tif( NumFaultyCondenserSWTSensor > 0 ) FaultsCondenserSWTSensor.allocate( NumFaultyCondenserSWTSensor );\n+\t\tif( NumFaultyTowerScaling > 0 ) FaultsTowerScaling.allocate( NumFaultyTowerScaling );\n+\t\tif( NumFaultyCoilSATSensor > 0 ) FaultsCoilSATSensor.allocate( NumFaultyCoilSATSensor );\n+\n+\t\t// read faults input of Fault_type 110: Chiller SWT Sensor Offset\n+\t\tfor ( int jFault_ChillerSWT = 1; jFault_ChillerSWT <= NumFaultyChillerSWTSensor; ++jFault_ChillerSWT ) {\n+\n+\t\t\tcFaultCurrentObject = cFaults( 10 ); // fault object string\n+\t\t\tGetObjectItem( cFaultCurrentObject, jFault_ChillerSWT, cAlphaArgs, NumAlphas, rNumericArgs, NumNumbers, IOStatus, lNumericFieldBlanks, lAlphaFieldBlanks, cAlphaFieldNames, cNumericFieldNames );\n+\t\t\t\n+\t\t\tFaultsChillerSWTSensor( jFault_ChillerSWT ).FaultType = cFaultCurrentObject;\n+\t\t\tFaultsChillerSWTSensor( jFault_ChillerSWT ).FaultTypeEnum = iFault_TemperatureSensorOffset_ChillerSupplyWater;\n+\t\t\tFaultsChillerSWTSensor( jFault_ChillerSWT ).Name = cAlphaArgs( 1 );\n+\n+\t\t\t// Fault availability schedule\n+\t\t\tFaultsChillerSWTSensor( jFault_ChillerSWT ).AvaiSchedule = cAlphaArgs( 2 );\n+\t\t\tif ( lAlphaFieldBlanks( 2 ) ) {\n+\t\t\t\tFaultsChillerSWTSensor( jFault_ChillerSWT ).AvaiSchedPtr = -1; // returns schedule value of 1\n+\t\t\t} else {\n+\t\t\t\tFaultsChillerSWTSensor( jFault_ChillerSWT ).AvaiSchedPtr = GetScheduleIndex( cAlphaArgs( 2 ) );\n+\t\t\t\tif ( FaultsChillerSWTSensor( jFault_ChillerSWT ).AvaiSchedPtr == 0 ) {\n+\t\t\t\t\tShowSevereError( cFaultCurrentObject + \" = \\\"\" + cAlphaArgs( 1 ) + \"\\\" invalid \" + cAlphaFieldNames( 2 ) + \" = \\\"\" + cAlphaArgs( 2 ) + \"\\\" not found.\" );\n+\t\t\t\t\tErrorsFound = true;\n+\t\t\t\t}\n+\t\t\t}\n \n-\t\t\t\tif ( SameString( cFault1, \"FaultModel:Fouling:AirFilter\" ) ) { // For Fault_type 109: Fouled Air Filters\n-\t\t\t\t\t++jFaultyAirFilter;\n+\t\t\t// Fault severity schedule\n+\t\t\tFaultsChillerSWTSensor( jFault_ChillerSWT ).SeveritySchedule = cAlphaArgs( 3 );\n+\t\t\tif ( lAlphaFieldBlanks( 3 ) ) {\n+\t\t\t\tFaultsChillerSWTSensor( jFault_ChillerSWT ).SeveritySchedPtr = -1; // returns schedule value of 1\n+\t\t\t} else {\n+\t\t\t\tFaultsChillerSWTSensor( jFault_ChillerSWT ).SeveritySchedPtr = GetScheduleIndex( cAlphaArgs( 3 ) );\n+\t\t\t\tif ( FaultsChillerSWTSensor( jFault_ChillerSWT ).SeveritySchedPtr == 0 ) {\n+\t\t\t\t\tShowSevereError( cFaultCurrentObject + \" = \\\"\" + cAlphaArgs( 1 ) + \"\\\" invalid \" + cAlphaFieldNames( 3 ) + \" = \\\"\" + cAlphaArgs( 3 ) + \"\\\" not found.\" );\n+\t\t\t\t\tErrorsFound = true;\n+\t\t\t\t}\n+\t\t\t}\n \n-\t\t\t\t\tFaultsFouledAirFilters( jFaultyAirFilter ).FaultType = cFault1;\n-\t\t\t\t\tFaultsFouledAirFilters( jFaultyAirFilter ).FaultTypeEnum = iFaultTypeEnums( i );\n-\t\t\t\t\tFaultsFouledAirFilters( jFaultyAirFilter ).Name = cAlphaArgs( 1 );\n+\t\t\t// offset - degree of fault\n+\t\t\tFaultsChillerSWTSensor( jFault_ChillerSWT ).Offset = rNumericArgs( 1 );\n+\t\t\t\n+\t\t\t// Chiller type\n+\t\t\tFaultsChillerSWTSensor( jFault_ChillerSWT ).ChillerType = cAlphaArgs( 4 );\n+\t\t\tif ( lAlphaFieldBlanks( 4 ) ) {\n+\t\t\t\tShowSevereError( cFaultCurrentObject + \" = \\\"\" + cAlphaArgs( 1 ) + \"\\\" invalid \" + cAlphaFieldNames( 4 ) + \" = \\\"\" + cAlphaArgs( 4 ) + \"\\\" blank.\" );\n+\t\t\t\tErrorsFound = true;\n+\t\t\t}\n \n-\t\t\t\t\t// Informatin of the fan associated with the fouling air filter\n-\t\t\t\t\tFaultsFouledAirFilters( jFaultyAirFilter ).FaultyAirFilterFanType = cAlphaArgs( 2 );\n-\t\t\t\t\tFaultsFouledAirFilters( jFaultyAirFilter ).FaultyAirFilterFanName = cAlphaArgs( 3 );\n+\t\t\t// Chiller name\n+\t\t\tFaultsChillerSWTSensor( jFault_ChillerSWT ).ChillerName = cAlphaArgs( 5 );\n+\t\t\tif ( lAlphaFieldBlanks( 5 ) ) {\n+\t\t\t\tShowSevereError( cFaultCurrentObject + \" = \\\"\" + cAlphaArgs( 1 ) + \"\\\" invalid \" + cAlphaFieldNames( 5 ) + \" = \\\"\" + cAlphaArgs( 5 ) + \"\\\" blank.\" );\n+\t\t\t\tErrorsFound = true;\n+\t\t\t}\n \n-\t\t\t\t\t// Check whether the specified fan exsits in the fan list\n-\t\t\t\t\tif ( FindItemInList( cAlphaArgs( 3 ), Fans::Fan, &Fans::FanEquipConditions::FanName ) != 1 ) {\n-\t\t\t\t\t\tShowSevereError( cFault1 + \" = \\\"\" + cAlphaArgs( 1 ) + \"\\\" invalid \" + cAlphaFieldNames( 3 ) + \" = \\\"\" + cAlphaArgs( 3 ) + \"\\\" not found.\" );\n-\t\t\t\t\t\tErrorsFound = true;\n+\t\t\t// Chiller check\n+\t\t\t{ auto const SELECT_CASE_VAR( FaultsChillerSWTSensor( jFault_ChillerSWT ).ChillerType );\n+\t\t\t\t\n+\t\t\t\tif( SameString( SELECT_CASE_VAR, \"Chiller:Electric\" ) ) {\n+\t\t\t\t\t// Read in chiller is not done yet\n+\t\t\t\t\tif ( PlantChillers::GetElectricInput ) {\n+\t\t\t\t\t\tPlantChillers::GetElectricChillerInput();\n+\t\t\t\t\t\tPlantChillers::GetElectricInput = false;\n \t\t\t\t\t}\n-\n-\t\t\t\t\t// Assign fault index to the fan object\n-\t\t\t\t\tfor ( int FanNum = 1; FanNum <= Fans::NumFans; ++FanNum ) {\n-\t\t\t\t\t\tif ( SameString( Fans::Fan( FanNum ).FanName, cAlphaArgs( 3 ) ) ) {\n-\t\t\t\t\t\t\tFans::Fan( FanNum ).FaultyFilterFlag = true;\n-\t\t\t\t\t\t\tFans::Fan( FanNum ).FaultyFilterIndex = jFaultyAirFilter;\n-\t\t\t\t\t\t\tbreak;\n+\t\t\t\t\t// Check whether the chiller name and chiller type match each other\n+\t\t\t\t\tif ( FindItemInList( FaultsChillerSWTSensor( jFault_ChillerSWT ).ChillerName, PlantChillers::ElectricChiller.ma( &PlantChillers::ElectricChillerSpecs::Base ) ) <= 0 ) {\n+\t\t\t\t\t\tShowSevereError( cFaultCurrentObject + \" = \\\"\" + cAlphaArgs( 1 ) + \"\\\" invalid \" + cAlphaFieldNames( 5 ) + \" = \\\"\" + cAlphaArgs( 5 ) + \"\\\" not found.\" );\n+\t\t\t\t\t\tErrorsFound = true;\n+\t\t\t\t\t} else {\n+\t\t\t\t\t// Link the chiller with the fault model\n+\t\t\t\t\t\tfor ( int ChillerNum = 1; ChillerNum <= PlantChillers::NumElectricChillers; ++ChillerNum ) {","path":"src/EnergyPlus/FaultsManager.cc","position":388,"original_position":388,"commit_id":"75e240a25a035a4bd7349d42a0111a7f7eba8782","original_commit_id":"75e240a25a035a4bd7349d42a0111a7f7eba8782","user":{"login":"mjwitte","id":4991075,"avatar_url":"https://avatars.githubusercontent.com/u/4991075?v=3","gravatar_id":"","url":"https://api.github.com/users/mjwitte","html_url":"https://github.com/mjwitte","followers_url":"https://api.github.com/users/mjwitte/followers","following_url":"https://api.github.com/users/mjwitte/following{/other_user}","gists_url":"https://api.github.com/users/mjwitte/gists{/gist_id}","starred_url":"https://api.github.com/users/mjwitte/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mjwitte/subscriptions","organizations_url":"https://api.github.com/users/mjwitte/orgs","repos_url":"https://api.github.com/users/mjwitte/repos","events_url":"https://api.github.com/users/mjwitte/events{/privacy}","received_events_url":"https://api.github.com/users/mjwitte/received_events","type":"User","site_admin":false},"body":"@rongpengzhang Why search the chiller list again here?  FindItemInList above has already searched for the matching chiller, so you could save that result as ChillerNum then use it in the if and use it directly here.  Similar for the other chillers.","created_at":"2016-07-21T20:46:07Z","updated_at":"2016-07-21T20:46:07Z","html_url":"https://github.com/NREL/EnergyPlus/pull/5705#discussion_r71783919","pull_request_url":"https://api.github.com/repos/NREL/EnergyPlus/pulls/5705","_links":{"self":{"href":"https://api.github.com/repos/NREL/EnergyPlus/pulls/comments/71783919"},"html":{"href":"https://github.com/NREL/EnergyPlus/pull/5705#discussion_r71783919"},"pull_request":{"href":"https://api.github.com/repos/NREL/EnergyPlus/pulls/5705"}}},"pull_request":{"url":"https://api.github.com/repos/NREL/EnergyPlus/pulls/5705","id":72417927,"html_url":"https://github.com/NREL/EnergyPlus/pull/5705","diff_url":"https://github.com/NREL/EnergyPlus/pull/5705.diff","patch_url":"https://github.com/NREL/EnergyPlus/pull/5705.patch","issue_url":"https://api.github.com/repos/NREL/EnergyPlus/issues/5705","number":5705,"state":"open","locked":false,"title":"Modeling HVAC Operational Faults – Chiller Supply Water Temperature Sensor Offset","user":{"login":"rongpengzhang","id":7785946,"avatar_url":"https://avatars.githubusercontent.com/u/7785946?v=3","gravatar_id":"","url":"https://api.github.com/users/rongpengzhang","html_url":"https://github.com/rongpengzhang","followers_url":"https://api.github.com/users/rongpengzhang/followers","following_url":"https://api.github.com/users/rongpengzhang/following{/other_user}","gists_url":"https://api.github.com/users/rongpengzhang/gists{/gist_id}","starred_url":"https://api.github.com/users/rongpengzhang/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rongpengzhang/subscriptions","organizations_url":"https://api.github.com/users/rongpengzhang/orgs","repos_url":"https://api.github.com/users/rongpengzhang/repos","events_url":"https://api.github.com/users/rongpengzhang/events{/privacy}","received_events_url":"https://api.github.com/users/rongpengzhang/received_events","type":"User","site_admin":false},"body":"Pull request overview\r\n---------------------\r\nThe fault modeling features aim to model the HVAC operational faults to improve the accuracy of building simulations and to support the building retrofitting. Compared with Phase I and II that focused on the faults related with air loop, Phase III will include the faults in the plant loop. Four new types of fault will be implemented in Phase III, namely:\r\n\r\n1.\tChiller Supply Water Temperature Sensor Offset\r\n2.\tCondenser Supply Water Temperature Sensor Offset\r\n3.\tCooling Tower Scaling\r\n4.\tCoil Supply Air Temperature Sensor Offset \r\n\r\nThis branch handles the 1st fault in the list. It also restructures the existing faults models by introducing  more OO features to the FaultsManager routine.\r\n\r\n### Work Checklist\r\nAdd to this list or remove from it as applicable.  This is a simple templated set of guidelines.\r\n - [x] Title of PR should be user-synopsis style (clearly understandable in a standalone changelog context)\r\n - [x] At least one of the following appropriate labels must be added to this PR to be consumed into the changelog:\r\n   - Defect: This pull request repairs a github defect issue.  The github issue should be referenced in the PR description\r\n   - Refactoring: This pull request includes code changes that don't change the functionality of the program, just perform refactoring\r\n   - NewFeature: This pull request includes code to add a new feature to EnergyPlus\r\n   - Performance: This pull request includes code changes that are directed at improving the runtime performance of EnergyPlus\r\n   - DoNoPublish: This pull request includes changes that shouldn't be included in the changelog\r\n\r\n### Review Checklist\r\nThis will not be exhaustively relevant to every PR.\r\n - [ ] Code style (parentheses padding, variable names)\r\n - [ ] Functional code review (it has to work!)\r\n - [ ] If defect, results of running current develop vs this branch should exhibit the fix\r\n - [x] CI status: all green or justified\r\n - [x] Performance: CI Linux results include performance check -- verify this\r\n - [x] Unit Test(s)\r\n - C++ checks:\r\n   - [ ] Argument types\r\n   - [ ] If any virtual classes, ensure virtual destructor included, other things\r\n - IDD changes:\r\n   - [x] Verify naming conventions and styles, memos and notes and defaults\r\n   - [ ] Open windows IDF Editor with modified IDD to check for errors\r\n   - [x] If transition, add rules to spreadsheet\r\n   - [x] If transition, add transition source\r\n   - [x] If transition, update idfs\r\n - [ ] If new idf included, locally check the err file and other outputs\r\n - [x] Documentation changes in place\r\n - [x] ExpandObjects changes??\r\n - [x] If output changes, including tabular output structure, add to output rules file for interfaces\r\n\r\nCompared with Phase I and II that focused on the faults related with air\r\nloop, Phase III will include the faults in the plant loop. Four new\r\ntypes of fault will be implemented in Phase III, namely:\r\n\r\n1. Chiller Supply Water Temperature Sensor Offset\r\n2. Condenser Supply Water Temperature Sensor Offset\r\n3. Cooling Tower Scaling\r\n4. Coil Supply Air Temperature Sensor Offset","created_at":"2016-06-02T21:09:06Z","updated_at":"2016-07-21T20:46:07Z","closed_at":null,"merged_at":null,"merge_commit_sha":"815070b50868ed13cd29cee23a4089044c8f4282","assignee":null,"assignees":[],"milestone":{"url":"https://api.github.com/repos/NREL/EnergyPlus/milestones/4","html_url":"https://github.com/NREL/EnergyPlus/milestones/EnergyPlus%208.6.0","labels_url":"https://api.github.com/repos/NREL/EnergyPlus/milestones/4/labels","id":1634827,"number":4,"title":"EnergyPlus 8.6.0","description":"The EnergyPlus 8.6.0 public release at the end of FY16Q4.","creator":{"login":"mjwitte","id":4991075,"avatar_url":"https://avatars.githubusercontent.com/u/4991075?v=3","gravatar_id":"","url":"https://api.github.com/users/mjwitte","html_url":"https://github.com/mjwitte","followers_url":"https://api.github.com/users/mjwitte/followers","following_url":"https://api.github.com/users/mjwitte/following{/other_user}","gists_url":"https://api.github.com/users/mjwitte/gists{/gist_id}","starred_url":"https://api.github.com/users/mjwitte/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mjwitte/subscriptions","organizations_url":"https://api.github.com/users/mjwitte/orgs","repos_url":"https://api.github.com/users/mjwitte/repos","events_url":"https://api.github.com/users/mjwitte/events{/privacy}","received_events_url":"https://api.github.com/users/mjwitte/received_events","type":"User","site_admin":false},"open_issues":153,"closed_issues":55,"state":"open","created_at":"2016-03-09T17:04:23Z","updated_at":"2016-07-21T17:55:08Z","due_on":"2016-09-30T05:00:00Z","closed_at":null},"commits_url":"https://api.github.com/repos/NREL/EnergyPlus/pulls/5705/commits","review_comments_url":"https://api.github.com/repos/NREL/EnergyPlus/pulls/5705/comments","review_comment_url":"https://api.github.com/repos/NREL/EnergyPlus/pulls/comments{/number}","comments_url":"https://api.github.com/repos/NREL/EnergyPlus/issues/5705/comments","statuses_url":"https://api.github.com/repos/NREL/EnergyPlus/statuses/75e240a25a035a4bd7349d42a0111a7f7eba8782","head":{"label":"NREL:120694307_Fault_ChillerSWTSensorOffset","ref":"120694307_Fault_ChillerSWTSensorOffset","sha":"75e240a25a035a4bd7349d42a0111a7f7eba8782","user":{"login":"NREL","id":1906800,"avatar_url":"https://avatars.githubusercontent.com/u/1906800?v=3","gravatar_id":"","url":"https://api.github.com/users/NREL","html_url":"https://github.com/NREL","followers_url":"https://api.github.com/users/NREL/followers","following_url":"https://api.github.com/users/NREL/following{/other_user}","gists_url":"https://api.github.com/users/NREL/gists{/gist_id}","starred_url":"https://api.github.com/users/NREL/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/NREL/subscriptions","organizations_url":"https://api.github.com/users/NREL/orgs","repos_url":"https://api.github.com/users/NREL/repos","events_url":"https://api.github.com/users/NREL/events{/privacy}","received_events_url":"https://api.github.com/users/NREL/received_events","type":"Organization","site_admin":false},"repo":{"id":14620185,"name":"EnergyPlus","full_name":"NREL/EnergyPlus","owner":{"login":"NREL","id":1906800,"avatar_url":"https://avatars.githubusercontent.com/u/1906800?v=3","gravatar_id":"","url":"https://api.github.com/users/NREL","html_url":"https://github.com/NREL","followers_url":"https://api.github.com/users/NREL/followers","following_url":"https://api.github.com/users/NREL/following{/other_user}","gists_url":"https://api.github.com/users/NREL/gists{/gist_id}","starred_url":"https://api.github.com/users/NREL/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/NREL/subscriptions","organizations_url":"https://api.github.com/users/NREL/orgs","repos_url":"https://api.github.com/users/NREL/repos","events_url":"https://api.github.com/users/NREL/events{/privacy}","received_events_url":"https://api.github.com/users/NREL/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/NREL/EnergyPlus","description":"EnergyPlus™ is a whole building energy simulation program that engineers, architects, and researchers use to model both energy consumption and water use in buildings.","fork":false,"url":"https://api.github.com/repos/NREL/EnergyPlus","forks_url":"https://api.github.com/repos/NREL/EnergyPlus/forks","keys_url":"https://api.github.com/repos/NREL/EnergyPlus/keys{/key_id}","collaborators_url":"https://api.github.com/repos/NREL/EnergyPlus/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/NREL/EnergyPlus/teams","hooks_url":"https://api.github.com/repos/NREL/EnergyPlus/hooks","issue_events_url":"https://api.github.com/repos/NREL/EnergyPlus/issues/events{/number}","events_url":"https://api.github.com/repos/NREL/EnergyPlus/events","assignees_url":"https://api.github.com/repos/NREL/EnergyPlus/assignees{/user}","branches_url":"https://api.github.com/repos/NREL/EnergyPlus/branches{/branch}","tags_url":"https://api.github.com/repos/NREL/EnergyPlus/tags","blobs_url":"https://api.github.com/repos/NREL/EnergyPlus/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/NREL/EnergyPlus/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/NREL/EnergyPlus/git/refs{/sha}","trees_url":"https://api.github.com/repos/NREL/EnergyPlus/git/trees{/sha}","statuses_url":"https://api.github.com/repos/NREL/EnergyPlus/statuses/{sha}","languages_url":"https://api.github.com/repos/NREL/EnergyPlus/languages","stargazers_url":"https://api.github.com/repos/NREL/EnergyPlus/stargazers","contributors_url":"https://api.github.com/repos/NREL/EnergyPlus/contributors","subscribers_url":"https://api.github.com/repos/NREL/EnergyPlus/subscribers","subscription_url":"https://api.github.com/repos/NREL/EnergyPlus/subscription","commits_url":"https://api.github.com/repos/NREL/EnergyPlus/commits{/sha}","git_commits_url":"https://api.github.com/repos/NREL/EnergyPlus/git/commits{/sha}","comments_url":"https://api.github.com/repos/NREL/EnergyPlus/comments{/number}","issue_comment_url":"https://api.github.com/repos/NREL/EnergyPlus/issues/comments{/number}","contents_url":"https://api.github.com/repos/NREL/EnergyPlus/contents/{+path}","compare_url":"https://api.github.com/repos/NREL/EnergyPlus/compare/{base}...{head}","merges_url":"https://api.github.com/repos/NREL/EnergyPlus/merges","archive_url":"https://api.github.com/repos/NREL/EnergyPlus/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/NREL/EnergyPlus/downloads","issues_url":"https://api.github.com/repos/NREL/EnergyPlus/issues{/number}","pulls_url":"https://api.github.com/repos/NREL/EnergyPlus/pulls{/number}","milestones_url":"https://api.github.com/repos/NREL/EnergyPlus/milestones{/number}","notifications_url":"https://api.github.com/repos/NREL/EnergyPlus/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/NREL/EnergyPlus/labels{/name}","releases_url":"https://api.github.com/repos/NREL/EnergyPlus/releases{/id}","deployments_url":"https://api.github.com/repos/NREL/EnergyPlus/deployments","created_at":"2013-11-22T14:47:34Z","updated_at":"2016-07-18T21:36:29Z","pushed_at":"2016-07-21T20:11:32Z","git_url":"git://github.com/NREL/EnergyPlus.git","ssh_url":"git@github.com:NREL/EnergyPlus.git","clone_url":"https://github.com/NREL/EnergyPlus.git","svn_url":"https://github.com/NREL/EnergyPlus","homepage":"https://energyplus.net","size":344429,"stargazers_count":114,"watchers_count":114,"language":"C++","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":70,"mirror_url":null,"open_issues_count":445,"forks":70,"open_issues":445,"watchers":114,"default_branch":"develop"}},"base":{"label":"NREL:develop","ref":"develop","sha":"d5fe22242257821429bbb5123dd69bdc8dce5de1","user":{"login":"NREL","id":1906800,"avatar_url":"https://avatars.githubusercontent.com/u/1906800?v=3","gravatar_id":"","url":"https://api.github.com/users/NREL","html_url":"https://github.com/NREL","followers_url":"https://api.github.com/users/NREL/followers","following_url":"https://api.github.com/users/NREL/following{/other_user}","gists_url":"https://api.github.com/users/NREL/gists{/gist_id}","starred_url":"https://api.github.com/users/NREL/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/NREL/subscriptions","organizations_url":"https://api.github.com/users/NREL/orgs","repos_url":"https://api.github.com/users/NREL/repos","events_url":"https://api.github.com/users/NREL/events{/privacy}","received_events_url":"https://api.github.com/users/NREL/received_events","type":"Organization","site_admin":false},"repo":{"id":14620185,"name":"EnergyPlus","full_name":"NREL/EnergyPlus","owner":{"login":"NREL","id":1906800,"avatar_url":"https://avatars.githubusercontent.com/u/1906800?v=3","gravatar_id":"","url":"https://api.github.com/users/NREL","html_url":"https://github.com/NREL","followers_url":"https://api.github.com/users/NREL/followers","following_url":"https://api.github.com/users/NREL/following{/other_user}","gists_url":"https://api.github.com/users/NREL/gists{/gist_id}","starred_url":"https://api.github.com/users/NREL/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/NREL/subscriptions","organizations_url":"https://api.github.com/users/NREL/orgs","repos_url":"https://api.github.com/users/NREL/repos","events_url":"https://api.github.com/users/NREL/events{/privacy}","received_events_url":"https://api.github.com/users/NREL/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/NREL/EnergyPlus","description":"EnergyPlus™ is a whole building energy simulation program that engineers, architects, and researchers use to model both energy consumption and water use in buildings.","fork":false,"url":"https://api.github.com/repos/NREL/EnergyPlus","forks_url":"https://api.github.com/repos/NREL/EnergyPlus/forks","keys_url":"https://api.github.com/repos/NREL/EnergyPlus/keys{/key_id}","collaborators_url":"https://api.github.com/repos/NREL/EnergyPlus/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/NREL/EnergyPlus/teams","hooks_url":"https://api.github.com/repos/NREL/EnergyPlus/hooks","issue_events_url":"https://api.github.com/repos/NREL/EnergyPlus/issues/events{/number}","events_url":"https://api.github.com/repos/NREL/EnergyPlus/events","assignees_url":"https://api.github.com/repos/NREL/EnergyPlus/assignees{/user}","branches_url":"https://api.github.com/repos/NREL/EnergyPlus/branches{/branch}","tags_url":"https://api.github.com/repos/NREL/EnergyPlus/tags","blobs_url":"https://api.github.com/repos/NREL/EnergyPlus/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/NREL/EnergyPlus/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/NREL/EnergyPlus/git/refs{/sha}","trees_url":"https://api.github.com/repos/NREL/EnergyPlus/git/trees{/sha}","statuses_url":"https://api.github.com/repos/NREL/EnergyPlus/statuses/{sha}","languages_url":"https://api.github.com/repos/NREL/EnergyPlus/languages","stargazers_url":"https://api.github.com/repos/NREL/EnergyPlus/stargazers","contributors_url":"https://api.github.com/repos/NREL/EnergyPlus/contributors","subscribers_url":"https://api.github.com/repos/NREL/EnergyPlus/subscribers","subscription_url":"https://api.github.com/repos/NREL/EnergyPlus/subscription","commits_url":"https://api.github.com/repos/NREL/EnergyPlus/commits{/sha}","git_commits_url":"https://api.github.com/repos/NREL/EnergyPlus/git/commits{/sha}","comments_url":"https://api.github.com/repos/NREL/EnergyPlus/comments{/number}","issue_comment_url":"https://api.github.com/repos/NREL/EnergyPlus/issues/comments{/number}","contents_url":"https://api.github.com/repos/NREL/EnergyPlus/contents/{+path}","compare_url":"https://api.github.com/repos/NREL/EnergyPlus/compare/{base}...{head}","merges_url":"https://api.github.com/repos/NREL/EnergyPlus/merges","archive_url":"https://api.github.com/repos/NREL/EnergyPlus/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/NREL/EnergyPlus/downloads","issues_url":"https://api.github.com/repos/NREL/EnergyPlus/issues{/number}","pulls_url":"https://api.github.com/repos/NREL/EnergyPlus/pulls{/number}","milestones_url":"https://api.github.com/repos/NREL/EnergyPlus/milestones{/number}","notifications_url":"https://api.github.com/repos/NREL/EnergyPlus/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/NREL/EnergyPlus/labels{/name}","releases_url":"https://api.github.com/repos/NREL/EnergyPlus/releases{/id}","deployments_url":"https://api.github.com/repos/NREL/EnergyPlus/deployments","created_at":"2013-11-22T14:47:34Z","updated_at":"2016-07-18T21:36:29Z","pushed_at":"2016-07-21T20:11:32Z","git_url":"git://github.com/NREL/EnergyPlus.git","ssh_url":"git@github.com:NREL/EnergyPlus.git","clone_url":"https://github.com/NREL/EnergyPlus.git","svn_url":"https://github.com/NREL/EnergyPlus","homepage":"https://energyplus.net","size":344429,"stargazers_count":114,"watchers_count":114,"language":"C++","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":70,"mirror_url":null,"open_issues_count":445,"forks":70,"open_issues":445,"watchers":114,"default_branch":"develop"}},"_links":{"self":{"href":"https://api.github.com/repos/NREL/EnergyPlus/pulls/5705"},"html":{"href":"https://github.com/NREL/EnergyPlus/pull/5705"},"issue":{"href":"https://api.github.com/repos/NREL/EnergyPlus/issues/5705"},"comments":{"href":"https://api.github.com/repos/NREL/EnergyPlus/issues/5705/comments"},"review_comments":{"href":"https://api.github.com/repos/NREL/EnergyPlus/pulls/5705/comments"},"review_comment":{"href":"https://api.github.com/repos/NREL/EnergyPlus/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/NREL/EnergyPlus/pulls/5705/commits"},"statuses":{"href":"https://api.github.com/repos/NREL/EnergyPlus/statuses/75e240a25a035a4bd7349d42a0111a7f7eba8782"}}}}
{"actor":{"display_login":"mjwitte"}}