polymerist.polymers.estimation

For estimating properties of chains based on their constituent monomers and chain info

Functions

estimate_n_atoms_linear(→ int)

For a given collection of monomer fragments and a desired degree of polymerization,

estimate_n_monomers_infimum(→ int)

For a given collection of monomer fragments and an UPPER bound on the number of atoms,

estimate_n_monomers_supremum(→ int)

For a given collection of monomer fragments and a LOWER bound on the number of atoms,

Module Contents

polymerist.polymers.estimation.estimate_n_atoms_linear(monomers: polymerist.polymers.monomers.repr.MonomerGroup, n_monomers: int) int[source]

For a given collection of monomer fragments and a desired degree of polymerization, estimates and returns the number of atoms present in the resulting chain

!NOTE! : As-implemented, only works for linear homopolymers and block copolymers with equal an distribution of monomers

Parameters:
  • monomers (MonomerGroup) – A collection of monomer fragments

  • n_monomers (int) – The desired degree of polymerization (i.e. number of repeat units in the polymer chain)

Returns:

n_atoms – The estimated number of atoms in the resulting chain

Return type:

int

polymerist.polymers.estimation.estimate_n_monomers_infimum(monomers: polymerist.polymers.monomers.repr.MonomerGroup, n_atoms_max: int, n_monomers_min: int = 3) int[source]

For a given collection of monomer fragments and an UPPER bound on the number of atoms, returns the LARGEST number of monomers which guarantees that a polymer chain made up of that many monomers will have NO MORE THAN the specified maximum number of atoms

Parameters:
  • monomers (MonomerGroup) – A collection of monomer fragments

  • n_atoms_max (int) – The maximum number of atoms the resulting chain should contain

  • n_monomers_min (int) – The minimum number of monomers to consider (default is 3)

Returns:

n_monomers_infimum – The greatest lower bound on the number of monomers needed to achieve the desired chain length (i.e. number of atom)

Return type:

int

polymerist.polymers.estimation.estimate_n_monomers_supremum(monomers: polymerist.polymers.monomers.repr.MonomerGroup, n_atoms_min: int, n_monomers_min: int = 3) int[source]

For a given collection of monomer fragments and a LOWER bound on the number of atoms, returns the SMALLEST number of monomers which guarantees that a polymer chain made up of that many monomers will have NO FEWER THAN the specified minimum number of atoms

Parameters:
  • monomers (MonomerGroup) – A collection of monomer fragments

  • n_atoms_min (int) – The minimum number of atoms the resulting chain should contain

  • n_monomers_min (int) – The minimum number of monomers to consider (default is 3)

Returns:

n_monomers_supremum – The least upper bound on the number of monomers needed to achieve the desired chain length (i.e. number of atoms)

Return type:

int