[Rdkit-discuss] What does InertialShapeFactor actually calculate?

2020-11-06 Thread Illimar Hugo Rekand
Hello, everyone

I have found the 3DDescriptors class in RDKit to be quite useful, however, I 
have some gripes with the documentation.
The descriptors which are listed here 
(https://www.rdkit.org/docs/source/rdkit.Chem.Descriptors3D.html) neatly with 
formulas, brief descriptions, and references, which is something I appreciate. 
However, as I don't have a background in physics (something which I think 
applies to other users of this software as well), it's not always clear to me 
what the individual descriptors describe.

As an example, InertialShapeFactor is for me diffuse. I understand how the 
formula works and what the components of the formula represent, but I do not 
exactly envision what topological features I should expect from low vs. high 
numbers of this descriptors without performing the necessary calculations on 
examples.

The reference to Todeschini and Consoni's book (which, as a book, is not freely 
available) on these descriptors also fails to give a "layman's" understanding 
of this descriptor. I therefore think it would be beneficial if the brief 
description in this documentation would be expanded to reflect on the nature of 
what these descriptors describe.

What are the thoughts of the other members in this community on this?


Illimar Rekand
Ph.D. candidate,
Brenk-lab, Haug-lab
Department of Biomedicine
Department of Chemistry
University of Bergen

___
Rdkit-discuss mailing list
Rdkit-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/rdkit-discuss


[Rdkit-discuss] Problems with xyz-coordinates after setting PDBResidueinfo

2020-09-25 Thread Illimar Hugo Rekand
Hello, all


I have written a script which extracts certain residues from a PDB file, and 
writes them out to a new PDB-file.


The script looks like this:

from rdkit import Chem

def create_sub_mol(mol_in, mol_in_conf, bs_atom_list):
"""
Creates a mol of given atoms atoms, e.g. the atoms where deltaSASA is larger 
than zero.
"""
empty_mol = Chem.Mol() #create empty mol
mol_rw = Chem.RWMol(empty_mol) #make empty mol editable. This will be our output
conformer =  Chem.Conformer(len(bs_atom_list)) # create conformer for new mol. 
Otherwise, unable to add xyz
for idx in bs_atom_list:
#get original atom info
original_atom = mol_in.GetAtomWithIdx(idx)
res_info = original_atom.GetPDBResidueInfo()
original_element =  original_atom.GetAtomicNum()
original_res_name = res_info.GetResidueName()
original_xyz =  list(mol_in_conf.GetAtomPosition(idx)) #
#set new atom, info
new_xyz = Chem.rdGeometry.Point3D(original_xyz[0], original_xyz[1], 
original_xyz[2]) #create Point3D object which can be added to conformer
new_atom_idx = mol_rw.AddAtom(Chem.Atom(original_element)) #add atom, returns 
new atom idx
print(new_atom_idx)
new_atom = mol_rw.GetAtomWithIdx(new_atom_idx)
conformer.SetAtomPosition(new_atom_idx, new_xyz) #assign new xyz to new mol
new_res_inf  =  Chem.AtomPDBResidueInfo()
new_res_inf.SetResidueName(original_res_name)
new_atom.SetMonomerInfo(new_res_inf) #invoking this line creates trouble
mol_out = mol_rw.GetMol()
mol_out_conf = mol_out.AddConformer(conformer, assignId = True) #merges 
conformer with mol

return mol_out, mol_out_conf

rna = Chem.rdmolfiles.MolFromPDBFile("./1aju.pdb")
rna_conf = rna.GetConformer()

short_list = [65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 
81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 
100, 101, 102, 103, 104, 105, 106, 127, 128, 129, 130, 131, 132, 133, 134, 135, 
136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 
152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 
168, 169, 170, 171, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 
335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 
351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 
367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382]

rna_extract, rna_extract_conf =  create_sub_mol(rna, rna_conf, short_list)
Chem.rdmolfiles.MolToPDBFile(rna_extract, "1aju_extr.pdb")


