Hi George, Ian,
I have attached a script that computes the alternative origins for a
given space group (or all of them) using procedures outlined by Ralf
(Acta Cryst. 1999, A55, 383-395).
Run it with phenix.python origins.py <space group name>
For R3 and R32 in both rhombohedral and hexagonal setting we get
R32:H (0,0,1/2)
R32:R (1/2,1/2,1/2)
R3:H 0,0,z
R3:R (x,x,x)
Also, I2 is not listed in the IT tables ( or in the paper I quoted
earlier (http://scripts.iucr.org/cgi-bin/paper?a10657)):
I2: (1/2,0,0) and (0,y,0)
HTH
Peter
2010/2/8 George M. Sheldrick <[email protected]>:
> Dear Ian,
>
> Although these tables are indeed very useful, on closer perusal I have
> found a typo in my edition (which appears to be the same as yours but
> slightly different to the on-line edition) - in the 3rd column of table
> 2.2.3.2, "P6" should obviously have a bar over the "6", though this is
> unlikely to cause problems for most readers of CCP4bb. Less
> satisfactory from our point of view is that R3 and R32 are only given
> for the primitive rhombohedral setting, not for the hexagonal cell with
> three times the volume (H3 or H32) that protein crystallographers seem
> to prefer.
>
> Best wishes, George
>
> Prof. George M. Sheldrick FRS
> Dept. Structural Chemistry,
> University of Goettingen,
> Tammannstr. 4,
> D37077 Goettingen, Germany
> Tel. +49-551-39-3021 or -3068
> Fax. +49-551-39-22582
>
>
> On Mon, 8 Feb 2010, Ian Tickle wrote:
>
>>
>> Yes, thanks! I wish I had spotted that before!
>>
>> As you say Tables 2.2.3.2 (pp 212-213 in my ed.) & 2.2.3.4 (pp 214-215),
>> for non-centrosymmetric primitive & centred space groups respectively,
>> contain all the authoritative information you need to define the allowed
>> origin shifts (as well as info on semi-invariants etc). I think it
>> would be useful if all documentation/scripts/programs which claim to
>> specify alternate origins etc referenced (and of course were consistent
>> with!) these tables.
>>
>> Cheers
>>
>> -- Ian
>>
>> > -----Original Message-----
>> > From: George M. Sheldrick [mailto:[email protected]]
>> > Sent: 05 February 2010 23:08
>> > To: Ian Tickle
>> > Cc: [email protected]
>> > Subject: Re: [ccp4bb] reforigin on 2FKA
>> >
>> >
>> > I have just noticed that there is a definitive table of equivalent
>> > origins for all 230 space groups in volume B of International
>> > Tables (in Chapter 2.2 by Carmelo Giacovazzo). This appears to
>> > agree with Ian's last email in this thread for the space groups
>> > discussed there. It gives the origins directly rather than the
>> > Cheshire groups so may be slightly easier to use.
>> >
>> > George
>> >
>> > Prof. George M. Sheldrick FRS
>> > Dept. Structural Chemistry,
>> > University of Goettingen,
>> > Tammannstr. 4,
>> > D37077 Goettingen, Germany
>> > Tel. +49-551-39-3021 or -3068
>> > Fax. +49-551-39-22582
>> >
>> >
>> > On Wed, 27 Jan 2010, Ian Tickle wrote:
>> >
>> > > Correction: my apologies, I see now that the table of Cheshire
>> groups
>> > > that I referred to originally came from: Hirshfeld (1968), Acta
>> Cryst.
>> > > A24, 301-311. I got it from Jorge: it's still good to know that it
>> has
>> > > Jorge's seal of approval!
>> > >
>> > > Cheers
>> > >
>> > > -- Ian
>> > >
>> > > > -----Original Message-----
>> > > > From: [email protected]
>> > > > [mailto:[email protected]] On Behalf Of Ian Tickle
>> > > > Sent: 27 January 2010 22:25
>> > > > To: James Holton; Francois Berenger
>> > > > Cc: [email protected]
>> > > > Subject: RE: [ccp4bb] reforigin on 2FKA
>> > > >
>> > > > ... and I was assuming that since it was clear that there are
>> > > > omissions
>> > > > for F222 and F23 on the CCP4 'alternate origins' page, that
>> > > > James' page
>> > > > was 100% correct! But I think we have both made the same mistake
>> of
>> > > > assuming that F222, F23 and F432 all behave identically as
>> > > > far as origin
>> > > > shifts are concerned.
>> > > >
>> > > > According to this document:
>> > > > http://www.ccp4.ac.uk/dist/html/cheshirecell.html which I
>> > > > have no reason
>> > > > to question since it comes from an excellent authority (Jorge
>> Navaza),
>> > > > the Cheshire space group and cell for both F222 and F23 is I
>> centred
>> > > > (Immm & Im3m resp) with cell lengths a/2, b/2, c/2. This implies
>> the
>> > > > origin shift (1/4,1/4,1/4), and therefore by unit translations in
>> the
>> > > > Cheshire lattice (3/4,3/4,3/4) also, is a non-equivalent origin.
>> For
>> > > > F432 the Cheshire cell is the same as for F222 & F23 but the
>> Cheshire
>> > > > space group is primitive (Pm3m), which implies that (1/4,1/4,1/4)
>> is
>> > > > *not* an allowed origin shift, i.e. 'disallowed' in the sense that
>> you
>> > > > can't use the same SF calculation formula and still expect to get
>> the
>> > > > right answer: if you're willing to use a different formula
>> > > > then anything
>> > > > (including completely arbitrary origin shifts, i.e. as in P1) is
>> > > > allowed!
>> > > >
>> > > > So the one redeeming factor from all this is that reforigin at
>> least
>> > > > appears to give the right answer.
>> > > >
>> > > > Cheers
>> > > >
>> > > > -- Ian
>> > > >
>> > > > > -----Original Message-----
>> > > > > From: [email protected]
>> > > > > [mailto:[email protected]] On Behalf Of James Holton
>> > > > > Sent: 27 January 2010 21:35
>> > > > > To: Francois Berenger
>> > > > > Cc: [email protected]
>> > > > > Subject: Re: [ccp4bb] reforigin on 2FKA
>> > > > >
>> > > > > Francois Berenger wrote:
>> > > > > > It correspond to what is found at the end of James Holton's
>> > > > > > origins.com script
>> > > > > > http://bl831.als.lbl.gov/~jamesh/pickup/origins.com
>> > > > > > so I guess it should be correct.
>> > > > > Uhhh...
>> > > > > >
>> > > > > > He also says how he found them:
>> > > > > > <origins.com snippet>
>> > > > > > # TABLE OF ALLOWED ORIGIN SHIFTS
>> > > > > > These origin shifts were determined emprirically using 100
>> > > > > > randomly-placed atoms
>> > > > > > that were shifted around with pdbset and checked with SFALL
>> > > > > for identical
>> > > > > > amplitudes to the 0 0 0 origin. They should be correct for
>> > > > > the CCP4
>> > > > > > convention
>> > > > > > of symmetry. (I.E. R3 and R32 have hexagonal indexing)
>> > > > > > </origins.com snippet>
>> > > > > Okay, I just went back to my notes on this. I should admit
>> > > > > that in my
>> > > > > completely brain-dead allowed-origin-shift search described
>> above I
>> > > > > originally found no "allowed" shifts for F432 (not sure why,
>> > > > > but maybe
>> > > > > because it was last on my list). Years later, I think it was
>> > > > > Peter Zwart
>> > > > > who pointed out to me that I was missing a few of what ought to
>> be
>> > > > > allowed origins. As I recall, at least one of them passed my
>> > > > > pdbset/sfall test, so I just assumed I must have done
>> > > > something wrong
>> > > > > and added everything in the CCP4 document and ITC Vol B to
>> > > > the list.
>> > > > > For purposes of the origins.com script, I decided to err on
>> > > > > the side of
>> > > > > having it try things that may or may not work. If it finds
>> > > > a match,
>> > > > > then great! Right?
>> > > > >
>> > > > > Perhaps this was not wise of me. I just tried shifting the
>> > > > 2fka PDB
>> > > > > file by "SHIFT FRAC 0.25 0.25 0.25" with pdbset and comparing
>> the
>> > > > > resulting Fs from sfall to those of the un-shifted PDB. They
>> > > > > are ~30%
>> > > > > different. It could be that this is a bug in sfall or pdbset
>> > > > > (doubtful), but I would say that pragmatically, this is not
>> > > > > an "allowed
>> > > > > origin shift" for F432. However, 0,0,0.5 and 0,0.5,0.5 and all
>> the
>> > > > > other half-cell combinations do work! Guess I missed those!
>> > > > > I have now
>> > > > > updated my origins.com script. It appears that the allowed
>> origin
>> > > > > shifts for F432 and F23 are not the same, as I had
>> > > > previously thought.
>> > > > >
>> > > > > >
>> > > > > >> plus of course the symmetry-equivalent origins generated
>> > > > > from these 4 by
>> > > > > >> the space-group centring (F) translations:
>> > > > > >>
>> > > > > >> 0.0000 0.5000 0.5000
>> > > > > >> 0.5000 0.0000 0.5000
>> > > > > >> 0.5000 0.5000 0.0000
>> > > > > >
>> > > > > > I can see these in syminfo.lib.
>> > > > > >
>> > > > > > However, from what you say, I understand that only 2x3
>> possible
>> > > > > > origins with each coordinate being 0 or .5 should be accepted
>> by
>> > > > > > reforigin.
>> > > > > > But in my test it accepted all 8 possible combinations of 0
>> and .5
>> > > > > > that I artificially introduced in my translated test PDBs:
>> > > > > >
>> > > > > > m...@myps:2fka# grep Frac run.log | sort | uniq
>> > > > > > Fractional origin shift: 0.0000 0.0000 0.0000
>> > > > > > Fractional origin shift: 0.0000 0.0000 0.5000
>> > > > > > Fractional origin shift: 0.0000 0.5000 0.0000
>> > > > > > Fractional origin shift: 0.0000 0.5000 0.5000
>> > > > > > Fractional origin shift: 0.5000 0.0000 0.0000
>> > > > > > Fractional origin shift: 0.5000 0.0000 0.5000
>> > > > > > Fractional origin shift: 0.5000 0.5000 0.0000
>> > > > > > Fractional origin shift: 0.5000 0.5000 0.5000
>> > > > > >
>> > > > > > Should I be worried?
>> > > > > At this point, I would say no. Reforigin seems to be doing
>> > > > it right.
>> > > > >
>> > > > > I think some of the confusion might be arising because an
>> > > > "alternate
>> > > > > origin" and a fractional coordinate shift that gives you the
>> same
>> > > > > structure factor amplitudes may or may not be the same thing.
>> Some
>> > > > > shifts change the phase, but not the amplitude so whether
>> > > > or not they
>> > > > > are "alternate" depends on what you are trying to do.
>> > > > >
>> > > > > -James Holton
>> > > > > MAD Scientist
>> > > > >
>> > > > > >
>> > > > > > Thanks,
>> > > > > > Francois.
>> > > > > >
>> > > > > >> So there will be 12 in all, which I think include the ones
>> you
>> > > > > >> mentioned.
>> > > > > >>
>> > > > > >> If you're going by
>> > > > > >> http://www.ccp4.ac.uk/dist/html/alternate_origins.html
>> > > > > then you should
>> > > > > >> be aware of a very recent BB discussion in which it was
>> > > > > pointed out that
>> > > > > >> the entries for F222, F23, F432 and possibly others are
>> > > > incomplete.
>> > > > > >>
>> > > > > >> Eleanor has given me the task of checking & correcting
>> > > > > this particular
>> > > > > >> documentation, until then don't trust it!
>> > > > > >>
>> > > > > >> Of course you shouldn't trust reforigin either, just as
>> > > > > you shouldn't
>> > > > > >> trust any program until you have verified that the results
>> > > > > are sensible,
>> > > > > >> but I think in this particular the fault doesn't lie with
>> > > > > reforigin.
>> > > > > >>
>> > > > > >> Cheers
>> > > > > >>
>> > > > > >> -- Ian
>> > > > > >>
>> > > > > >>> -----Original Message-----
>> > > > > >>> From: [email protected]
>> > > > > [mailto:[email protected]]
>> > > > > >> On
>> > > > > >>> Behalf Of Francois Berenger
>> > > > > >>> Sent: 27 January 2010 06:50
>> > > > > >>> To: [email protected]
>> > > > > >>> Subject: reforigin on 2FKA
>> > > > > >>>
>> > > > > >>> Hello,
>> > > > > >>>
>> > > > > >>> I am playing with ccp4's reforigin to verify some MR
>> solutions.
>> > > > > >>>
>> > > > > >>> If I translate a copy of the pdb.org's PDB 2FKA (from
>> > > > > spacegroup F432)
>> > > > > >>> by +/-0.5 fractional in any unit cell direction, then
>> > > > > reforigin will
>> > > > > >>> find back this translation and consider it as valid for this
>> > > > > >> spacegroup.
>> > > > > >>> But for this spacegroup I should find only (0,0,0) or
>> > > > > (1/2,1/2,1/2)
>> > > > > >>> as possible alternate origins.
>> > > > > >>>
>> > > > > >>> Does this mean that I can't trust reforigin and that I
>> > > > must filter
>> > > > > >>> out its results to retain only the valid ones?
>> > > > > >>>
>> > > > > >>> Thanks,
>> > > > > >>> Francois.
>> > > > > >>
>> > > > > >>
>> > > > > >>
>> > > > > >> Disclaimer
>> > > > > >> This communication is confidential and may contain privileged
>> > > > > >> information intended solely for the named addressee(s). It
>> > > > > may not be
>> > > > > >> used or disclosed except for the purpose for which it has
>> > > > > been sent.
>> > > > > >> If you are not the intended recipient you must not review,
>> use,
>> > > > > >> disclose, copy, distribute or take any action in reliance
>> > > > > upon it. If
>> > > > > >> you have received this communication in error, please
>> > > > notify Astex
>> > > > > >> Therapeutics Ltd by emailing [email protected]
>> and
>> > > > > >> destroy all copies of the message and any attached
>> > > > > documents. Astex
>> > > > > >> Therapeutics Ltd monitors, controls and protects all its
>> > > > messaging
>> > > > > >> traffic in compliance with its corporate email policy.
>> > > > The Company
>> > > > > >> accepts no liability or responsibility for any onward
>> > > > > transmission or
>> > > > > >> use of emails and attachments having left the Astex
>> Therapeutics
>> > > > > >> domain. Unless expressly stated, opinions in this message
>> > > > > are those
>> > > > > >> of the individual sender and not of Astex Therapeutics Ltd.
>> The
>> > > > > >> recipient should check this email and any attachments for the
>> > > > > >> presence of computer viruses. Astex Therapeutics Ltd accepts
>> no
>> > > > > >> liability for damage caused by any virus transmitted by
>> > > > > this email.
>> > > > > >> E-mail is susceptible to data corruption, interception,
>> > > > > unauthorized
>> > > > > >> amendment, and tampering, Astex Therapeutics Ltd only send
>> and
>> > > > > >> receive e-mails on the basis that the Company is not
>> > > > > liable for any
>> > > > > >> such alteration or any consequences thereof.
>> > > > > >> Astex Therapeutics Ltd., Registered in England at 436
>> Cambridge
>> > > > > >> Science Park, Cambridge CB4 0QA under number 3751674
>> > > > >
>> > > > >
>> > > >
>> > > >
>> > > > Disclaimer
>> > > > This communication is confidential and may contain privileged
>> > > > information intended solely for the named addressee(s). It
>> > > > may not be used or disclosed except for the purpose for which
>> > > > it has been sent. If you are not the intended recipient you
>> > > > must not review, use, disclose, copy, distribute or take any
>> > > > action in reliance upon it. If you have received this
>> > > > communication in error, please notify Astex Therapeutics Ltd
>> > > > by emailing [email protected] and destroy all
>> > > > copies of the message and any attached documents.
>> > > > Astex Therapeutics Ltd monitors, controls and protects all
>> > > > its messaging traffic in compliance with its corporate email
>> > > > policy. The Company accepts no liability or responsibility
>> > > > for any onward transmission or use of emails and attachments
>> > > > having left the Astex Therapeutics domain. Unless expressly
>> > > > stated, opinions in this message are those of the individual
>> > > > sender and not of Astex Therapeutics Ltd. The recipient
>> > > > should check this email and any attachments for the presence
>> > > > of computer viruses. Astex Therapeutics Ltd accepts no
>> > > > liability for damage caused by any virus transmitted by this
>> > > > email. E-mail is susceptible to data corruption,
>> > > > interception, unauthorized amendment, and tampering, Astex
>> > > > Therapeutics Ltd only send and receive e-mails on the basis
>> > > > that the Company is not liable for any such alteration or any
>> > > > consequences thereof.
>> > > > Astex Therapeutics Ltd., Registered in England at 436
>> > > > Cambridge Science Park, Cambridge CB4 0QA under number 3751674
>> > > >
>> > > >
>> > >
>> > >
>> > > Disclaimer
>> > > This communication is confidential and may contain privileged
>> > information intended solely for the named addressee(s). It may not be
>> used
>> > or disclosed except for the purpose for which it has been sent. If you
>> are
>> > not the intended recipient you must not review, use, disclose, copy,
>> > distribute or take any action in reliance upon it. If you have
>> received
>> > this communication in error, please notify Astex Therapeutics Ltd by
>> > emailing [email protected] and destroy all copies of the
>> > message and any attached documents.
>> > > Astex Therapeutics Ltd monitors, controls and protects all its
>> messaging
>> > traffic in compliance with its corporate email policy. The Company
>> accepts
>> > no liability or responsibility for any onward transmission or use of
>> > emails and attachments having left the Astex Therapeutics domain.
>> Unless
>> > expressly stated, opinions in this message are those of the individual
>> > sender and not of Astex Therapeutics Ltd. The recipient should check
>> this
>> > email and any attachments for the presence of computer viruses. Astex
>> > Therapeutics Ltd accepts no liability for damage caused by any virus
>> > transmitted by this email. E-mail is susceptible to data corruption,
>> > interception, unauthorized amendment, and tampering, Astex
>> Therapeutics
>> > Ltd only send and receive e-mails on the basis that the Company is not
>> > liable for any such alteration or any consequences thereof.
>> > > Astex Therapeutics Ltd., Registered in England at 436 Cambridge
>> Science
>> > Park, Cambridge CB4 0QA under number 3751674
>> > >
>>
>>
>>
>> Disclaimer
>> This communication is confidential and may contain privileged information
>> intended solely for the named addressee(s). It may not be used or disclosed
>> except for the purpose for which it has been sent. If you are not the
>> intended recipient you must not review, use, disclose, copy, distribute or
>> take any action in reliance upon it. If you have received this communication
>> in error, please notify Astex Therapeutics Ltd by emailing
>> [email protected] and destroy all copies of the message and
>> any attached documents.
>> Astex Therapeutics Ltd monitors, controls and protects all its messaging
>> traffic in compliance with its corporate email policy. The Company accepts
>> no liability or responsibility for any onward transmission or use of emails
>> and attachments having left the Astex Therapeutics domain. Unless expressly
>> stated, opinions in this message are those of the individual sender and not
>> of Astex Therapeutics Ltd. The recipient should check this email and any
>> attachments for the presence of computer viruses. Astex Therapeutics Ltd
>> accepts no liability for damage caused by any virus transmitted by this
>> email. E-mail is susceptible to data corruption, interception, unauthorized
>> amendment, and tampering, Astex Therapeutics Ltd only send and receive
>> e-mails on the basis that the Company is not liable for any such alteration
>> or any consequences thereof.
>> Astex Therapeutics Ltd., Registered in England at 436 Cambridge Science
>> Park, Cambridge CB4 0QA under number 3751674
>>
>>
>>
>
--
-----------------------------------------------------------------
P.H. Zwart
Beamline Scientist
Berkeley Center for Structural Biology
Lawrence Berkeley National Laboratories
1 Cyclotron Road, Berkeley, CA-94703, USA
Cell: 510 289 9246
BCSB: http://bcsb.als.lbl.gov
PHENIX: http://www.phenix-online.org
CCTBX: http://cctbx.sf.net
-----------------------------------------------------------------
from cctbx import sgtbx
import sys
def make_nice( t,d):
if t < 0:
t=t+d
make_nice(t,d)
if t >= d:
t = t-d
make_nice(t,d)
return t,d
def translate_v_m(v,m):
result = "( "
xyz=[ 'x','y','z' ]
if m==0:
#find the first no-zero element of the vector
this_one = 0
for ii in range(3):
if v[ii]!=0:
this_one = ii
break
for ii in range(3):
if v[ii]==0:
result += "0 "
elif v[ii]==1:
result += str(xyz[this_one]) + " "
else:
result += str(xyz[this_one])+str(v[ii]) + " "
if ii<2:
result += ", "
result += ")"
return result
else:
for ii in range(3):
if v[ii]==0:
result += "0 "
else:
t,d = make_nice(v[ii],m)
result += str(t)+"/"+str(d)
if ii<2:
result += ", "
result += ")"
return result
def list_origins( sg ):
sginfo = sgtbx.space_group_info(
symbol=sg, space_group_t_den=144)
print
print
sginfo.show_summary()
print "Allowed additional origins:"
vecs = sginfo.structure_seminvariants().vectors_and_moduli()
sg_type = sginfo.type()
k2l = sg_type.addl_generators_of_euclidean_normalizer(True, False)
results = []
if len(vecs)>0:
for ii in vecs:
r = translate_v_m(ii.v, ii.m)
if r not in results:
results.append(r)
print r
if ii.m is not 0:
if (len(k2l)):
inv = sgtbx.translation_part_info(k2l[0]).origin_shift().as_rational()
nm = []
for a,b in zip(ii.v,inv):
nm.append( -(a-b) )
r = translate_v_m(nm, ii.m)
if r not in results:
results.append(r)
print r
else:
print "None"
def run_all():
for space_group_number in xrange(1,231):
list_origins( space_group_number )
if __name__ == "__main__":
if len(sys.argv)>1:
list_origins( sys.argv[1] )
else:
run_all()