On Saturday 04 October 2003 20:59, Peter Murray-Rust wrote: > At 19:30 04/10/2003 +0200, Miguel wrote: > > > On Friday 03 October 2003 23:13, Miguel wrote: > > >> > A second thing is, that we need to be able to display more than one > > >> > > >> unit cell, but say 2x2x2 unit cells... with all content... Again, > > >> this is were the iterators come in... here the iterator repeats the > > >> process in the previous paragraph for each unit cell it has to > > >> plot... > > >> > > >> So, this is new functionality ... Correct? > > > > > > Well, it was in Jmol b6, but at least new to the CDK based Jmol.. > > > >So, you are saying that this functionality exists in b6? > >What are the steps I need to go throughto see it in b6? > > > > >> If so, then educate me a little more on this. Is it the case that you > > >> want the same atom structure repeated, but with a base at a different > > >> offset? > > > > > > Correct. > > > >OK. > >Then it seems to me that there is a better way to handle this. > >All one needs to do is repeat the same atoms, but translated to different > >positions in 3-space. > > This is necessary but may not be sufficient.
It really is a two loop process...
foreach unit cell in AxBxC { foreach within_unit_cell_symmetry_operation in Spacegroup { draw symmetry_unrelated_atoms } }
If you want to store (not just draw) the symmetry-related atoms you need:
initialise symmetry atom list
foreach unitcell AxBxC
foreach symmetry operation in spacegroup
for-each atom in asymmetric unit
calculate symmetry related coordinates
if new atom has distinct coordinates not in symmetry atom list
add atom to list
}
}
}
}
Thus for NaCl which is in Fm3m you might have Na 0 0 0 Cl 0.5, 0.5, 0.5
If A=1, B=1, C=1
you must generate several additional unit cells to be safe and iterate through 192 operations. Thus will generate 13 new Na and 12 new Cl(out of several hundred positions considered).
> The unit cell contains n > copies of the asymmetric unit - normally a single molecule. n depends on > the space group (of which there are 230) and ranges from 1 (P1) to 192 > (Fm3m).
Never realized it could be that many!
Most organics have between 2 and 8
> There should be n symmetry operators given for the system (of which > one is the identity operator x,y,z). These symmetry operators must then all > be applied to the contents of the asymmetric unit. In general this will > generate new atoms, although if rotation axes or inversion centres are > present some atoms will translate onto themselves. > > As an example, take spacegroup P1bar (no 2). This contains two symmetry > operators, x,y,z, and -x, -y, -z. Suppose the molecule was given with > **fractional coordinates**: > C 0 0 0 > O 0.2, 0.3 -0.1 > > you would have to apply the second symmetry operation to get two new atoms: > C 0 0 0 > O -0.2, -0.3 0.1 > The first new atom overlaps (is identical to) the original carbon and so > can be omitted. The second O is bonded to the C, thus giving an O-C-O > molecule. > > You can then translate this by 1,0,0 0,0,2, -1,2,-2, etc to generate new > cells.
Which is the translation over the unit cell axes a,b,c...
> note that all symmetry operations *must* be on fractional coordinates. If > you are given cartesian coordinates only then you cannot generate > fractional coordinates unless you are given the cell axes as vectors (not > just a,b,c,alpha, beta, gamma).
Note that CDK has methods to convert fractional <-> cartesian for atomic coordinates and notional <-> cartesian for the axes...
> If you do not generate symmetry equivalent molecules you will end up large > voids in the structure. > > Note also that it is possible that the molecule consists of polymers in 1, > 2, or 3 dimensions. This requires the generation of bonds between > molecules.
The current rebonding code is quite efficient, so we could just do a rebond on
the super cell AxBxC...
> We are currently writing code for this process and hope to have some > generic code.
Peter, what code are you refering to here? Applying the spacegroup symmetry operations?
Yes, Simon/Billy is working on this (copied). I have mentioned there is an IRC. We nee free standing code (i.e. we need to generate the coordinates of the atoms, not just draw them.)
P.
Egon
-- PhD Molecular Representation in Chemometrics Laboratory of Analytical Chemistry http://www-cac.sci.kun.nl/people/egonw.html
------------------------------------------------------- This sf.net email is sponsored by:ThinkGeek Welcome to geek heaven. http://thinkgeek.com/sf _______________________________________________ Jmol-developers mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jmol-developers
