|
BlackoilWellModelNetworkGeneric.hpp
Go to the documentation of this file.
234 const std::map<std::string, data::BranchData>& branchData(const details::NetworkDomain domain) const
271 // Network branch pressure drops and flow rates for output (outlet branch for production network, inlet branch for injection network)
274 std::array<std::map<std::string, Scalar>, details::domainIndex(details::NetworkDomain::Count)> domain_node_pressures_;
275 std::array<std::map<std::string, data::BranchData>, details::domainIndex(details::NetworkDomain::Count)> domain_branch_data_;
278 std::array<std::set<std::string>, details::domainIndex(details::NetworkDomain::Count)> domain_invalid_nodes_;
280 // Valid network pressures for output and initialization for safe restart after failed iterations
282 // Valid network branch pressure drops and flow rates for output (outlet branch for production network, inlet branch for injection network) for safe restart after failed iterations
284 std::array<std::map<std::string, Scalar>, details::domainIndex(details::NetworkDomain::Count)> last_valid_domain_node_pressures_;
285 std::array<std::map<std::string, data::BranchData>, details::domainIndex(details::NetworkDomain::Count)> last_valid_domain_branch_data_;
Class for handling the blackoil well network model. Definition: BlackoilWellModelNetworkGeneric.hpp:107 std::map< std::string, Scalar > node_pressures_ Definition: BlackoilWellModelNetworkGeneric.hpp:270 bool shouldBalance(const int reportStepIndex) const virtual ~BlackoilWellModelNetworkGeneric()=default std::array< std::map< std::string, data::BranchData >, details::domainIndex(details::NetworkDomain::Count)> last_valid_domain_branch_data_ Definition: BlackoilWellModelNetworkGeneric.hpp:285 bool willBalanceOnNextIteration(const int reportStepIndex) const Checks if we will perform a network re-balance on the next Newton iteration. void commitState() Definition: BlackoilWellModelNetworkGeneric.hpp:155 void assignNodeAndBranchValues(std::map< std::string, data::NodeData > &nodevalues, std::map< std::string, data::BranchData > &branchvalues, std::map< std::string, data::BranchData > &converged_branchvalues, const int reportStepIdx) const bool active_ Definition: BlackoilWellModelNetworkGeneric.hpp:266 void setNodePressures(const std::map< std::string, Scalar > &values) Definition: BlackoilWellModelNetworkGeneric.hpp:121 void initialize(const int report_step) Initialize wells according to network configuration. int invalid_nodes_report_step_ Definition: BlackoilWellModelNetworkGeneric.hpp:279 std::set< std::string > & invalidNodes(const details::NetworkDomain domain) Definition: BlackoilWellModelNetworkGeneric.hpp:249 BlackoilWellModelGeneric< Scalar, IndexTraits > & well_model_ Definition: BlackoilWellModelNetworkGeneric.hpp:267 Scalar updatePressures(const int reportStepIdx, const Scalar damping_factor, const Scalar update_upper_bound) void syncProductionDomainState_() Definition: BlackoilWellModelNetworkGeneric.hpp:260 const std::map< std::string, data::BranchData > & branchData(const details::NetworkDomain domain) const Definition: BlackoilWellModelNetworkGeneric.hpp:234 std::map< std::string, data::BranchData > branch_data_ Definition: BlackoilWellModelNetworkGeneric.hpp:272 std::array< std::map< std::string, data::BranchData >, details::domainIndex(details::NetworkDomain::Count)> domain_branch_data_ Definition: BlackoilWellModelNetworkGeneric.hpp:275 void updateActiveStateImpl(const Network::ExtNetwork &network) std::map< std::string, Scalar > last_valid_node_pressures_ Definition: BlackoilWellModelNetworkGeneric.hpp:281 const std::map< std::string, Scalar > & nodePressures(const details::NetworkDomain domain) const Definition: BlackoilWellModelNetworkGeneric.hpp:224 bool needPreStepRebalance(const int report_step) const NetworkPressures computePressures(const Network::ExtNetwork &network, const VFPInjProperties< Scalar > &vfp_inj_props, const UnitSystem &unit_system, const int reportStepIdx, const Parallel::Communication &comm) const bool operator==(const BlackoilWellModelNetworkGeneric< Scalar, IndexTraits > &rhs) const void updateActiveState(const int report_step) Checks if network is active (at least one network well on prediction). std::array< std::map< std::string, Scalar >, details::domainIndex(details::NetworkDomain::Count)> last_valid_domain_node_pressures_ Definition: BlackoilWellModelNetworkGeneric.hpp:284 BlackoilWellModelNetworkGeneric(BlackoilWellModelGeneric< Scalar, IndexTraits > &well_model) std::map< std::string, data::BranchData > last_valid_branch_data_ Definition: BlackoilWellModelNetworkGeneric.hpp:283 std::map< std::string, data::BranchData > & branchData(const details::NetworkDomain domain) Definition: BlackoilWellModelNetworkGeneric.hpp:239 static constexpr details::NetworkDomain productionNetworkDomain() Definition: BlackoilWellModelNetworkGeneric.hpp:219 const std::set< std::string > & invalidNodes(const details::NetworkDomain domain) const Definition: BlackoilWellModelNetworkGeneric.hpp:244 std::map< std::string, Scalar > well_group_thp_calc_ Definition: BlackoilWellModelNetworkGeneric.hpp:287 void serializeOp(Serializer &serializer) Definition: BlackoilWellModelNetworkGeneric.hpp:172 void syncLegacyProductionState_() Definition: BlackoilWellModelNetworkGeneric.hpp:254 void imposeWellThpLimit(WellInterfaceGeneric< Scalar, IndexTraits > &well, const Scalar limit) Apply a network THP limit and retain it across well reconstruction or network detachment. bool active() const return true if network is active (at least one network well in prediction mode) Definition: BlackoilWellModelNetworkGeneric.hpp:114 void setFromRestart(const std::optional< std::map< std::string, double > > &restart_pressures) std::array< std::map< std::string, Scalar >, details::domainIndex(details::NetworkDomain::Count)> domain_node_pressures_ Definition: BlackoilWellModelNetworkGeneric.hpp:274 void initializeWell(WellInterfaceGeneric< Scalar, IndexTraits > &well) Initialize a single well according to network configuration. std::array< std::set< std::string >, details::domainIndex(details::NetworkDomain::Count)> domain_invalid_nodes_ Definition: BlackoilWellModelNetworkGeneric.hpp:278 std::map< std::string, Scalar > & nodePressures(const details::NetworkDomain domain) Definition: BlackoilWellModelNetworkGeneric.hpp:229 void resetState() Definition: BlackoilWellModelNetworkGeneric.hpp:163 NetworkPressures computePressures(const Network::ExtNetwork &network, const VFPProdProperties< Scalar > &vfp_prod_props, const UnitSystem &unit_system, const int reportStepIdx, const Parallel::Communication &comm) const const std::map< std::string, Scalar > & nodePressures() const Definition: BlackoilWellModelNetworkGeneric.hpp:118 Definition: VFPInjProperties.hpp:34 Definition: VFPProdProperties.hpp:38 Definition: WellInterfaceGeneric.hpp:59 Dune::Communication< MPIComm > Communication Definition: ParallelCommunication.hpp:30 std::optional< NetworkDomain > domainForWell(const Well &well) Definition: BlackoilWellModelNetworkGeneric.hpp:73 std::vector< NetworkDescriptor > activeNetworks(const Schedule &schedule, const int timeStepIdx) Helper to get all active networks (production, gas injection, water injection) at a given time step. constexpr std::size_t domainIndex(const NetworkDomain domain) Definition: BlackoilWellModelNetworkGeneric.hpp:60 @ Production @ InjectionGas @ InjectionWater std::vector< NetworkDescriptor > networks(const Schedule &schedule, const int timeStepIdx) bool anyNetworkActive(const Schedule &schedule, const int timeStepIdx) Helper to check if any network (production, gas injection, water injection) is active at a given time... Definition: blackoilbioeffectsmodules.hh:45 Result of one network pressure evaluation for one network (domain). Definition: BlackoilWellModelNetworkGeneric.hpp:195 std::map< std::string, data::BranchData > branch_data Definition: BlackoilWellModelNetworkGeneric.hpp:197 std::set< std::string > invalid_nodes Definition: BlackoilWellModelNetworkGeneric.hpp:200 std::map< std::string, Scalar > node_pressures Definition: BlackoilWellModelNetworkGeneric.hpp:196 Definition: BlackoilWellModelNetworkGeneric.hpp:65 NetworkDomain domain Definition: BlackoilWellModelNetworkGeneric.hpp:66 std::reference_wrapper< const Network::ExtNetwork > network Definition: BlackoilWellModelNetworkGeneric.hpp:67 |