Class for computing BHP limits.  
 More... 
#include <WellBhpThpCalculator.hpp> 
 |  
|   | WellBhpThpCalculator (const WellInterfaceGeneric< Scalar, IndexTraits > &well) |  
|   | Constructor sets reference to well.  More...
  |  
|   |  
| bool  | wellHasTHPConstraints (const SummaryState &summaryState) const |  
|   | Checks if well has THP constraints.  More...
  |  
|   |  
| Scalar  | getTHPConstraint (const SummaryState &summaryState) const |  
|   | Get THP constraint for well.  More...
  |  
|   |  
| Scalar  | mostStrictBhpFromBhpLimits (const SummaryState &summaryState) const |  
|   | Obtain the most strict BHP from BHP limits.  More...
  |  
|   |  
| Scalar  | calculateThpFromBhp (const std::vector< Scalar > &rates, const Scalar bhp, const Scalar rho, const std::optional< Scalar > &alq, const Scalar thp_limit, DeferredLogger &deferred_logger) const |  
|   | Calculates THP from BHP.  More...
  |  
|   |  
| std::optional< Scalar >  | computeBhpAtThpLimitProd (const std::function< std::vector< Scalar >(const Scalar)> &frates, const SummaryState &summary_state, const Scalar maxPerfPress, const Scalar rho, const Scalar alq_value, const Scalar thp_limit, DeferredLogger &deferred_logger) const |  
|   | Compute BHP from THP limit for a producer.  More...
  |  
|   |  
| std::optional< Scalar >  | computeBhpAtThpLimitInj (const std::function< std::vector< Scalar >(const Scalar)> &frates, const SummaryState &summary_state, const Scalar rho, const Scalar flo_rel_tol, const int max_iteration, const bool throwOnError, DeferredLogger &deferred_logger) const |  
|   | Compute BHP from THP limit for an injector.  More...
  |  
|   |  
| void  | updateThp (const Scalar rho, const std::function< Scalar()> &alq_value, WellState< Scalar, IndexTraits > &well_state, const SummaryState &summary_state, DeferredLogger &deferred_logger) const |  
|   | Update THP.  More...
  |  
|   |  
| template<class EvalWell >  |  
| EvalWell  | calculateBhpFromThp (const WellState< Scalar, IndexTraits > &well_state, const std::vector< EvalWell > &rates, const Well &well, const SummaryState &summaryState, const Scalar rho, DeferredLogger &deferred_logger) const |  
|   |  
| Scalar  | calculateMinimumBhpFromThp (const WellState< Scalar, IndexTraits > &well_state, const Well &well, const SummaryState &summaryState, const Scalar rho) const |  
|   |  
| bool  | isStableSolution (const WellState< Scalar, IndexTraits > &well_state, const Well &well, const std::vector< Scalar > &rates, const SummaryState &summaryState) const |  
|   |  
| std::optional< Scalar >  | estimateStableBhp (const WellState< Scalar, IndexTraits > &well_state, const Well &well, const std::vector< Scalar > &rates, const Scalar rho, const SummaryState &summaryState) const |  
|   |  
| std::pair< Scalar, Scalar >  | getFloIPR (const WellState< Scalar, IndexTraits > &well_state, const Well &well, const SummaryState &summary_state) const |  
|   |  
 
 |  
| static bool  | bruteForceBracketCommonTHP (const std::function< Scalar(const Scalar)> &eq, const std::array< Scalar, 2 > &range, Scalar &low, Scalar &high, std::optional< Scalar > &approximate_solution, const Scalar &limit, DeferredLogger &deferred_logger) |  
|   | Find limits using brute-force solver.  More...
  |  
|   |  
| static bool  | bruteForceBracketCommonTHP (const std::function< Scalar(const Scalar)> &eq, Scalar &min_thp, Scalar &max_thp) |  
|   | Find limits using brute-force solver.  More...
  |  
|   |  
 
template<typename Scalar, typename IndexTraits> 
class Opm::WellBhpThpCalculator< Scalar, IndexTraits > Class for computing BHP limits.  
 
◆ WellBhpThpCalculator()
template<typename Scalar , typename IndexTraits >  
 
