1#ifndef __SIMULATION_HYDRO_MASS_TRANSFER_HPP__
2#define __SIMULATION_HYDRO_MASS_TRANSFER_HPP__
4#include <cma_utils/alias.hpp>
6#include <mixture/species_descriptor.hpp>
45 = std::variant<FlowmapTurbulence, FixedKla, FlowmapKla, Auto>;
57 struct MassTransferProxy;
65 std::shared_ptr<Simulation::ScalarSimulation> _liquid_scalar,
66 std::shared_ptr<Simulation::ScalarSimulation> _gas_scalar);
72 [[nodiscard]]
const std::shared_ptr<MassTransferProxy>&
proxy()
const;
74 [[nodiscard]] std::optional<std::span<const double>>
mtr_data()
const;
88 std::shared_ptr<MassTransferProxy>
_proxy;
90 std::shared_ptr<Simulation::ScalarSimulation>
gas_scalar;
Definition species_descriptor.hpp:36
const std::shared_ptr< MassTransferProxy > & proxy() const
Definition mass_transfer.cpp:236
std::optional< std::span< const double > > mtr_data() const
Definition mass_transfer.cpp:219
MassTransferModel()
Definition mass_transfer.cpp:229
void gas_liquid_mass_transfer() const
Definition mass_transfer.cpp:176
MassTransferModel(const Mixture::SpecieTable &species, MassTransfer::Type::MtrTypeVariant _type, std::shared_ptr< Simulation::ScalarSimulation > _liquid_scalar, std::shared_ptr< Simulation::ScalarSimulation > _gas_scalar)
Definition mass_transfer.cpp:123
MassTransferModel & operator=(MassTransferModel &&rhs) noexcept
std::shared_ptr< Simulation::ScalarSimulation > liquid_scalar
Definition mass_transfer.hpp:89
MassTransferModel & operator=(const MassTransferModel &rhs)=delete
std::shared_ptr< MassTransferProxy > _proxy
Definition mass_transfer.hpp:88
MassTransfer::Type::MtrTypeVariant type
Definition mass_transfer.hpp:87
MassTransferModel(MassTransferModel &&rhs) noexcept
MassTransferModel(const MassTransferModel &rhs)=delete
void update(const CmaUtils::IterationStatePtrType &state)
Definition mass_transfer.cpp:164
std::shared_ptr< Simulation::ScalarSimulation > gas_scalar
Definition mass_transfer.hpp:90
Definition scalar_simulation.hpp:29
::rust::Box<::IterationStateWrapper > IterationStatePtrType
Opaque type for iteration state.
Definition alias.hpp:20
Definition mass_transfer.hpp:19
std::variant< FlowmapTurbulence, FixedKla, FlowmapKla, Auto > MtrTypeVariant
Definition mass_transfer.hpp:44
Names
Definition mass_transfer.hpp:21
@ FlowmapTurb
Definition mass_transfer.hpp:22
Definition impl_mass_transfer.hpp:23
Sign
Definition mass_transfer.hpp:50
@ GasToLiquid
Definition mass_transfer.hpp:51
@ LiquidToGas
Definition mass_transfer.hpp:52
Namespace that contains classes and structures related to simulation handling.
Definition host_specific.hpp:12
Definition mass_transfer.hpp:41
Definition mass_transfer.hpp:36
std::vector< double > value
Definition mass_transfer.hpp:37
Definition mass_transfer.hpp:32
Definition mass_transfer.hpp:28