When I invoke the line with the function SetMonomerInfo() for the new atom, the 
coordinates for the extracted residues suddenly get jumbled and compressed, and 
make no sense, as opposed to when I create this mol-object without invoking 
this line.


What is happening here that I do not understand?

Looking forward to hearing from you all,


Illimar Rekand
Ph.D. candidate,
Brenk-lab, Haug-lab
Department of Biomedicine
Department of Chemistry
University of Bergen



___
Rdkit-discuss mailing list
Rdkit-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/rdkit-discuss


Re: [Rdkit-discuss] Constructing a mol object from a PDB ligand

2019-12-16 Thread Illimar Hugo Rekand
Thanks, Paolo, for a good and clear example.


I adapted your code into my workflow to calculate some Lipinski-properties of 
RNA pdb-structures, and ran into some issues. I'm not sure if I should make a 
new thread or throw this onto this one I already created?


I used the following code under


from rdkit import Chem
from rdkit.Chem import rdmolops, Lipinski
from urllib.request import urlopen
import gzip
import pprint
pp = pprint.PrettyPrinter(indent=4)


Lipinski_dic = {'FractionCSP3':Lipinski.FractionCSP3,
'HeavyAtomCount':Lipinski.HeavyAtomCount,
'NHOHCount': Lipinski.NHOHCount,
"NOCount":Lipinski.NOCount,
"NumAliphaticCarbocycles": Lipinski.NumAliphaticCarbocycles,
"NumAliphaticHeterocycles" : Lipinski.NumAliphaticHeterocycles,
'NumAliphaticRings' :  Lipinski.NumAliphaticRings,
'NumAromaticCarbocycles' : Lipinski.NumAromaticCarbocycles,
'NumAromaticHeterocycles' : Lipinski.NumAromaticHeterocycles,
'NumAromaticRings' : Lipinski.NumAromaticRings,
'NumHAcceptors' : Lipinski.NumHAcceptors,
'NumHDonors' : Lipinski.NumHDonors,
'NumHeteroatoms' : Lipinski.NumHeteroatoms,
'NumRotatableBonds' : Lipinski.NumRotatableBonds,
'NumSaturatedCarbocycles' : Lipinski.NumSaturatedCarbocycles,
'NumSaturatedHeterocycles' : Lipinski.NumSaturatedHeterocycles,
'NumSaturatedRings' : Lipinski.NumSaturatedRings,
'RingCount' : Lipinski.RingCount
}

url =  "https://files.rcsb.org/download/1arj.pdb.gz;
pdb_data = gzip.decompress(urlopen(url).read())
mol = Chem.RWMol(Chem.MolFromPDBBlock(pdb_data))
bonds_to_cleave = {(b.GetBeginAtomIdx(), b.GetEndAtomIdx()) for b in 
mol.GetBonds() if b.GetBeginAtom().GetPDBResidueInfo().GetIsHeteroAtom() ^ 
b.GetEndAtom().GetPDBResidueInfo().GetIsHeteroAtom()}
[mol.RemoveBond(*b) for b in bonds_to_cleave]
hetatm_frags = [f for f in rdmolops.GetMolFrags(mol, asMols=True, 
sanitizeFrags=True) if f.GetNumAtoms() and 
f.GetAtomWithIdx(0).GetPDBResidueInfo().GetIsHeteroAtom()]
for hetatm in hetatm_frags:
res_name = hetatm.GetAtomWithIdx(0).GetPDBResidueInfo().GetResidueName()
calculated_props = {}
for prop in Lipinski_dic:
function = Lipinski_dic[prop]
x = function(hetatm)
calculated_props[prop] = x
pp.pprint(calculated_props)