Constructor sets reference to well.  
 
 
◆ bruteForceBracketCommonTHP() [1/2]
template<typename Scalar , typename IndexTraits >  
  
  
      
        
          | static bool Opm::WellBhpThpCalculator< Scalar, IndexTraits >::bruteForceBracketCommonTHP  | 
          ( | 
          const std::function< Scalar(const Scalar)> &  | 
          eq,  | 
         
        
           | 
           | 
          const std::array< Scalar, 2 > &  | 
          range,  | 
         
        
           | 
           | 
          Scalar &  | 
          low,  | 
         
        
           | 
           | 
          Scalar &  | 
          high,  | 
         
        
           | 
           | 
          std::optional< Scalar > &  | 
          approximate_solution,  | 
         
        
           | 
           | 
          const Scalar &  | 
          limit,  | 
         
        
           | 
           | 
          DeferredLogger &  | 
          deferred_logger  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
static   | 
   
 
 
Find limits using brute-force solver.  
 
 
◆ bruteForceBracketCommonTHP() [2/2]
template<typename Scalar , typename IndexTraits >  
  
  
      
        
          | static bool Opm::WellBhpThpCalculator< Scalar, IndexTraits >::bruteForceBracketCommonTHP  | 
          ( | 
          const std::function< Scalar(const Scalar)> &  | 
          eq,  | 
         
        
           | 
           | 
          Scalar &  | 
          min_thp,  | 
         
        
           | 
           | 
          Scalar &  | 
          max_thp  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
static   | 
   
 
 
Find limits using brute-force solver.  
 
 
◆ calculateBhpFromThp()
template<typename Scalar , typename IndexTraits >  
template<class EvalWell >  
      
        
          | EvalWell Opm::WellBhpThpCalculator< Scalar, IndexTraits >::calculateBhpFromThp  | 
          ( | 
          const WellState< Scalar, IndexTraits > &  | 
          well_state,  | 
         
        
           | 
           | 
          const std::vector< EvalWell > &  | 
          rates,  | 
         
        
           | 
           | 
          const Well &  | 
          well,  | 
         
        
           | 
           | 
          const SummaryState &  | 
          summaryState,  | 
         
        
           | 
           | 
          const Scalar  | 
          rho,  | 
         
        
           | 
           | 
          DeferredLogger &  | 
          deferred_logger  | 
         
        
           | 
          ) | 
           |  const | 
         
       
 
 
◆ calculateMinimumBhpFromThp()
template<typename Scalar , typename IndexTraits >  
      
        
          | Scalar Opm::WellBhpThpCalculator< Scalar, IndexTraits >::calculateMinimumBhpFromThp  | 
          ( | 
          const WellState< Scalar, IndexTraits > &  | 
          well_state,  | 
         
        
           | 
           | 
          const Well &  | 
          well,  | 
         
        
           | 
           | 
          const SummaryState &  | 
          summaryState,  | 
         
        
           | 
           | 
          const Scalar  | 
          rho  | 
         
        
           | 
          ) | 
           |  const | 
         
       
 
 
◆ calculateThpFromBhp()
template<typename Scalar , typename IndexTraits >  
      
        
          | Scalar Opm::WellBhpThpCalculator< Scalar, IndexTraits >::calculateThpFromBhp  | 
          ( | 
          const std::vector< Scalar > &  | 
          rates,  | 
         
        
           | 
           | 
          const Scalar  | 
          bhp,  | 
         
        
           | 
           | 
          const Scalar  | 
          rho,  | 
         
        
           | 
           | 
          const std::optional< Scalar > &  | 
          alq,  | 
         
        
           | 
           | 
          const Scalar  | 
          thp_limit,  | 
         
        
           | 
           | 
          DeferredLogger &  | 
          deferred_logger  | 
         
        
           | 
          ) | 
           |  const | 
         
       
 
 
◆ computeBhpAtThpLimitInj()
template<typename Scalar , typename IndexTraits >  
      
        
          | std::optional< Scalar > Opm::WellBhpThpCalculator< Scalar, IndexTraits >::computeBhpAtThpLimitInj  | 
          ( | 
          const std::function< std::vector< Scalar >(const Scalar)> &  | 
          frates,  | 
         
        
           | 
           | 
          const SummaryState &  | 
          summary_state,  | 
         
        
           | 
           | 
          const Scalar  | 
          rho,  | 
         
        
           | 
           | 
          const Scalar  | 
          flo_rel_tol,  | 
         
        
           | 
           | 
          const int  | 
          max_iteration,  | 
         
        
           | 
           | 
          const bool  | 
          throwOnError,  | 
         
        
           | 
           | 
          DeferredLogger &  | 
          deferred_logger  | 
         
        
           | 
          ) | 
           |  const | 
         
       
 
 
◆ computeBhpAtThpLimitProd()
template<typename Scalar , typename IndexTraits >  
      
        
          | std::optional< Scalar > Opm::WellBhpThpCalculator< Scalar, IndexTraits >::computeBhpAtThpLimitProd  | 
          ( | 
          const std::function< std::vector< Scalar >(const Scalar)> &  | 
          frates,  | 
         
        
           | 
           | 
          const SummaryState &  | 
          summary_state,  | 
         
        
           | 
           | 
          const Scalar  | 
          maxPerfPress,  | 
         
        
           | 
           | 
          const Scalar  | 
          rho,  | 
         
        
           | 
           | 
          const Scalar  | 
          alq_value,  | 
         
        
           | 
           | 
          const Scalar  | 
          thp_limit,  | 
         
        
           | 
           | 
          DeferredLogger &  | 
          deferred_logger  | 
         
        
           | 
          ) | 
           |  const | 
         
       
 
 
◆ estimateStableBhp()
template<typename Scalar , typename IndexTraits >  
      
        
          | std::optional< Scalar > Opm::WellBhpThpCalculator< Scalar, IndexTraits >::estimateStableBhp  | 
          ( | 
          const WellState< Scalar, IndexTraits > &  | 
          well_state,  | 
         
        
           | 
           | 
          const Well &  | 
          well,  | 
         
        
           | 
           | 
          const std::vector< Scalar > &  | 
          rates,  | 
         
        
           | 
           | 
          const Scalar  | 
          rho,  | 
         
        
           | 
           | 
          const SummaryState &  | 
          summaryState  | 
         
        
           | 
          ) | 
           |  const | 
         
       
 
 
◆ getFloIPR()
template<typename Scalar , typename IndexTraits >  
      
        
          | std::pair< Scalar, Scalar > Opm::WellBhpThpCalculator< Scalar, IndexTraits >::getFloIPR  | 
          ( | 
          const WellState< Scalar, IndexTraits > &  | 
          well_state,  | 
         
        
           | 
           | 
          const Well &  | 
          well,  | 
         
        
           | 
           | 
          const SummaryState &  | 
          summary_state  | 
         
        
           | 
          ) | 
           |  const | 
         
       
 
 
 
◆ getTHPConstraint()
template<typename Scalar , typename IndexTraits >  
      
 
Get THP constraint for well.  
 
 
◆ isStableSolution()
template<typename Scalar , typename IndexTraits >  
      
        
          | bool Opm::WellBhpThpCalculator< Scalar, IndexTraits >::isStableSolution  | 
          ( | 
          const WellState< Scalar, IndexTraits > &  | 
          well_state,  | 
         
        
           | 
           | 
          const Well &  | 
          well,  | 
         
        
           | 
           | 
          const std::vector< Scalar > &  | 
          rates,  | 
         
        
           | 
           | 
          const SummaryState &  | 
          summaryState  | 
         
        
           | 
          ) | 
           |  const | 
         
       
 
 
◆ mostStrictBhpFromBhpLimits()
template<typename Scalar , typename IndexTraits >  
      
        
          | Scalar Opm::WellBhpThpCalculator< Scalar, IndexTraits >::mostStrictBhpFromBhpLimits  | 
          ( | 
          const SummaryState &  | 
          summaryState | ) | 
           const | 
         
       
 
 
◆ updateThp()
template<typename Scalar , typename IndexTraits >  
      
        
          | void Opm::WellBhpThpCalculator< Scalar, IndexTraits >::updateThp  | 
          ( | 
          const Scalar  | 
          rho,  | 
         
        
           | 
           | 
          const std::function< Scalar()> &  | 
          alq_value,  | 
         
        
           | 
           | 
          WellState< Scalar, IndexTraits > &  | 
          well_state,  | 
         
        
           | 
           | 
          const SummaryState &  | 
          summary_state,  | 
         
        
           | 
           | 
          DeferredLogger &  | 
          deferred_logger  | 
         
        
           | 
          ) | 
           |  const | 
         
       
 
 
◆ wellHasTHPConstraints()
template<typename Scalar , typename IndexTraits >  
      
 
Checks if well has THP constraints.  
 
 
 The documentation for this class was generated from the following file: 
 
  
 
    
     |