-
Notifications
You must be signed in to change notification settings - Fork 0
/
kwe.html
181 lines (155 loc) · 6.39 KB
/
kwe.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>MISO - Kewaunee Power Station</title>
<link rel="stylesheet" href="css/style.css" media="screen" type="text/css" />
<link rel="stylesheet" type="text/css" media="screen, print" href="css/slickmap.css" />
<script type="text/javascript"
src="js/dygraph-combined.js"></script>
</head>
<body>
<div id="title">Kewaunee Nuclear Plant</div>
<h3>Summary</h3>
<p>The fourth nuclear power plant built in Wisconsin was shut down on May 7th, 2013. The reason's behind the shutdown have been cited as the falling electricity prices due to cheaper natural gas. Since nuclear plants operate at a high capacity factory, it is relatively easy to calculate the approximate revenues it would make from the sale of electricity over the year. The electricity can be sold in long-term bi-lateral contracts, in the day-ahead market, as well as the real-time market. Since these plants have low ramping capabilities, most of the electricity sales will be associated with the first two markets. (Citation needed)
</p>
<p>
Economic analysis of the generator node in MISO. The goals will be as follows
<ul>
<li>Estimate the annual loss of revenue associated with the drop in wholesale prices</li>
<ul>
<li>Use information about capacity and capacity factor to estimate power production</li>
<li>Make assumption of what markets it operates in (Day-Ahead market)</li>
</ul>
<li>Discussion on other factors around the shut-down</li>
<ul>
<li>The power output from this plant will be mostly replaced with coal and natural gas leading to a relatively increase in carbon output for the power demanded in the region.</li>
<li>Where they losing money already? What projections where they using for future electricity prices and what role does that have in there decision to close?</li>
</ul>
</ul>
<h4>MISO Node</h4>
Searching through the list of MISO nodes, WPS.KEWAUKEWA seems to have similiar name features. WPS is related to the organization entity that is responsible for that node. Here, WPS stands for Wisconsin Public Service and was the original operator of the nuclear power plant in wisconsin.
<div id="graphdiv"></div>
<center>
<p><b>Show Series:</b></p>
<p>
<input type=checkbox id="0" checked onClick="change(this)">
<label for="0"> Day-Ahead</label></br>
<input type=checkbox id="1" onClick="change(this)">
<label for="1"> Real-Time</label></br>
</p>
<p><b>Rolling Averages:</b></p>
<a href="#" id="day" onClick="daily()">Daily</a>
<a href="#" id="week" onClick="weekly()">Weekly</a>
<a href="#" id="month" onClick="monthly()">Monthly</a>
<a href="#" id="year" onClick="yearly()">Yearly</a>
<div id="datanote">
<a href="data/kwe.txt">Data</a>
</div>
</center>
<h3>Price-Duration Curve</h3>
A useful visual to understand their annual revenue loss is the price-duration curve. A load-duration curve is commonly used in power system analysis to understand the relative amount of time the system has a given demand. It is useful to show which power plants will be dispatched for various levels of load and for approximately how much time per year. The price-duration curve is a similiar concept, which instead of load being used, the price will be.
<center>
<table>
<tr>
<td>
<div id="ddiv"></div>
</td>
<td>
<p><b>Show Series:</b></p>
<p>
<input type=checkbox id="0" checked onClick="change2(this)">
<label for="0"> 2006</label></br>
<input type=checkbox id="1" checked onClick="change2(this)">
<label for="1"> 2007</label></br>
<input type=checkbox id="2" onClick="change2(this)">
<label for="2"> 2008</label></br>
<input type=checkbox id="3" onClick="change2(this)">
<label for="3"> 2009</label></br>
<input type=checkbox id="4" checked onClick="change2(this)">
<label for="4"> 2010</label></br>
<input type=checkbox id="5" checked onClick="change2(this)">
<label for="5"> 2011</label></br>
<input type=checkbox id="6" onClick="change2(this)">
<label for="6"> 2012</label></br>
<input type=checkbox id="7" onClick="change2(this)">
<label for="7"> 2013</label></br>
</p>
</td>
</tr>
</table>
<div id="datanote">
<a href="data/kwe-price.txt">Data</a>
</div>
</center>
<blockquote>
<h3>Kewaunee</h3>
<p>
Background and history of the plant from wikipedia
<p>
<footer>
-<a href="http://en.wikipedia.org/wiki/Kewaunee_Power_Station">Kewaunee Power Station</a>
</footer>
</blockquote>
<!--#include file="footer.html" -->
<script type="text/javascript">
var kwe_annote = [
{
series: "Day-Ahead Price",
x: "2013-05-07",
shortText: "A",
text: "Kewaunee Permanently Closed"
}
];
g2 = new Dygraph(
document.getElementById("graphdiv"),
"data/kwe.txt", // path to CSV file
{
rollPeriod: 7,
showRoller: true,
customBars: true,
ylabel: 'Price ($/MW)',
showRangeSelector: true,
visibility: [true, false],
title: 'Time-Series of Wholesale Prices for Kewaunee',
drawCallback: function(g2, is_initial) {
if (!is_initial) return;
g2.setAnnotations( kwe_annote );
}
} // options
);
g = new Dygraph(
document.getElementById("ddiv"),
"data/kwe-price.txt", // path to CSV file
{
ylabel: 'Price ($/MW)',
xlabel: 'Hours',
visibility: [true, true, false, false, true, true, false, false],
title: 'Day-Ahead Price Duration Curves for Kewaunee',
showRangeSelector: true,
strokeWidth: 1.725
}
);
setStatus();
// var anns = g2.annotations();
// anns.push(kwe_annote);
// g2.setAnnotations(anns);
function setStatus() {
document.getElementById("visibility").innerHTML =
g2.visibility().toString();
}
function change(el) {
g2.setVisibility(parseInt(el.id), el.checked);;
setStatus();
}
function change2(el) {
g.setVisibility(parseInt(el.id), el.checked);;
setStatus();
}
function daily() { g2.updateOptions({rollPeriod: 1}); };
function weekly() { g2.updateOptions({rollPeriod: 7}); };
function monthly() { g2.updateOptions({rollPeriod: 30}); };
function yearly() { g2.updateOptions({rollPeriod: 365}); };
</script>
</body>
</html>