Skip to content

Commit

Permalink
Merge branch 'master' of https://github.com/dpinney/omf
Browse files Browse the repository at this point in the history
  • Loading branch information
jenny-nyx committed Jan 16, 2024
2 parents 90bf7f6 + db06f88 commit 5db3dbd
Show file tree
Hide file tree
Showing 18 changed files with 2,087 additions and 931 deletions.
79 changes: 75 additions & 4 deletions omf/models/derUtilityCost.html
Original file line number Diff line number Diff line change
Expand Up @@ -34,12 +34,83 @@
</div>
<hr>
<div class="shortInput">
<label class="tooltip">Input 1<span class="classic">Enter an input of any kind.</span></label>
<input type="text" id="input1" name="input1" value="{{allInputDataDict.input1}}"required="required" placeholder="abc1 Easy as..."/>
<label class="tooltip">Demand Curve (.csv file)<span class="classic">Please see the documentation at the green 'Help?' link above for the required format and an example file.</span></label>
<input id="demandCurveFile" type="file" style="display:none" onchange="handle_files(this.files,'demandCurve','fileName')">
<input id="demandCurve" name="demandCurve" value="{{allInputDataDict.demandCurve}}" type="hidden">
<div>
<label for="demandCurveFile" class="fileButton">Choose File</label>
<input id="fileName" name="fileName" value="{{allInputDataDict.fileName}}" value='' readonly class="uploadFileName">
</div>
</div>
<div class="shortInput">
<label class="tooltip">Input 2<span class="classic">Enter an input of another kind.</span></label>
<input type="text" id="input2" name="input2" value="{{allInputDataDict.input2}}"required="required" placeholder="123 Or Simple as.."/>
<label class="tooltip">Temperature Curve in &degC (.csv file)<span class="classic">Please see the documentation at the help link for the required format and an example temperature file.</span></label>
<input id="tempCurveFile" type="file" style="display:none" onchange="handle_files(this.files,'tempCurve','tempFileName')">
<input id="tempCurve" name="tempCurve" value="{{allInputDataDict.tempCurve}}" type="hidden">
<div>
<label for="tempCurveFile" class="fileButton">Choose File</label>
<input id="tempFileName" name="tempFileName" value="{{allInputDataDict.tempFileName}}" value='' readonly class="uploadFileName">
</div>
</div>
<div class="shortInput">
<label class="tooltip">Latitude<span class="classic">Specify the latitude of the load/grid.</span></label>
<input type="text" id="latitude" name="latitude" value="{{allInputDataDict.latitude}}" pattern="^\-?\d+\.?\d*?$" required="required"/>
</div>
<div class="shortInput">
<label class="tooltip">Longitude<span class="classic">Specify the longitude of the load/grid.</span></label>
<input type="text" id="longitude" name="longitude" value="{{allInputDataDict.longitude}}" pattern="^\-?\d+\.?\d*?$" required="required"/>
</div>
<div class="shortInput">
<label class="tooltip">URDB Label<span class="classic">Input the string found at the end of the URDB Rate URL, For example https://openei.org/apps/<br>IURDB/rate/view/<br> 5b75cfe95457a3454faf0aea <br> would yield "5b75cfe95457a3454faf0aea"</span></label>
<input type="text" id="urdbLabel" name="urdbLabel" value="{{allInputDataDict.urdbLabel}}" required="required"/>
</div>
<div class="shortInput">
<label class="tooltip">Year<span class="classic">Specify the year to which the load shape values corresond.</span></label>
<input type="text" id="year" name="year" value="{{allInputDataDict.year}}" pattern="^\d{4}$" required="required"/>
</div>
<div class="shortInput">
<label class="tooltip">Analysis Period (years)<span class="classic">Specify the length of financial analysis in years.</span></label>
<input type="number" id="analysisYears" name="analysisYears" value="{{allInputDataDict.analysisYears}}" step="1" min="2" max="75" required="required"/>
</div>
<div class="shortInput">
<label class="tooltip">Solar<span class="classic">Include solar?</span></label>
<select id="solar" name="solar" value="{{allInputDataDict.solar}}"/>
<option value="on" {{ 'selected' if allInputDataDict.solar == 'on' }}>Yes</option>
<option value="off" {{ 'selected' if allInputDataDict.solar == 'off' }}>No</option>
</select>
</div>
<div class="shortInput">
<label class="tooltip">Battery<span class="classic">Include batteries?</span></label>
<select id="battery" name="battery" value="{{allInputDataDict.battery}}"/>
<option value="on" {{ 'selected' if allInputDataDict.battery == 'on' }}>Yes</option>
<option value="off" {{ 'selected' if allInputDataDict.battery == 'off' }}>No</option>
</select>
</div>
<div class="shortInput">
<label class="tooltip">Generator<span class="classic">Include generator?</span></label>
<select id="generator" name="generator" value="{{allInputDataDict.generator}}"/>
<option value="on" {{ 'selected' if allInputDataDict.generator == 'on' }}>Yes</option>
<option value="off" {{ 'selected' if allInputDataDict.generator == 'off' }}>No</option>
</select>
</div>
<div class="wideInput">
<p class="inputSectionHeader">Resilience - To optimize for resilience, specify an Outage Start Hour greater than 0</p>
</div>
<hr>
<!-- TODO: Create switch for outages (if outage, display outage options, otherwise dont)-->
<div class="shortInput">
<label>Simulate Outage</label>
<select id="Outage" name="Outage" value="{{allInputDataDict.Outage}}">
<option value="on" {{ 'selected' if allInputDataDict.Outage == 'on' }}>On</option>
<option value="off" {{ 'selected' if allInputDataDict.Outage == 'off' }}>Off</option>
</select>
</div>
<div class="shortInput">
<label class="tooltip">Outage Start Hour<span class="classic">A major outage is added starting at this hour. Specify an hour greater than 0 but less than 8760 to trigger optimization for resilience and include fossil generation. If 0 is entered, the model will run an economic optimization without fossil generation.</span></label>
<input type="number" id="outage_start_hour" name="outage_start_hour" value="{{allInputDataDict.outage_start_hour}}" min="0" max="8760" required="required"/>
</div>
<div class="shortInput">
<label class="tooltip">Outage Duration (hours)<span class="classic">The added major outage is given this duration.</span></label>
<input type="number" id="outageDuration" name="outageDuration" value="{{allInputDataDict.outageDuration}}" min="1" max="8760" required="required"/>
</div>
{{ omfModelButtons }}
</form>
Expand Down
Loading

0 comments on commit 5db3dbd

Please sign in to comment.