Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release v0.7.0 #246

Merged
merged 3 commits into from
May 21, 2024
Merged
Show file tree
Hide file tree
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [Unreleased]

## [0.7.0] - 2024-05-20
### Added
- Added SAFT-VR Mie equation of state. [#237](https://github.com/feos-org/feos/pull/237)
- Added ePC-SAFT equation of state. [#229](https://github.com/feos-org/feos/pull/229)
Expand Down
10 changes: 5 additions & 5 deletions Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "feos"
version = "0.6.1"
version = "0.7.0"
authors = ["Gernot Bauer <[email protected]>", "Philipp Rehner <[email protected]>"]
edition = "2021"
readme = "README.md"
Expand All @@ -24,9 +24,9 @@ crate-type = ["rlib", "cdylib"]
[dependencies]
quantity = { version = "0.8", optional = true }
num-dual = "0.9"
feos-core = { version = "0.6", path = "feos-core" }
feos-dft = { version = "0.6", path = "feos-dft", optional = true }
feos-derive = { version = "0.4", path = "feos-derive" }
feos-core = { version = "0.7", path = "feos-core" }
feos-dft = { version = "0.7", path = "feos-dft", optional = true }
feos-derive = { version = "0.5", path = "feos-derive" }
numpy = { version = "0.21", optional = true }
ndarray = { version = "0.15", features = ["approx"] }
petgraph = { version = "0.6", optional = true }
Expand All @@ -38,7 +38,7 @@ serde_json = "1.0"
lazy_static = { version = "1.4", optional = true }
indexmap = "2.0"
rayon = { version = "1.7", optional = true }
itertools = "0.12"
itertools = "0.13"
typenum = "1.16"

[dependencies.pyo3]
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ The following models are currently published as part of the `FeOs` framework
|`saftvrqmie`|equation of state for quantum fluids and mixtures|✓|✓|
|`saftvrmie`|statistical associating fluid theory for variable range interactions of Mie form|✓||

The list is being expanded continuously. Currently under development are implementations of ePC-SAFT and a Helmholtz energy functional for the UV theory.
The list is being expanded continuously. Currently under development are implementations of Helmholtz energy functionals for the UV theory and for SAFT-VR Mie.

Other public repositories that implement models within the `FeOs` framework, but are currently not part of the `feos` Python package, are

Expand Down
6 changes: 4 additions & 2 deletions feos-core/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## Unreleased

## [0.7.0] - 2024-05-20
### Added
- Added specific isochoric and isobaric heat capacities to the Python interface. [#223](https://github.com/feos-org/feos/pull/223))
- Added `to_dict` method for `PyStateVec`. [#224](https://github.com/feos-org/feos/pull/224)
Expand All @@ -29,11 +31,11 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Updated `numpy` and `PyO3` dependencies to 0.21. [#238](https://github.com/feos-org/feos/pull/238)


## [0.6.1] 2024-01-11
## [0.6.1] - 2024-01-11
### Fixed
- Improved convergence of `tp_flash` for certain edge cases. [#219](https://github.com/feos-org/feos/pull/219)

## [0.6.0] 2023-12-19
## [0.6.0] - 2023-12-19
### Added
- Added `EquationOfState::ideal_gas` to initialize an equation of state that only consists of an ideal gas contribution. [#204](https://github.com/feos-org/feos/pull/204)
- Added `NoBinaryModelRecord` for models that do not use binary interaction parameters. [#211](https://github.com/feos-org/feos/pull/211)
Expand Down
2 changes: 1 addition & 1 deletion feos-core/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "feos-core"
version = "0.6.1"
version = "0.7.0"
authors = ["Gernot Bauer <[email protected]>",
"Philipp Rehner <[email protected]"]
edition = "2021"
Expand Down
2 changes: 1 addition & 1 deletion feos-core/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,4 +20,4 @@ Add this to your `Cargo.toml`

```toml
[dependencies]
feos-core = "0.6"
feos-core = "0.7"
2 changes: 1 addition & 1 deletion feos-derive/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "feos-derive"
version = "0.4.0"
version = "0.5.0"
authors = ["Gernot Bauer <[email protected]>", "Philipp Rehner <[email protected]>"]
edition = "2021"
readme = "README.md"
Expand Down
2 changes: 2 additions & 0 deletions feos-dft/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [Unreleased]

## [0.7.0] - 2024-05-20
### Changed
- Updated interfaces according to removal of `HelmholtzEnergyDual` and `HelmholtzEnergy` in `feos-core`. [#226](https://github.com/feos-org/feos/pull/226)
- Changed return values of `HelmholtzEnergyFunctional::contributions` from `dyn FunctionalContribution` to `HelmholtzEnergyFunctional::Contribution`. [#226](https://github.com/feos-org/feos/pull/226)
Expand Down
4 changes: 2 additions & 2 deletions feos-dft/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "feos-dft"
version = "0.6.0"
version = "0.7.0"
authors = ["Philipp Rehner <[email protected]>", "Gernot Bauer <[email protected]>"]
edition = "2021"
license = "MIT OR Apache-2.0"
Expand All @@ -19,7 +19,7 @@ features = [ "rayon" ]
[dependencies]
quantity = { version = "0.8", optional = true }
num-dual = "0.9"
feos-core = { version = "0.6", path = "../feos-core" }
feos-core = { version = "0.7", path = "../feos-core" }
ndarray = "0.15"
nalgebra = "0.32"
rustdct = "0.7"
Expand Down
2 changes: 1 addition & 1 deletion feos-dft/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,5 +17,5 @@ Add this to your `Cargo.toml`

```toml
[dependencies]
feos-dft = "0.5"
feos-dft = "0.7"
```
1 change: 1 addition & 0 deletions src/association/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -234,6 +234,7 @@ impl<P: AssociationStrength> Association<P> {
}
}

/// Implementation of the association strength in the SAFT association model.
pub trait AssociationStrength: HardSphereProperties {
type Record: Copy;
type BinaryRecord: Copy;
Expand Down
4 changes: 3 additions & 1 deletion src/epcsaft/eos/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -20,14 +20,15 @@ use dispersion::Dispersion;
use hard_chain::HardChain;
use ionic::Ionic;

/// Customization options for the ePC-SAFT equation of state.
/// Implemented variants of the ePC-SAFT equation of state.
#[derive(Copy, Clone)]
#[cfg_attr(feature = "python", pyo3::pyclass)]
pub enum ElectrolytePcSaftVariants {
Advanced,
Revised,
}

/// Customization options for the ePC-SAFT equation of state.
#[derive(Copy, Clone)]
pub struct ElectrolytePcSaftOptions {
pub max_eta: f64,
Expand All @@ -47,6 +48,7 @@ impl Default for ElectrolytePcSaftOptions {
}
}

/// electrolyte PC-SAFT (ePC-SAFT) equation of state.
pub struct ElectrolytePcSaft {
pub parameters: Arc<ElectrolytePcSaftParameters>,
pub options: ElectrolytePcSaftOptions,
Expand Down
4 changes: 3 additions & 1 deletion src/epcsaft/parameters.rs
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ use std::sync::Arc;

use crate::epcsaft::eos::permittivity::PermittivityRecord;

/// PC-SAFT pure-component parameters.
/// ePC-SAFT pure-component parameters.
#[derive(Serialize, Deserialize, Clone, Default)]
pub struct ElectrolytePcSaftRecord {
/// Segment number
Expand Down Expand Up @@ -182,6 +182,7 @@ impl std::fmt::Display for ElectrolytePcSaftAssociationRecord {
}
}

/// ePC-SAFT binary interaction parameters.
#[derive(Serialize, Deserialize, Clone, Default)]
pub struct ElectrolytePcSaftBinaryRecord {
/// Binary dispersion interaction parameter
Expand Down Expand Up @@ -280,6 +281,7 @@ impl ElectrolytePcSaftBinaryAssociationRecord {
}
}

/// Parameter set required for the ePC-SAFT equation of state.
pub struct ElectrolytePcSaftParameters {
pub molarweight: Array1<f64>,
pub m: Array1<f64>,
Expand Down
3 changes: 2 additions & 1 deletion src/saftvrmie/eos/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ pub(super) mod association;
pub(crate) mod dispersion;
use dispersion::{a_disp, a_disp_chain, Properties};

/// Customization options for the PC-SAFT equation of state and functional.
/// Customization options for the SAFT-VR Mie equation of state.
#[derive(Copy, Clone)]
pub struct SaftVRMieOptions {
pub max_eta: f64,
Expand All @@ -33,6 +33,7 @@ impl Default for SaftVRMieOptions {
}
}

/// SAFT-VR Mie equation of state.
pub struct SaftVRMie {
parameters: Arc<SaftVRMieParameters>,
options: SaftVRMieOptions,
Expand Down
4 changes: 3 additions & 1 deletion src/saftvrmie/parameters.rs
Original file line number Diff line number Diff line change
Expand Up @@ -135,7 +135,7 @@ impl std::fmt::Display for SaftVRMieRecord {
}
}

/// PC-SAFT binary interaction parameters.
/// SAFT-VR Mie binary interaction parameters.
#[derive(Serialize, Deserialize, Clone, Default)]
pub struct SaftVRMieBinaryRecord {
/// Binary dispersion energy interaction parameter
Expand Down Expand Up @@ -210,6 +210,7 @@ impl std::fmt::Display for SaftVRMieBinaryRecord {
}
}

/// Parameter set required for the SAFT-VR Mie equation of state.
pub struct SaftVRMieParameters {
pub molarweight: Array1<f64>,
pub m: Array1<f64>,
Expand Down Expand Up @@ -497,6 +498,7 @@ impl HardSphereProperties for SaftVRMieParameters {
}

/// Utilities for running tests
#[doc(hidden)]
pub mod test_utils {
use super::*;
use feos_core::parameter::Identifier;
Expand Down