and as you can see the properties of the ligand doesn't match up with what is 
expected (The number of SP3-atoms doesn't match up). When parsing through the 
structure 3got, it fails to recognize the aromatic rings of the ligand A2F. I'm 
assuming this is caused by RDKit not assigning bond orders correctly when 
reading in RNA and DNA pdb files (something which I have reported in earlier on 
this mailing list)?


Running hetatm.UpdatePropertyCache(strict=True) does not remedy this problem. 
Is there a clever way I can fix this quickly without waiting for this to be 
fixed in a future version?


Illimar Rekand
Ph.D. candidate,
Brenk-lab, Haug-lab
Department of Biomedicine
Department of Chemistry
University of Bergen


________
From: Illimar Hugo Rekand
Sent: Monday, December 16, 2019 5:55:56 PM
To: Paolo Tosco
Subject: Re: [Rdkit-discuss] Constructing a mol object from a PDB ligand


Hey, Paolo,


thanks for a good and clear example!


all the best,


Illimar Rekand
Ph.D. candidate,
Brenk-lab, Haug-lab
Department of Biomedicine
Department of Chemistry
University of Bergen



From: Paolo Tosco 
Sent: Monday, December 16, 2019 5:52:18 PM
To: Illimar Hugo Rekand; rdkit-discuss@lists.sourceforge.net
Subject: Re: [Rdkit-discuss] Constructing a mol object from a PDB ligand

Hi Illimar,

this gist:

https://gist.github.com/ptosco/2ee199b219b27e01052a7a1433b3bd22

shows a way to achieve this.

Cheers,
p.

On 16/12/2019 16:07, Illimar Hugo Rekand wrote:
> Hello, everyone
>
>
> Is there a simple way to create a mol object from just the HETATM/ligand 
> lines from a pdb-file?
>
> Would it be viable to create a function where you could create a mol object 
> from specific lines within a pdb-file?
>
>
> Illimar Rekand
> Ph.D. candidate,
> Brenk-lab, Haug-lab
> Department of Biomedicine
> Department of Chemistry
> University of Bergen
>
>
>
> ___
> Rdkit-discuss mailing list
> Rdkit-discuss@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/rdkit-discuss


___
Rdkit-discuss mailing list
Rdkit-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/rdkit-discuss


Re: [Rdkit-discuss] Constructing a mol object from a PDB ligand

2019-12-16 Thread Illimar Hugo Rekand
Fair point.

But when working in the 100s and 1000s range of PDB-files it would be nice to 
have some fewer steps when designing a pipeline.


Illimar Rekand
Ph.D. candidate,
Brenk-lab, Haug-lab
Department of Biomedicine
Department of Chemistry
University of Bergen



From: Dimitri Maziuk via Rdkit-discuss 
Sent: Monday, December 16, 2019 5:24:49 PM
To: rdkit-discuss@lists.sourceforge.net
Subject: Re: [Rdkit-discuss] Constructing a mol object from a PDB ligand

On 12/16/2019 10:07 AM, Illimar Hugo Rekand wrote:

> Would it be viable to create a function where you could create a mol object 
> from specific lines within a pdb-file?

PDB file is simple text. There's any number of utilities to extract the
lines you want, incl. a plain text editor, why spend time on reinventing
the wheel?

Dima


___
Rdkit-discuss mailing list
Rdkit-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/rdkit-discuss


___
Rdkit-discuss mailing list
Rdkit-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/rdkit-discuss


[Rdkit-discuss] Constructing a mol object from a PDB ligand

2019-12-16 Thread Illimar Hugo Rekand
Hello, everyone


Is there a simple way to create a mol object from just the HETATM/ligand lines 
from a pdb-file?

Would it be viable to create a function where you could create a mol object 
from specific lines within a pdb-file?


Illimar Rekand
Ph.D. candidate,
Brenk-lab, Haug-lab
Department of Biomedicine
Department of Chemistry
University of Bergen



___
Rdkit-discuss mailing list
Rdkit-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/rdkit-discuss


[Rdkit-discuss] Perceived bond orders of RNA PDB-files

2019-12-04 Thread Illimar Hugo Rekand
Hello, everyone


I was wondering if there is any reason for why aromaticity and perceived bond 
orders are not set properly when using the MolFromPDB-function for RNA PDB 
files, while it works perfectly for protein PDB files?


Illimar Rekand
Ph.D. candidate,
Brenk-lab, Haug-lab
Department of Biomedicine
Department of Chemistry
University of Bergen



___
Rdkit-discuss mailing list
Rdkit-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/rdkit-discuss


Re: [Rdkit-discuss] Setting custom coordinates for new atoms

2019-08-29 Thread Illimar Hugo Rekand
Hello, Paolo


Thank you for your help and feedback :)

