chemaxon.calculations.solubility

class SolubilityUnit(enum.IntEnum):

The supported types of units for the solubility result.

LOG_S = <SolubilityUnit.LOG_S: 0>

Solubility is expressed in base-10 logarithm unit.

MG_PER_ML = <SolubilityUnit.MG_PER_ML: 1>

Solubility is expressed in mg/ml unit.

MOL_PER_L = <SolubilityUnit.MOL_PER_L: 2>

Solubility is expressed in mol/l unit.

def solubility( mol: chemaxon.molecule.Molecule, ph: float = None, unit: SolubilityUnit = <SolubilityUnit.LOG_S: 0>) -> float:

Solubility calculation.

The solubility predictor calculates the aqueous solubility of a compound based on its structure.
It is able to calculate two types of solubility: intrinsic and pH-dependent solubility. 

The intrinsic solubility (usually denoted as logS0) of an ionizable compound is the solubility 
that can be measured after an equilibrium of solvation between the dissolved and the solid state 
is reached at a pH where the compound is fully neutral.

The pH of a solution affects the ionization of the dissolved compound, shifting its solvation equilibrium.
With increasing ionization solubility increases compared to the intrinsic solubility.

Link: https://docs.chemaxon.com/latest/calculators_solubility-predictor.html

Parameters
  • mol: Molecule - Input molecule.
  • ph: float - pH of the solution.
  • unit: SolubilityUnit - unit of the solubility result. Default is LOG_S.
Returns

float - solubility in the specified unit

@dataclass(frozen=True)
class SolubilityResult:

Solubility calculation result object containing the solubility value with pH.

SolubilityResult(solubility: float, ph: float)
solubility: float

Solubility value in the specified unit.

ph: float

pH value for which the solubility is specified.

def solubility_ph_range( mol: chemaxon.molecule.Molecule, ph_range: chemaxon.calculations.ph_range.PhRange = PhRange(lower_bound=0.0, upper_bound=14.0, step=1.0), unit: SolubilityUnit = <SolubilityUnit.LOG_S: 0>) -> list[SolubilityResult]:

Solubility calculation in pH range.

The solubility predictor calculates the aqueous solubility of a compound based on its structure.
It is able to calculate two types of solubility: intrinsic and pH-dependent solubility. 

The pH of a solution affects the ionization of the dissolved compound, shifting its solvation equilibrium.
With increasing ionization solubility increases compared to the intrinsic solubility.

This function calculates the pH-dependent solubility in the provided pH range with the provided step size.
The result is an array of solubility values in the specified unit.

Link: https://docs.chemaxon.com/latest/calculators_solubility-predictor.html

Parameters
  • mol: Molecule - Input molecule
  • ph_range: PhRange - pH range for which the solubility will be calculated.
  • unit: SolubilityUnit - unit of the solubility result. Default is LOG_S.
Returns

list[float] - solubility array in the specified unit