コード例 #1
0
ファイル: Well.cpp プロジェクト: karbor/opm-parser
 Well::Well(const std::string& name, int headI, int headJ, double refDepth, TimeMapConstPtr timeMap , size_t creationTimeStep)
     : m_oilRate( new DynamicState<double>( timeMap , 0.0)) ,
       m_gasRate(new DynamicState<double>(timeMap, 0.0)),
       m_waterRate(new DynamicState<double>(timeMap, 0.0)),
       m_liquidRate(new DynamicState<double>(timeMap, 0.0)),
       m_resVRate(new DynamicState<double>(timeMap, 0.0)),
       m_surfaceInjectionRate(new DynamicState<double>(timeMap, 0.0)),
       m_reservoirInjectionRate(new DynamicState<double>(timeMap, 0.0)),
       m_BHPLimit(new DynamicState<double>(timeMap , 0.0)),
       m_THPLimit(new DynamicState<double>(timeMap , 0.0)),
       m_injectorType(new DynamicState<WellInjector::TypeEnum>(timeMap, WellInjector::WATER)),
       m_injectorControlMode(new DynamicState<WellInjector::ControlModeEnum>(timeMap, WellInjector::RATE)),
       m_producerControlMode(new DynamicState<WellProducer::ControlModeEnum>(timeMap, WellProducer::ORAT)),
       m_status(new DynamicState<WellCommon::StatusEnum>(timeMap, WellCommon::OPEN)),
       m_productionControls(new DynamicState<int>(timeMap, 0)),
       m_injectionControls(new DynamicState<int>(timeMap, 0)),
       m_inPredictionMode(new DynamicState<bool>(timeMap, true)),
       m_isProducer(new DynamicState<bool>(timeMap, true)),
       m_isAvailableForGroupControl(new DynamicState<bool>(timeMap, true)),
       m_guideRate(new DynamicState<double>(timeMap, -1.0)),
       m_guideRatePhase(new DynamicState<GuideRate::GuideRatePhaseEnum>(timeMap, GuideRate::UNDEFINED)),
       m_guideRateScalingFactor(new DynamicState<double>(timeMap, 1.0)),
       m_completions( new DynamicState<CompletionSetConstPtr>( timeMap , CompletionSetConstPtr( new CompletionSet()) )),
       m_groupName( new DynamicState<std::string>( timeMap , "" )),
       m_headI(headI),
       m_headJ(headJ),
       m_refDepth(refDepth)
 {
     m_name = name;
     m_creationTimeStep = creationTimeStep;
 }
コード例 #2
0
ファイル: Well.cpp プロジェクト: GitPaean/opm-parser
    Well::Well(const std::string& name_, std::shared_ptr<const EclipseGrid> grid , int headI, int headJ, Value<double> refDepth , Phase::PhaseEnum preferredPhase,
               TimeMapConstPtr timeMap, size_t creationTimeStep, WellCompletion::CompletionOrderEnum completionOrdering, bool allowCrossFlow)
        : m_status(new DynamicState<WellCommon::StatusEnum>(timeMap, WellCommon::SHUT)),
          m_isAvailableForGroupControl(new DynamicState<bool>(timeMap, true)),
          m_guideRate(new DynamicState<double>(timeMap, -1.0)),
          m_guideRatePhase(new DynamicState<GuideRate::GuideRatePhaseEnum>(timeMap, GuideRate::UNDEFINED)),
          m_guideRateScalingFactor(new DynamicState<double>(timeMap, 1.0)),
          m_isProducer(new DynamicState<bool>(timeMap, true)) ,
          m_completions( new DynamicState<CompletionSetConstPtr>( timeMap , CompletionSetConstPtr( new CompletionSet()) )),
          m_productionProperties( new DynamicState<WellProductionProperties>(timeMap, WellProductionProperties() )),
          m_injectionProperties( new DynamicState<WellInjectionProperties>(timeMap, WellInjectionProperties() )),
          m_polymerProperties( new DynamicState<WellPolymerProperties>(timeMap, WellPolymerProperties() )),
          m_solventFraction( new DynamicState<double>(timeMap, 0.0 )),
          m_groupName( new DynamicState<std::string>( timeMap , "" )),
          m_rft( new DynamicState<bool>(timeMap,false)),
          m_plt( new DynamicState<bool>(timeMap,false)),
          m_timeMap( timeMap ),
          m_headI(headI),
          m_headJ(headJ),
          m_refDepth(refDepth),
          m_preferredPhase(preferredPhase),
          m_grid( grid ),
          m_comporder(completionOrdering),
          m_allowCrossFlow(allowCrossFlow),
          m_segmentset(new DynamicState<SegmentSetConstPtr>(timeMap, SegmentSetPtr(new SegmentSet())))
    {
        m_name = name_;
        m_creationTimeStep = creationTimeStep;


    }