I implemented the changes and it worked like a charm!


Illimar Rekand
Ph.D. candidate,
Brenk-lab, Haug-lab
Department of Biomedicine
Department of Chemistry
University of Bergen



From: Paolo Tosco 
Sent: Thursday, August 29, 2019 2:31:37 AM
To: Illimar Hugo Rekand; rdkit-discuss@lists.sourceforge.net
Subject: Re: [Rdkit-discuss] Setting custom coordinates for new atoms


Hi Illimar,

The problem here is that you are adding atoms to your RWMol, but the Conformer 
object that you are trying to access with the newly added atom indices is still 
tied to the original molecule which does not have the newly added atoms, hence 
your indices are out of bounds. If you reference the Conformer object 
associated to the RWMol this won't happen. I have slightly modifed your code 
below:

from rdkit import Chem
from rdkit.Chem import AllChem, rdFreeSASA, RDConfig, \
   rdmolops, rdMolTransforms, rdGeometry


def block_apolar_N_atoms(mol):
"""
Method:
The unit vector is found from two neighbouring atoms.
This unit vector is scaled to the appropiate distance
of the two new dummy atoms from the N-atom (2.4 Å)
The two atoms are placed at the N-atom coord + and -
the scaled unit vector
"""
#places two C-atoms 2.4 Å above and below aromatic N-atoms.
mw = Chem.RWMol(mol)
conf = mw.GetConformer()
for atom in mol.GetAtoms():
idx = 0
if atom.GetSymbol() == "N" and atom.GetIsAromatic():
idx = atom.GetIdx()
print(idx)
print("Found aromatic N")
atom_3d_point = conf.GetAtomPosition(idx)
n = 0
vector_list = []
#need two neighbors to find cross product -> unit vector
while n < 2:
for nbr in atom.GetNeighbors():
nbridx = nbr.GetIdx()
nbr_3d_point = conf.GetAtomPosition(nbridx)
vector = nbr_3d_point - atom_3d_point
print("vector", vector, list(vector))
vector_list.append(vector)
n += 1
#the unit vector is perpendicular to the two vectors
unit_vector = rdGeometry.Point3D.CrossProduct(
vector_list[0], vector_list[1])
#this is usually ~1.72 Å for a N in an aromatic six-membered ring
length_unit_vector = rdGeometry.Point3D.Length(unit_vector)
print("length:", length_unit_vector, "Å")
#let's figure out how much the unit vector needs to be scaled
scalar = 2.4 / length_unit_vector
#let's scale the vector
scaled_vector =[i * scalar for i in list(unit_vector)]
#make a Point3D object. Easier to handle in RDKit
scaled_vector_3d = rdGeometry.Point3D(
scaled_vector[0], scaled_vector[1], scaled_vector[2])
A1 = atom_3d_point + scaled_vector_3d # New atom coordinate
A2 = atom_3d_point - scaled_vector_3d # New atom coordinate
print("A1", list(A1), A1,"A2", list(A2), A2)
A1_idx = mw.AddAtom(Chem.Atom(6))
print("A1_ix", A1_idx)
print(type(A1_idx))
c = conf.SetAtomPosition(A1_idx, A1)
A2_idx = mw.AddAtom(Chem.Atom(6))
print("A2_idx", A2_idx)


prot = Chem.MolFromPDBFile("C:/data/paolo/support/illimar/3etr.pdb")


block_apolar_N_atoms(prot)


Cheers,
p.

On 26/08/2019 02:13, Illimar Hugo Rekand wrote:

