Example #1
0
def CalculateEstateVSA(mol, bins=None):
    """
    #################################################################
    MOE-type descriptors using Estate indices and surface area 
    
    contributions.
    
    estateBins=[-0.390,0.290,0.717,1.165,1.540,1.807,2.05,4.69,9.17,15.0] 
    
    You can specify your own bins to compute some descriptors
    
    Usage:
        
        result=CalculateEstateVSA(mol)
        
        Input: mol is a molecule object
        
        Output: result is a dict form 
    #################################################################
    """
    temp = EVSA.EState_VSA_(mol, bins, force=1)
    res = {}
    for i, j in enumerate(temp):
        res['EstateVSA' + str(i)] = round(j, 3)
    return res
Example #2
0
def CalculateEstateVSA(mol, bins=None):
    """
    MOE-type descriptors using Estate indices and surface area
    contributions.
    """
    temp = EVSA.EState_VSA_(mol, bins, force=1)
    res = {}
    for i, j in enumerate(temp):
        res['EstateVSA' + str(i)] = round(j, 3)
    return res
Example #3
0
def CalculateEstateVSA(mol: Chem.Mol, bins: List[float] = None) -> dict:
    """Get MOE-type descriptors using Estate indices and SA contributions.

    :param bins: interval boundaries used in the P_VSA calculation.
                 The default Estate bins are [-0.390,0.290,0.717,1.165,1.540,1.807,2.05,4.69,9.17,15.0].
    """
    temp = EVSA.EState_VSA_(mol, bins, force=1)
    res = {}
    for i, j in enumerate(temp):
        res[f'EstateVSA{i}'] = round(j, 3)
    return res
Example #4
0
    def compute_MOE_descriptors(self):
        """compute the MOE-type descriptors.
        Ref:???

        Returns:
            MOE_dict: MOE dictionary, data type: float
        """
        assert type(self.Molecule) == Chem.rdchem.Mol

        MOE_dict = {}

        SlogP_VSA_names = []
        for i in range(1, 13):
            SlogP_VSA_names.append('SlogP_VSA' + str(i))

        MOE_dict.update(
            dict(zip(SlogP_VSA_names, rdDesc.SlogP_VSA_(self.Molecule))))

        SMR_VSA_names = []
        for i in range(1, 11):
            SMR_VSA_names.append('SMR_VSA' + str(i))

        MOE_dict.update(
            dict(zip(SMR_VSA_names, rdDesc.SMR_VSA_(self.Molecule))))

        PEOE_VSA_names = []
        for i in range(1, 15):
            PEOE_VSA_names.append('PEOE_VSA' + str(i))

        MOE_dict.update(
            dict(zip(PEOE_VSA_names, rdDesc.PEOE_VSA_(self.Molecule))))

        EState_VSA_names = []
        for i in range(1, 12):
            EState_VSA_names.append('EState_VSA' + str(i))

        MOE_dict.update(
            dict(zip(EState_VSA_names, EState.EState_VSA_(self.Molecule))))

        VSA_EState_names = []
        for i in range(1, 12):
            VSA_EState_names.append('VSA_EState' + str(i))

        MOE_dict.update(
            dict(zip(VSA_EState_names, EState.VSA_EState_(self.Molecule))))

        return MOE_dict
def CalculateEstateVSA(mol, bins=None):
    temp = EVSA.EState_VSA_(mol, bins, force=1)
    res = {}
    for i, j in enumerate(temp):
        res['EstateVSA' + str(i)] = round(j, 3)
    return res