Re: [Wien] Determine primitive cell and positions, CXZ LATTICE 15_B2/b

2015-03-20 Thread Laurence Marks
A slightly tangential comment: unless your CIF came from a neutron
diffraction analysis the H positions can be very wrong. Many refinement
codes such as Shelx are very good, but just put H into reasonable
positions as they are unstable in the refinements with XRD data.

In principle the CIF file should have information about how the H positions
were determined.

___
Professor Laurence Marks
Department of Materials Science and Engineering
Northwestern University
www.numis.northwestern.edu
MURI4D.numis.northwestern.edu
Co-Editor, Acta Cryst A
Research is to see what everybody else has seen, and to think what nobody
else has thought
Albert Szent-Gyorgi
On Mar 20, 2015 6:56 AM, Peter Blaha pbl...@theochem.tuwien.ac.at wrote:

 Of course, for better positions it will be easier, but you would still
 run into the same problems with the default inputs.

 The problem with ghostbands is either connected with
 i) a WRONG case.struct file (not in your case)  or
 ii) ALWAYS connected with the VERY SMALL spheres (for atoms like C,N,O
 or in your case P and O)  AND the s- (l=0) states of these atoms.

 Typically the 3s (2s) state of P or O (or C,N) is lower in energy than
 the actual valence states and for a BIG sphere it is therefore necessary
 (more accurate) to describe these states with an additional LO and 2
 lines in case.in1 like:

   0   -1.55  0.002 CONT 1
   00.30  0.000 CONT 1

 For SMALL spheres, however, this leads to ghostbands and the case.scf2
 file indicates for you for which atom and l it happens (atom 3 for l=0).

 Thus you have to edit case.in1 and either set the second energy very
 high (O):

   0   -1.55  0.002 CONT 1
   05.30  0.000 CONT 1

 or even remove the second line (and change the number of exceptions in
 the line above from 3 to 2 (P-atom):

0.302  0  (GLOBAL E-PARAMETER WITH n OTHER CHOICES,
   0   -1.79  0.002 CONT 1
   10.30  0.000 CONT 1

 Then do a crude:

 run (-p) -fc 10

 and you see enormous forces on many atoms (in particular H, because
 their distance is VERY wrong, leading to these extremely small H and O
 radii).

 run -p -min -fc 1

 optimizes the positions seamlessly. I've stopped this at a very early
 stage, but the struct file is attached.

 With this struct file I would rerun setrmt again, because the much more
 realistic O-H distances allow now for larger H and O spheres making the
 calculations MUCH faster. Then continue with the position optimization.
___
Wien mailing list
Wien@zeus.theochem.tuwien.ac.at
http://zeus.theochem.tuwien.ac.at/mailman/listinfo/wien
SEARCH the MAILING-LIST at:  
http://www.mail-archive.com/wien@zeus.theochem.tuwien.ac.at/index.html


Re: [Wien] Determine primitive cell and positions, CXZ LATTICE 15_B2/b

2015-03-19 Thread Peter Blaha

For low symmetry structures (eg. monoclinic) one can generate several unit cells
which are absolutely equivalent (same volume, same number of atoms, ...)

This happens with sgroup, which transforms your structure such that the
monoclinic angle is less than 90. In addition the fractional coordinates
have been changed austomatically. Nevertheless, these two cells will give
identical neighbor-distances, which you can verify with nn and comparing the
resulting outputnn files. There is nothing wrong with either your original cell
or the one from sgroup. You can use either one for the calculations.

If you want the conventional cell (which contains of course 2x as many atoms),
you can use   x supercell (1x1x1, no shifts/vacuum). It simply changes
the lattice type to  P, and adds the centered atoms.
With this struct file, however, you cannot make the calculations unless you
make these atoms non-equivalent and break symmetry, eg. by labeling one
atom as Al1.

What you have been trying was to express the lattice vectors/positions  in 
carthesian
coordinates.
You can check your calculations again using the distances of outputnn and
compare them to your own calculations.



Am 19.03.2015 um 17:03 schrieb David Olmsted:

Dear reader,
   I am trying to determine the primitive cell and positions for a
case.struct file I am running.  But I am not determining the either
primitive cell or the conventional cell correctly.

I need to either:
   1. Figure out what I am doing wrong. or
   2. Find a place in the code where I can print out the positions in terms
of the primitive cell.

Does anyone know the answer to either question?

This is a base-centered monoclinic system, space group 15.


From case.struct:

MODE OF CALC=RELA unit=bohr

  35.704486 13.533274 13.533274 90.00 90.00 99.99

The full case.struct is given below.

sgroup reports 15 (C 2/c) [unique axis c] cell choice 2.
The struct file output from sgroup is:
CXZ LATTICE,NONEQUIV.ATOMS: 14 15 C2/c
MODE OF CALC=RELA unit=bohr

  35.704486 13.533274 13.533274 90.00 90.00 80.01
The case.struct file I am using has the 99.99 degree entry as above.

In angstroms, my lattice constants (and angles in degrees) are
   18.894 7.1615 7.1615  90 90 99.99

The userguide gives (on page 39) the primitive cell as:
CXZ [a sin(\gamma)/2, a cos(\gamma)/2, -c/2], [0, b, 0], [a
sin(\gamma)/2, acos(\gamma)/2, c/2]

So I have for a primitive cell (each row is a vector):
9.3038  -1.6388 -3.5808
07.1615  0
9.3038  -1.6388  3.5808

With lengths of 10.1029 7.1615 10.1029 and angles 99.34 41.52 99.34.

The positions in case.struct are given in terms of the conventional unit
cell, and I must convert them to the primitive cell.  So I need the
conventional cell in cartesian coordinates.

The README file in SRC_sgroup talks about base-centered monoclinic being
restricted to A centered.  Page 39 of the userguide shows only
B-base-centered,
which is what I have.  The README gives:

 The vectors of the conventional cell in cartesian basis
 ( 1 vector is 1 column ... )

  a  b*Cos[gamma]  0
  0  b*Sin[gamma]  0   A - centred
  0  0 c

This is a valid conventional cell in my case, and switching to each row
being a vector, I have:
18.8940   0
-1.24235  7.0529  0
  00   7.1615

However the location of the second primitive cell is (0.5, 0, 0.5) in terms
of the conventional cell.  When transformed to primitive cell coordinates it
must be a lattice vector.  But it is not.  So one of my cells is wrong.  (I
believe the vector for the second primitive cell is correct because it is
what is given in the International Tables, page 199, for unique axis c, cell
choice 2.  And it matches to the neighbor positions in case.outputnn.)

Quite possibly the conventional cell is different for B-centered than for
A-centered, but I do not find it described anywhere.

My thanks for any help.
   David

David Olmsted
Assistant Research Engineer
Materials Science and Engineering
210 Hearst Memorial Mining Building
University of California
Berkeley, CA 94720-1760



--- case.struct
troll_icsd

CXZ LATTICE,NONEQUIV.ATOMS: 14 15_B2/b

MODE OF CALC=RELA unit=bohr

  35.704486 13.533274 13.533274 90.00 90.00 99.99

ATOM  -1: X=0.16778000 Y=0.32059000 Z=0.00654000
   MULT= 4  ISPLIT= 8
   -1: X=0.83222000 Y=0.67941000 Z=0.99346000
   -1: X=0.83222000 Y=0.17941000 Z=0.00654000
   -1: X=0.16778000 Y=0.82059000 Z=0.99346000
Al NPT=  781  R0=0.0001 RMT=1.6300   Z: 13.0

LOCAL ROT MATRIX:1.000 0.000 0.000
  0.000 1.000 0.000
  0.000 0.000 1.000
ATOM  -2: X=0.0757 Y=0.41714000 Z=0.72882000
   MULT= 4  ISPLIT= 8
   -2: X=0.9243 Y=0.58286000 Z=0.27118000
   -2: X=0.9243 Y=0.08286000 Z=0.72882000
   -2: X=0.0757 Y=0.91714000 Z=0.27118000
Al 

Re: [Wien] Determine primitive cell and positions, CXZ LATTICE 15_B2/b

2015-03-19 Thread Terki Férial


Dear Collegues
I want to */unsubscribe/* javascript:void(0)  to this data mail
Thanks
Dr F. TERKI
Le 19/03/2015 18:29, Peter Blaha a écrit :
For low symmetry structures (eg. monoclinic) one can generate several 
unit cells

which are absolutely equivalent (same volume, same number of atoms, ...)

This happens with sgroup, which transforms your structure such that the
monoclinic angle is less than 90. In addition the fractional coordinates
have been changed austomatically. Nevertheless, these two cells will give
identical neighbor-distances, which you can verify with nn and 
comparing the
resulting outputnn files. There is nothing wrong with either your 
original cell

or the one from sgroup. You can use either one for the calculations.

If you want the conventional cell (which contains of course 2x as many 
atoms),

you can use   x supercell (1x1x1, no shifts/vacuum). It simply changes
the lattice type to  P, and adds the centered atoms.
With this struct file, however, you cannot make the calculations 
unless you

make these atoms non-equivalent and break symmetry, eg. by labeling one
atom as Al1.

What you have been trying was to express the lattice 
vectors/positions  in carthesian

coordinates.
You can check your calculations again using the distances of outputnn and
compare them to your own calculations.



Am 19.03.2015 um 17:03 schrieb David Olmsted:

Dear reader,
   I am trying to determine the primitive cell and positions for a
case.struct file I am running.  But I am not determining the either
primitive cell or the conventional cell correctly.

I need to either:
   1. Figure out what I am doing wrong. or
   2. Find a place in the code where I can print out the positions in 
terms

of the primitive cell.

Does anyone know the answer to either question?

This is a base-centered monoclinic system, space group 15.


From case.struct:

MODE OF CALC=RELA unit=bohr

  35.704486 13.533274 13.533274 90.00 90.00 99.99

The full case.struct is given below.

sgroup reports 15 (C 2/c) [unique axis c] cell choice 2.
The struct file output from sgroup is:
CXZ LATTICE,NONEQUIV.ATOMS: 14 15 C2/c
MODE OF CALC=RELA unit=bohr

  35.704486 13.533274 13.533274 90.00 90.00 80.01
The case.struct file I am using has the 99.99 degree entry as above.

In angstroms, my lattice constants (and angles in degrees) are
   18.894 7.1615 7.1615  90 90 99.99

The userguide gives (on page 39) the primitive cell as:
CXZ[a sin(\gamma)/2, a cos(\gamma)/2, -c/2], [0, b, 0], [a
sin(\gamma)/2, acos(\gamma)/2, c/2]

So I have for a primitive cell (each row is a vector):
9.3038  -1.6388 -3.5808
07.1615  0
9.3038  -1.6388  3.5808

With lengths of 10.1029 7.1615 10.1029 and angles 99.34 41.52 99.34.

The positions in case.struct are given in terms of the conventional unit
cell, and I must convert them to the primitive cell.  So I need the
conventional cell in cartesian coordinates.

The README file in SRC_sgroup talks about base-centered monoclinic being
restricted to A centered.  Page 39 of the userguide shows only
B-base-centered,
which is what I have.  The README gives:

 The vectors of the conventional cell in cartesian basis
 ( 1 vector is 1 column ... )

  a  b*Cos[gamma]  0
  0  b*Sin[gamma]  0   A - centred
  0  0 c

This is a valid conventional cell in my case, and switching to each row
being a vector, I have:
18.8940   0
-1.24235  7.0529  0
  00   7.1615

However the location of the second primitive cell is (0.5, 0, 0.5) in 
terms
of the conventional cell.  When transformed to primitive cell 
coordinates it
must be a lattice vector.  But it is not.  So one of my cells is 
wrong.  (I
believe the vector for the second primitive cell is correct because 
it is
what is given in the International Tables, page 199, for unique axis 
c, cell

choice 2.  And it matches to the neighbor positions in case.outputnn.)

Quite possibly the conventional cell is different for B-centered than 
for

A-centered, but I do not find it described anywhere.

My thanks for any help.
   David

David Olmsted
Assistant Research Engineer
Materials Science and Engineering
210 Hearst Memorial Mining Building
University of California
Berkeley, CA 94720-1760



--- case.struct
troll_icsd

CXZ LATTICE,NONEQUIV.ATOMS: 14 15_B2/b

MODE OF CALC=RELA unit=bohr

  35.704486 13.533274 13.533274 90.00 90.00 99.99

ATOM  -1: X=0.16778000 Y=0.32059000 Z=0.00654000
   MULT= 4  ISPLIT= 8
   -1: X=0.83222000 Y=0.67941000 Z=0.99346000
   -1: X=0.83222000 Y=0.17941000 Z=0.00654000
   -1: X=0.16778000 Y=0.82059000 Z=0.99346000
Al NPT=  781  R0=0.0001 RMT=1.6300   Z: 13.0

LOCAL ROT MATRIX:1.000 0.000 0.000
  0.000 1.000 0.000
  0.000 0.000 1.000
ATOM  -2: X=0.0757 Y=0.41714000 Z=0.72882000
   MULT= 4  ISPLIT= 8

Re: [Wien] Determine primitive cell and positions, CXZ LATTICE 15_B2/b

2015-03-19 Thread David Olmsted
Peter,
  Thank you for your prompt reply.

I apologize profusely, I failed to explain what I was trying to do.

The cell was generated from an ICSD cif.  There is indeed no problem with
case.struct file, the neighbor distances seem fine.  But I am having
terrible trouble getting this to run because the ghostbands are even harder
to get rid of than in the other Al-P-O-H structure.  I also know that the H
positions are very different from what GGA is going to give, because I had
already done a VASP run for the conventional cell.

I am thinking that if I relaxed the structure in VASP first, the positions
would be better and it might be easier to converge the WIEN2k computation.
(I am using WIEN2k even though I already have a VASP run because I am trying
to compute XPS.)  But to set up a VASP run, I need to figure out the correct
primitive cell and the positions that go with them.  That is why I am trying
to convert from the conventional cell description given in case.struct to a
description in terms of a primitive cell.  But I do have one (or both) of
those two cells wrong with respect to WIEN2k.  

Best regards,
  David

--
Peter Blaha Thu, 19 Mar 2015 11:30:41 -0700 

 For low symmetry structures (eg. monoclinic) one can generate several unit
cells
which are absolutely equivalent (same volume, same number of atoms, ...)

This happens with sgroup, which transforms your structure such that the
monoclinic angle is less than 90. In addition the fractional coordinates
have been changed austomatically. Nevertheless, these two cells will give
identical neighbor-distances, which you can verify with nn and comparing the
resulting outputnn files. There is nothing wrong with either your original
cell
or the one from sgroup. You can use either one for the calculations.

If you want the conventional cell (which contains of course 2x as many
atoms),
you can use   x supercell (1x1x1, no shifts/vacuum). It simply changes
the lattice type to  P, and adds the centered atoms.
With this struct file, however, you cannot make the calculations unless you
make these atoms non-equivalent and break symmetry, eg. by labeling one
atom as Al1.

What you have been trying was to express the lattice vectors/positions  in 
carthesian
coordinates.
You can check your calculations again using the distances of outputnn and
compare them to your own calculations.

-Original Message-
From: David Olmsted [mailto:olms...@berkeley.edu] 
Sent: Thursday, March 19, 2015 9:04 AM
To: 'wien@zeus.theochem.tuwien.ac.at'
Subject: Determine primitive cell and positions, CXZ LATTICE 15_B2/b

Dear reader,
  I am trying to determine the primitive cell and positions for a
case.struct file I am running.  But I am not determining the either
primitive cell or the conventional cell correctly.

I need to either:
  1. Figure out what I am doing wrong. or
  2. Find a place in the code where I can print out the positions in terms
of the primitive cell.  

Does anyone know the answer to either question? 

This is a base-centered monoclinic system, space group 15.

From case.struct:
MODE OF CALC=RELA unit=bohr

 35.704486 13.533274 13.533274 90.00 90.00 99.99

The full case.struct is given below.

sgroup reports 15 (C 2/c) [unique axis c] cell choice 2.
The struct file output from sgroup is:
CXZ LATTICE,NONEQUIV.ATOMS: 14 15 C2/c
MODE OF CALC=RELA unit=bohr

 35.704486 13.533274 13.533274 90.00 90.00 80.01 The case.struct
file I am using has the 99.99 degree entry as above.

In angstroms, my lattice constants (and angles in degrees) are
  18.894 7.1615 7.1615  90 90 99.99

The userguide gives (on page 39) the primitive cell as:
CXZ [a sin(\gamma)/2, a cos(\gamma)/2, -c/2], [0, b, 0], [a
sin(\gamma)/2, acos(\gamma)/2, c/2]

So I have for a primitive cell (each row is a vector):
9.3038  -1.6388 -3.5808
07.1615  0
9.3038  -1.6388  3.5808

With lengths of 10.1029 7.1615 10.1029 and angles 99.34 41.52 99.34.

The positions in case.struct are given in terms of the conventional unit
cell, and I must convert them to the primitive cell.  So I need the
conventional cell in cartesian coordinates.  

The README file in SRC_sgroup talks about base-centered monoclinic being
restricted to A centered.  Page 39 of the userguide shows only
B-base-centered, which is what I have.  The README gives:

The vectors of the conventional cell in cartesian basis
( 1 vector is 1 column ... )

 a  b*Cos[gamma]  0
 0  b*Sin[gamma]  0   A - centred
 0  0 c

This is a valid conventional cell in my case, and switching to each row
being a vector, I have:
18.8940   0
-1.24235  7.0529  0
 00   7.1615

However the location of the second primitive cell is (0.5, 0, 0.5) in terms
of the conventional cell.  When transformed to primitive cell coordinates it
must be a lattice vector.  But it is not.  So one of my cells is wrong.  (I
believe the vector for the second 

[Wien] Determine primitive cell and positions, CXZ LATTICE 15_B2/b

2015-03-19 Thread David Olmsted
Dear reader,
  I am trying to determine the primitive cell and positions for a
case.struct file I am running.  But I am not determining the either
primitive cell or the conventional cell correctly.

I need to either:
  1. Figure out what I am doing wrong. or 
  2. Find a place in the code where I can print out the positions in terms
of the primitive cell.  

Does anyone know the answer to either question? 

This is a base-centered monoclinic system, space group 15.

From case.struct:
MODE OF CALC=RELA unit=bohr

 35.704486 13.533274 13.533274 90.00 90.00 99.99

The full case.struct is given below.

sgroup reports 15 (C 2/c) [unique axis c] cell choice 2.
The struct file output from sgroup is:
CXZ LATTICE,NONEQUIV.ATOMS: 14 15 C2/c
MODE OF CALC=RELA unit=bohr

 35.704486 13.533274 13.533274 90.00 90.00 80.01
The case.struct file I am using has the 99.99 degree entry as above.

In angstroms, my lattice constants (and angles in degrees) are
  18.894 7.1615 7.1615  90 90 99.99

The userguide gives (on page 39) the primitive cell as:
CXZ [a sin(\gamma)/2, a cos(\gamma)/2, -c/2], [0, b, 0], [a
sin(\gamma)/2, acos(\gamma)/2, c/2]

So I have for a primitive cell (each row is a vector):
9.3038  -1.6388 -3.5808
07.1615  0
9.3038  -1.6388  3.5808

With lengths of 10.1029 7.1615 10.1029 and angles 99.34 41.52 99.34.

The positions in case.struct are given in terms of the conventional unit
cell, and I must convert them to the primitive cell.  So I need the
conventional cell in cartesian coordinates.  

The README file in SRC_sgroup talks about base-centered monoclinic being
restricted to A centered.  Page 39 of the userguide shows only
B-base-centered,
which is what I have.  The README gives:

The vectors of the conventional cell in cartesian basis
( 1 vector is 1 column ... )

 a  b*Cos[gamma]  0
 0  b*Sin[gamma]  0   A - centred
 0  0 c

This is a valid conventional cell in my case, and switching to each row
being a vector, I have:
18.8940   0
-1.24235  7.0529  0
 00   7.1615

However the location of the second primitive cell is (0.5, 0, 0.5) in terms
of the conventional cell.  When transformed to primitive cell coordinates it
must be a lattice vector.  But it is not.  So one of my cells is wrong.  (I
believe the vector for the second primitive cell is correct because it is
what is given in the International Tables, page 199, for unique axis c, cell
choice 2.  And it matches to the neighbor positions in case.outputnn.)

Quite possibly the conventional cell is different for B-centered than for
A-centered, but I do not find it described anywhere.

My thanks for any help.
  David

David Olmsted
Assistant Research Engineer
Materials Science and Engineering
210 Hearst Memorial Mining Building
University of California
Berkeley, CA 94720-1760



--- case.struct
troll_icsd

CXZ LATTICE,NONEQUIV.ATOMS: 14 15_B2/b

MODE OF CALC=RELA unit=bohr

 35.704486 13.533274 13.533274 90.00 90.00 99.99

ATOM  -1: X=0.16778000 Y=0.32059000 Z=0.00654000
  MULT= 4  ISPLIT= 8
  -1: X=0.83222000 Y=0.67941000 Z=0.99346000
  -1: X=0.83222000 Y=0.17941000 Z=0.00654000
  -1: X=0.16778000 Y=0.82059000 Z=0.99346000
Al NPT=  781  R0=0.0001 RMT=1.6300   Z: 13.0

LOCAL ROT MATRIX:1.000 0.000 0.000
 0.000 1.000 0.000
 0.000 0.000 1.000
ATOM  -2: X=0.0757 Y=0.41714000 Z=0.72882000
  MULT= 4  ISPLIT= 8
  -2: X=0.9243 Y=0.58286000 Z=0.27118000
  -2: X=0.9243 Y=0.08286000 Z=0.72882000
  -2: X=0.0757 Y=0.91714000 Z=0.27118000
Al NPT=  781  R0=0.0001 RMT=1.6300   Z: 13.0

LOCAL ROT MATRIX:1.000 0.000 0.000
 0.000 1.000 0.000
 0.000 0.000 1.000
ATOM  -3: X=0. Y=0.2500 Z=0.11731000
  MULT= 2  ISPLIT= 8
  -3: X=0. Y=0.7500 Z=0.88269000
P  NPT=  781  R0=0.0001 RMT=1.3000   Z: 15.0

LOCAL ROT MATRIX:1.000 0.000 0.000
 0.000 1.000 0.000
 0.000 0.000 1.000
ATOM  -4: X=0.16844000 Y=0.08109000 Z=0.63272000
  MULT= 4  ISPLIT= 8
  -4: X=0.83156000 Y=0.91891000 Z=0.36728000
  -4: X=0.83156000 Y=0.41891000 Z=0.63272000
  -4: X=0.16844000 Y=0.58109000 Z=0.36728000
P  NPT=  781  R0=0.0001 RMT=1.3000   Z: 15.0

LOCAL ROT MATRIX:1.000 0.000 0.000
 0.000 1.000 0.000
 0.000 0.000 1.000
ATOM  -5: X=0.06458000 Y=0.32611000 Z=0.98827000
  MULT= 4  ISPLIT= 8
  -5: X=0.93542000 Y=0.67389000 Z=0.01173000
  -5: X=0.93542000 Y=0.17389000 Z=0.98827000
  -5: X=0.06458000 Y=0.82611000 Z=0.01173000
O  NPT=