struct.aln method does not fully align
Hi, thanks for this nice module. I have one problem in aligning the structures 1hti and 1dkw. I use this from within python using r2py, but this probably should not matter. The Alignment does work using the structures 1b9b 1ci1 1i45 1tim with 1hti but not with 1dkw . The code fragment looks like below. The result is independent if i use the inds_s/t with chains selected or not or string backbone or not.
template_R = bio3d.read_pdb2(os.path.join(self.__data_dir,str(template)+".pdb"))
inds_t = bio3d.atom_select(pdb=template_R,chain=base.c("A","B"),string="backbone")
print (template_R)
exit(1)
for mstruct in self.__structures:
mstruct_R = bio3d.read_pdb2(os.path.join(self.__data_dir,str(mstruct)+".pdb"))
inds_s=bio3d.atom_select(pdb=mstruct_R,chain=base.c("A","B"),string="backbone")
if template!=mstruct:
aln = bio3d.struct_aln(template_R,mstruct_R,fixed_inds=inds_t,mobile_inds=inds_s,write_pdbs=True,outpath=self.__data_dir, max_cycles=500, cutoff=0.01)
Comments (9)
-
-
Yes the same issue, if i run it directly in R:
#install.packages('bio3d') library('bio3d') template = read.pdb2("./1hti.pdb") struct = read.pdb2("./1dkw.pdb") inds_t = atom.select(pdb=template,chain=c("A","B"),string="backbone") inds_s = atom.select(pdb=struct,chain=c("B","A"),string="backbone") struct.aln(template,struct,fixed.inds=inds_t,mobile.inds=inds_s,write.pdbs=TRUE,outpath=".", max.cycles=500, cutoff=0.01)
The green and brown structures are the original. Green stays fixed, but the brown structure (1dkw) is turned into the pink one??
-
The switch of the chain=c("B","A") to chain=c("A","B") was just a test by myself to check if this depends on the order the chains are selected. The problem occurs in both cases, also if i leave out the chain selection or the indices at all.
-
Looks like also other servers have problem with this structure pair...
-
I tried and didn't get any error.
In the result, one chain superimposes very well but the other chain does not. This seems because in the two structures the two chains bind at different interfaces.
What was your concern and what outcomes did you expect?
-
I would have expected, that the alignment procedure takes the whole protein complex as constraint for the RMSD and tries to align the whole complex, rather than a single chain. Especially if i select the whole protein and not only a chain. This works (probably out of chance) by the other proteins from the same family: 1b9b, 1ci1, 1i45, 1tim with 1hti, but not 1dkw with 1hti (as above). An example for 1i45 with 1hti is given below.
-
Hi,
For your purpose, you may need to check out the more common way to do alignment and fitting. That is using
pdbaln()
and thenpdbfit()
(or alternatively,seqaln()
,read.fasta.pdb()
, and thenpdbfit()
. Read the tutorial for more details, http://thegrantlab.org/bio3d/tutorials/principal-component-analysis). -
Thanks for your help!
-
- changed status to resolved
- Log in to comment
Hi,
Could you try to do the calculation using R itself? Let me know if the problem is reproduced in R.