The Solubility Predictor is currently available in three ways.
The solubility predictor is integrated into Marvin Sketch as a plugin, which makes prediction fast and easy. The Solubility Plugin can be reached via the Calculations > Solubility > Aqueous Solubility menu item.
The menu system of the Solubility Plugin has File, Options and Help menu items.
The result window displays the pH-logS plot and a table with prediction results given in one of the following ways :
Solubility information: displays intrinsic solubility value, solubility at pH 7.4 and a qualitative solubility category. These categories are:
low: if solubility is < 0.01 mg/ml
moderate: if solubility is between 0.01 and 0.06 mg/ml
high: if solubility is > 0.06 mg/ml
About qualitative categories
These categories are determined based on intrinsic solubility values.
pH-Solubility table: displays a table containing the predicted pH-solubility values.
Fig. 4 The Solubility Plugin result window in MarvinSketch
The solubility predictor is integrated into the cxcalc command line tool. The command syntax is
cxcalc [general options] [input files/strings] logs [logs options] [input files/strings]
where the logS options are the following:
-h --help this help message
-U --unit measurement unit [mg/ml | mol/l | logS] (default:
-i --intrinsic intrinsic solubility (default: false)
-c --category solubility category (default: false)
-H --pH solubility at this pH (default: not set)
-l --lower (default: 0)
-u --upper (default: 14)
-s --step (default: 1)
Some examples on how to use the solubility predictor via cxcalc:
Calculating intrinsic solubility and solubility at pH 7.4 for compounds:
cxcalc logs -i true -H 7.4 molecules.smiles
Calculating solubility values between pH 7.0 and 13.0 in mol/l unit:
cxcalc logs -U mol/l -l 7.0 -u 13.0 molecules.smiles
Predicting qualitative solubility category:
cxcalc logs -c true test.mol
The Solubility Predictor is also integrated into ChemAxon's Chemical Terms language. The solubility can be calculated by the logS() function that has two parameters:
A unit parameter, which could be 'mg/ml', 'mol/l', 'logS', or 'category'. In case of 'category' is used, qualitative solubility is calculated. If no unit parameter is given, logS unit is used.
A pH parameter, which is a real number (e.g. '7.4') and sets the pH for solublity calculation. If no pH parameter is given, intrinsic solubility is calculated.
The following examples show how the functions above can be used with the Chemical Terms evaluator command line tool:
Calculating intrinsic solubility for acetic acid in logS unit:
evaluate -e "logS()" "CC(O)=O"
Calculating solubility at pH 7.0 in mol/l unit:
evaluate -e "logS('7.0', 'mol/l')" molecule.mol
Determining qualitative solubility category at pH 7.4:
evaluate -e "logS('7.4', 'category')" molecule.mol
Solubility prediction is also available as a node in the KNIME workflow management system. All options that are available for solubility prediction are also available in KNIME. The pictures below show the General and Advanced Options of the node:
Fig. 5 General options of the Solubility KNIME node
Fig. 6 Advanced options of the Solubility KNIME node
The following simple KNIME workflow is an example of how to predict solubility using KNIME nodes:
Fig. 7 Simple workflow for calculating solubility in KNIME
In this workflow the importer node provides the molecules for the solubility node. The solubility node is set to calculate the intrinsic qualitative and quantitative solubility for the input molecules.
The output in this case is a MarvinView node that is used to view the molecules with the calculated solubility values.
The picture above shows the state of the nodes before the running of the whole workflow.
The first few lines of the output viewed in the MarvinView node:
Fig. 8 First few lines of the output of the solubility calculation
The Solubility Plugin API with usage examples can be reached here.
Solubility Predictor demo page
You can try the Solubility Predictor for free on this demo page.
We tested the accuracy of the Solubility Predictor on the full and a filtered subset (multi-component, charged molecules and structures containing rare elements were eliminated) of the HongPing Zhao’s solubility dataset. See the reference within the report.
Theoretical background material
If you are curious about the theoretical background of the Solubility Predictor, you can find a detailed description here.
The following list collects the known issues of the logS Predictor that are not solved yet.
The logS Predictor can't handle special type of salts that show zwitterionic behaviour in a certain pH range. This issue was found in v. 17.29.
The chloride salt rhodamine B is zwitterionic in the basic pH range (when pH > 7), which should be taken into account and a solubility should be calculated. However, as the N+ atom in the input form can't be neutralized, we handle it as a salt, and we don't calculate solubility for it.
Fig. 9. The zwitterionic form of rhodamine B
1. Hou, T. J.; Xia, K.; Zhang, W.; Xu, X. J. ADME Evaluation in Drug Discovery. 4. Prediction of Aqueous Solubility Based on Atom Contribuition Approach. J. Chem. Inf. Comput. Sci. 2004, 44, 266-275
2. Shoghi, E.; Fuguet, E.; Bosch, E.; Rafols, C. Solubility-pH profiles of some acidic, basic and amphoteric drugs European Journal of Pharmaceutical Sciences 2013, 48, 291-300