projection of quasi-crystals
                   note the following assumption

                         input data
     *********************************************************
           origin of the vector ej should be in a occupation
                             domain
     *********************************************************

     (0) inpm, iapprx, ireshp
         inpm=0 separatel file (standard input, flnm1 and flnm2)
             =1 standard input only
         iapprx 0 : no approximation
                1 : approximation with domain distortion by linier phason
         ireshp 0 : no reshape 1 reshpe
c         jsimod   : order of simirality transformation for the definition
c                    of occupation domain (ej in (05) below)
     (1) title
          *******for semi-quasicrystals (isys=0)
     (2_1) isys,a,b,c,cosa,cosb,cosc      (for isys=0)
           isys: 0 semi-quasicrystals
              ******* if isys>0 skip (2') and (2")
     (2_2) ndm
          a*,b*,c* components of a wave vector
     (2_3) k
          k: a*,b*,c* components of a wave vector
           ***** if isys != 0 skip (6')
           this is necessary for getqe and getqi
          ********** repeat (2_3) ndm times
     (2_4)  isetting
           isetting : 1 c axis unique, 2 b axis unique, 3 a axis unique
     (2_5) v
           v : matrix ((v(i,j),j=1,3),i=1,6)
           6x3 U matrix, which gives the a1-a3 coefficient of
           6 unit vectors in reciprocal space, is calculated from
           iseging and a*,b*,c*,cosa*,cosb*,cosc* and k1,k2,k3
           6x3 V matrix, which gives the  a4-a6 coefficient of
           6 unit vectors in reciprocal space, should be given
           here

           first 6x3 part of 6x6 R matrix is U while
           second 6x3 part is V

           in the standard setting for modulated structure
           first 3x3 part of V is zero matrix while second 3x3
           part is unit matrix for many cases, but may be
           different for triclinic,monoclinic,hexagonal system
           in idm=5
           for example, k1 and k2 are in the a*-b* plane in hexagonal system,
           we may take v(4,1)=a*,    v(4,2)=0,           v(4,3)=0
                       v(5,1)=-a*/2, v(5,2)=sqrt(3)a*/2, v(5,3)=0
                       v(6,1)=v(6,2)=v(6,3)=0
           the best v(1,1)-v(3,3) are sample-dependent for which
           the modulation wave should be parallel to the internal space
           v(1,1)=v(1,2)=...=v(3,3)=0 gives the standard setting for
           modulated structure but this is not appropriate for
           semi-quasicrystals      

          *******for quasicrystals (isys>0 or <0)
     (2_1) isys,a,(c)
                 1 icosahedral or its pentagonal distortion
                -1 projected structure along a 5-fold axis (for icosahedral)
                 2 icosahedral or its cubic or orthrhombi distortion
                   (***icosahedral or its trigonal distortion)
                -2 projected structure along a 2-fold axis (for icosahedral)
                 3 decagonal or its orthorhombic distortion
                -3 projected structure along a 3-fold axis (for icosahedral)
                 4 octagonal
                 5 dodecagonal
            (****isys < 0 cases have not been not implemented yet****)
           a,c : lattice papameter
           ****** if(isys = 0) skip (2')
     (2_2)  eps1,eps2,eps3,eps4,eps5,eps6,ists (for isys>0 or <0)
           eps1:  pentagonal phason distortion (isys=1)
                  cubic phason distortion  (isys=2)
           eps2: orthorhombic phason distortion 1 (1,1 element) (isys=1,3..)
                 (***trigonal phason distortion (3,3) element (isys=2))
           eps3: orthorhombic phason distortion 2 (2,2 element) (isys=1,3..)
                 (***trigonal phason distortion (1,1)=(2,2) element (isys=2))
           eps4: monoclinic phason distortion 3 (1,2 element) (isys=1,3..)
                 orthorhombic phason distortion (2,2) element (isys=2)
                      difference from cubic
           eps5: monoclinic phason distortion 4 (2,1 element) (isys=1,3..)
                 orthorhombic phason distortion (3,3) element (isys=2)
                      difference from cubic
           eps6: phonon distortion (along z-axis isys=1,3)
                 trigonal phonon distortion 2 (isys=2)
    ****trigonal phason eps2 and eps3 in isys=2 include cubic phason****
    ****therefore eps1 should be fixed at zero in the trigonal case****
             ****** the phason matrix used is
                 obtained by fortran program lphason.f
                 but this is the transpose of U in
                 Acta Cryst A52 509 (1996)
             ******************************************
           ists: 0 true site symmetry operators are used
               1 fictitious site symmetry operators are used for all atoms
     (3) na npod ne isim imod
          na: number of atoms
          npod : number of predefined occupation domsins
          ne : number of elements
          isim: order of similarity transformation
                isim = 0 no magnification
                isim > 0 deflate by tau**-isim times
                isim < 0 inflate by tau**-isim times   
                      isim=-2,-1,0,1, or 2  etc.
                tau: ratio of selfsymilarity
                    =(1+sqrt(5))/2=1.618 for decagonal
                                             and face-centered icosahedral
                    =sqrt(2)=1.414 ? for octagonal
          imod: 1: lattice constant a is multiplied by tau**isim
                   this makes inflation or deflation impossible
                   but isim > 0 and imod=1 may be effective for
                   reducing the value of ihmax in (8) and for 
                   fast calculation
                0: no multiplication for the lattice constant

     ******** if inpm=0 skip (4) ******
     (4) flnm1
         flnm1 : filename which gives the following items
     

     ******** if inpm=1 skip (01)-(07) ******
#############################################################################
      (01) nsymo,icent,brv
          nsymo: number of generators in symmetry operations
          icent: give 1 for centrosymmetric
                 otherwise give 0
          brv  : 'p','i','f' 's' 'c' bravais lattice
                  s in icosahedral  ==> face-centered superlattice
                  s in decagonal    ==> Edagawa type superlattice
                  s translates x,ej,xi in the normal lattice into those
                                   in superlattice
                  in decagonal case, s also translates sym. op in normal
                     lattice into those in superlattice
                  c P_2c for color symmetry
                  'g' is for the groupoid symmetry in quasicrystal
          **************************************************************
          when brv='s',  give x, xe,xi,ej in the fundamental cell.
          they are transformed into those of the supercell in the program.
          **************************************************************
     (02) 'symmetry operator'        header  and
     (03)  symmetry operator in the I.T. format: x,y,z,t,u,v etc.
            ***** repeat (03) nsymo times
     (03') if brv='g'
           hull element   (header)
           hull operator in the IT format including x,y,z,t,u,v
                    and centering translations
           repeat this ig times.
     (03")   innn: number of repeats of transformation given above 
               ****** (isys=4,brv='s' only)******
     (04) n,ne0,itype,st
         n    : serial number for the guide to the eye
         nej0 :number of edge vectors for predefined occupation domain (<=nemax=20)
         itype  :  1 domain with icosahedral, degagonal or octagonal symmetry
                   2 domain with other symmetry
                  -1 domain with icosahedral, degagonal or octagonal symmetry for test
                  -2 domain with other symmetry for test
         str  : string for comments
     (05) ej  : edge vectors of their internal components or principal axes
         ej(1)-ej(6)
               repeat (02) ne times
     (06) nth, (mej(1),mej(2),,),... nth times
          nth: number of tetrahedra
          mej: a triplet of vector numbers specifying a tetrahedron
                           (for isys=1,2)
          mej: a pair of vector numbers specifying a rhombus
                           (for isys=3,4,5)
     (07) iaslct(1-(nsymo+icent*nsymo)) (60i1) 1:selected, 0:skipped **na times
       ******** repeat (01)-(07) npod times
 ###########################################################################

     ******** if inpm=0 skip (5) ******
     (5) flnm2
         flnm2 : filename which gives the following items

     ******** if inpm=1 skip (01)-(08) ******
 ###########################################################################
     (01) no,symb,ien,ish,nev,be,bi,ramin,ramax,p,s1,s2  (*)
         no: atom number
         symb: site symbol
         ien: element number (1:Al 2:Mn etc.)
         if ish > 0:  ish-th predefined occupation domain
         else
           for icosahedral case
             ish=0 polyhedron
             ish=-1: ellipsoid
             ish=-2: sphere   ( rmax: the radius of the sphere in a )
           for dihedral case
             ish=0 triangle
             ish=-1: ellips
             ish=-2: circle   ( rmax: the radius of the sphere in a )
         nev: number of edge vectors for ish=0    (<=nemax=50)
              number of principal axes (=2 or 3) for ish=1
              consequtive three vectors are regarded as the edge vectors 
              of a tetrahedron defining the occupation domain (ish=0)
         be: isotropic temperature factor in external space
         bi: isotropic temperature factor in internal space
    ******     for decagonal case    *****
         be: isotropic temperature factor in the plane normal to 10
         bi: isotropic temperature factor along 10
    
         ramin :  scale for unoccupied tetrahedron or rhombohedron
         ramax :  scale for occupied tetrahedron or rhombohedron
            if ish=2 ramax=1 means shere with radius of 1.4325 (ca)
            (radius of the shere equivalent to unit triacontahedron
                    creating the 3d penrose pattern)
         p    : occupation probability
         s1    : percentage of first component
         s2    : percentage of second component
         (** one site is assumed to be occupied by two atoms**)

          ***** ish=-1 to use truncated triacontahedron *****
              ra or rb=1 corresponds to the triacontahedron with
                   unit edge length

     (02)  x   : x(1)-x(6): coordinate of atom in 5D, or 6D for dihedral and ico
     (03)  xe1 : xe1(1)-xe1(6),u1 shift vector in ve and magnitude  (5D,6D or 7D)
     (04)  xe2 : xe2(1)-xe2(6),u2 shift vector in ve and magnitude  (5D,6D or 7D)
     (05)  xe3 : xe3(1)-xe3(6),u3 shift vector in ve and magnitude  (5D,6D or 7D)
     (06)  xi  :xi(1)-xi(6),v shift vector in vi and magnitude  (5D,6D or 7D)
           5D: octagonal, 6D: decagonal and icosahedral 7D: dodecagonal
       ****** for colored atom give xi(6)=1 (normal color)
                      or -1 (inverse color)********
     ****** colored atom should be black (icol=0) or white (icol=10) ****
     ******** colored symmetry is only available for polygonal cases ******
        ******* if(ish.gt.0) skip (07) (08)****

                     the following judge is used for icosahedral cases
                     rimax: maximum |ej|
                     rimin: minumum |ej| which is calculated in getnii
                                                   or in getnid
                     ri > rimax out of the domain
                     ri < rimin in the domain
                     rimax > ri > rimin need accurate calculation
                        using the domain shape
               Note that this is not correct in general
               Please include the origin in the domain
      ************************************************  
     (07) ej
          ej:  edge vectors of two triangles in the 6D coordinate system
               repeat (5) ne times
                ***************notice****************
               the internal components of consecutive ej are regarded as
               the consecutive edge vectors of the polyhedron defining
               the occupation domain
                ***************notice***************
     (08) nth, (mej(1),mej(2),,),... nth times
          nth: number of tetrahedra
          mej: a triplet of vector numbers specifying a tetrahedron
                           (for isys=1,2)
          mej: a pair of vector numbers specifying a tetrahedron
                           (for isys=3,4,5)
         ******** repeat (01) (08) na times

 ############################################################################
     (5') itempf
          If itempf=1
          xe1,xe2,xe3 are used to describe anisotropic temperature factor
          however if xe1 and xe2 are orthogonal then third axis orthogonal
          to them are used neglecting specified xe3. in this case
          zero vector xe3 can be specified if it is not necessary
          as a shift vector

          but if more than two of them is zero, cartesian coordinate system
          in the external space is used instead for that atoms (or OD)

     (6) nx
     (7) z,jz,(ja1(j),ja2(j),ea(j),j=1,jz)
          z  : independent parameter
          jz : number of terms related with z
          ja1: atom number
          ja2: u,v,be,be,ramin,ramax,p,s for 1-8
          ea : coefficient
               u,v,etc. = z*ea
           *******repeat (7) nx times********
            if itempfi=0 skip (7')      
      (7')  itempfi  (80i1)
            itempfi : 0 for iso 1 for anisotropic temperature factor
            for individual atom

      (8) icont
           *******if icont = 0 skip (9) **********
      (9) flnm3
             filename of the parameter file

      (10) jaslct (80i)
          atom selection: if j-th column is 1 or 0 j-th atom is selected or skipped
      (11) iel (iel(1)-iel(3))  
                iel : kind of atom for first, second and third atoms in each atomic
                      scattering factor table (1<=iel(1),iel(2),iel(3)<=3)
               (repeat ne times) atp

      (12) job,iatom,iwxy,ldev,inum
          job=0 plot projection of quasi-crystal along an axis
             =1 generation of structural data  (for prjap and iatom)
                (serial No. OD No. element No. x y z p1 p2 p3)
             =-1 generation of structural data
                (serial No. OD No. x y z h qe qi)
          iatom= 1: plot atoms
                 0: plot no atoms
          iwxy : give 1 to output x-y coordinate of plotted atoms
          ldev : 1 B & W display or printer, 2 color display or printer
          inum : 1 plot atom number 0 no atom number

    *********** if |job|=1, output x, y, z coordinates and OD No. 
                into atomxyz.mld file (in comma-separated mld format)
                into atomxyz.xyz file (in blank-separated xyz format)
                    
      (12) ihmax
          ihmax: maximum lattice vector indices, -ihmax(i)<=h(i)<=ihmax(i)
                       (i=1,2,..,6)
               default=3 for decagonal (usually ihmax(i)<=5)

               for job=2 ihmax(i)=1 should be sufficient for all i
               if an appropriate isim is chosen ? (isim = -1 ?)
                                  and bond length

     (13) jbc
         jbc: kind of map  1 : axes are unit vectors for ext. and int. spaces
                          -1 : axes specified in (14) (lattice vectors)

         **if jbc=-1, or jbc=-2 then give (14) else skip (14)**
     (14)  s1, s2, s3, s4 : orthogonal transformation matrix for q1-q6
            ((s1(i,j),j=1,3),i=1,3) etc.
             s1, s2 etc. should be in different lines
             total 6x6 matrix is given by 
                     s1,s3
                     s4,s2
          for 3-fold map  (isys=2 external and internal spaces // x and y)
             s1= 0.5773 0.5773 0.5773 0.7071 -0.7071 0. 0.4082 0.4082 -0.8165
             s2= 0.5773 0.5773 0.5773 0.7071 -0.7071 0. 0.4082 0.4082 -0.8165
             s3= 0. 0. 0. 0. 0. 0. 0. 0. 0.
             s4= 0. 0. 0. 0. 0. 0. 0. 0. 0.
          other possiblilities
          for 5-fold map (sys=1 two 5-fold axes in &D // x and y)
             s1=1. 0. 0. 0. 1. 0. 0. 0. 0.7071
             s2=1. 0. 0. 0. 1. 0. 0. 0. 0.7071
             s3=0. 0. 0. 0. 0. 0. 0. 0. -0.7071
             s4=0. 0. 0. 0. 0. 0. 0. 0. 0.7071
          for 2-fold map (sys=2 two 2-fold axes in 6D // x and y)
             s1=0.8506 0. 0. 0. 1. 0. 0. 0. 1.
             s2=0.8506 0. 0. 0. 1. 0. 0. 0. 1.
             s3=-0.5257 0. 0. 0. 0. 0. 0. 0. 0.
             s4=0.5257 0. 0. 0. 0. 0. 0. 0. 0.
          for 3-fold map (sys=2 two 3-fold axes in 6D // x and y)
             t1=0.8650 t2=0.5257 
             s1=0.4994 0.4994 0.4994 0.7071 -0.7071 0. 0.4082 0.4082 -0.8165
             s2=0.4994 0.4994 0.4994 0.7071 -0.7071 0. 0.4082 0.4082 -0.8165
             s3=-0.3034 -0.3034 -0.3034 0. 0. 0. 0. 0. 0.
             s4= 0.3034  0.3034  0.3034 0. 0. 0. 0. 0. 0.
               (see  (13))

     (13) iax
         iax(1),iax(2),,,iax(6) : q coordinates

         density in 3D space spanned by iax(1),iax(2),iax(3) axes is calculated
         for drawing 3D density map.
         for 5-fold map iax=3 6 1 2 4 5 (isys=1)
         for 2-fold map iax=1 4 2 3 5 6 (isys=2)
         for 3-fold map iax=1 4 2 3 5 6 (isys=2) (see (7))
         for 5-fold map in external space iax=1 2 3 4 5 6 (isys=1)
         for 2-fold map in external space iax=1 2 3 4 5 6 (isys=2)
      
    ************if job=1 or job=-1 geve (12') else skip (12')*****
      (12')  iel0 (iel0(1), iel0(2) iel0(3)) 
                 element number in periodic table for iel = 1, 2, 3

       ********if iatom=0 skip (14) *******
      (14) icntsm
          icntsm(i) i=1,ne : center symbol coresponding to ien
                 0: sphere
                 1: sphere
                 2: triangle
                 3: square
                 4: pentagon
                 5: star
      (15) amag
          amag:  magnification  (cm/angstrom)
      (15_1) x0
          x0 :  6D coordinate of origin (-0.5<orign(i)<0.5)
      (15_2) x0e
          x0e:  6d coordinate its external part is added to x0
      (15_3) x0i
          x0i:  6d coordinate its internal part is added to x0+x0e

          when brv='s', give x0,x0e,x0i in the fundamental cell 
                with the lattice constant a0=a/2.
          origin = x0+x0e+x0i
          
               ****if job !=2 then
      (16) xmin,xmax,ymin,ymax,zmin,zmax,shiftx,shifty
          xmin-xmax: view area in angstrom
          ymin-ymax: view area in angstrom
          zmin-zmax: view area in angstrom
          shiftx: shift before plot in cm
                  default max(2,-xmin*amag+2)
          shifty: shift before plot in cm
                  default max(2,-ymin*amag+2)
               ****if job =2 then
      (16) dmin, dmax   
          dmin : minimum interatomic distances to be calculated
          dmax : maximum interatomic distances 

      (17) ncp      (ncp <= 20)
           ncp: number of atoms with concave parts in the occupation domain

            ***** if ncp=0 skip (18)
      (18) npart atm 
           npart : number of concave parts (with a negative occupation
                   probability) of the occupation domains of                  
                   the atom specified by atm0
           atm : atom number with positive occupation probabilities
                 followed by (npart) related atoms with negative occupation 
                 probabilities
               ***** repeat (18) ncp times *****

 **********if job=0 or +-1 then (19)-(23)
      (19) raplt
          raplt(1)-raplt(ne): radus of elements
      (20) icolor : color of ne elements
                   lightness=0 or a means black or white
                   satulation=0 means gray
                   background color =10  white
                   black  = 1
                   white  =10
                   gray           ( 1- 9)
                   blue   =15     (11-19)
                   magenta=45     (41-29)
                   red    =75     (71-39)
                   yellow =105    (101-109)
                   green  =135    (131-139)
                   cyan   =165    (161-169)

      (21) nbond
          different kinds of bonds   (<=10)
      (22) ie1, ie2, bmin, bmax, bcol, bwdt, klin
          ie1,ie2: element pair to be joined by a bond
          bmin: minimum length of a bond  in angstrom
          bmax: maximum length of a bond  in angstrom
          bcol: bond color
          bdwt: bond width
          klin: kind of lines  0: bold, 1: dashed 2: dotted
             ******bond length affected by isim******
             repeat (22) nbond times
      (23) nsl,no1,no2
          nsl: number of slices upward and downward
               along the projection axis
          no1-th to no2-th slices are calculated (default: all 
                         slices are calculated)
          **** if job != +-1 skip (24) ****
      (24) flnm4
          file name of xyz file for the output of x,y,z coordinates of plotted atoms





File translated from TEX by TTH, version 3.02.
On 16 Aug 2005, 08:57.