Struct feos_core::PhaseDiagram
source · [−]pub struct PhaseDiagram<U, E> {
pub states: Vec<PhaseEquilibrium<U, E, 2>>,
}
Expand description
Pure component and binary mixture phase diagrams.
Fields
states: Vec<PhaseEquilibrium<U, E, 2>>
Implementations
sourceimpl<U: EosUnit, E: EquationOfState> PhaseDiagram<U, E>
impl<U: EosUnit, E: EquationOfState> PhaseDiagram<U, E>
sourcepub fn binary_vle(
eos: &Rc<E>,
temperature_or_pressure: QuantityScalar<U>,
npoints: Option<usize>,
x_lle: Option<(f64, f64)>,
bubble_dew_options: (SolverOptions, SolverOptions)
) -> EosResult<Self> where
QuantityScalar<U>: Display + LowerExp,
pub fn binary_vle(
eos: &Rc<E>,
temperature_or_pressure: QuantityScalar<U>,
npoints: Option<usize>,
x_lle: Option<(f64, f64)>,
bubble_dew_options: (SolverOptions, SolverOptions)
) -> EosResult<Self> where
QuantityScalar<U>: Display + LowerExp,
Create a new binary phase diagram exhibiting a vapor/liquid equilibrium.
If a heteroazeotrope occurs and the composition of the liquid
phases are known, they can be passed as x_lle
to avoid
the calculation of unstable branches.
sourcepub fn lle(
eos: &Rc<E>,
temperature_or_pressure: QuantityScalar<U>,
feed: &QuantityArray1<U>,
min_tp: QuantityScalar<U>,
max_tp: QuantityScalar<U>,
npoints: Option<usize>
) -> EosResult<Self> where
QuantityScalar<U>: Display + LowerExp,
pub fn lle(
eos: &Rc<E>,
temperature_or_pressure: QuantityScalar<U>,
feed: &QuantityArray1<U>,
min_tp: QuantityScalar<U>,
max_tp: QuantityScalar<U>,
npoints: Option<usize>
) -> EosResult<Self> where
QuantityScalar<U>: Display + LowerExp,
Create a new phase diagram using Tp flash calculations.
The usual use case for this function is the calculation of liquid-liquid phase diagrams, but it can be used for vapor- liquid diagrams as well, as long as the feed composition is in a two phase region.
sourceimpl<U: EosUnit, E: EquationOfState> PhaseDiagram<U, E>
impl<U: EosUnit, E: EquationOfState> PhaseDiagram<U, E>
sourcepub fn binary_vlle(
eos: &Rc<E>,
temperature_or_pressure: QuantityScalar<U>,
x_lle: (f64, f64),
tp_lim_lle: Option<QuantityScalar<U>>,
npoints_vle: Option<usize>,
npoints_lle: Option<usize>,
bubble_dew_options: (SolverOptions, SolverOptions)
) -> EosResult<PhaseDiagramHetero<U, E>> where
QuantityScalar<U>: Display + LowerExp,
pub fn binary_vlle(
eos: &Rc<E>,
temperature_or_pressure: QuantityScalar<U>,
x_lle: (f64, f64),
tp_lim_lle: Option<QuantityScalar<U>>,
npoints_vle: Option<usize>,
npoints_lle: Option<usize>,
bubble_dew_options: (SolverOptions, SolverOptions)
) -> EosResult<PhaseDiagramHetero<U, E>> where
QuantityScalar<U>: Display + LowerExp,
Create a new binary phase diagram exhibiting a vapor/liquid/liquid equilibrium.
The x_lle
parameter is used as initial values for the calculation
of the heteroazeotrope.
sourceimpl<U: EosUnit, E: EquationOfState> PhaseDiagram<U, E>
impl<U: EosUnit, E: EquationOfState> PhaseDiagram<U, E>
sourcepub fn pure(
eos: &Rc<E>,
min_temperature: QuantityScalar<U>,
npoints: usize,
critical_temperature: Option<QuantityScalar<U>>,
options: SolverOptions
) -> EosResult<Self> where
QuantityScalar<U>: Display + LowerExp,
pub fn pure(
eos: &Rc<E>,
min_temperature: QuantityScalar<U>,
npoints: usize,
critical_temperature: Option<QuantityScalar<U>>,
options: SolverOptions
) -> EosResult<Self> where
QuantityScalar<U>: Display + LowerExp,
Calculate a phase diagram for a pure component.
Trait Implementations
Auto Trait Implementations
impl<U, E> !RefUnwindSafe for PhaseDiagram<U, E>
impl<U, E> !Send for PhaseDiagram<U, E>
impl<U, E> !Sync for PhaseDiagram<U, E>
impl<U, E> Unpin for PhaseDiagram<U, E> where
U: Unpin,
impl<U, E> UnwindSafe for PhaseDiagram<U, E> where
E: RefUnwindSafe,
U: UnwindSafe,
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcefn clone_into(&self, target: &mut T)
fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more