-
Notifications
You must be signed in to change notification settings - Fork 15
app_load_duration
David M. Lorenzetti edited this page Oct 3, 2014
·
2 revisions
A load duration curve shows the number of hours, or the percentage of time, over which the building load is at or below a given value. If the curve is steep on the left side of the plot, it indicates that the highest loads are present only a small fraction of the time.
Sample explanatory text: "The highest loads ideally should occur a small fraction of the time. If the building is near its peak load for a significant portion of the time, the HVAC equipment could be undersized, or there could be systems that are running more than necessary. If the load is near peak for only a short duration of time there may be an opportunity to reduce peak demand charges."
Program plotLoadDuration
- Get inputs:
-
loads
, vector of power data (float). -
asPercent
, flag indicating how to format the x-axis of the graph (boolean).True
means to express the duration as a percent of time.False
means to express duration as the number of observations.
-
- Assume:
- The
loads
were recorded at uniform intervals.
- The
- Identify the data of interest:
- Take the last year of data. This ensures that the data are visually distinct.
- Sort the
loads
:- Find
sortedLoads
by sortingloads
in reverse order, i.e., from largest to smallest. For example, ifloads = (1, 3, 2, 4)
thensortedLoads = (4, 3, 2, 1)
.
- Find
- Find values for the x-axis:
- Set
loadCt
to the number of entries inloads
. - If(
asPercent
isTrue
):- Set
durs
to a sequence of evenly-spaced percentages, from 0 to 100, withloadCt
percentages in the sequence. - Note that this may require finding the step change from one number in the sequence to the next.
If so, then find
step = 100 / (loadCt - 1)
When doing this calculation, be sure to avoid integer division. For example, ifloadCt = 4
thenstep = 100/3 = 33.3333
However, integer division may give100 / 3 = 33
.
- Set
- else:
- Set
durs
to the sequence of integers from 1 toloadCt
.
- Set
- Set
- Make the load duration curve:
- Make an x-y line graph, showing y =
sortedLoads
as a function of x =durs
. - As a practical matter, note that many plotting libraries do not require that
durs
be made explicit, whendurs
runs from 1 toloadCt
(i.e., whenasPercent
isFalse
). - Typically the lower extent of the y-axis is fixed at zero power, in order to provide context for the range of power data.
- Make an x-y line graph, showing y =