From c3e6a5f5e9dfc2ad50f03891340c1d9bff4f4565 Mon Sep 17 00:00:00 2001 From: Kohulan Date: Fri, 22 Mar 2024 16:04:33 +0100 Subject: [PATCH] fix: add Molecular formula --- app/modules/coconut/descriptors.py | 7 +++++-- app/modules/toolkits/cdk_wrapper.py | 10 +++++++--- 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/app/modules/coconut/descriptors.py b/app/modules/coconut/descriptors.py index dfde6ed..0362692 100644 --- a/app/modules/coconut/descriptors.py +++ b/app/modules/coconut/descriptors.py @@ -6,7 +6,10 @@ from app.modules.all_descriptors import get_cdk_rdkit_combined_descriptors from app.modules.npscorer import get_np_score from app.modules.toolkits.cdk_wrapper import get_CDK_descriptors -from app.modules.toolkits.cdk_wrapper import get_murko_framework, get_CDK_MolecularFormula +from app.modules.toolkits.cdk_wrapper import ( + get_murko_framework, + get_CDK_MolecularFormula, +) from app.modules.toolkits.helpers import parse_input from app.modules.toolkits.rdkit_wrapper import get_rdkit_descriptors from app.modules.tools.sugar_removal import get_sugar_info @@ -63,7 +66,7 @@ def get_COCONUT_descriptors(smiles: str, toolkit: str) -> Union[Dict[str, float] CombinedDescriptors = list(Descriptors) CombinedDescriptors.extend( - [hasLinearSugar, hasCircularSugars, framework, nplikeliness,molFormula], + [hasLinearSugar, hasCircularSugars, framework, nplikeliness, molFormula], ) DescriptorList = ( diff --git a/app/modules/toolkits/cdk_wrapper.py b/app/modules/toolkits/cdk_wrapper.py index 23f4660..6f2e9ba 100644 --- a/app/modules/toolkits/cdk_wrapper.py +++ b/app/modules/toolkits/cdk_wrapper.py @@ -179,8 +179,9 @@ def get_vander_waals_volume(molecule: any) -> float: cdk_base + ".geometry.volume.VABCVolume", )().calculate(molecule) return VABCVolume - -def get_CDK_MolecularFormula(molecule: any)->str: + + +def get_CDK_MolecularFormula(molecule: any) -> str: """This function takes the input SMILES and creates a CDK IAtomContainer. Args: @@ -189,11 +190,14 @@ def get_CDK_MolecularFormula(molecule: any)->str: Returns: str : MolecularFormula generated using CDK. """ - MolecularFormulaManipulator = JClass(cdk_base + ".tools.manipulator.MolecularFormulaManipulator") + MolecularFormulaManipulator = JClass( + cdk_base + ".tools.manipulator.MolecularFormulaManipulator" + ) MolecularFormula = MolecularFormulaManipulator.getMolecularFormula(molecule) return MolecularFormulaManipulator.getString(MolecularFormula) + def get_CDK_descriptors(molecule: any) -> Union[tuple, str]: """Take an input SMILES and generate a selected set of molecular.