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()
 


Reply via email to