Hello, everyone and thanks for the help.


I tried out implementing the functionality in my code, but after running the 
following function:


#!/usr/bin/env python3.7

from rdkit import Chem
from rdkit.Chem import AllChem, rdFreeSASA, RDConfig, rdmolops, 
rdMolTransforms, rdGeometry

def block_apolar_N_atoms(mol, conf): #places two C-atoms 2.4 Å above and below 
aromatic N-atoms.
"""
Method:
The unit vector is found from two neighbouring atoms. This unit vector is 
scaled to the appropiate distance of the two new dummy atoms from the N-atom 
(2.4 Å)
The two atoms are placed at the N-atom coord + and - the scaled unit vector
"""
mw = Chem.RWMol(mol)
for atom in mol.GetAtoms():
idx = 0
if atom.GetSymbol() == "N" and atom.GetIsAromatic():
idx = atom.GetIdx()
print(idx)
print("Found aromatic N")
atom_3d_point = conf.GetAtomPosition(idx)
n = 0
vector_list = []
while n < 2: #need two neighbors to find cross product -> unit 
vector
for nbr in atom.GetNeighbors():
nbridx = nbr.GetIdx()
nbr_3d_point = conf.GetAtomPosition(nbrid

Re: [Rdkit-discuss] Setting custom coordinates for new atoms

2019-08-26 Thread Illimar Hugo Rekand
Hello, everyone and thanks for the help.


I tried out implementing the functionality in my code, but after running the 
following function:


#!/usr/bin/env python3.7

from rdkit import Chem
from rdkit.Chem import AllChem, rdFreeSASA, RDConfig, rdmolops, 
rdMolTransforms, rdGeometry

def block_apolar_N_atoms(mol, conf): #places two C-atoms 2.4 Å above and below 
aromatic N-atoms.
"""
Method:
The unit vector is found from two neighbouring atoms. This unit vector is 
scaled to the appropiate distance of the two new dummy atoms from the N-atom 
(2.4 Å)
The two atoms are placed at the N-atom coord + and - the scaled unit vector
"""
mw = Chem.RWMol(mol)
for atom in mol.GetAtoms():
idx = 0
if atom.GetSymbol() == "N" and atom.GetIsAromatic():
idx = atom.GetIdx()
print(idx)
print("Found aromatic N")
atom_3d_point = conf.GetAtomPosition(idx)
n = 0
vector_list = []
while n < 2: #need two neighbors to find cross product -> unit 
vector
for nbr in atom.GetNeighbors():
nbridx = nbr.GetIdx()
nbr_3d_point = conf.GetAtomPosition(nbridx)
vector = nbr_3d_point - atom_3d_point
print("vector", vector, list(vector))
vector_list.append(vector)
n += 1
unit_vector = rdGeometry.Point3D.CrossProduct(vector_list[0], 
vector_list[1]) #the unit vector is perpendicular to the two vectors
length_unit_vector = rdGeometry.Point3D.Length(unit_vector) #this 
is usually ~1.72 Å for a N in an aromatic six-membered ring
print("length:", length_unit_vector, "Å")
scalar = 2.4 / length_unit_vector #let's figure out how much the 
unit vector needs to be scaled
scaled_vector =[i * scalar for i in list(unit_vector)] #let's scale 
the vector
scaled_vector_3d = rdGeometry.Point3D(scaled_vector[0], 
scaled_vector[1], scaled_vector[2]) #make a Point3D object. Easier to handle in 
RDKit
A1 = atom_3d_point + scaled_vector_3d # New atom coordinate
A2 = atom_3d_point - scaled_vector_3d # New atom coordinate
print("A1", list(A1), A1,"A2", list(A2), A2)
A1_idx = mw.AddAtom(Chem.Atom(6))
print("A1_ix", A1_idx)
print(type(A1_idx))
c = conf.SetAtomPosition(A1_idx, A1)
A2_idx = mw.AddAtom(Chem.Atom(6))
print("A2_idx", A2_idx)


prot = Chem.MolFromPDBFile("./3etr.pdb")
protconf = prot.GetConformer()

block_apolar_N_atoms(prot, protconf)



I get the following error:


RuntimeError: Pre-condition Violation

Violation occurred on line 51 in file Code/GraphMol/Conformer.cpp
Failed Expression: dp_mol->getNumAtoms() == d_positions.size()
RDKIT: 2019.09.1dev1
BOOST: 1_67

Hoping to hear from you soon!


Illimar Rekand
Ph.D. candidate,
Brenk-lab, Haug-lab
Department of Biomedicine
Department of Chemistry
University of Bergen



From: Paolo Tosco 
Sent: Thursday, August 22, 2019 11:47:19 AM
To: Illimar Hugo Rekand; rdkit-discuss@lists.sourceforge.net
Subject: Re: [Rdkit-discuss] Setting custom coordinates for new atoms

Hi Illimar,

AddAtom() will return the index i of the added atom, then you can call
SetAtomPosition on that index on the molecule conformer and pass a
Point3D with the desired coordinates:

conf.SetAtomPosition(i, Point3D(x, y, z))

Cheers,
p.

On 08/22/19 09:24, Illimar Hugo Rekand wrote:
> Hello, everyone
>
>
> I'm wondering whether there is a way to set custom coordinates to an atom in 
> a conformer?
>
> In particular I'm interested in using the AddAtom() function in the RWMol 
> class to place a new dummy atom in a PDB-file.
>
>
> Illimar Rekand
> Ph.D. candidate,
> Brenk-lab, Haug-lab
> Department of Biomedicine
> Department of Chemistry
> University of Bergen
>
>
>
> ___
> Rdkit-discuss mailing list
> Rdkit-discuss@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/rdkit-discuss



___
Rdkit-discuss mailing list
Rdkit-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/rdkit-discuss


[Rdkit-discuss] Setting custom coordinates for new atoms

2019-08-22 Thread Illimar Hugo Rekand
Hello, everyone


I'm wondering whether there is a way to set custom coordinates to an atom in a 
conformer?

In particular I'm interested in using the AddAtom() function in the RWMol class 
to place a new dummy atom in a PDB-file.


Illimar Rekand
Ph.D. candidate,
Brenk-lab, Haug-lab
Department of Biomedicine
Department of Chemistry
University of Bergen



___
Rdkit-discuss mailing list
Rdkit-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/rdkit-discuss


[Rdkit-discuss] FreeSASA surface coordinates

2019-08-19 Thread Illimar Hugo Rekand
Hello, everyone

I was wondering if there is any way to access the surface coordinates 
calculated on individual atoms from the FreeSASA package?


Illimar Rekand
Ph.D. candidate,
Brenk-lab, Haug-lab
Department of Biomedicine
Department of Chemistry
University of Bergen



___
Rdkit-discuss mailing list
Rdkit-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/rdkit-discuss


Re: [Rdkit-discuss] Get distances between two atoms in different molecules

2019-08-19 Thread Illimar Hugo Rekand
Thanks, this worked like a charm!


I was wondering on another thing: I wanted to calculate the bond angle between 
three atoms in the two conformers (essentially looking for possible hydrogen 
bonding). Again, rdMolTransforms.GetAngleDeg() inputs only one conformer, while 
the Point3D angle functions inputs either two or four atom indices. Is there 
some function I've either misunderstood/missed or is it better to retrieve this 
angle from vector calculations?


Illimar Rekand
Ph.D. candidate,
Brenk-lab, Haug-lab
Department of Biomedicine
Department of Chemistry
University of Bergen



From: Paolo Tosco 
Sent: Friday, August 16, 2019 4:33:36 PM
To: Illimar Hugo Rekand
Cc: rdkit-discuss@lists.sourceforge.net
Subject: Re: [Rdkit-discuss] Get distances between two atoms in different 
molecules

Hi Illimar,

You may use Point3D.Distance:

conf_a.GetAtomPosition(i).Distance(conf_b.GetAtomPosition(j))

Cheers,
p.

> On 16 Aug 2019, at 16:01, Illimar Hugo Rekand  wrote:
>
> Hello everyone,
>
>
> I see that GetBondDistance() is a useful tool for calculating the distances 
> between atoms, whether bonded or nonbonded. However, I am unsure on how to 
> implement this function to calculate distances between atoms in different 
> molecule, as the functions requires a conformer as an argument.
>
>
> Would I need to generate a conformer containing both molecules in order to 
> use this function for calculating the intermolecular atom distances?
>
>
> Illimar Rekand
> Ph.D. candidate,
> Brenk-lab, Haug-lab
> Department of Biomedicine
> Department of Chemistry
> University of Bergen
>
>
>
> ___
> Rdkit-discuss mailing list
> Rdkit-discuss@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/rdkit-discuss


___
Rdkit-discuss mailing list
Rdkit-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/rdkit-discuss


[Rdkit-discuss] Get distances between two atoms in different molecules

2019-08-16 Thread Illimar Hugo Rekand
Hello everyone,


I see that GetBondDistance() is a useful tool for calculating the distances 
between atoms, whether bonded or nonbonded. However, I am unsure on how to 
implement this function to calculate distances between atoms in different 
molecule, as the functions requires a conformer as an argument.


Would I need to generate a conformer containing both molecules in order to use 
this function for calculating the intermolecular atom distances?


Illimar Rekand
Ph.D. candidate,
Brenk-lab, Haug-lab
Department of Biomedicine
Department of Chemistry
University of Bergen



___
Rdkit-discuss mailing list
Rdkit-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/rdkit-discuss


[Rdkit-discuss] Read only first model of a pdb-file

2019-05-29 Thread Illimar Hugo Rekand
Hey, RDKitters!


I am currently trying to figure out how to only read in the first model of a 
pdb-file. I've designed a script that performs calculations on a per-atom 
basis, and this is very slow when it tries to account for multiple models, for 
example with a NMR-structure.


my code is structured something like this:


prot = Chem.MolFromPDBFile(prot_cofac, sanitize = False)


for atom in prot.GetAtoms():

property = atom.GetProp("property)

etc.


Hope to hear from you soon


Illimar Rekand
Ph.D. candidate,
Brenk-lab, Haug-lab
Department of Biomedicine
Department of Chemistry
University of Bergen



___
Rdkit-discuss mailing list
Rdkit-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/rdkit-discuss


[Rdkit-discuss] FreeSASA proberadius

2019-04-04 Thread Illimar Hugo Rekand
Hello, RDKitters!


I have an oddly specific question for you today. I am using RDKit's implemented 
FreeSASA feature for some contact surface area calculations. So far it's worked 
fine, but I'm missing a feature for setting the probe-radius for the 
SASA-calculations.


I see that this radius is possible to specify in the original FreeSASA-build, 
but in RDKit, from what I have seen, it seems to be hardcoded to 1.4Å, which 
does makes sense for actual SASA-calculations, but is not so great for contact 
surface area calculations. Is it possible to change this setting in any way? 
And, if no, would it be likely to see this as an implemented in the future?


Looking forward to hear from you!


Illimar Rekand
Ph.D. candidate,
Brenk-lab, Haug-lab
Department of Biomedicine
Department of Chemistry
University of Bergen



___
Rdkit-discuss mailing list
Rdkit-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/rdkit-discuss


[Rdkit-discuss] Atom coordinates from PDB-file

2019-02-25 Thread Illimar Hugo Rekand
Hello,


I am currently trying to access the xyz-coordinates for specific atoms (in a 
loop) from a .PDB-file. Is there an easy way to do this without creating a 
conformer of the molecule?


all the best,


Illimar Rekand

Ph.D. Candidate

Department of Biomedicine

University of Bergen


___
Rdkit-discuss mailing list
Rdkit-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/rdkit-discuss