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

Group level satellite production. More...

#include <GSatProd.hpp>

Classes

struct  GSatProdGroup
 Satellite production rates for a single group. More...
struct  GSatProdGroupProp

Public Member Functions

void assign (const std::string &name, const UDAValue &oil_rate, const UDAValue &gas_rate, const UDAValue &water_rate, const UDAValue &resv_rate, const UDAValue &glift_rate, double udq_undefined)
 Define satellite production rates for named group.
bool has (const std::string &name) const
 Whether or not satellite production rates have been defined for a named group.
const GSatProdGroupget (const std::string &name) const
 Retrieve satellite production rates for named group.
const GSatProdGroupProp get (const std::string &name, const SummaryState &st) const
 Retrieve scalar satellite production rates for named group.
bool empty () const
 Whether or not any groups have associate satellite production rates.
std::size_t size () const
 Number of groups for which satellite production rates have been defined.
bool operator== (const GSatProd &data) const
 Equality predicate.
template<class Serializer>
void serializeOp (Serializer &serializer)
 Convert between byte array and object representation.

Static Public Member Functions

static GSatProd serializationTestObject ()
 Create a serialisation test object.

Detailed Description

Group level satellite production.

Member Function Documentation

◆ assign()

void Opm::GSatProd::assign ( const std::string & name,
const UDAValue & oil_rate,
const UDAValue & gas_rate,
const UDAValue & water_rate,
const UDAValue & resv_rate,
const UDAValue & glift_rate,
double udq_undefined )

Define satellite production rates for named group.

Effectively internalises items from the GSATPROD keyword.

Parameters
[in]nameGroup name.
[in]oil_rateSatellite production oil surface rate for group name.
[in]gas_rateSatellite production gas surface rate for group name.
[in]water_rateSatellite production water surface rate for group name.
[in]resv_rateSatellite production reservoir voidage rate for group name.
[in]glift_rateSatellite production gas lift rate for group name.
[in]udq_undefinedSatellite udq undefined value for group name.

◆ empty()

bool Opm::GSatProd::empty ( ) const
inline

Whether or not any groups have associate satellite production rates.

This is mostly a convenience function for certain logical statements.

Returns
True if no groups have satellite production rates and false otherwise.

◆ get() [1/2]

const GSatProd::GSatProdGroup & Opm::GSatProd::get ( const std::string & name) const

Retrieve satellite production rates for named group.

Throws an exception of type

if there are no satellite production rates defined for that named group. Clients should invoke the predicate has() to determine availability of satellite production rates for a particular named group.

Parameters
[in]nameGroup name.
Returns
Satellite production rates for group name.

◆ get() [2/2]

const GSatProd::GSatProdGroupProp Opm::GSatProd::get ( const std::string & name,
const SummaryState & st ) const

Retrieve scalar satellite production rates for named group.

Parameters
[in]nameGroup name.
[in]stSummary state.
Returns
Satellite production rates for group name.

◆ has()

bool Opm::GSatProd::has ( const std::string & name) const

Whether or not satellite production rates have been defined for a named group.

Parameters
[in]nameGroup name.
Returns
Whether or not satellite production rates have been defined for group name.

◆ operator==()

bool Opm::GSatProd::operator== ( const GSatProd & data) const

Equality predicate.

Parameters
[in]dataObject against which
will be tested for equality.
Returns
Whether or not
is the same as data.

◆ serializeOp()

template<class Serializer>
void Opm::GSatProd::serializeOp ( Serializer & serializer)
inline

Convert between byte array and object representation.

Template Parameters
SerializerByte array conversion protocol.
Parameters
[in,out]serializerByte array conversion object.

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