opm-common
Loading...
Searching...
No Matches
Opm::UDQDefine Class Reference

Public Member Functions

 UDQDefine (const UDQParams &udq_params, const std::string &keyword, std::size_t report_step, const KeywordLocation &location, const std::vector< std::string > &deck_data)
 UDQDefine (const UDQParams &udq_params, const std::string &keyword, std::size_t report_step, const KeywordLocation &location, const std::vector< std::string > &deck_data, const ParseContext &parseContext, ErrorGuard &errors)
template<typename T>
 UDQDefine (const UDQParams &udq_params, const std::string &keyword, std::size_t report_step, const KeywordLocation &location, const std::vector< std::string > &deck_data, const ParseContext &parseContext, T &&errors)
UDQ::RequisiteEvaluationObjects requiredObjects () const
 All specific objects required for the defining expression.
UDQSet eval (const UDQContext &context) const
const std::string & keyword () const
const std::string & input_string () const
const KeywordLocationlocation () const
UDQVarType var_type () const
std::set< UDQTokenType > func_tokens () const
void required_summary (std::unordered_set< std::string > &summary_keys) const
void update_status (UDQUpdate update_status, std::size_t report_step)
std::pair< UDQUpdate, std::size_t > status () const
const std::vector< Opm::UDQToken > & tokens () const
void clear_next () const
bool clear_update_next_for_new_report_step ()
 Clear "UPDATE NEXT" flag.
bool operator== (const UDQDefine &data) const
template<class Serializer>
void serializeOp (Serializer &serializer)

Static Public Member Functions

static UDQDefine serializationTestObject ()

Member Function Documentation

◆ clear_update_next_for_new_report_step()

bool Opm::UDQDefine::clear_update_next_for_new_report_step ( )
inline

Clear "UPDATE NEXT" flag.

This is required by the way we form ScheduleState objects. The function resets UPDATE NEXT to UPDATE OFF, and should typically be called at the end of a report step/beginning of the next report step. If we do not do this, then a UDQ define statement with an UPDATE NEXT status will behave as if there is an implicit UPDATE NEXT statement at the beginning of each subsequent report step and that, in turn, will generate unwanted value updates for the quantity.

Returns
Whether or not UPDATE NEXT was reset to UPDATE OFF. Allows client code to take action, if needed, based on the knowledge that all such value updates have been applied and to prepare for the next report step.

◆ requiredObjects()

UDQ::RequisiteEvaluationObjects Opm::UDQDefine::requiredObjects ( ) const

All specific objects required for the defining expression.

Could, for instance, be a collection of specific well names in a field level UDQ, or a set of group name patterns for a group level UDQ.


The documentation for this class was generated from the following files:
  • opm/input/eclipse/Schedule/UDQ/UDQDefine.hpp
  • opm/input/eclipse/Schedule/UDQ/UDQDefine.cpp