Question-and-Answer Resource for the Building Energy Modeling Community
Get started with the Help page
Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

Here is an observation, but not a complete answer: I ran your file for a short runperiod and looked at the EDD. What I notice is that the EMS program "COOLING_DISPATCH_VALUES" is being called many times for a given "Occurance info" timestamp. (Can someone else please chime in to explain why this is? I know that with the EMS calling point of UserDefinedComponentModel The program will be called each time the plant component is simulated but why is it being called multiple times for a single HVAC timestep?) I'm not familiar enough with EMS to explain this well, but I think the timestamp is the "HVAC" timestep, that would correspond to Output:Variable Field:ReportingFrequency input value of "Detailed". So it looks to me like the final occurrance of the variable assignment for a given HVAC timestep is what is being reported. I am pasting below a section of the EDD which shows this happening. The program is called many times for the Timestamp 01/01 15:42 -15:43. For the inital runs of the program the COOLSYS1_LOOPDMND is less than -1,481,477 and the IF branch executes. But for the later, and for the final run, at that timestamp COOLSYS1_LOOPDMND is greater than -1,481,477 (-1,393,557), and the ELSEIF branch executes. This link has a portionof the EDD file, so you can see an example of what I am referring to (note this impage does not include all of the times the program ran for the 15:42-15:43 timestep, just the later and last runs.) C:\fakepath\Portion_of_EDD.png

Here is an observation, but not a complete answer: I ran your file for a short runperiod and looked at the EDD. What I notice is that the EMS program "COOLING_DISPATCH_VALUES" is being called many times for a given "Occurance info" timestamp. (Can someone else please chime in to explain why this is? I know that with the EMS calling point of UserDefinedComponentModel The program will be called each time the plant component is simulated but why is it being called multiple times for a single HVAC timestep?) I'm not familiar enough with EMS to explain this well, but I think the timestamp is the "HVAC" timestep, that would correspond to Output:Variable Field:ReportingFrequency input value of "Detailed". So it looks to me like the final occurrance of the variable assignment for a given HVAC timestep is what is being reported. I am pasting linking below a section of the EDD which shows this happening. The program is called many times for the Timestamp 01/01 15:42 -15:43. For the inital runs of the program the COOLSYS1_LOOPDMND is less than -1,481,477 and the IF branch executes. But for the later, and for the final run, at that timestamp COOLSYS1_LOOPDMND is greater than -1,481,477 (-1,393,557), and the ELSEIF branch executes. This link has a portionof portion of the EDD file, so you can see an example of what I am referring to (note this impage does not include all of the times the program ran for the 15:42-15:43 timestep, just the later and last runs.) C:\fakepath\Portion_of_EDD.png

Here is an observation, but not a complete answer: I ran your file for a short runperiod and looked at the EDD. What I notice is that the EMS program "COOLING_DISPATCH_VALUES" is being called many times for a given "Occurance info" timestamp. (Can someone else please chime in to explain why this is? I know that with the EMS calling point of UserDefinedComponentModel The program will be called each time the plant component is simulated but why is it being called multiple times for a single HVAC timestep?) I'm not familiar enough with EMS to explain this well, but I think the timestamp is the "HVAC" timestep, that would correspond to Output:Variable Field:ReportingFrequency input value of "Detailed". So it looks to me like the final occurrance of the variable assignment for a given HVAC timestep is what is being reported. I am linking below a section of the EDD which shows this happening. The program is called many times for the Timestamp 01/01 15:42 -15:43. For the inital runs of the program the COOLSYS1_LOOPDMND is less than -1,481,477 and the IF branch executes. But for the later, and for the final run, at that timestamp COOLSYS1_LOOPDMND is greater than -1,481,477 (-1,393,557), and the ELSEIF branch executes. This link has a portion of the EDD file, so you can see an example of what I am referring to (note this impage image does not include all of the times the program ran for the 15:42-15:43 timestep, just the later and last runs.) C:\fakepath\Portion_of_EDD.png