SaftType

despasito.equations_of_state.saft.gamma_sw.SaftType

class SaftType(**kwargs)[source]

Object of SAFT-𝛾-SW (for square well potential)

Parameters:
  • beads (list[str]) – List of unique bead names used among components

  • molecular_composition (numpy.ndarray) – \(\nu_{i,k}/k_B\). Array containing the number of components by the number of bead types. Defines the number of each type of group in each component.

  • bead_library (dict) – A dictionary where bead names are the keys to access EOS self interaction parameters:

    • epsilon: \(\epsilon_{k,k}/k_B\), Energy well depth scaled by Boltzmann

    constant - sigma: \(\sigma_{k,k}\), Size parameter, contact distance [nm] - lambda: \(\lambda_{k,k}\), Range of the attractive interaction of well depth, epsilon - Sk: Optional, default=1, Shape factor, reflects the proportion which a given segment contributes to the total free energy - Vks: Optional, default=1, Number of segments in this molecular group

  • cross_library (dict, Optional, default={}) – Optional library of bead cross interaction parameters. As many or as few of the desired parameters may be defined for whichever group combinations are desired. If this matrix isn’t provided, the SAFT combining_rules are used.

    • epsilon: \(\epsilon_{k,l}/k_B\), Energy parameter, well depth, scaled

    by Boltzmann Constant - sigma: \(\sigma_{k,k}\), Size parameter, contact distance [nm] - lambda: \(\lambda_{k,l}\), Range of the attractive interaction of well depth, epsilon

  • num_rings (list) – Number of rings in each molecule. This will impact the chain contribution to the Helmholtz energy.

Variables:
  • beads (list[str]) – List of unique bead names used among components

  • bead_library (dict) – A dictionary where bead names are the keys to access EOS self interaction parameters. See entry in Parameters section.

  • cross_library (dict) – Library of bead cross interaction parameters. As many or as few of the desired parameters may be defined for whichever group combinations are desired. See entry in Parameters section.

  • Aideal_method (str) – “Abroglie” the default functional form of the ideal gas contribution of the Helmholtz energy

  • residual_helmholtz_contributions (list[str]) – List of methods from the specified saft_source representing contributions to the Helmholtz energy that are functions of density, temperature, and composition. For this variant, [Amonomer, Achain]

  • parameter_types (list[str]) – This list of parameter names, “epsilon”, “lambda”, “sigma”, and/or “Sk” as well as parameters for the specific SAFT variant.

  • parameter_bound_extreme (dict) –

    With each parameter name as an entry representing a list with the minimum and maximum feasible parameter value.

    • epsilon: [10.,1000.]

    • lambda: [1.0,10.]

    • sigma: [0.1,10.0]

    • Sk: [0.1,1.0]

  • combining_rules (dict) –

    Contains functional form and additional information for calculating cross interaction parameters that are not found in cross_library. Function must be one of those contained in combining_rule_types. The default values are:

    • sigma: {“function”: “mean”}

    • lambda: {“function”: “weighted_mean”,”weighting_parameters”: [“sigma”]}

    • epsilon: {“function”: “square_well_berthelot”,”weighting_parameters”:

    [“sigma”, “lambda”]}

  • eos_dict (dict) –

    Dictionary of parameters and specific settings

    • molecular_composition (numpy.ndarray) - \(\nu_{i,k}/k_B\). Array

    containing the number of components by the number of bead types. Defines the number of each type of group in each component. - num_rings (list) - Number of rings in each molecule. This will impact the chain contribution to the Helmholtz energy. - Sk (numpy.ndarray) - Shape factor, reflects the proportion which a given segment contributes to the total free energy. Length of beads array. - Vks (numpy.ndarray) - Number of segments in this molecular group. Length of beads array. - epsilon_kl (numpy.ndarray) - Matrix of well depths for groups (k,l) - sigma_kl (numpy.ndarray) - Matrix of bead diameters (k,l) - lambda_kl (numpy.ndarray) - Matrix of range of potential well depth (k,l) - Cmol2seg (float) - Conversion factor from from molecular number density, \(\rho\), to segment (i.e. group) number density, \(\rho_S\). - epsilon_ij (numpy.ndarray) - Matrix of average molecular well depths (k,l) - sigma_ij (numpy.ndarray) - Matrix of average molecular diameter (k,l) - lambda_ij (numpy.ndarray) - Matrix of average molecular range of potential well depth (k,l) - xskl (numpy.ndarray) - Matrix of mole fractions of bead (i.e. segment or group) k multiplied by that of bead l - alphakl (np.array) - van der Waals attractive parameter for square-well segments, equal to \(\alpha_{k,l}/k_B\).

  • ncomp (int) – Number of components in the system

  • nbeads (int) – Number of beads in system that are shared among components

  • xi (numpy.ndarray) – Mole fraction of each molecule in mixture. Default initialization is np.nan

SaftType.Achain(rho, T, xi)

Outputs chain contribution to the Helmholtz energy \(A^{chain}/Nk_{b}T\).

SaftType.Afirst_order(rho, T, xi[, zetax])

Outputs \(A^{1st order}/Nk_{b}T\).

SaftType.Ahard_sphere(rho, T, xi)

Outputs hard sphere approximation of Helmholtz free energy, \(A^{HS}/Nk_{b}T\).

SaftType.Amonomer(rho, T, xi)

Outputs the monomer contribution of the Helmholtz energy \(A^{mono.}/Nk_{b}T\).

SaftType.Asecond_order(rho, T, xi[, zetax, KHS])

Outputs \(A^{2nd order}/Nk_{b}T\).

SaftType.calc_Kijklab(T, rc_klab[, rd_klab, ...])

Calculation of association site bonding volume, dependent on molecule in addition to group

SaftType.calc_component_averaged_properties()

Calculate component averaged properties specific to SAFT-𝛾-SW

SaftType.calc_g0HS(rho, xi[, zetax, mode])

The contact value of the pair correlation function of a hypothetical pure fluid of diameter sigmax evaluated at an effective packing fraction, zeta_eff.

SaftType.calc_gHS(rho, xi)

Hypothetical pair correlation function of a hypothetical pure fluid.

SaftType.calc_gSW(rho, T, xi[, zetax])

Calculate the square-well pair correlation function at the effective contact distance and the actual packing fraction of the mixture.

SaftType.calc_gr_assoc(rho, T, xi[, Ktype])

Reference fluid pair correlation function used in calculating association sites

SaftType.density_max(xi, T[, maxpack])

Estimate the maximum density based on the hard sphere packing fraction.

SaftType.effective_packing_fraction(rho, xi)

Effective packing fraction for SAFT-gamma with a square-wave potential

SaftType.parameter_refresh(bead_library, ...)

To refresh dependent parameters

SaftType.reduced_density(rho, xi)

Reduced density matrix where the segment number density is reduced by powers of the size parameter, sigma.