Professional Documents
Culture Documents
History
Date Modification
3.0 06.2011 MILP Description added to Appendixes, attributes updated, user setting
and run manager progress added
Preface
Safety Notes
This manual does not constitute a complete catalog of all safety measures required for operating the product
in question because special operating conditions might require additional measures. For application specific
safety measures refer to the respective project documentation. However, it does contain notes that must be
adhered to for your own personal safety and to avoid damage to property. These notes are highlighted with a
warning triangle and different keywords indicating different degrees of danger as stated in the Warning
Conventions.
Warning
WARNING indicates a potentially hazardous situation which, if not avoided, could result in death or serious
injury.
Please follow all advice instructions to prevent death or serious injury.
Caution
CAUTION used with the safety alert symbol indicates a potentially hazardous situation which, if not avoided,
may result in minor or moderate injury.
Please follow all advice instructions to prevent minor or moderate injury.
Note
NOTE used without the safety alert symbol indicates a potential situation which, if not avoided, may result in
an undesirable result or state.
Qualified Personnel
Only competent and authorized personnel should work with this product after becoming thoroughly familiar
with all warnings, safety notices, operating instructions and maintenance procedures.
Use As Described
The product must not be used for any other purposes than that described in the technical documentation. If it
is used together with third-party devices and components, these must be recommended or approved by
Siemens AG. The successful and safe operation of this product is dependent on adequate transportation and
proper handling, storage, installation, operation and maintenance.
Scope
This Reference Guide provides specific and detailed information on how to use a particular product or product
component:
Typical workflows and operations
Description of all user interfaces and displays
Note
Please note that the screenshots used in this document contain sample data which may not be available in
some systems.
Typical Users
This Reference Guide is designed for users that are already familiar with operational and technical aspects of
power generation and power transmission and distribution as well as Spectrum Power product concepts:
System Engineers
The System Engineer is able to install and to customize the system. He needs deep knowledge about
the internal structures and processes of the HTC-software component.
Operators
The Operator is using the HTC-software. Therefore he needs to know how the HTC has to be operated.
Data Engineers
The Data Engineer translates the real generation plants and/or energy market components to the data
model of the HTC-software. He maintains the HTC data model.
Key Users
The Key User is responsible for a special technical area which is related to the HTC-software. The Key
User has to know the specific functions of the HTC-software in detail.
Introduction:
Basic information about the HTC-software
Workflow / Operations:
Main use cases, workflows and operational steps for optimal use of the HTC-software
References:
Reference to other documents
Documentation Conventions
Example Meaning
File > Open Selecting the menu item Open on the File menu
F1 Pressing the F1 function key on the keyboard
Control+o Holding down the Ctrl key and pressing the letter o on the keyboard
Control+Shift+o Holding down the Ctrl key and the Shift key and pressing the letter o on the keyboard
Left-click Clicking the left mouse button
Right-click Clicking the right mouse button
Shift-Left-click Holding down the Shift key on the keyboard and clicking the left mouse button
Table of Contents
History................................................................................................................................................................................ 2
Preface ............................................................................................................................................................................... 3
Table of Contents.............................................................................................................................................................. 6
2 Operations ............................................................................................................................................................ 16
2.1 Starting to Work with HTC..................................................................................................................... 16
2.2 Performing a calculation........................................................................................................................ 18
2.3 System Tuning ...................................................................................................................................... 23
2.4 Application Tuning ................................................................................................................................ 24
2.5 Inspection of results via user interface .................................................................................................. 26
2.6 Export of Results to Excel ..................................................................................................................... 30
2.7 Manual Update of Input Data via User Interface ................................................................................... 32
2.8 Update of Input Data via Excel.............................................................................................................. 34
2.9 Modifying Charts Settings in the User Interface .................................................................................... 36
2.10 Creating User UI displays ..................................................................................................................... 38
2.11 Modifying User UI displays.................................................................................................................... 40
2.12 Modifying the Data Model ..................................................................................................................... 43
2.13 Creating the Data Set (Variant)............................................................................................................. 46
2.14 Saving the Data Set (Variant) to a File.................................................................................................. 47
2.15 Restoring the Data Set (Variant) from a File ......................................................................................... 48
2.16 Deleting the Data Set (Variant) ............................................................................................................. 50
2.17 Variant Management............................................................................................................................. 51
2.18 Workspaces, Roles and Role Assignment ............................................................................................ 54
2.19 Other Administrative Tasks ................................................................................................................... 59
4 Appendixes......................................................................................................................................................... 117
4.1 Classes ............................................................................................................................................... 117
4.2 Attributes............................................................................................................................................. 117
4.2.1 Area ................................................................................................................................... 117
4.2.2 Channel.............................................................................................................................. 119
4.2.3 CogenInterchange.............................................................................................................. 120
Note
Keys may be all lowercase, all uppercase or mixed lowercase and uppercase unless explicitly described.
Base Frame is the HTC applications main window, in which the application parts – panels – are placed.
Base Panel is the HTC applications main part of the window, where the context information is displayed.
Base Frame
To display Press
Refresh F5
New Window F12
Set Focus on Tree CTRL+T
Show / Hide Tree F8
Base Panel
To Perform Press
Cancel Edit Object CTRL+Q
Edit Object CTRL+E
New Object CTRL+N
Quick Save Object (without comment) CTRL+S
Export to Excel Right Click
To Press
Move Down ↓
Move Up ↑
Open Sub-tree RETURN, or Right click
Close Sub-tree Double click right
Toggle between Result and Model pane CTRL+J
Navigating in tables
To Press
Move Down ↓
RETURN
Move Up ↑
SHIFT+RETURN
Move Left
SHIFT+TAB
Move Right
TAB
Editing in tables
To Press
Insert new row CTRL+’+’
Delete row CTRL+’-‘
To view Press
Help topics F1
CTRL+H
About Button ?
CTRL+?
HTC application main window (Base Frame) is the container for the application main parts – panels. There
are 4 basic panels located within base frame: Menu bar, Tool bar, Navigation Tree (Object Browser), and
Object Panel (Base Panel). Following picture shows the location of the panels:
Menu Bar
Tool Bar
In the Status bar on the bottom of application window you can find the name of the currently logged-in user,
actual time, and an icon for the connection state. If you hover over this icon (if it is in a connected state), you
will see a name of the connected server.
The name of the HTC environment is displayed at the bottom of the window frame in a configurable color.
htc-dev.gdfsuez.net
Menu bar
Menu includes standard menu items – File, Tools, Window and Help, and the HTC menu items, which you
can use to directly start the desired functionality.
Tool bar
You can use the tool bar for manipulating current selected object. You can create new object, copy and paste
objects, rename and delete them. For editing object details you have to select Change Data button. After you
have altered object details you can save or discard changes using button in the toolbar.
In the tool bar there is also a combo box for selecting a variant.
Object Browser
Basic nodes of the tree view are the basic parts of the HTC functionality. Every of this nodes can be
expanded to browse through the object hierarchy.
Object panel
After you have selected an object in the object browser, here you can find detailed information about the
selected object.
On the top you can see the name of the selected object in the drop down box. You can quickly change the
objects on the same hierarchy level.
Detailed information is displayed below. In cases when there are many details, they are organized in tab
control. You can select the tab to see desired category of detailed information.
To have a better view if the display is a Result- or Model-display the line with the Component name has
different colors green for Result- and blue for Model-Displays. With the short key <CTRL>+J the user can
switch between Result- and Model- Display.
Colors
In the result displays the colors of the generation schedules of the units are set according to the availabilities
of the units. They shall help user to analyze the results:
In the input displays the colors are used for different purpose:
Select “User > Change Attributes” from the tree or from the application menu. User can set following
attributes of the user interface behavior in the displayed “Color” and “Miscellaneous” tabs:
Colors
User can customize what colour different user interface elements will use
Startup
User can set the start-up conditions for the jROS UI – the preloaded variant, the size of the window and
the display on which the jROS application window will be displayed (for the multi-display environments
only).
Layout
- Name Display
User can choose whether to use short or long names of the objects in the jROS UI
Note
Please note, that in the table headings and in the graphs, the short name will be used regardless of these
setting, because of the maximum space reserved for the text on the display.
User can set if the messages in the message list should be displayed in the reverse order
The legend of the chart can be displayed in the standard order or alphabetically sorted
Schedule
- Freeze Date Column
If the user sets this option, the date column in the schedule view will be frozen, so this column stays
displayed on the left, regardless of the horizontal scrolling of the screen
The user can set the number of the rows viewed in the past and/or in the future of the current
displayed time interval (maximum 4 rows are enabled), if this rows are separated by a line, and the
color of these rows
Note
Please note, that the advanced rows are provided only for informational purposes, and does not affect the
summaries (e.g. Sum, Min, Max). Summaries are build-up only over the planning horizon.
2 Operations
2.1 Starting to Work with HTC
The goal of this task is to start HTC user interface.
Connect to the jROS/HTC server via your browser. Alternatively you can start the HTC from a shortcut on
your desktop. The jROS start window opens. The Object browser user interface allows you to navigate
through the available displays.
Note
You can open multiple instances of the HTC on multiple clients - which are all connected to the same HTC
server.
Logging On
HTC is equipped with Single Sign On (SSO). No extra login is required. Your access rights are given by the
roles you are assigned to in the LDAP system.
Note
For detailed information on user access rights, refer to the chapter 2.18.
Variants
This part is related to the handling of variants (independent datasets).
HTC Administration
This part is related to administrative displays.
HTC Execution
This part is related to the displays activating interfaces and the HTC-algorithm including relevant
parameters of the algorithm.
HTC UserUI
This part is related to displays that can be customized by the user and the configuration tool to do that.
HTC Results
This part is related to the pre-configured result displays. All results of HTC that are stored in the
database can be seen there.
HTC Model
This part is related to the model editor of HTC. All input data of HTC are visible there and may be
modified. New components may be added, existing components may be deleted.
HTC Variant Comparison
This part is related to the comparison of variants (independent datasets). It contains a tool to configure
multi-variant displays and the tree of already configured multivariant displays.
Note
Before modifying any of the HTC Parameters you must press the button ‘Change Data’ in the tool bar.
Program parameters determine the horizon and other general aspects of planning. Be sure to modify them
correctly before you import data or start the calculation.
The planning horizon is used as the default display horizon of all tabular displays and also as the time horizon
for import and export of data (except import from intraday).
- ThermalFixed (a re-dispatch of the thermal units with fixed commitment and a fullplanning of all other
components)
- RePlanning (like ThermalFixed, but sync-/desync times of thermal units can be shifted slightly)
- 30 Minutes
- Hour
Start Condition
- FromMeasVal (calculation of schedules starts from measured values)
HTC Consideration
In this section you can switch ON/OFF specific features of HTC as:
R1 on (Switch on/off reserve class 1 planning to be performed)
R2 on (Switch on/off reserve class 2 planning to be performed)
R3 on (Switch on/off reserve class 3 planning to be performed)
R4 on (Switch on/off reserve class 4 planning to be performed)
R5 on (Switch on/off reserve class 5 planning to be performed)
MPROFon (determination of Market Profiles/Sensitivity Analysis)
SMon (consideration of electricity spot markets on)
FMon (consideration of fuel markets on)
Note
If you move your mouse cursor over one of the input fields a tool tip appears with the detailed explanation of
the field or button.
Remember to save the HTC program parameters before starting the HTC engine
Note
For the mode ‘ ThermalFixed’ the schedules ‘PowerProdSched0’ (P) are read for all thermal units.
For P>0 the unit will be planned as committed, for P=0 the unit will be planned as not committed.
Select “HTC Execution > Run Manager” from the application menu or “jROS Optimization > HTC
Execution > Run Manager” from tree menu, the Run Manager view is displayed, then scroll down to the
section HTC.
With the green button you can activate the HTC-engine for the given set of parameters. The field next to this
button shows the actual state of the calculation engine. All possible states are described below. The other
fields give date/time of last activation and the planning horizon of this activation.
With the red button you can stop and abort an ongoing calculation.
Fields in the second and third row gives detailed information about the progress of the optimization.
MIP-gap and Best integer solution are the current optimization results Elapsed time field shows the time since
the optimization was started. Bound is the best theoretically achievable solution.
There are two progress bars in the third row of the execution part of the jROS. The first progress bar shows
graphically the current optimization step status. The bar shrinks and changes the color from orange through
yellow and lightgreen into darkgreen with the converging to optimal solution. The second progress bar is a
graphical depiction of the elapsed time – the bar expands over time and changes the color from darkgreen
over lightgreen and yellow into orange as the time comes close to timeout of the calculation.
In the optimization steps (MILP 1 – MILP 3) there is a possibility to interrupt the calculation pressing the
“Interrupt” button on the right. If the button is pressed, the Optimization system stops at the current step
(which may take several seconds) and takes the best value until then as result.
With the yellow button you can open the list of messages. For details on the messages see below.
State Description
Active HTC-engine is activated in this variant (but has not really started)
MILPAbort HTC engine is going to interrupt at current optimization stage. Calculation sequence
goes on with the best result until then.
OK HTC-engine has finished with a feasible solution (and input check has not given any
warning)
Message HTC-engine has found some data errors and calculated based on assumptions. The
assumptions are given as warnings in the message list.
DataError HTC-engine has stopped after input check, because the problem is infeasible or the
data are erroneous. The sources for infeasibility or erroneous data are given as error
messages in the message list.
Note
Depending on the complexity of the problem, the total calculation time (especially the phases Start, MILP,
Dispatch) can be several minutes.
HTC messages
To check the messages press Detailed Messages button and then you can see the message list as
given below.
You can identify the severity (error class) of the message by a color and by a range of the Error No as
described below:
Color Error No. Range Description
Black 0 to 99999 Information message
Blue 100000 to 149999 Warning (input check)
Green 150000 to 199999 Warning (soft constraint violation)
Yellow 200000 to 249999 Data error
Orange 250000 to 299999 Warning (hard constraint violation)
Red 300000 to 349999 System errors
The Component name tells you where the error/warning is related to.
The Message Text gives in clear text the detailed message information, e.g.
Information text for information messages
Warning explanation for situations, where HTC modified the data internally as part of the input check.
Working explanation for situations, where HTC violated a soft constraint.
Data error explanation for situations, where HTC detects a data error within the input check.
System error explanation for situations, where HTC faces a problem with the system.
Start date and End date columns are used by messages where the time interval is important.
There are few operations, which can be performed with the message list, using the buttons on the bottom.
Message list can be cleared by use of the ‘Clear’ button. You can use the ‘Previous Session’ and the ‘Next
Session’ buttons to show cleared messages again, where session means a time between two clear
operations. The ‘Refresh’ button loads current messages in the message list. Finally, the ‘Close’ button
closes the messages window.
Note
The Warning messages for constraints are subject to tolerances. These tolerances are given in a
configuration file (CONFIG00.dat) and can only be modified by a system administrator.
Standard settings for the tolerances are as follows:
cLoadTolerance 1. /* [MW] load condition tolerance */
cRsrvTolerance 5. /* [MW] reserve condition tolerance */
cCSHTolerance 0.5 /* [MWth] tolerance f.balance steam header */
cHeatTolerance 0.5 /* [MWth] cogeneration tolerance */
cEnergyTolerance 0.01 /* [1] tolerance as factor to energy limits */
Select “jROS Optimization > HTC execution > System Tuning” from tree menu or from
“HTC execution > System Tuning” in application menu, then click on the change data button to
configure the system.
Defines whether the power assignment is exclusive for the reserve class, or can be part of another
reserve class as well.
R1 on = Switch the reserve class 1 on/off
Defines if the reserve class is used or not.
Select “HTC execution > Application Tuning” from tree menu or from the application menu then click on the
Parameter Description
MIP gap Rel 1, 2, 3 relative MIP (tolerance) limit search phase 1,2,3
MIP gap Abs 1, 2, 3 absolute MIP (tolerance) limit search phase 1,2,3
MIP gap selector Selector to switch between absolute and relative MIP limits
MILP sol Number of integer solutions to break-off
MILP nodes Maximum number of nodes to break-off
MILP time Maximum time limit of MILP per search phase
max it.slph Maximum iteration in sLP hydro
fac.sLPh Contraction factor sLP hydro
perc.sLPh Percentage factor sLP hydro
max it.slpt Maximum iteration in sLP thermal
fac.sLPt Contraction factor sLP thermal
debug Debug level
base pen. Basic penalty
exec. Time Execution time of last HTC run
MIP gap rel Achieved relative MIP gap
MIP gap abs Achieved absolute MIP gap
Cplex Default If marked, the default-parameters of CPLEX are used (e.g. for small cases),
otherwise the tuned parameters are used (e.g. for large cases)
Heuristic off: This switch can be used for test purposes in order to analyze variances in
calculation time
MPROF demand Variations Make sure to cover in any case the demand. This could be necessary if the
calculation time grid is bigger than the given demand schedule.
MPROF freeze Electricity Freeze Electricity Contracts schedules in MPROF runs
Contracts
MPROF freeze Powerlines Freeze Power Lines exchange in MPROF runs
MPROF freeze SpotMarket Freeze SpotMarkets schedules in MRPF runs
MPROFon Switch to activate Market Profiles analysis
MPROF ramp limit Obey modified ramp constraints in MPROF runs
Caution
Modifying application tuning requires deep know how on the HTC algorithm and should only be done by
qualified persons.
The MIP gap limits are measures for the accuracy that should be achieved. The settings shall be as follows:
MIP gap rel 1 = 0.005; MIP gap rel 2 = 0.01; MIP gap rel 3 = 0.05
The relative MIP gap 1/2/3 are applied to the so-called “relative MIP gap” which measured in relative units
(range 0.0 … 1.0). The MIP break criteria can also be provided in absolute units of the objective function (ie.
in EUR). A selector determines which set of break criteria (absolute or relative) is applied.
The parameter ‘MILP time’ must be adapted according to the complexity of the problem and depend on the
performance of the program. The desired figures are given as part of the release notes.
The other parameters should not be modified.
Select “HTC Results” from the application menu or from tree menu, and check the results by:
System Overview
System Reserves
Area Overview
Area Reserves
Area MPROF
Power Lines
Cogen Zones
Cogen Storages
Thermal Plants
Thermal Units
Common Steam Headers
Unit Restriction Groups
Fuel Contracts
Fuel Markets
Fuel Restriction Groups
Hydro Plants
Hydro Units
Hydro Reservoirs
Hydro Channels
Hydro Spillways
Energy contracts
Electricity Markets
In general, displays are given per component type and contain several panes for different kind of data.
Additional to the component type results displays, there are displays, which contain all results of the
components assigned to these displays.
In particular:
System Overview
Contains results of all areas and power lines (connections between the areas).
Area Overview
Contains results of all plants in the area.
Thermal Plants and Hydro Plants
Contains results of all units of this plant.
Note
No edit of the results data is possible.
System Overview
You can see the all over the system results, cost overview and Charts.
You can analyze all results and print the results which you want using the print functionality (can be accessed
over a pop-up menu using the “Right mouse button”).
Analogically to the System Overview you can check the Area Overview, Thermal Plants and Hydro Plants
overview displays.
Overview Display
Note
With CTRL + Click-left on one line, this line is marked as hot (bring to front).
This is a toggle function and not saved in the chart settings.
Last three lines show the minimum, maximum and the total sum of the values of the result table.
Note
There are two kinds of schedules within HTC. Power-like and Volumetric-like. The Power-like are to be
interpreted as mean values for the next hour, the Volumetric as the value at the end of the interval.
Select a view displaying results data from the tree menu by left mouse click on the view name.
These views are under default results “HTC Results” or under custom results “HTC UserUI”
Export to Excel
After the results view is displayed right mouse click on the tabular data and select “Export to Excel” from the
popup menu. HTC opens the ‘Save File’ dialog and waits for user to specify directory and file name of the
export file to be created. The data displayed on the view are exported after user presses ‘Save’ button in the
‘Save File’ dialog.
HTC remembers the user’s directory and file name preference for the view as long as the view remains
active, as a result, all consecutive ‘export to Excel’ operations on the same view overwrites the file specified
during first “export To Excel” operation.
Note
Data exported via the Excel interface are stored on the client and not on the HTC server.
Navigate in “jROS Optimization > HTC Model > …” tree menu to the desired component display.
Change data
Use the “Change Data” button to lock the data set and enter edit mode.
After updating the data by manual editing, you can use Save Data, Save Data with Comments or Cancel
button from the tool bar.
Save data
Click the “Save Data” button to store the data in the database or use the “Save Data with Comments”
button to store the data and give comment to your modification. This comment is given in the Variant Log
display.
Note
In case of schedule data, after save button is pressed, a post processing will be performed to check and
remove equal values of subsequent steps which results in an aperiodic schedule that is saved (only value
changes are stored in the database).
Cancel
Any data modification can be interrupted by use of the “Cancel” button to discard the update.
After clicking the “Save Data” button or the “Save Data with Comments” to store the data in the database an
input check is performed and gives a warning if the data are implausible.
Navigate in “jROS Optimization > HTC Model > …” tree menu to the desired component display.
Change Data
Right mouse click on the table which will be changed, and select the “Import from Excel” option.
Choose the Excel document where the new data is stored. Then the Excel document will be opened. Check
your data once more then close the document. Finally you can see the new data in the table.
Note
The Excel file must be stored on the client and not on the HTC server. Furthermore it must contain in the first
worksheet exactly the data that you want to import.
Best practice operation is to export a table first by use of Excel export and use this file for the import.
Caution
Date/Time values in the -to be imported- Excel file must perfectly match the Date/Time values of the selected
period. Non corresponding Date/Time values results in a rejection of the complete import procedure
Save Data
Click the “Save Data” button to store the data in the database or use the “Save Data with Comments” button
to store the data and give comment to your modification. This comment is given in the Variant Log display.
Or “Cancel” button to discard the import.
Cancel
Any Excel import can be interrupted by use of the “Cancel” button to discard the update.
Chart Menu
HTC results may be analyzed using the chart displays available in the results views; the charts can be
adapted in order to modify their format to the most useful one for analysis.
Use the “Right mouse click” button to open the chart menu.
The chart menu is opened allowing the following actions:
Normal Line modifies all displayed curves to normal line mode.
Step Line modifies all displayed curves to step line mode.
Stacked Step Line modifies all displayed curves to stacked areas with step lines.
Stacked Area modifies all displayed curves to stacked areas with normal lines.
Change Settings opens the advanced modification dialogue.
Save Settings for this Object saves the chart settings for this Object.
Reset Settings for this Object restores the original settings for this Object.
Save Settings for this Type saves the chart settings for this Type.
Reset Settings for this Type restores the original settings for this Type.
Print prints the chart.
Note
Save settings for this type modifies the settings for all objects of this type.
Change Settings
Chart settings are modified using the ‘Change Settings’ window. The ‘Change Settings’ dialog window allows
the following actions (alternatively you can click-left on one line of the chart):
A mouse click on a ‘Chart Line’ in the chart area or in the legend, this makes the ‘Chart Line’ active in the
opened “Change Settings” window.
Right mouse click on empty space, then select “Change Settings” from the opened popup menu.
‘Chart Lines’ contains the list of values (value series) available for displaying on the chart
‘Line Properties’ is used to specify the display attributes of each ‘Chart Line’
Depending on the setting of the User Attributes ‘Sort Chart Legend’ the default order is either equal to the
1
UI Configurator
HTC comes with built-in standard views for data input and output, these views display all single values (static
data), schedule values (dynamic data) and results available in the HTC database.
Users are not allowed to make any changes on the built-in standard views of HTC, but they may define their
custom views in HTC User UI.
Select “HTC User UI > UI Configurator” in the tree menu or from application menu.
Specify a name and short name for the new view and press the ‘OK’ button.
The name has to be unique. If a user tries to set a name which is already existing he gets an HTC
message and has to set a unique name. Once the UI Name and Short Name are saved they can not be
changed.
Define the content and layout of the view as described in chapter 0.
After updating the configuration press the ‘Save Data’ button to store the changes.
If you have once saved a UI Name and Short Name it can no longer be changed by Edit.
Note
When a new UI display is created, all roles get read permission for the UI display automatically. If the UI
display is editable, an administrator needs to give write permission for the display to roles
You can set the permission for the user UI on role basis. Select “HTC Administration > Roles” from the tree
menu or from the application menu. Select the role for which you want to set the permission. Select the
“Configured Displays Permissions” tab. Use the “Change Data” button to access the permissions list.
Set the read and / or write permissions of the user displays.
UI Configurator
To modify a custom view configuration select “HTC User UI > UI Configurator” in the tree menu or from the
application menu, then select one custom view configuration and press the ‘Change Data’ button .
After updating the configuration press ‘Save Data’ button to store the changes.
UI Configurator is composed of three main parts:
Options part is at the top of the view, using this part you can:
Modify the type of the view (Configuration Type)
- Mixed – view contains both single and schedule values
The content definition part allows a user to modify the view’s content and layout.
The Filter part is used for the selection of the components and attributes to be added/removed to/from the
view content. User should follow the following steps to add/remove an attribute to/from the view
Select the type of the HTC component
Select HTC component(s)
Select attribute(s) to be added/removed
Note
Right click on the title ‘Selected’ opens a menu to ‘Check all’ / ‘Uncheck all’ elements of the list.
Note
The views content is always the cross product component / attributes.
Different component types are allowed to be combined in one view.
The User display has to be updated manually every time you add a component to the model because this
new component will not be visible in the user interface automatically.
The Selection part is used for formatting the view content. It contains the list of components/attributes and
formulas as well as their format information. You may add/remove formulas to/from the list by right mouse
click selecting ‘Insert Formula’/’Delete Formula’ from the popup menu.
Digits – number of precision digits to be displayed, for instance a value of 95,123456 is displayed as
95.12 with 2 digits precision and 95.123456 with 6 digits precision
Column Index – display order of the columns, values must start from one and increased by steps of one,
the values must be consecutive, i.e. skipping of a value is not allowed.
Width – width of the column displaying the values of the attribute in the UI display
Chart – check box used to add the attribute to the chart display of the view in the UI display
Note
Use the order by function at the bottom to define the order of your columns.
Formula Specification
User may specify formulas using the four basic arithmetic operations, parentheses are not supported.
A formula has the following syntax:
Where:
Column: is composed of the capital letter ‘C’ and the column index of an attribute column;
i.e. C1, C12, C14
Note
After adding / removing columns all column indices need to be updated.
New Component
Select “HTC Model” ” from the application menu or from the tree menu, then decide which components you
want to add. For example add a new thermal unit. Select “Thermal Units”, the Thermal Units view is
displayed, then Press “New Data” button. Enter the name and short name of the components and press
“OK”.
Enter at least the mandatory data and use “Save Data” button to add the components.
The new components automatically appear in the selection tree on two places:
HTC Model (as new leaf in the given component type)
HTC Results (as new leaf in the given component type)
Caution
Creating new components requires deep know how on the model of HTC and should only be done by
qualified persons. If you are not familiar with details of modeling you may create models, where HTC engine
detects ‘DataError’ and you cannot use this data set for calculations unless the erroneous component is
corrected.
Note
A detailed description of the HTC model is given in the document ‘Technical Specification HTC’. Please
consult the chapter ‘Data Model’ for the available components, the attributes and the topological relations.
A short description of the attributes and topological relations is given as a tooltip, if you move your mouse
over the input field.
Copy component
Another possibility to create a new object is the use of “Copy Data” button. All data of the selected
component are copied and a new component is created under the given name. Also all topological relations
to predecessors are copied.
Note
Copy component copies all topological links to predecessor components.
Copy component does not copy topological links to successor components.
Copy component does not copy successor components. Hence copying a plant does not create units.
Rename component
Delete component
Existing components can be deleted by use of the “Delete Data” button. Confirm the deletion in the
displayed dialog box.
Caution
Deleting components cannot be undone. If you are not familiar with details of the model you may create
models, where HTC engine detects ‘DataError’ and you cannot use this data set for calculations unless the
erroneous component is corrected.
Note
Delete components deletes all topological links that are connected to the component.
Delete component does not delete any predecessor or successor component.
E.g. deleting a plant will not delete the units of this plant but leave there plant field ‘empty’.
It is recommended to save the variant (data set) before you make significant modifications.
New variant
Select “Variants > Variant Management” from tree menu, then press “New Data” and define:
New Variant ID
Name
Description
Workspace
Private check box
If the Private check box is activated, only the user who created the Variant can see it and has access to it.
Now you should select “Copy from Variant” and choose the variant name from the variant list. For the quick
selection of source variant you can use the Filter Options.
Save variant
Select “> Variants > Variant Management” from tree menu, then press “Save Data” button.
The .dmp file is saved on the client.
Select the variant from drop down menu and define the name of the .dmp file as shown as below.
Note
Depending on the size of the data set saving may take a few minutes.
Restore variant
Select “Variants > Variant Management” from tree menu, then press “New Data” and define:
New Variant ID
Name
Description
Workspace
Private check box
If the Private check box is activated, only the user who created the Variant can see it and has access to it.
Now you should select “Copy from File” and choose the file name from the drop down menu.
There are two folders for the “.dmp” files. One is used for the files you have created by saving a variant to a
file. The other one is used for the automatic storage function to ‘archive’.
To restore a variant from the archive, please use ‘Copy from Archive’ to access these dmp-files.
Note
If you have copied the file from another system to the directory of the server, an administrator must update
the table variant dump files before file appears in the list of available files.
Delete variant
Select “> Variants > Variant Management” from tree menu then press “Delete Data” .
Now you should select the variants you want to delete by use of the check boxes.
Online variant
Note
One variant is marked as the so-called ‘online’ variant. This variant cannot be deleted. It may serve as a
master variant for all structural modifications of the data model.
The online variant is set by use of the ‘Change Data’ button of the variant manager .
Select “> Variants > Variant Settings” from tree menu then press “Change Data” button.
Look in the “Variant Logging” group of settings. Now check the “Extended Logging” check box to enable the
detailed logging functionality. You can also set the automatic deletion of logging data after a certain amount
of days
Caution
The data needed for the logging functionality can increase to a huge amount, so it is a good practice to set an
Automatic deletion of this data, or check the disk capacity in a periodical manner.
Note
The “Automatic deletion” setting is used also for the archived schedule data and messages from the
message list after “Export Interface with Archiving” has been executed.
Database Cleanup
Select “> Variants > Variant Settings” from tree menu then press “Change Data” button.
Look in the Database Cleanup group of settings. You can set the automatic deletion of schedule data after a
certain amount of days.
Additionally you can find a button “Start” for the deletion of the redundant records in schedules. After this
button is pressed a clean-up operation is started. jROS checks all the variant schedule data and deletes the
redundant records (where values are equal in the subsequent time steps) from the database which results in
aperiodic schedules. The number of deleted records are recorded in the variant log.
In the “Variant Logs” display press the “Delete Data” button. All log data will be deleted.
Note
The calculation of the number of passed days is: server system date (Application-Server) minus number of
days specified in the settings dialog.
Note: 0 days also means that automatic deletion is disabled.
The check for deletion and the effective deletion happen before a log entry is written to the database. There
is no automatic process running in the background, since this would mean unnecessary server load. This
means that the deletion happens only per variant. We recommend that automatic deletion is enabled since of
course a lot of logging information means higher storage consumption on the database.
If you create a new variant based on a dumpfile, then the logging content of the dumpfile will be imported as
well. If autodelete is active in the imported dump, the logging information will be deleted whenever the next
log entry is written. If you want to keep the logging information, you need to disable autodelete after the
import.
The deletion of log records is triggered any time when a new log record is written. As long as you do not
make any changes (save data, start a calculation run, import XML-files...) the outdated log records are not
removed.
Note
The “Automatic Deletion” in the archived variants is set to 0, the reason for that is, that the restored variants
should remain in the database, and should not be deleted automatically.
Workspaces
Select “HTC Administration > Workspaces” from the application menu or “> HTC Administration > >
Workspaces” from tree menu, the Workspaces view is displayed, then press “New Data” button and
enter the name of the workspace. Define a description and press “Save Data” button to save your
workspace.
The Workspace Name and Description can be changed at later date even when it contains variants.
Note
Workspaces are groups of variants. Typically they represent a group of similar data sets to which a group of
users is allowed to access.
Note
Only administrators are allowed to modify and create workspaces, roles, and role assignments.
Roles
Select “HTC Administration Roles” from the application menu or from tree menu. To add a new role use
“New Data” button and enter the role name, to modify use “Change Data” button.
In the first pane, role decision part welcomes us. You can use check boxes to add/remove the permission to
the role:
Read permission is required to view model and result data. However, for configured UI displays the
permissions are defined separately in the pane "Configured Displays Permissions".
Write permission is required to modify model data.
Create permission is required to create components in the model.
In the second pane, you can give import permission to the role as below.
In the third pane, you can give export permission to the role as below.
In the fourth pane, you can give pre-defined display permissions in a specific variant to the role.
Use drop down menu to select the specific variant.
Role Assignment
Select “HTC Administration Roles Assignment” from the application menu or from the tree menu, to
Note
The values correspond to the groups defined in LDAP.
The combination of roles and workspace is defined in the central access system and must be consistent with
the information obtained via LDAP.
Select “Variants Variant Dumpfiles” from the application menu or from the tree menu, to open the list of
dumpfiles. To modify the list of dumpfiles use the Change Data button. Now you are able to change the
dumpfile list. You can change the entries of saved dumpfiles by directly editing them.
Right click with a mouse on the list brings a pop-up menu with the functionality to delete dumpfile entries or to
insert new dumpfile entries (e.g. archived before, and now restored).
Finally use the “Save data” button to store the changes or dismiss the changes using the “Cancel”
button.
Select “Users Active Users” from the application menu or from the tree menu, to open the list of active
users Disconnect active users from HTC Server. Use the “Change Data” button to enter the list. Select
the checkbox “Terminate Session” on the left of the user you want to disconnect from the server. You can
also select more than one user.
To disconnect the user use the “Save data” button. All selected users are now disconnected from the
server. Every disconnected user gets a hint, that he is disconnected and the jROS UI ends automatically for
him. User must start the application again, if he wants to continue to work with jROS.
3.1 Notation
The character ’€’ is used for the currency unit, that is the base for all price and cost related data.
Electrical power is always measured in MW, electrical energy in MWh.
Other types of energy or power (e.g. primary energy from fossil fuels, steam production/consumption by
ThermalGeneratingUnits etc.) are measured in GJ or GJ/h, respectively. This is also true for quantities related
3
to these types of energy/power; e.g. the calorific value of a FuelType is given in GJ/ton, or GJ/Nm etc.
However, it is up to the user to enter a certain quantity in units that are not derived from GJ, as long as this is
done consistently, i.e. for all data points in the system where this quantity or a derived quantity is used.
Example:
If the calorific value of a FuelType is entered in BTU/barrel,
- then the fuel’s (FuelContract's, FuelSpotMarket's) price must be given in €/barrel
- the respective quantities of other fuels that are subject to a common constraint or that can be burned
by such a TGU must also be based on BTU
- etc.
Steam production is measured in MWth (energy in MWhth) and all related data (values, schedules,
characteristics etc.) are rescaled accordingly in a consistent way.
CGS
EC
CGZ CGI
SM CCP FM FRG
PL Area TP TGU FS FC FT
CSH
ERG
SYS URG
RES
SW
HV HP HGU
CH
RES
Figure 1: Components of the HTC data model
2
USGs are created automatically with the component assigned to them
The model of the thermal power generation subsystem can be built of the following components:
FuelTypes (FT) describe the kind of fuels.
FuelContracts (FC) describe the contracts to buy fuel.
FuelMarkets (FM) allow to exchanges fuel on spot.
FuelStocks (FS) serve as balance nodes for one kind of fuel.
FuelRestrictionGroups (FRG) define constraints on fuel contracts and markets.
ThermalGeneratingUnits (TGU) are equipments for energy conversion with specific unit types (fuel to
power, fuel to power / steam, steam to power / heat).
ThermalPlants (TP) are aggregating ThermalGeneratingUnits.
CommonSteamHeaders (CSH) serve as balance nodes for steam in the plant.
CogenZones (CGZ) serve as balance node for heat demand.
CogenStorages (CGS) are storage devices for heat.
CogenerationInterchanges (CGI) limit the transfer of heat between CGZs
CombinedCyclePlants (CCP) are an alternative model for combined cycles
UnitRestrictionGroups (URG) model constraints on ThermalGeneratingUnits
EmissionRestrictionGroups (ERG) model constraints on emission
Fuel
Gas turbine
Boiler
Steam turbine
Steam reducer
Cogen storage
Cogen interchange
Cogen zone
Figure 2: Example of a common steam header plant feeding a cogeneration network
The following table lists all possible and mandatory connections:
FuelContract (FC) 1 FT n FS
n FRG
FuelMarket (FM) - n FS
CombinedCyclePlant (CCP) 1 TP -
A HydroGeneratingUnit (HGU) represents a system of turbine and generator, pump and motor or
pump/turbine and motor/generator. Figure 3 shows the hydro components and their symbols used in hydro
topology pictures throughout this document.
G M
G/M
M G/M G G G
Within a hydro topology model, the interconnection between the components must satisfy certain restrictions.
A HydroGeneratingUnit must always have a Reservoir connected upstream. On the downstream side, an
HGU may have another Reservoir, a Channel or it may be left open-ended, as shown in Figure 4. Pump units
or pump turbine units must be connected to a downstream Reservoir (except for Pumped Storage Plants).
The restriction that an HGU must have a Reservoir on the upstream side also holds for models of run-of-river
plants. In this case the respective Reservoir is modeled with its attributes minimum level and maximum level
set equal. The power plant’s inflow is an attribute of the Reservoir as well, as illustrated in Figure 5, or may
come from another upstream hydro system component.
inflow
minimum level =
maximum level
G G
A Reservoir may be fed from several HGUs, Spillways or Channels. Its discharge may contain several HGUs
or Spillways as shown in Figure 6.
G M G/M
G M G/M
Channels receive their water flow from any number of Spillways, turbine units or other Channels as depicted
in Figure 7. Their water output may be connected to a single Channel or Reservoir or may be left
unconnected.
G G
Spillways always have a Reservoir in their upstream and may have a Channel or another Reservoir on the
downstream side as indicated in Figure 8. The downstream may be left unconnected.
Table 2 gives an overview of the above topological restrictions. Based on these hydro-power system
components, models of any hydro-power system can be built up. The components’ parameterization is done
using their attributes, which are described in detail in chapter 3.7.
Area - n HPs
3
Except for Pumped Storage Plants
If they are part of a Pumped Storage Plant, pump units and pump turbine units do not require a downstream
reservoir.
HTC is calculating with a fixed time step for the given planning horizon. The user can select the length of the
time step before start of the optimization between:
time step 6 hour,
time step 3 hour,
time step 2 hour,
time step 1 hour,
time step 30 minutes,
time step 15 minutes,
Input Data are read from non-periodic schedules at the corner points.
P [MW]
time grid
limit
effective
limit
t [time steps]
Figure 9: Reading of non-periodic schedules in HTC
4
Must be integer multiples of the selected time step
Each unit and each contract is assigned to one area of supply. Each of these Areas has its own demand and
can be connected to other Areas by limited interconnections. This model can be used for an optimization with
a simplified model of the electrical grid. It can also be used for an optimization on different markets with the
possibility to transfer power from one Area to another.
area A
area C
area B
area D
One basic feature of HTC is to balance the total demand in each Area by use of the units’ generation,
optimizable power contracts, spot markets and the possibilities to transfer power from one Area to another.
The major results on Area level are total generation, total contracted power and the flows to other Areaa, as
given in Table 3. The results are subject to the direct constraints shown in Table 4.
Cost of the transfer from one to another Area Schedule €/MWh CostFacTransferSched
Cost of the transfer from one to another Area Schedule €/MWh CostFacTransferSched
Regulation services and reserves are requirements on the units' ability to rapidly change their power output
due to incidents within the power system that need fast countermeasures.
These rapid changes influence the power output of the units' optimal generation schedule. For every time
horizon, the change in power output is desired, there are particularly equipped units that contribute to the
respective regulation services and reserves. Depending on the power system characteristics, there are
primary and secondary regulation and other regulation reserves like spinning reserve and minute’s reserve.
With HTC, all types of regulation services and reserves are treated in the same way; the specific needs are
respected by the time the rapid changes in the units’ power output are to take effect and by the units'
contribution to the respective regulation services and reserves. HTC provides five reserve classes that
represent any of the specific regulation services.
For every reserve class, the regulation requirements are given separately for every area and for upwards and
downwards regulation. These requirements must then be fulfilled by the units.
HTC determines the contribution of the units to the reserve classes as part of the overall optimization. It
considers reserves as transferable from one area to another respecting the free transfer capacities.
The major results on area level are the regulation capability in all reserve classes and transfer of regulation
reserve between the areas, as shown in Table 6. These results are subject to the direct constraints of total
required regulation capability (Table 7). Some further input data are given only for the entire generation
system (Table 8)
For each unit the user can specify the contribution to the five reserve classes independently by selecting a
reserve mechanism. This reserve mechanism defines the strategy the unit contributes to the respective
reserve class. The following strategies are available:
NoReserve
The unit does not contribute to the reserve class.
PrimaryReg
The unit contributes to the reserve class if primary regulation is switched to On. The contribution is either
zero within a range between min/max limits. The constraints given in Table 9 are additionally observed
for the respective unit. A unit cannot contribute to more than one reserve class with reserve mechanism
PrimaryReg.
SecondaryReg
The unit contributes to the reserve class if secondary regulation is switched to On. The constraints given
in Table 10 are additionally observed for the respective unit. A unit cannot contribute to more than one
reserve class with reserve mechanism SecondaryReg.
Spinning
The unit contributes to the reserve class if it is committed and its generation is not below minimum
power. The reserve contribution upwards is the difference between maximum generation and scheduled
generation; reserve contribution downwards is the difference between scheduled and minimum
generation.
Ramping limits/activation time and a user defined maximum contribution are additional constraints on
both reserve contributions.
Standby
With this reserve mechanism, reserve contribution upwards is the difference between maximum and
scheduled generation; reserve contribution downwards is equal to the scheduled generation.
Ramping limits/activation time and a user defined maximum contribution are additional constraints on
both reserve contributions.
StbyPump
StbyPump is for pumps and pump turbines. For units in turbine mode it works the same way as StandBy.
Units in pump mode contribute to the upwards reserve with their pumping power (absolute value). Pump
turbines that are offline contribute to the downward reserve with the (possible) pumping power.
To avoid schedules where the allocation of SR contributions frequently changes between (equal or very
similar) units, a tuning parameter (SAParam.SRchangePenalty) allows to penalize a change of the SR status
of a unit (similar to startup costs). To consider these “switching costs” In the first time interval of an
optimization, a unit’s current SR contribution is taken into account. If this measured value is not available, this
decision in the beginning of the planning horizon will be free (“of penalty costs”).
Table 11: Constraints for all reserve mechanisms (except prim. and sec.)
An example illustrates the relationship between reserve class, activation time and reserve mechanism:
consider five reserve classes assigned for primary regulation, secondary regulation, spinning reserve, minute
reserve and free capacity, which are served by the units hydro turbine, pump, pump turbine, run-of-river, gas
turbine, steam turbine and nuclear turbine. Their assignment to the reserve classes are then specified as
shown in Table 12: the unit 'hydro turbine' is assigned to Class 1 with reserve mechanism PrimaryReg, etc.
Table 12: Example of unit assignment to reserve classes by reserve mechanism settings
The user can switch on/off the regulation requirements for specific reserve classes. A time value defines the
activation of the regulation (‘Activation Time’), which is critical for units assigned with ramp limit dependent
reserve mechanisms, like Spinning and Standby. A very long activation time means that ramp limits are no
restriction for this reserve class.
Another switch defines whether the power assigned to a specific reserve class is part of another reserve
class as well or whether power assignment is exclusive for the respective reserve class.
HTC determines the contributions of all units to the respective reserve classes as shown in Table 13.
HTC minimizes the overall costs (and penalties of soft constraints) if operated under mode ‘FullPlanning’ and
maximizes the overall revenue if operated under the mode ‘Trade Optimizing Scheduler’. These costs are the
sum of costs of thermal units as defined in chapter 3.6.14, hydro units as defined chapter 3.7.2 and electricity
contracts 3.8.1. They are summarized for the user as given in Table 14, where the total sum of costs is the
sum of fuel costs, operating and maintenance costs and start-up costs.
Additionally, HTC provides the dual variables for all Area constraints, which can be interpreted as marginal
costs for these constraints, as given in Table 15.
3.6.1 FuelTypes
A (fossil) fuel type describes a type of primary energy source, which is characterized by a (constant) calorific
value. Its HTC attribute definition is given in Table 16.
3.6.2 FuelContracts
A FuelContract describes a contract on primary energy, which is characterized by a fuel type and a (time
dependent) price. One FuelContract can supply an arbitrary number of thermal units. The usage of a fuel can
be limited in flow and volumes over the time.
Long-term fuel limitations are supported by a fuel target schedule, a target value for the accumulated
consumption. It defines the amount of fuel to be used within the planning horizon as difference between the
value at the end of the planning horizon and the current consumed volume. If the long-term limitation ends (or
"is reset") within the planning horizon, the accumulated target has to be reset to zero, and two limits are
respected in HTC, the first from the beginning of the planning horizon to the end of limit 1, the second from
beginning of limit 2 to the end of the planning horizon (cf. Figure 11).
The target limit can be specified as minimum, maximum, target (minimum + maximum) or open. Alternatively,
the user can use a shadow price, which is added to the fuel price but not part of the cost determination.
In addition to the target conditions the flow can be limited by a minimum and maximum schedule.
A major feature of HTC is the management of the available FuelContracts in the thermal generation system.
The main result attributes per fuel contract are shown in Table 17, their direct constraints in Table 18 and
further input data is given in Table 19.
Dim’ is used for Dimension, it may be any desired fuel dimension as ton, MBTU, SKE, …
5
HTC-plan
Target schedule
HTC-limit
current
time
3.6.3 FuelStocks
A FuelStock serves as balance node for a specific type of fuel (cf. chapter 3.6.1).
A FuelStock can be connected to
ThermalGeneratingUnits (TGUs) to supply their fuel consumption
FuelContracts for import/purchase of fuel through bilateral contracts
FuelMarkets for import and export of fuel
Fuel restrictions on several FuelContracts are handled by means of Fuel Restriction Groups. Combined limits
(several groups on one fuel contract) are supported as well. This feature is also used to model pipeline
constraints. This allows the user to handle
flow limits
daily fuel amount limits
limited amount on freely defined period
for a group of FuelContracts (of the same fuel type) 6 . The respective fuel group attributes are summarized in
Table 21.
HTC will determine the total consumption of the fuel group respecting these limits.
6
. The group may also contain only one FuelContract
3.6.5 ThermalGeneratingUnits
A ThermalGeneratingUnit (TGU) is used to model a set of machines that convert primary energy (Pin) into
electrical energy (Pel) and/or a cogeneration product (Pth). This model applies for single units. It is also used
to model the components of a combined cycle plant that convert primary energy into electrical energy and/or
high pressure steam, components that convert high pressure steam into electrical energy and/or low pressure
steam and components that convert low pressure steam into the cogeneration product.
The unit type determines the underlying unit model. The following types are supported:
CombustionBoiler (also auxiliary boilers)
CombustionUnit (combustion turbine + generator)
CombustionUnit_HRSG: combustion unit with heat recovery steam generator
CombustionUnit_HRSG_BP: combustion unit with HRSG and bypass
CombustionUnit_HRSG_SF: combustion unit with HRSG and supplementary fire
CombustionUnit_HRSG_SF_BP: combustion unit with HRSG, supplementary fire and bypass
SteamReducer: (reduction valve,)
SteamDump
SteamTurbineBackPressure: steam turbine – type back pressure
Some TGU types are only relevant with optional HTC modules or features.
The energy consumption of TGUs during operation is determined by a three-dimensional characteristic, the
PrimaryEnergyPowerCurve3D (PEP). The characteristic is represented by an array of points. HTC
7
Nuclear units are modeled as steam units
determines the energy consumption by linear interpolation. The envelope of the characteristic defines the
operating range for the mode On, as depicted in Figure 15. In order to span a region as operation range, two
points with equal Pth must be provided. Mismatching Pth result in fixed operation, illustrated by the points A
and B in Figure 12. Examples of PEPs for various unit types are given in Figure 13 and Figure 14. The
attribute definition of the PEP (PrimaryEnergyPowerCurve3D) is shown in Table 22.
Pth
A
B
Pel
Figure 12: PEP’s operating range
Pin(Pel,Pth)
Pth3
Pth2
Pth1
Pth0
Pel
Figure 13: Example of a PEP for an extraction Steam Turbine (operating range is shaded)
Pin(Pel)
Pth4
Pth3
Pth2
Pth1
Pel
The following table gives an overview of the unit types and some characteristics of their PEP curves (some
unit types are only available with the optional module “Cogeneration”):
For gas turbines with bypass stack (CombustionUnit_HRSG_BP and CombustionUnit_HRSG_SF_BP), the
PEP curve has two distinct branches:
Pth = 0 for bypass operation (open cycle mode
Pth > 0 HRSG in operation (closed cycle mode
Setpoints (Pel|Pth) between these two branches are not allowed, except during startup or shutdown.
One of the main results of HTC is the determination of the unit commitment schedules, the
CommitmentSched1, of the thermal units. The commitment is given as an enumeration.
Off: the unit is off
StartPrepHot: the unit is prepared for a hot-start and not yet synchronized
StartHot: the unit is synchronized and following its hot-start procedure while running up to minimum
generation
StartRestHot: the unit is above minimum generation but still limited due to recent start-up
On: the unit is above minimum generation and can be dispatched without limitations from the start-up
StopPrepare: the unit is prepared for shutdown but above minimum generation
Stop: the unit is ramping down (below minimum generation) but still synchronized
Two more start-up procedures – warm-start, cold-start – are supported in the same way as hot-start resulting
in the options StartPrepWarm, StartWarm, StartRestWarm, StartPrepCold, StartCold and StartRestCold.
Table 24 gives a summary, with ‘X’ representing ‘Hot’, ‘Warm’ and ‘Cold’.
The StartUpTable (SUT) determines the start-up procedure; i.e. it defines limitations for generation (electrical
and/or thermal) and fuel/steam consumption from the beginning of the resp. startup sequence of a TGU, until
stable operation is reached. 3 procedures are supported; depending on the downtime, HTC will select the
hot-, warm- or cold-start procedure. The downtime is defined as the time between last de-synchronization and
the next scheduled synchronization during start-up. The downtime before synchronization gives the upper
limits for the procedure (zero refers to the hot-start procedure, …). The SUT is defined by a set of data points
composed of time and power values. A linear interpolation between those data points make up the SUT. The
first data point is <0 h, 0 MW. 0 GJ/h> by convention. The TGU’s current minimum and maximum generation
limits of stable operation, Pmin and Pmax (cf. chapter 3.6.9), determine the SUT’s impact on the TGU’s
operation range, as depicted in Figure 15. The part of the SUT below Pmin is treated as strict limit, whereas
the SUT’s fragment between Pmin and Pmax is treated as upper limit on the power output. For
CombustionBoilers the SUT defines the limits on the output of steam / heat.
P (MW)
Pmax
Pmin
S t
Since optimization is done in discrete time steps, the SUT is converted to time steps as well. The conversion
starts at the point of synchronization, ‘S’ in Figure 15, which is, by convention, put at the beginning of a time
step. The value assigned to the time steps is the integral of the SUT’s linear interpolation over the interval of
the respective time step. Figure 16 gives an illustration for Pel. The details of this integral are described the
Technical Specification.
P (MW)
Pmax
Pmin
S t
The ShutDownPowerCurve2D (SDP) determines the shutdown procedure from begin of ramping down until
de-synchronization. It serves as an upper limit for the output power (strict limit below minimum generation), as
illustrated by Figure 17. For CombustionBoilers it defines the limits on the output steam / heat.
The value assigned to the time steps is the integral of the SDP’s linear interpolation over the interval of the
respective time step.
P [MW]
Pmax
Pmin
Furthermore, the commitment schedule is subject to the direct constraints of minimum downtime, minimum
uptime and the TGU's availability.
Minimum uptime is the minimum time that a TGU has to remain online after synchronization (i.e., minimum
time between synchronization and de-synchronization). Minimum downtime, is the minimum time that a TGU
has to remain offline after de-synchronization (i.e., minimum time between de-synchronization and
synchronization). Table 26 gives a summary.
The availability schedule, GenUnitOpSched, restricts the possible commitment states of a unit. Its values are:
NotAvail: the unit must be de-synchronized,
Avail: the unit can be scheduled freely,
MustOn: the unit must be synchronized,
FixP: the unit must follow user defined schedule or
FixPReserve: like FixP but the unit still can contribute to the reserves.
MustOnPR MustOn with PR contribution enforced
MustOnSR MustOn with PR contribution enforced
MustOnPRSR MustOn with PR and SR contribution enforced
FixPPR FixP with PR contribution enforced
FixPSR FixP with PR contribution enforced
FixPPRSR FixP with PR and SR contribution enforced
FixP overrules the constraints on minimum power, ramps, and if set for the whole planning horizon also the
minimum up- and downtime. It also overrules the reserve mechanisms, i.e. a unit on FixP does not contribute
to any reserve.
HTC supports two types of start-up power curves, depending on the start-up power curve selection
(StartUpPowerCurveSel, see Table 27). In case ‘WithRest’ is selected, the SUP is treated as described in
section 3.6.7. In the case ‘WithoutRest’, the SUP is treated as fixed generation limit up to its last data point,
which lies between Pmin and Pmax, as depicted in Figure 18. When the last data point of the SUP is
reached, the unit is free to be scheduled for stable operation, as described in section 3.6.1.
P (MW)
Pmax
Pmin
S t
StartPrepX StartX On
Figure 18: Start-up power curve without power restriction in operation range
The main result of HTC are the generation schedules. Table 29 gives a summary for thermal units. In addition
to the availability schedule (GenUnitOpSched, cf. chapter 3.6.7) and the operating range defined by the PEP
(cf. chapter 3.6.6) the unit’s power output is restricted by the limits of minimum capacity (MinimumMW) and
maximum capacity (MaximumMW) and the limits of minimum derated capacity (GenUnitDerMinSched) and
maximum derated capacity (GenUnitDerMaxSched) as shown in Table 30, arising from unit maintenance.
The minimum and maximum capacity limits are the outermost technical limits and serve as input check for the
time-dependent derated capacity limits. For TGU types that (also) produce a cogen product (steam etc.),
corresponding restrictions also apply to this product.
Generation rate limits define the maximum change of power output of a unit between two time steps. The
limits can be different for generation increase and decrease. The limits are only active within the operating
range. Below minimum power output HTC follows strictly the curves for start-up or shutdown (cf.
chapter 3.6.7). Depending on the unit type additional rate limits on the thermal production are given as shown
in Table 31.
In addition to the ramp rate limits any change in generation and/or thermal production can be penalized to
achieve smooth operation schedules. These penalties are given unit type dependent during system tuning.
Modification of these values is restricted to special users.
For a thermal unit that consumes fuel the user must assign FuelStocks. Up to five FuelStocks can be
assigned to the unit. HTC allocates the energy consumption as calculated from the PEP (cf. chapter 3.6.6) to
the available contracts and determines the individual fuel consumptions as shown in Table 32. X = 1…5
represents the assigned fuels in alphabetical order. The allocation is optimized using the assigned fuel
constraints.
The fuel rates during co-firing can be limited for each TGU to a user-defined minimum and maximum value
for the assigned fuels. This is a direct constraint on the consumption of fuels as described in chapter 0. The
limits must allow the resulting fuel rates to add up to 1.
The fuel consumption of a TGU during the startup procedure differs from the consumption during stable
operation. While the latter is determined by the PEP curve (ch. 3.6.6) or the FCP table curve (ch. Error!
Reference source not found.), the former is given by the Pin column of the SUT table (ch. 3.6.7)
This start-up fuel consumption is especially significant for big steam units and relevant as some units use
another more expensive fuel for start-up than the fuel(s) used for stable state operation. Even more, these
units use the start-up fuel also during the ramp up phase, i.e. during the commitment states StartPrepX and
StartX (until a minimum stable generation or the end of the SUT curve is reached).
Therefore HTC allows to define a specific start-up fuel. The fuel consumption during operation (and also
during ramp-up) is determined from the PEP (cf. chapter 3.6.6).
The additional fuel consumption - as determined from the SUT - is given in the time step(s) before
synchronization and is distributed over the preparation phase of the start-up, as defined in the start-up power
table (cf. chapter 3.6.7).
The following data are relevant for the determination of start-up fuel:
name of FuelStock used as the start-up fuel
If no separate start-up fuel is specified, the first assigned fuel of this unit will be taken.
A major part of the objective and a main result of HTC is the determination of the costs for operating the
thermal units like fuel costs, operating and maintenance cost and start-up cost, as well as the sum over all of
them. Table 35 gives a summary. The fuel costs are determined as sum of the fuel consumption(s) of the unit
and the prices of the corresponding fuel contract(s).
The operation and maintenance costs are determined from the produced energy and a time-dependent
factor. Depending on the unit type the factor is multiplied with the produced electric energy (for all units that
produce electricity) or is multiplied with the produced thermal energy (CombustionBoilers and
SteamReducers).
Optionally, also fixed operation and maintenance costs are added as result of hours of operation (hours with
electric and/or thermal production) and a time dependent factor. Table 36 shows a summary of the cost
relevant attributes.
Start-up costs are determined as sum of fixed start-up costs and the costs for the additional fuel consumption
due to the start-up as described in chapter 3.6.12.
Optionally, shadow start-up costs can be considered (as an addition to the fixed start-up costs). They are
counted in the objective function of the optimizing algorithm, but not considered in the cost results. This is a
simple way to model e.g. a "risk premium" to avoid a shut-down/start-up cycle of a TGU.
As a further option, additional costs that arise from the usage of a particular fuel with a particular unit are
considered by a fuel price adder.
Thermal plants are either groups of conventional thermal units (CombustionUnits or SteamUnits) or Common
Steam Header Plants (see chapter 3.6.16) or Combined Cycle Plants (see chapter Error! Reference source
not found.). HTC determines the sums (as sum over the units of the plant) of generation and contribution to
reserve classes as defined in Table 37.
Fuel
Steam turbine
Figure 19: Common steam header plant model of a 21 combined cycle plant
The CommonSteamHeader (CSH) serves as balance node between the units producing steam (upstream)
and consuming steam. As HTC models the steam flow as flow of thermal energy only there are no specific
parameters for the common steam header.
Multiple pressure and temperature levels within a plant can be modeled as well by several
CommonSteamHeaders. Figure 20 gives an example of a plant with 4 levels. The number of levels
(CommonSteamHeaders) per plant is unlimited.
Different stages of one steam turbine (e.g. high-pressure, medium-pressure and low-pressure) can be
modeled by separate components, if the intermediate extraction shall be subject of optimization. Additional
constraints (simultaneous run) connect the different stages, cf. chapter 3.9.4.
Fuel
Gas turbine
Boiler
Steam turbine
The topmost element of a hydro chain is the water reservoir. The height of its dam gives the maximum level
the water reservoir can be filled up to without overflow. The minimum level results from hydrological
considerations like minimum water for fishery or reliability considerations like energy reserve. Due to the
geological structure of its basin the water reservoir’s content depends on the level. This dependency is
modeled by a curve, the ContentLevelCurve3D, which describes the water content as a function of the water
level and, optionally, of the water release as illustrated by Figure 21 and Figure 22. The level is measured in
meters above main sea level, the Reservoir’s content is given in Mm3. Table 38 gives a summary of the
Reservoir’s hydrological attributes.
content (Mm3)
max
min
level (m)
min max
Figure 21: Reservoir’s ContentLevelCurve3D
content (Mm3)
max
min
level (m)
min max
Figure 22: Release dependent ContentLevelCurve3D
The Reservoir’s water balance is driven by its inflow and discharge. While inflow results from natural inflow
reflecting the amount of water coming from the Reservoir’s catchment area or upstream rivers, the discharge
has a more elaborate set of causes. Apart from discharge due to hydrologic reasons like evaporation and
percolation, there is discharge resulting from power system operation as well. Furthermore, water may be
drawn for agricultural purpose. The hydrological factors and legal clauses are modeled by use of Spillways,
which release water from the Reservoir without generating electric energy. The amount of water released are
limited by minimum and maximum discharge constraints as shown in Table 40. The optimal discharge is
calculated by HTC (cf. Table 39).
The optimal discharge is calculated by HTC (cf. Table 39). Overflow Spillways are a special case protecting
the dam against overflow or excess pressure. Their amount of water released by these Spillways is
determined by the Reservoir’s level with a given characteristic modeled by a curve, the
DischargeLevelCurve2D
Further requirements for a model of hydrological conditions are minimum flow rate on a river for fishery or
minimum water gauge for shipping. These constraints are respected with the HTC topology element Channel.
They are employed to model water flow time delays, level limits or flow limits.
The water flow time delay is the time difference between water entering the Channel and leaving the
Channel. During HTC optimization it is rounded to an integer multiple of the time step. Limits on the water
flow are given by means of minimum and maximum water flow rate and minimum and maximum water level
at the beginning of the Channel. Flow rate and water level are interdependent due to the geological structure
of the river Channel, which the HTC model incorporates by the Channel characteristic, a 3-dimensional curve
specifying their interrelation, the DischargeLevelCurve3D. This curve is further used to compute net heads for
turbines discharging into the Channel.
A summary of the Channel's attributes is given in Table 42. The attributes optimized by HTC are discharge
and level as shown in Table 41.
HTC manages the hydro chain for optimal use of water contained in the Reservoirs, by considering the size of
the Reservoirs, their inflow and discharge together with the time delay the water needs to run through a
Channel. Spillways are used wherever water needs to follow specific paths without generation or do manage
high inflow situations, where more water is available than can be used in generation.
For optimal hydro management the Reservoir’s level are treated in one of two possible ways, starting from an
initial level at the beginning of the planning period. The first strategy defines a Reservoir target level that is
matched at the end of the planning period within a given range. If deviations from the target level exceed this
range, they are treated with cost penalty. The second planning strategy offered by HTC manages the
Reservoir’s level by shadow prices, which reflect a financial value of the Reservoir’s content at the end of the
regarded planning horizon.
Shadow prices as well as target levels may be provided by a preceding mid term planning procedure of jROS.
In this case the topmost, big Reservoirs are usually managed by shadow prices, while the smaller
downstream Reservoirs are treated with target levels in order to let HTC take care of optimal short term water
management.
Based on above attributes (summarized in Table 44) HTC calculates optimal schedules for Reservoir content,
Reservoir level, water release through turbines and water release without generation of electricity (see Table
43).
Electric energy generated by hydro units depends on the three factors discharge, net head and turbine
efficiency, where discharge is optimized by HTC. The net head results from the level difference between
upstream Reservoir and downstream Reservoir or downstream Channel in case the unit is equipped with
Kaplan or Francis turbines. For Pelton turbines, the downstream level is given by the turbine’s reference
level. The reference level for Francis and Kaplan turbines is set to -1.
The turbine unit’s efficiency is itself a function of discharge and net head, modeled by a 3D Curve as shown
in Figure 23. In pumping mode, the units run at constant power. The pump efficiency is a function of the head,
as depicted in Figure 24.
efficiency [1]
head [m] 350m
300m
250m
q [m3/s]
Figure 23: Hydro turbine’s power efficiency diagram
efficiency [1]
head [m]
Figure 24: Pump unit’s power efficiency diagram
Based on the generated electric energy, the hydro unit’s costs are determined. They originate from the two
sources, water cost and energy dependent cost. Water costs are given by the shadow price of the upstream
Reservoir. In case this Reservoir is parameterized for target level instead of shadow price, there are no water
costs for the HGU. A penalty on the Reservoir’s target level is used instead.
Energy dependent costs are further composed of the two parts transport costs and operation and
maintenance costs, where the former represent costs resulting from electricity transport, e.g. network fees
and the latter include all additional energy dependent costs. Both cost factors are considered within a single
attribute, the GenUnitOMFactSched. Generation and pump operation have a separate set of cost coefficients,
as indicated by Table 45. The costs resulting from HTC optimization are given in Table 46.
In pump operation, the costs result from the source of electric energy used for pumping, i.e. a thermal
generation unit or an import contract. HTC optimization decides pump operation for two reasons. Either there
are hydrologic reasons to do so, e.g. the target level of a Reservoir must be reached, or there is a financial
benefit, because an increase in the value of the water stored in Reservoirs is higher than additional cost of
pump operation.
For the operator of a hydro system it is essential to know when to switch on the hydro units and whether the
hydro unit should be operated in turbine or pump mode. HTC optimizes these switch-on and switch-off
decisions by defining the commitment schedule. In contrast to thermal units (see chapter 3.6.7) the
commitment schedule of hydro units has three options:
the unit is operated as turbine,
the unit is operated as pump or
the unit is switched off
and there are no start-up procedures that need to be taken into consideration, as ramping limits can be
neglected within the HTC time steps.
In order to force HTC to select a specific decision due to operational restrictions, an availability schedule can
be given, specifying whether a particular unit is available for optimization, whether it must run or whether it is
shut down due to maintenance or forced outage. Furthermore, the commitment schedule is subject to the
constraints of minimum uptime and downtime. A summary of these direct constraints is given in chapter 3.7.4.
Hydro units are assigned start-up cost on a per start-up base, in €/start-up. Pump units and turbine units have
separate set start-up cost coefficients.
Now, that the decision is taken whether a unit is used as turbine or pump and whether it is switched on, the
decision of the generation schedule can be prepared. This generation schedule is expressed in terms of
water consumption, the scheduled discharge, and in terms of generation, the power production schedule. In
addition to the electricity output, the unit can be assigned to contribute to regulation services and reserves.
For every reserve class it is assigned to, there is a contribution schedule optimized by HTC. An overview of
these optimized schedules is given in Table 48.
The optimization of above schedules is subject to hydrological and electrical constraints. They are considered
for the time a unit is scheduled for operation in either turbine or pump mode. A hydrological constraint is the
discharge of water, which has to be within a given operation range, the minimum and maximum discharge.
Electrical constraints are given by the physical limits of turbine/generator or pump/motor, like minimum
capacity and maximum capacity. Time dependent capacity limits resulting from, e.g. maintenance work, may
be defined using the schedules for minimum and maximum derated capacity. An overview of these direct
generation limits is given in Table 49. The operating range is further reduced due to the regulating ranges and
additional limits when operating primary and/or secondary regulation, as described in chapter 3.6.7. The
regulation range in case of regulation activities follows the same characteristic as depicted in Error!
Reference source not found. for thermal units.
Reserve contributions of hydro units (turbines, pumps, pump turbines) are described in chapter 3.5.2
“Regulation Services and Reserves“.
Short circuit operation for turbination/pumping can be allowed or disabled for all reservoirs via a tuning
parameter (global switch) or via a particular UnitRestrictionGroup (cf chapter 3.9.4).
The Attribute AllowPartialPumping (Boolean, default = FALSE/FullPumping) defines if partial pumping (details
below) is allowed. This feature is effective only for HGUs of type “pump” (not for pump turbines, and not for
turbines, of course).
When the option “partial pumping” is selected, the static and dynamic Pmin and Pmax (MinimumMW,
MaximumMW, GenUnitDerMinSched, GenUnitDerMaxSched) will be used for all hours in a single
commitment period instead of the PumpMW value.
The static and dynamic pumping Pmin cannot be “0” (at least 1 MW) if the unit is available. If the unit is
unavailable, the dynamic value can be put at 0 MW
The start-up costs and the min up/down times (cf. Techspec 3.8.3/4) are only applied to each pump
commitment period (thus not when HTC merely modulates the pump power). No ramp constraints are
applied.
Note: This is a hard constraint and can – in certain cases – cause the violation of constraints like target levels,
demand or reserve requirements.
HydroPlants are groups of hydro units. For these groups, a sum over the individual units’ schedules gives the
schedule for the power plant, summarized in Table 52. As described with the hydro topology in chapter 3.3.3,
a hydro unit always has an upstream Reservoir and may have a downstream Reservoir. The nature of these
Reservoirs and the hydro units’ specifications make up the type of the hydro power plant: in case the
upstream Reservoir is parameterized to have constant level, the power plant is a run-of-river plant. If there is
significant storage capacity of the upstream Reservoir, then the power plant is a Reservoir plant.
HydroValleys are groups of hydro plants. For these groups, a sum over the individual plants’ results gives the
results of the hydro valley, as summarized in Table 53.
Optimizable electricity contracts (EnergyContracts) are used to model bilateral contracts. The user can add
contracts to areas (cf. chapter 3.5.1). They are characterized by a name, begin and end time, the type and
the contract specific parameters.
The costs are determined from two price schedules, which give the fix hourly prices the volume prices (for
energy or reserve).
Furthermore the user may set contracts to Forced, if he wants to exclude them from optimization (i.e. the
volume schedule is taken as fixed).
HTC supports the following contract Types:
Fix: the purchase/sale volume is given as fixed power schedule and HTC determines whether the
contract shall be taken or not
Flex: the purchase/sale volume is determined by HTC within limits
Block: the purchase/sale volume is determined by HTC within limits without variation of the volume over
time
For all Types of EnergyContracts the Direction determines:
Sell: Energy / reserve is sold with this contract
Buy: Energy / reserve is bought with this contract
The Product determines if the sold/purchased volume is energy (default value for all EnergyContracts) or
reserve of one of the available (5) reserve classes, and the attribute Quality determines if a given
EnergyContract (Product RsrvCl<N>) delivers reserve only in one direction (up/down) or symmetrically in
both directions
For Flex contracts, several parameters define or limit the contract. Most important are BeginTime and
EndTime which determine the validity of the contract.
With the SwitchingPolicy the user can decide whether HTC is allowed to switch On and Off the
EnergyContract (put the power to zero) and whether this is allowed at any time or only at full hours. The
switching may be subject to a MinimumDuration time (minimum up time of the power). Additionally, the user
can define a must interval, where the power must be above minimum limit, and the switching On must be
before this interval and switching Off after this interval. The volume itself is optimized within given minimum
and maximum power limits. Optionally, energy limits can restrict the total volume of the contract. Optionally,
energy limits can restrict the total volume of the contract, if its Product is ‘Energy’. If the planning horizon is
not fully contained in the validity period of the contract, min. and max. energy are scaled down proportionally.
Block contracts are similar to Flex contracts, but they can be scheduled at only one constant value
(flat/rectangular profile) for each single activation.
Fix Optional n/a Vol = 0 for all t or Vol = Min for all t
“for all t” means “for all time intervals that are both within the planning horizon and the definition period of the
contract”:
FuelMarkets
A FuelMarket is a possibility to sell and buy fuel of one specific FuelType at a given price (schedule). HTC will
use the spot markets as source or sink of fuel and determine the optimal volume to be put on or taken from
the market. The user can assign FuelStocks (cf. chapter 3.6.7 ) to the spot market, to optimize possible
exports towards the market.
The determining parameter for the optimization is the (expected) price of the fuel on the market. The total flow
to and from the FuelMarket can be limited by maximum schedules. HTC will determine the optimal flow and
the revenue/costs as a result of the export/import to the market.
The correct consideration of ramping limits, minimum up- and downtime, and other limits (as described later
in this chapter) requires data to define the initial conditions of units, reservoirs and other objects of the power
system model.
The user has the possibility to run HTC under three different kinds of initial conditions:
FromMeasuredValue
FromSchedule
FromTarget
Depending on the setting, HTC will use different sources to determine the values for the initial conditions.
FromMeasuredValue
The values used under starting condition ‘FromMeasuredValue’ are taken from single value attributes (which
may be linked from a SCADA system). A typical set of values for calculations that determine the schedules in
the near future for intraday market and/or operation purpose contains the actual generation of the units in
operation and, date and time of their last synchronization or desynchronization, the actual level of hydro and
cogeneration storages and the accumulated consumption of FuelContracts, as summarized in Table 59.
FromSchedule
The values under starting condition ‘FromSchedule’ are obtained from schedules, which usually are
determined by HTC in a previous calculation. This is especially useful for day-ahead scheduling or scheduling
of consecutive planning horizons. These schedules are, for example, the scheduled generation of generating
units (see chapter 3.6.5), the scheduled level of reservoirs (see chapter 3.7.2), the scheduled content in
cogeneration storages (see chapter Error! Reference source not found.) or the scheduled accumulated fuel
consumption of FuelContracts (see chapter 3.6.2), as shown in Table 60. Date and time of last
synchronization and desynchronization are set in a way that they fit to the generation.
FromTarget
The values under starting condition ‘FromTarget’ are obtained from target values, which are regularly used for
the end of the planning horizon, like the target level of hydro reservoirs (see chapter 3.7.2), the target level of
cogeneration storages (see chapter Error! Reference source not found.) and the fuel target of FuelContracts
(see chapter 3.6.2) as shown in Table 61. Start values for fuel, emission and energy limits are derived
proportional. Actual generation of units is assumed to be minimum generation for available units and zero for
not available units. Date and time of last synchronization and desynchronization are set in a way that they fit
to the generation. Primary and secondary regulation is assumed to be off since times longer than the
minimum off-time to allow immediate switch on. This mode is particularly useful for studies of any future
planning horizon.
Last time entering primary regulation Value time derived from Rsrv1UpSched1
Last time leaving primary regulation Value time derived from Rsrv1UpSched1
Last time leaving primary regulation Value time derived from Rsrv2UpSched1
The start conditions FromSchedule are used to split the optimization over the full planning horizon into
multiple optimizations of shorter planning horizon. The resulting schedules of one HTC run give the start
conditions of the subsequent calculation.
HTC provides automatic splitting of the planning horizon: the user specifies a desired approximate maximum
size (in days) of the planning of a single optimization and a desired time of the day [hh:mm] when the split
should occur.
If the desired (total) planning horizon exceeds the specified maximum, the horizon will be split:
the first "slice" from beginning of the total planning horizon until the first "split time" after reaching the
max. length
the following slices have the have the specified max. length
the last slice covers the remaining period until the end of the total planning horizon (but not shorter than
the max. length)
As a final step, a Costing or a Re-Planning calculation is run over the total planning horizon to ensure
consistent results and correct total figures.
02:00-06:00
06:00-06:00
06:00-06:00
06:00-02:00
Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu
Figure 25 above illustrates how a total planning horizon of 15 days (360 hrs) is split (at 6 am) into shorter
horizons of approx. 4 days each.
The computations of the individual “slices” follow all rules and constraints for HTC runs of the same type, with
the following exceptions:
Initial condition for the “slices” 2, 3 etc. is always ‘FromSchedule’ (based on the result of the previous “slice”)
Reservoir targets are obeyed during the computation of each individual slice, but they are not binding for the
final Re-Planning
The consideration of final conditions allows the user to follow mid term plans as determined by Resource
Optimization or other mid term planning functions. In general two approaches are supported and can be
chosen on an individual object level:
Final target condition: allows to use results of RO as minimum, maximum or target condition used as a
soft limit in HTC.
Shadow price: RO is determining shadow prices, which are considered in the objective function of HTC,
but not part of cost determination. The shadow price is a more flexible but “looser” coupling mechanism than
target conditions.
Coupling between HTC and RO is established for the following variables:
Fuel targets (as described in chapter 3.6.2 and 3.6.3)
Energy targets of Unit Groups (as described in chapter 3.9.4) and Pumped Storage Plants
Emission limits (as described in chapter Error! Reference source not found.)
In some cases it can be required to force a specific limitation on a group of units. HTC supports the following
group constraints:
minimum / maximum power production
minimum / maximum electric energy produced over a defined period
StartupPriority is an attribute of a ThermalGeneratingUnit; priority 0 (zero) means, the resp. TGU is not part of
the limitation. Each TGU can be part of not more than one commitment priority restriction.
For cases, where there is no feasible solutions that satisfies all technical and all hard constraints (cf. below),
HTC will stop after the Pre-Processing/DataCheck phase and write error messages specifying the problem(s).
No optimization is started and no results are written.
Technical unit constraints are:
’Unit Availability’
’Minimum Up-time’
’Startup tables’
In cases, where a feasible solution that satisfies all technical and all hard constraints does exist, the
optimization will be started. If no solution is possible, that fulfills ALL constraints, a relaxed solution will be
determined by HTC, according to a defined priority (high, medium, low). The search for a relaxed solution is
more time-consuming and does not necessarily yield to a practicable solution. Nevertheless it is helpful to find
the source of infeasibility.
If a constraint is relaxed, a full information message is written to the message list and the state of program
signals ’Message’ instead of ’OK’.
The following constraints may be relaxed for cases, when no feasible solution exists:
- ‘Emission Constraints’
- Hydro / PumpedStorage Reservoir (cf. chapters Error! Reference source not found., 3.7.2)
Furthermore, constraints can be switched off individually (e.g. reserve constraints). By comparing costs of two
runs (unconstrained/constraint calculation) he can determine the costs of the individual constraints.
If in the course of the optimization an infeasible LP/MILP problem occurs, the probable cause of the
infeasibility is reported in the MessageList of HTC. If applicable, the message(s) contain the following
information:
Name and Type of the component(s) involved, eg.: “ThermalGeneratingUnit NLEEMS_TH__5EC__5OMNG0”
time/time interval/period where the problem occurs
Variable/constraint/restriction/… that is involvedeg.: “Rsrv2UpRqmtSched”
In the event of an infeasible LP/MILP problem, the log information of the applied LP/MILP solver (*_cplex.log)
will be parsed to identify the “critical” variable or constraint and – if possible – the related objects of the data
model will be indicated.
If an infeasibility cannot be associated with a single data object, the message will simply indicate an “unkown
cause of infeasibility”.
In a majority of practical cases, the cause of an infeasibility can indeed be traced down to one single
object/variable/constraint and usually this information helps to either identify directly a single infeasibility or a
combinatory infeasibility of input data or it gives at least an indication in which part of the system such a
bottleneck could be found.
However, it has to be noted that - due to the complexity of the underlying mathematical model - it cannot be
guaranteed, that the cause of an infeasibility can be traced back to one in object/variable/constraint in all
cases.
4 Appendixes
The next chapters describe the complete list of classes, their attributes, and values for the enumeration types
used in the jROS-HTC system.
4.1 Classes
Table 65: List of all jROS classesError! Cannot open data source.
4.2 Attributes
4.2.1 Area
Area includes also all attributes from the Error! Reference source not found. see chapter Error! Reference
source not found..
Input Attributes
Input/Output Attributes
Table 67: Input/Output Attributes of the Area
Output Attributes
CostContract Value EUR Total costs of optimizable contracts over planning horizon
CostSpotMarket Value EUR Cost revenue from SpotMarkets over planning horizon
LoadForecastAvgSched1 Schedule MW Total demand in the area, average over time interval
4.2.2 Channel
Input Attributes
Input/Output Attributes
Table 70: Input/Output Attributes of the Channel
Output Attributes
4.2.3 CogenInterchange
Input Attributes
Input/Output Attributes
Table 73: Input/Output Attributes of the CogenInterchange
Output Attributes
4.2.4 CogenStorage
Input Attributes
Input/Output Attributes
Table 76: Input/Output Attributes of the CogenStorage
Output Attributes
4.2.5 CogenZone
Input Attributes
Input/Output Attributes
Table 79: Input/Output Attributes of the CogenZone
Output Attributes
4.2.6 CombinedCyclePlant
Input Attributes
Input/Output Attributes
Output Attributes
4.2.7 CommonSteamHeader
Input Attributes
Table 84: Input Attributes of the CommonSteamHeader
Input/Output Attributes
Table 85: Input/Output Attributes of the CommonSteamHeader
Output Attributes
4.2.8 EmissionRestrictionGroup
Input Attributes
Input/Output Attributes
Table 88: Input/Output Attributes of the EmissionRestrictionGroup
Output Attributes
4.2.9 EnergyContract
Input Attributes
Input/Output Attributes
Table 91: Input/Output Attributes of the EnergyContract
Output Attributes
4.2.10 FuelContract
Input Attributes
Input/Output Attributes
Table 94: Input/Output Attributes of the FuelContract
Output Attributes
4.2.11 FuelMarket
Input Attributes
Input/Output Attributes
Table 97: Input/Output Attributes of the FuelMarket
Output Attributes
4.2.12 FuelRestrictionGroup
Input Attributes
DailyCurrentAmount Value Dim Current amount of fuel for 1st day of planning
horizon
Input/Output Attributes
Table 100: Input/Output Attributes of the FuelRestrictionGroup
Output Attributes
4.2.13 FuelStock
Input Attributes
Table 102: Input Attributes of the FuelStock
Input/Output Attributes
Table 103: Input/Output Attributes of the FuelStock
Output Attributes
Table 104: Output Attributes of the FuelStock
4.2.14 FuelType
Input Attributes
Input/Output Attributes
Table 106: Input/Output Attributes of the FuelType
Output Attributes
Table 107: Output Attributes of the FuelType
4.2.15 HydroGeneratingUnit
Input Attributes
Input/Output Attributes
Output Attributes
4.2.16 HydroPlant
HydroPlant includes also all attributes from the Error! Reference source not found. see chapter Error!
Reference source not found..
Input Attributes
Table 111: Input Attributes of the HydroPlant
Input/Output Attributes
Table 112: Input/Output Attributes of the HydroPlant
Output Attributes
Table 113: Output Attributes of the HydroPlant
4.2.17 HydroValley
HydroValley includes also all attributes from the Error! Reference source not found. see chapter Error!
Reference source not found..
Input Attributes
Table 114: Input Attributes of the HydroValley
Input/Output Attributes
Table 115: Input/Output Attributes of the HydroValley
Output Attributes
Table 116: Output Attributes of the HydroValley
4.2.18 MPROFstep
Input Attributes
MPROFChangePolicy Value EnumMPSPolicy MPROF step power delta sched change policy
Input/Output Attributes
Table 118: Input/Output Attributes of the MPROFstep
Output Attributes
4.2.19 PowerLine
Input Attributes
Input/Output Attributes
Table 121: Input/Output Attributes of the PowerLine
Output Attributes
4.2.20 Reservoir
Input Attributes
Input/Output Attributes
Table 124: Input/Output Attributes of the Reservoir
Output Attributes
4.2.21 SAParam
Input Attributes
Input/Output Attributes
Output Attributes
4.2.22 Spillway
Input Attributes
Input/Output Attributes
Table 130: Input/Output Attributes of the Spillway
Output Attributes
4.2.23 SpotMarket
Input Attributes
Input/Output Attributes
Table 133: Input/Output Attributes of the SpotMarket
Output Attributes
4.2.24 System
System includes also all attributes from the Error! Reference source not found. see chapter Error! Reference
source not found..
Input Attributes
Input/Output Attributes
Table 136: Input/Output Attributes of the System
Output Attributes
4.2.25 ThermalGeneratingUnit
Input Attributes
Input/Output Attributes
Output Attributes
4.2.26 ThermalPlant
ThermalPlant includes also all attributes from the Error! Reference source not found. see chapter Error!
Reference source not found..
Input Attributes
Input/Output Attributes
Table 142: Input/Output Attributes of the ThermalPlant
Output Attributes
Table 143: Output Attributes of the ThermalPlant
4.2.27 UnitRestrictionGroup
UnitRestrictionGroup is a pseudo class for general attributes used in Error! Reference source not found.,
Error! Reference source not found., Error! Reference source not found., Error! Reference source not found. and
Error! Reference source not found. classes.
Input Attributes
Input/Output Attributes
Table 145: Input/Output Attributes of the UnitRestrictionGroup
Output Attributes
4.3 Enumerations
Table 147: List of all jROS Enumeration Types
Name
EnumAvailability
EnumAvailabilityHGU
EnumAvailHRSGSF
EnumBoolean
EnumCgiState
EnumCommitment
EnumConsecDays
EnumContractDirection
EnumContractProduct
EnumContractQuality
EnumContractState
EnumContractType
EnumDate
EnumDateTime
EnumDateTimeSec
EnumEmiCertTradeModel
EnumEmissionModel
EnumFuelMix
EnumFuelMode
EnumFuelSelector
EnumGenerationType
EnumGenerationTypeHGU
EnumGenerationTypeTGU
EnumHTCCalcMode
EnumMIPGapSelector
EnumMPSPolicy
EnumMPSRampLimit
EnumMPSStepType
EnumOptimizationType
EnumPlanHoriz
EnumPlantType
EnumPowerLinePolicy
EnumPowerLineVolume
EnumPricePeriod
EnumProgramState
EnumReservoirContentUoM
EnumRsrvClEnergy
EnumRsrvCont
EnumRsrvModule
EnumSpillwayType
EnumSpotPolicy
EnumSpotProduct
EnumSpotQuality
EnumStartCond
EnumSUPsel
EnumSwitch
EnumSwitchConstraint
EnumSwitchingPolicy
EnumSwitchRegimes
4.3.1 EnumAvailability
Text Value
NotAvailable 1
Available 2
FixP 3
MustOn 4
FixPrsrv 5
MustOnPR 20
MustOnSR 21
MustOnPRSR 22
FixPPR 23
FixPSR 24
FixPPRSR 25
MustOff 30
IntendedOn 31
4.3.2 EnumAvailabilityHGU
Text Value
NotAvailable 1
Available 2
MustOn 4
4.3.3 EnumAvailHRSGSF
Text Value
OpenCycle 0
ClosedCycle 1
ClosedCycleSF 2
4.3.4 EnumBoolean
Text Value
FALSE 0
TRUE 1
4.3.5 EnumCgiState
Text Value
Open 0
Closed 1
4.3.6 EnumCommitment
Text Value
Invalid -1
Off 0
On 1
StartPrepCold 2
StartPrepWarm 3
StartPrepHot 4
StartCold 5
StartWarm 6
StartHot 7
StartRestCold 8
StartRestWarm 9
StartRestHot 10
StopPrepare 11
Stop 12
4.3.7 EnumContractDirection
Text Value
Purchase 0
Sale 1
4.3.8 EnumContractProduct
Text Value
Energy 0
R1 1
R2 2
R3 3
R4 4
R5 5
4.3.9 EnumContractQuality
Text Value
Sym 0
Up 1
Down 2
4.3.10 EnumContractState
Text Value
Optional 0
Forced 1
4.3.11 EnumContractType
Text Value
Fix 10
Flex 11
Block 12
4.3.12 EnumDate
Text Value
Date 0
4.3.13 EnumDateTime
Text Value
DateTime 0
4.3.14 EnumDateTimeSec
Text Value
DateTimeSec 0
4.3.15 EnumErgModelType
Table 162: Enumeration Type EnumErgModelType Values
4.3.16 EnumFuelMix
Text Value
UsePEP 0
UseFCP 1
4.3.17 EnumFuelMode
Text Value
BaseOnly 1
FixedRate 2
OptimRate 3
BaseTopping 4
4.3.18 EnumFuelSelector
Text Value
NoFuel 0
Fuel1 1
Fuel2 2
Fuel3 3
Fuel4 4
Fuel5 5
4.3.19 EnumGenerationType
Text Value
CombustionUnit 0
HydroPump 1
HydroPumpTurbine 2
HydroTurbine 3
CombustionUnit_HRSG 4
CombustionUnit_HRSG_SF 5
CombustionUnit_HRSG_BP 6
CombustionUnit_HRSG_SF_BP 7
SteamUnit 8
CombustionBoiler 9
SteamTurbine 10
SteamTurbineExtraction 11
SteamTurbineBackpressure 12
Reducer 13
Distiller 14
SteamDump 18
4.3.20 EnumGenerationTypeHGU
Text Value
HydroPump 1
HydroPumpTurbine 2
HydroTurbine 3
4.3.21 EnumGenerationTypeTGU
Text Value
CombustionUnit 0
CombustionUnit_HRSG 4
CombustionUnit_HRSG_SF 5
CombustionUnit_HRSG_BP 6
CombustionUnit_HRSG_SF_BP 7
SteamUnit 8
CombustionBoiler 9
SteamTurbine 10
SteamTurbineExtraction 11
SteamTurbineBackpressure 12
Reducer 13
Distiller 14
SteamDump 18
4.3.22 EnumHTCCalcMode
Text Value
FullPlanning 2
ThermalFixed 5
RePlanning 8
FullPlanning2Step 9
RePlanning2Step 10
4.3.23 EnumMIPGapSelector
Text Value
Relative 0
Absolute 1
4.3.24 EnumOptimizationType
Text Value
Shadow 0
Target 1
Min 2
Max 3
Open 4
4.3.25 EnumPlanHoriz
Text Value
ManualEntry 0
4.3.26 EnumPlantType
Text Value
Simple 0
CombinedCycle 1
CommonSteamHeader 2
4.3.27 EnumPowerLinePolicy
Text Value
Free 0
AtFullHour 1
4.3.28 EnumProgramState
Text Value
Waiting 0
Finished 1
Active 2
OK 3
Message 4
DataError 5
Error 6
WriteDetails 7
Stopped 8
Cancelled 9
Read 10
Check 11
StartDispatch 12
MILP 13
Dispatch 14
Write 15
MILP1 16
MILP2 17
MILP3 18
MILPaccept 19
MPROF 20
Aux1 51
Aux2 52
Aux3 53
4.3.29 EnumReservoirContentUoM
Text Value
Water 0
Energy 1
4.3.30 EnumRsrvClEnergy
Text Value
Energy 0
RsrvCl1 1
RsrvCl2 2
RsrvCl3 3
RsrvCl4 4
RsrvCl5 5
4.3.31 EnumRsrvCont
Text Value
LargestInput 1
LargestUnit 2
LargestTransaction 3
PartnerEmergency 4
4.3.32 EnumRsrvModule
Text Value
NoReserve 0
Spinning 5
StbyPump 6
Standby 7
PrimaryReg 8
SecondaryReg 11
StandByOff 12
Online 13
4.3.33 EnumSpillwayType
Text Value
Overflow 0
Controllable 1
4.3.34 EnumSpotPolicy
Text Value
Free 0
AtFullHour 1
AtFourHour 2
4.3.35 EnumStartCond
Text Value
FromMeasVal 0
FromSchedule 1
FromTarget 2
4.3.36 EnumSUPsel
Text Value
WithRest 0
WithoutRest 1
4.3.37 EnumSwitch
Text Value
Off 0
On 1
4.3.38 EnumSwitchConstraint
Text Value
NotActive 0
SoftConstraint 1
HardConstraint 2
4.3.39 EnumSwitchingPolicy
Text Value
NotAllowed 0
Allowed 1
AllowedAtFullHour 2
4.3.40 EnumSwitchRegimes
Text Value
UseValues 0
UseRegimes 1
Attributes with a numeric value can be edited directly in an edit box. You can find two types of values –
integer values and real values. Some basic value checks are performed directly after entering them in the edit
box For example for the integer value it is not possible to enter decimal point and decimal numbers or enter
letters.
Following figure shows an example of floating point numeric value in the user interface.
4.4.2 Enumerations
Enumerations are presented in the UI as dropdown boxes. You can only select a value from the list of
possible values of the corresponding enumeration.
You can see a dropdown box example on the following figure.
4.4.3 Date/Time
There is a special dialog box for entering the values of the Date/Time type. You can access it over the small
calendar icon on the left of the value box. This dialog allows you to comfortable enter the Date/Time values.
You can select the day from a calendar view and direct enter the time.
An example of entering the Date/Time value you can find on following figure
4.4.4 Schedules
Schedules are scalar type values entered over a time period in a table form. The desired time period is
selectable from the dropdown box above the attributes tab control. You can enter the desired values in the
table as you will enter another numeric values, just for every displayed time slice. It is not possible to change
the time period after you enter the edit mode, so please choose the correct period before.
An example of entering schedules is shown in the figure below.
Caution
Modifying the time step shorter to longer value (e.g. from 15 min to an hour), causes by editing the schedule
data a deletion of all values, that are not according to a new time step (e.g. values for 15, 30 and 45 min of
every hour). You will be informed about this behavior, and all schedule data, which have to be deleted, will be
displayed. You have to approve this deletion before you can enter new schedule data.
4.4.5 Curves
Curves (2D or 3D) are entered in a tabular form. You can enter 2 or 3 values per row regardless of the type of
the curve. On the left of the curve table all rows are displayed in a graph as points, so you can directly see
what you are entered.
Conventions:
Letter Meaning
X or XX or XXX Index 1
Y or YY or YYY Index 2
Z or ZZ or ZZZ Index 3
4.5.1 Variables
TguPinFX_YYY_ZZZ Fuel TGU Time GJ/h TGU Fuel consumption from a specific
Fuel Stock (1-5)
4.5.2 Constraints
plant
R_A_SHXXX_YYY_ZZZ ReserveClass HGU Time Reserve active for a HGU for a reserve
class
R_A_SXXX_YYY_ZZZ ReserveClass TGU Time Reserve active for a TGU for a reserve
class
RqRDoXXSAYY_ZZZ ReserveClass Area Time Required reserve downward for the area
RqRUpXXSAbinYY_ZZZ ReserveClass Area Time Reserve downward for the area active
RqRUpXXSAYY_ZZZ ReserveClass Area Time Required reserve upward for the area
RsHLoLiNotExX_YYY_ZZZ ReserveClass HGU Time HGU reserve lower limit not exclusive
RsHUpLiNotExX_YYY_ZZZ ReserveClass HGU Time HGU reserve upper limit not exclusive
RsTLoLiNExX_YYY_ZZZ ReserveClass TGU Time TGU reserve lower limit not exclusive
RsTUpLiNExX_YYY_ZZZ ReserveClass TGU Time TGU reserve upper limit not exclusive
4.5.3 Penalties