skip to main content
RiverWare Policy Language
Initialization Rules - Setting Table Slots
Initialization rules can now set Table Slot values. For more information on Initialization rules, see Initialization Rules in Solution Approaches. The following screenshot shows an initialization rule that is setting three values on the accompanying table slot.
Predefined Functions
The following RPL predefined functions were added to support Object Attributes (Object Attributes:
• ObjectAttributeValue: Returns the value (as a string) of the specified attribute on the specified object. See ObjectAttributeValue in RiverWare Policy Language (RPL) for more info.
• ObjectHasAttributeValue: Return a boolean of whether the particular object has the specified attribute value. See ObjectHasAttributeValue in RiverWare Policy Language (RPL) for more info.
• ObjectsFromAttributeValue: Return a list of all of the objects that have the specified value for the specified attribute. See ObjectsFromAttributeValue in RiverWare Policy Language (RPL) for more info.
In addition, the RPL function SolveTurbineRelGivenEnergyInflow was improved to work with more of the power methods. This function returns the turbine release necessary to meet the specified energy and inflow. If the energy cannot be met, the maximum turbine release is returned. The function correctly deals with Plant Power Limit, Power Plant Cap Fraction, and other constraints, as applicable to the chosen power method.
RPL Statement Names
It has previously been possible to give RPL statements names. To do so:
• In the RPL set editor select View Show Statements
• Select a statement in the RPL set
• Right-click, select Rename and enter a new name
Now, these names persist across a save/load of the set. In addition, the now all statements have their type as the default. You can change the name and that will be saved, otherwise the name will be the default. This represents a change in behavior and a loss of one functionality and a gain of other functionality.
Now that RPL statements can be named, the RPL Search and Replace dialog does match on RPL statement names.
Performance Improvement in RPL
A performance improvement was made within RPL evaluation when looking up slots on the workspace. Now the slot is cached and is referenced in future look ups. In one test model with many slot look ups, this improvements reduced run times by approximately 10%.
Revised: 01/10/2022