<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
 xmlns:ex="inputschemaextentions.xsd">
 <!--
  This schema defines the input file format. It should be the central place for parameter and task specification and documentation
 --> <!-- global type definitions -->
 <xs:simpleType name="fortrandouble">
  <xs:restriction base="xs:token">
   <xs:pattern value="\-?[0-9]*\.?[0-9]+([eEdDqQ][\-+]?[0-9]+)?" />
  </xs:restriction>
 </xs:simpleType>
 <xs:annotation>
  <xs:documentation>input schema</xs:documentation>
  <xs:appinfo>
   <title>\exciting input reference</title>
   <root>input</root>
  </xs:appinfo>
 </xs:annotation>
 <xs:simpleType name="vector">
  <xs:list itemType="fortrandouble" />
 </xs:simpleType>
 <xs:simpleType name="integerlist">
  <xs:list itemType="xs:integer" />
 </xs:simpleType>
 <xs:simpleType name="vect3d">
  <xs:restriction base="vector">
   <xs:length value="3" />
  </xs:restriction>
 </xs:simpleType>
 <xs:simpleType name="vect2d">
  <xs:restriction base="vector">
   <xs:length value="2" />
  </xs:restriction>
 </xs:simpleType>
 <xs:simpleType name="integertriple">
  <xs:restriction base="integerlist">
   <xs:length value="3" />
  </xs:restriction>
 </xs:simpleType>
 <xs:simpleType name="integerpair">
  <xs:restriction base="integerlist">
   <xs:length value="2" />
  </xs:restriction>
 </xs:simpleType> <!-- global attribute definitions -->
 <xs:attribute ex:status="expert" ex:unit="" name="outfileprefix" type="xs:string" >
  <xs:annotation>
   <xs:documentation>a prefix to be prepended to the output files
</xs:documentation>
  </xs:annotation>
 </xs:attribute>
  <xs:attribute ex:status="expert" ex:unit="" name="do"  default="fromscratch">
       <xs:annotation>
        <xs:appinfo>
         <oldname>nonreplace</oldname>
        </xs:appinfo>
        <xs:documentation>Decides if the groundstate is read from file or recalculated or continued from file.
        </xs:documentation>
       </xs:annotation>
     <xs:simpleType>
        <xs:restriction base="xs:string">
         <xs:enumeration value="fromscratch" />
         <xs:enumeration value="fromfile" />
         <xs:enumeration value="skip" />
        </xs:restriction>
       </xs:simpleType>  
      </xs:attribute>
 <xs:attribute ex:status="expert" ex:unit="" name="tfibs" type="xs:boolean" default="true">
  <xs:annotation>
   <xs:documentation>
    if the IBS correction to the force should be calculated Because calculation of the incomplete basis set (IBS) correction to
    the force is fairly time-consuming, it can be switched off by setting
    <pre> tfibs</pre>
    to
    <pre> .false.</pre>
    This correction can then be included only when necessary, i.e. when the atoms are close to equilibrium in a structural
    relaxation run.
   </xs:documentation>
  </xs:annotation>
 </xs:attribute>
 <xs:attribute ex:status="expert" ex:unit="" name="tforce" type="xs:boolean" default="false">
  <xs:annotation>
   <xs:documentation>
    set to
    <pre> .true.</pre>
    if the force should be calculated at the end of the self-consistent cycle This variable is automatically set to
    <pre> .true.</pre>
    pre when performing structural optimization.
   </xs:documentation>
  </xs:annotation>
 </xs:attribute>
 <xs:attribute ex:status="expert" ex:unit="" name="scissor" type="fortrandouble" default="0.0d0">
  <xs:annotation>
   <xs:documentation>the scissors correction This is the scissors shift applied to states above the Fermi energy. Affects DOS,
    optics and band structure plots.</xs:documentation>
  </xs:annotation>
 </xs:attribute> <!-- global element definitions -->
 <xs:element ex:status="essential" ex:unit="" name="origin">
  <xs:complexType>
   <xs:attribute ex:status="essential" ex:unit="" name="coord" type="vect3d" />
  </xs:complexType>
 </xs:element>
 <xs:element ex:status="essential" ex:unit="" name="point">
  <xs:complexType>
   <xs:attribute ex:status="essential" ex:unit="" name="coord" type="vect3d" />
   <xs:attribute ex:status="essential" ex:unit="" name="label" type="xs:string" default="" />
  </xs:complexType>
 </xs:element>
 <xs:element ex:status="essential" ex:unit="" name="plot1d">
  <xs:annotation>
   <xs:documentation> plot1d specifies sample points along a path. The coordinate space is chosen in the context of the parent
   </xs:documentation>
  </xs:annotation>
  <xs:complexType>
   <xs:all>
    <xs:element ex:status="essential" ex:unit="" name="path" maxOccurs="1" minOccurs="1">
     <xs:complexType>
      <xs:sequence>
       <xs:annotation>
        <xs:documentation>A path consists of at least two points and a number of divisions.</xs:documentation>
       </xs:annotation>
       <xs:element ex:status="essential" ex:unit="" ref="point" minOccurs="2" maxOccurs="unbounded" />
      </xs:sequence>
      <xs:attribute ex:status="essential" ex:unit="" name="steps" type="xs:integer" use="required" />
      <xs:attribute ex:status="expert" ex:unit="" ref="outfileprefix" />
     </xs:complexType>
    </xs:element>
   </xs:all>
  </xs:complexType>
 </xs:element>
 <xs:element ex:status="essential" ex:unit="" name="plot2d">
  <xs:annotation>
   <xs:documentation>defines a 2d plot domain </xs:documentation>
  </xs:annotation>
  <xs:complexType>
   <xs:all>
    <xs:element ex:status="essential" ex:unit="" name="parallelogram" maxOccurs="1" minOccurs="1">
     <xs:complexType>
      <xs:sequence>
       <xs:element ex:status="essential" ex:unit="" ref="origin" minOccurs="1" maxOccurs="1" />
       <xs:element ex:status="essential" ex:unit="" ref="point" minOccurs="2" maxOccurs="2" />
      </xs:sequence>
      <xs:attribute ex:status="essential" ex:unit="" name="grid" type="integerpair" use="required" />
      <xs:attribute ex:status="expert" ex:unit="" ref="outfileprefix" />
     </xs:complexType>
    </xs:element>
   </xs:all>
  </xs:complexType>
 </xs:element>
 <xs:element ex:status="essential" ex:unit="" name="plot3d">
  <xs:annotation>
   <xs:documentation>defines a 3d plot domain </xs:documentation>
  </xs:annotation>
  <xs:complexType>
   <xs:all>
    <xs:element ex:status="essential" ex:unit="" name="box" maxOccurs="1" minOccurs="1">
     <xs:complexType>
      <xs:sequence>
       <xs:element ex:status="essential" ex:unit="" ref="origin" minOccurs="1" maxOccurs="1" />
       <xs:element ex:status="essential" ex:unit="" ref="point" minOccurs="3" maxOccurs="3" />
      </xs:sequence>
      <xs:attribute ex:status="essential" ex:unit="" name="grid" type="integertriple" use="required" />
      <xs:attribute ex:status="expert" ex:unit="" ref="outfileprefix" />
     </xs:complexType>
    </xs:element>
   </xs:all>
  </xs:complexType>
 </xs:element>
 <xs:element ex:status="essential" ex:unit="" name="pointstatepair" type="integerpair">
  <xs:annotation>
   <xs:documentation>
    <inlinemath>{ \bf k}</inlinemath>
    -point and state index pair
   </xs:documentation>
  </xs:annotation>
 </xs:element>
 <xs:element ex:status="essential" ex:unit="" name="kstlist">
  <xs:annotation>
   <xs:documentation>
    kstlist is used in the LSJ and wavefunction plot element This is a user-defined list of
    <inlinemath>{ \bf k}</inlinemath>
    -point and state index pairs which are those used for plotting wavefunctions and writing
    <inlinemath>{ \bf L}</inlinemath>
    ,
    <inlinemath>{ \bf S}</inlinemath>
    and
    <inlinemath>{ \bf J}</inlinemath>
    expectation values.
   </xs:documentation>
  </xs:annotation>
  <xs:complexType>
   <xs:sequence>
    <xs:element ex:status="essential" ex:unit="" ref="pointstatepair" minOccurs="1" maxOccurs="unbounded" />
   </xs:sequence>
  </xs:complexType>
 </xs:element>
 <xs:element ex:status="essential" ex:unit="" name="inputset">
  <xs:annotation>
   <xs:documentation>The inputset element can be used to store a set of input elements. It is not used by exciting now but will
    be usefull eventually.
</xs:documentation>
   <xs:appinfo>
    <oldname>noname</oldname>
   </xs:appinfo>
  </xs:annotation>
  <xs:complexType>
   <xs:sequence>
    <xs:element ex:status="essential" ex:unit="" ref="input" minOccurs="1" maxOccurs="unbounded">
     <xs:annotation>
      <xs:appinfo>
       <oldname>noname</oldname>
      </xs:appinfo>
     </xs:annotation>
    </xs:element>
   </xs:sequence>
  </xs:complexType>
 </xs:element> <!-- root element starts here -->
 <xs:element ex:status="essential" ex:unit="" name="input" >
   <xs:annotation>
     <xs:documentation>
       The input element Is the root element of the exciting input file. XML may contain only one root element. The input element must contain one structure
       element and one groundstate element.
     </xs:documentation>
     <xs:appinfo>
      
     </xs:appinfo>
   </xs:annotation>
   <xs:complexType>
     <xs:annotation>
       <xs:appinfo>
         <oldname>noname</oldname>
       </xs:appinfo>
       <xs:documentation>
         Every input file must contain a structure element to specify the domain and the atoms.
         <p />
         Unless explicitly stated otherwise, EXCITING uses atomic units. In this system
         <inlinemath>\hbar=1</inlinemath>
         , the electron mass
         <inlinemath>m=1</inlinemath>
         , the Bohr radius
         <inlinemath>a_0=1</inlinemath>
         and the electron charge
         <inlinemath>e=1</inlinemath>
         (note that the electron charge is positive, so that the atomic numbers
         <inlinemath>Z</inlinemath>
         are negative). Thus, the atomic unit of length is 0.52917720859(36) \AA, and the atomic unit of energy is the Hartree which equals 27.21138386(68) eV.
         The unit of the external magnetic fields is defined such that one unit of magnetic field in
         <pre>exciting.in</pre>
         equals 1717.2445320376 Tesla.
       </xs:documentation>
     </xs:annotation>
     <xs:all>
       <xs:element ex:status="essential" ex:unit="" name="title" type="xs:string" minOccurs="1" maxOccurs="1">
         <xs:annotation>
           <xs:documentation>Title of the input file.</xs:documentation>
         </xs:annotation>
       </xs:element>
       <xs:element ex:status="essential" ex:unit="" name="structure" maxOccurs="1" minOccurs="1">
         <xs:annotation>
           <xs:documentation>The structure element contains all structural information such as atoms atom positions and symmetries.</xs:documentation>
         </xs:annotation>
         <xs:complexType>
           <xs:sequence>
             <xs:element ex:status="expert" ex:unit="" name="symmetries" maxOccurs="1" minOccurs="0">
               <xs:annotation>
                 <xs:appinfo>
                   <notindocu />
                 </xs:appinfo>
                 <xs:documentation>This element is used by the spacegroup tool to generate structures and supercells</xs:documentation>
               </xs:annotation>
               <xs:complexType>
                 <xs:annotation>
                   <xs:documentation>
                     The symmetries element is output from the spacegroup program the values are currently not used in the exciting program
                   </xs:documentation>
                 </xs:annotation>
                 <xs:sequence>
                   <xs:element ex:status="expert" ex:unit="" name="lattice" maxOccurs="1" minOccurs="1">
                     <xs:annotation>
                       <xs:documentation>defines lattice from a,b,c, and angles</xs:documentation>
                     </xs:annotation>
                     <xs:complexType>
                       <xs:attribute ex:status="expert" ex:unit="" name="a" type="fortrandouble" use="required">
                         <xs:annotation>
                           <xs:appinfo>
                             <oldname>noreplace</oldname>
                           </xs:appinfo>
                         </xs:annotation>
                       </xs:attribute>
                       <xs:attribute ex:status="expert" ex:unit="" name="b" type="fortrandouble" use="required">
                         <xs:annotation>
                           <xs:appinfo>
                             <oldname>noreplace</oldname>
                           </xs:appinfo>
                         </xs:annotation>
                       </xs:attribute>
                       <xs:attribute ex:status="expert" ex:unit="" name="c" type="fortrandouble" use="required">
                         <xs:annotation>
                           <xs:appinfo>
                             <oldname>noreplace</oldname>
                           </xs:appinfo>
                         </xs:annotation>
                       </xs:attribute>
                       <xs:attribute ex:status="expert" ex:unit="" name="ab" type="fortrandouble" use="required" />
                       <xs:attribute ex:status="expert" ex:unit="" name="ac" type="fortrandouble" use="required" />
                       <xs:attribute ex:status="expert" ex:unit="" name="bc" type="fortrandouble" use="required" />
                       <xs:attribute ex:status="expert" ex:unit="" name="ncell" type="integertriple" use="optional" default="1 1 1">
                         <xs:annotation>
                           <xs:documentation>number of repeated cells in each direction</xs:documentation>
                         </xs:annotation>
                       </xs:attribute>
                     </xs:complexType>
                   </xs:element>
                   <xs:element ex:status="expert" ex:unit="" name="WyckoffPositions" maxOccurs="1" minOccurs="0">
                     <xs:complexType>
                       <xs:sequence>
                         <xs:element ex:status="expert" ex:unit="" name="wspecies" maxOccurs="unbounded" minOccurs="0">
                           <xs:annotation>
                             <xs:documentation />
                           </xs:annotation>
                           <xs:complexType>
                             <xs:sequence>
                               <xs:element ex:status="expert" ex:unit="" name="wpos" maxOccurs="unbounded" minOccurs="0">
                                 <xs:complexType>
                                   <xs:attribute ex:status="expert" ex:unit="" name="coord" type="vect3d" />
                                 </xs:complexType>
                               </xs:element>
                             </xs:sequence>
                             <xs:attribute ex:status="expert" ex:unit="" name="speciesfile" type="xs:string" />
                           </xs:complexType>
                         </xs:element>
                       </xs:sequence>
                     </xs:complexType>
                   </xs:element>
                 </xs:sequence>
                 <xs:attribute ex:status="expert" ex:unit="" name="HermannMauguinSymbol" type="xs:string" use="required">
                   <xs:annotation>
                     <xs:documentation>Herman Mauguin sympol giving the spacegroup</xs:documentation>
                     <xs:appinfo>
                       <oldname>hrmg</oldname>
                     </xs:appinfo>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="HallSymbol" type="xs:string" />
                 <xs:attribute ex:status="expert" ex:unit="" name="SchoenfliesSymbol" type="xs:string" />
                 <xs:attribute ex:status="expert" ex:unit="" name="spaceGroupNumber" type="xs:string" />
               </xs:complexType>
             </xs:element>
             <xs:element ex:status="essential" ex:unit="" name="crystal" minOccurs="0" maxOccurs="1">
               <xs:annotation>
                 <xs:documentation>defines the unit cell of the calculation.</xs:documentation>
               </xs:annotation>
               <xs:complexType>
                 <xs:annotation>
                   <xs:documentation>unit cell is spanned by 3 basevectors that define the lattice coordinates.</xs:documentation>
                 </xs:annotation>
                 <xs:sequence>
                   <xs:element ex:status="essential" ex:unit="Bohr" name="basevect" minOccurs="3" maxOccurs="3" type="vect3d">
                     <xs:annotation>
                       <xs:documentation>are the basis vectors or lattice vectors in Bohr.</xs:documentation>
                       <xs:appinfo>
                         <oldname>avec</oldname>
                       </xs:appinfo>
                     </xs:annotation>
                   </xs:element>
                 </xs:sequence>
                 <xs:attribute ex:status="essential" ex:unit="" name="scale" type="fortrandouble" default="1.0d0">
                   <xs:annotation>
                     <xs:documentation>scales all the lattice vectors. This is useful for varying the volume.</xs:documentation>
                     <xs:appinfo>
                       <oldname>scale</oldname>
                     </xs:appinfo>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="essential" ex:unit="" name="stretch" type="vect3d" default="1.0d0 1.0d0 1.0d0 ">
                   <xs:annotation>
                     <xs:documentation>allows for a separate scaling of each lattice vector. 1 1 1 means no scaling.</xs:documentation>
                     <xs:appinfo>
                       <oldname>(sc1|sc2|sc3)</oldname>
                     </xs:appinfo>
                   </xs:annotation>
                 </xs:attribute>
               </xs:complexType>
             </xs:element>
             <xs:element ex:status="essential" ex:unit="" name="species" minOccurs="0" maxOccurs="unbounded">
               <xs:annotation>
                 <xs:documentation>for each atom type (species) a species element is defined containing all the atom positions</xs:documentation>
               </xs:annotation>
               <xs:complexType>
                 <xs:sequence>
                   <xs:element ex:status="essential" ex:unit="" name="atom" minOccurs="1" maxOccurs="unbounded">
                     <xs:annotation>
                       <xs:documentation>atomic position in lattice coordinates for atom</xs:documentation>
                       <xs:appinfo>
                         <oldname>noname</oldname>
                       </xs:appinfo>
                     </xs:annotation>
                     <xs:complexType>
                       <xs:attribute ex:status="essential" ex:unit="lattice coordinates" name="coord" type="vect3d" use="required">
                         <xs:annotation>
                           <xs:documentation>position in lattice coordinates</xs:documentation>
                           <xs:appinfo>
                             <oldname>atposl</oldname>
                           </xs:appinfo>
                         </xs:annotation>
                       </xs:attribute>
                       <xs:attribute ex:status="expert" ex:unit="" name="bfcmt" type="vect3d" default="0.0d0 0.0d0 0.0d0" use="optional">
                         <xs:annotation>
                           <xs:documentation>muffin-tin external magnetic field in Cartesian coordinates for atom</xs:documentation>
                         </xs:annotation>
                       </xs:attribute>
                       <xs:attribute ex:status="expert" ex:unit="" name="mommtfix" type="vect3d" use="optional" />
                     </xs:complexType>
                   </xs:element>
                   <xs:element ex:status="expert" ex:unit="" name="LDAplusU" minOccurs="0">
                     <xs:annotation>
                       <xs:documentation>If present defines ldaplusU parameters for species</xs:documentation>
                     </xs:annotation>
                     <xs:complexType>
                       <xs:attribute ex:status="expert" ex:unit="" name="l" type="xs:integer" default="-1">
                         <xs:annotation>
                           <xs:appinfo>
                             <oldname>notaname</oldname>
                           </xs:appinfo>
                         </xs:annotation>
                       </xs:attribute>
                       <xs:attribute ex:status="expert" ex:unit="" name="U" type="fortrandouble" default="0.0d0">
                         <xs:annotation>
                           <xs:appinfo>
                             <oldname>notaname</oldname>
                           </xs:appinfo>
                         </xs:annotation>
                       </xs:attribute>
                       <xs:attribute ex:status="expert" ex:unit="" name="J" type="fortrandouble" default="0.0d0">
                         <xs:annotation>
                           <xs:appinfo>
                             <oldname>notaname</oldname>
                           </xs:appinfo>
                         </xs:annotation>
                       </xs:attribute>
                     </xs:complexType>
                   </xs:element>
                 </xs:sequence>
                 <xs:attribute ex:status="essential" ex:unit="" name="speciesfile" type="xs:anyURI" use="required">
                   <xs:annotation>
                     <xs:documentation>
                       defines the file from which the species definition is read. It is looked up in the species directory specified by the species path.
                     </xs:documentation>
                     <xs:appinfo>
                       <oldname>spfname</oldname>
                     </xs:appinfo>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="chemicalSymbol" type="xs:string" use="optional" default="">
                   <xs:annotation>
                     <xs:documentation>can be given to simplify visualisation and converters. is ignored by exciting</xs:documentation>
                     <xs:appinfo>
                       <oldname>spsymb</oldname>
                     </xs:appinfo>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="atomicNumber" type="xs:integer" use="optional">
                   <xs:annotation>
                     <xs:documentation>
                       Is an optional attribute can be given to simplify visualisation and converters. It is not used by exciting
                     </xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="rmt" type="fortrandouble" default="-1.0d0" use="optional">
                   <xs:annotation>
                     <xs:appinfo>
                       <oldname>noreplace></oldname>
                     </xs:appinfo>
                     <xs:documentation>muffin tin radius this optional parameter allows to override speciesfile or automatic tetemination</xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
               </xs:complexType>
             </xs:element>
           </xs:sequence>
           <xs:attribute ex:status="essential" ex:unit="" name="speciespath" type="xs:anyURI" use="required">
             <xs:annotation>
               <xs:documentation>gives the path to the directory containing the species files</xs:documentation>
               <xs:appinfo>
                 <oldname>sppath</oldname>
               </xs:appinfo>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="molecule" type="xs:boolean" default="false">
             <xs:annotation>
               <xs:documentation>
                 has to be set to true if one wants to calculate an isolated molecule. is
                 <pre>true</pre>
                 , then the atomic positions,
                 <inlinemath>{\bf a}</inlinemath>
                 , are assumed to be in Cartesian coordinates. The lattice vectors are also set up automatically with the i-th lattice vector given by
                 <displaymath>{\bf A}^i=A_i\hat{\bf e}^i,</displaymath>
                 where
                 <displaymath>A_i=\max_{\alpha,\beta}\left|{\bf a}^{\alpha}_i-{\bf a}^{\beta}_i\right| +d_{\rm vac}</displaymath>
                 with
                 <inlinemath>\alpha</inlinemath>
                 and
                 <inlinemath>\beta</inlinemath>
                 labeling atoms, and
                 <inlinemath>d_{\rm vac}</inlinemath>
                 determines the size of the vacuum around the molecule. The last variable is set by the attribute
                 <pre>vacuum</pre>
                 .
               </xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="vacuum" type="fortrandouble" default="10.0d0">
             <xs:annotation>
               <xs:documentation>determines the size of the vacuum around the molecule.</xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="epslat" type="fortrandouble" default="1.0d-6">
             <xs:annotation>
               <xs:documentation>vectors with lengths less than this are considered zero.</xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="autormt" type="xs:boolean" default="false">
             <xs:annotation>
               <xs:documentation>If true automatic determination of the muffin tin radii is allowed.</xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="primcell" type="xs:boolean" default="false">
             <xs:annotation>
               <xs:documentation>
                 allows the primitive unit cell to be determined automatically from the conventional cell. This is done by searching for lattice vectors among
                 all those which connect atomic sites, and using the three shortest ones which produce a unit cell with non-zero volume.
               </xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="tshift" type="xs:boolean" default="true"><!-- sag -->
             <xs:annotation>
               <xs:documentation>
                 Set to it to "true" if the crystal can be shifted such that the atom closest to the origin is exactly at the origin.
               </xs:documentation>
             </xs:annotation>
           </xs:attribute>
         </xs:complexType>
       </xs:element>
       <xs:element ex:status="essential" ex:unit="" name="groundstate" maxOccurs="1" minOccurs="0">
         <xs:annotation>
           <xs:documentation>
             The groundstate element is required for anny calculation. Its attributes are the parameters and methods used to calculate the groundstate density.
           </xs:documentation>
         </xs:annotation>
         <xs:complexType>
           <xs:all>
             <xs:element ex:status="essential" ex:unit="" name="spin" minOccurs="0" maxOccurs="1">
               <xs:annotation>
                 <xs:documentation>
                   If the
                   <spin />
                   element is present calculation is done with spin polarization.
                 </xs:documentation>
                 <xs:appinfo>
                   <oldname>spinpol</oldname>
                 </xs:appinfo>
               </xs:annotation>
               <xs:complexType>
                 <xs:attribute ex:status="essential" ex:unit="" name="momfix" type="vect3d" default="0.0d0 0.0d0 0.0d0">
                   <xs:annotation>
                     <xs:documentation>the desired total moment for a FSM calculation.</xs:documentation>
                   </xs:annotation>
                 </xs:attribute><!-- sag: parameter "mommtfix" for muffin tins, possibly missing? -->
                 <xs:attribute ex:status="essential" ex:unit="" name="bfieldc" type="vect3d" default="0.0d0 0.0d0 0.0d0 ">
                   <xs:annotation>
                     <xs:documentation>
                       alows to apply a constant B field This is a constant magnetic field applied throughout the entire unit cell and enters the
                       second-variational Hamiltonian as
                       <displaymath>\frac{g_e\alpha}{4}\,\vec{\sigma}\cdot{\bf B}_{\rm ext},</displaymath>
                       where
                       <inlinemath>g_e</inlinemath>
                       is the electron
                       <inlinemath>g</inlinemath>
                       -factor (2.0023193043718). This field is normally used to break spin symmetry for spin-polarised calculations and considered to be
                       infinitesimal with no direct contribution to the total energy. In cases where the magnetic field is finite (for example when computing
                       magnetic response) the external
                       <inlinemath>{ \bf B}</inlinemath>
                       -field energy reported in
                       <pre>INFO.OUT</pre>
                       should be added to the total by hand. This field is applied throughout the entire unit cell. To apply magnetic fields in particular
                       muffin-tins use the
                       <pre>bfcmt</pre>
                       vect ors in the
                       <pre>atoms</pre>
                       block. Collinear calculations are more efficient if the field is applied in the
                       <inlinemath>z</inlinemath>
                       -direction.
                     </xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="essential" ex:unit="" name="spinorb" type="xs:boolean">
                   <xs:annotation>
                     <xs:documentation>
                       if a spin-orbit coupling is required If
                       <pre>spinorb</pre>
                       is
                       <pre>.true.</pre>
                       , then a
                       <inlinemath>\boldsymbol \sigma\cdot{ \bf L}</inlinemath>
                       term is added to the second-variational Hamiltonian. .
                     </xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="spinsprl" type="xs:boolean">
                   <xs:annotation>
                     <xs:documentation>
                       set to
                       <pre>.true.</pre>
                       if a spin-spiral calculation is require Experimental feature for the calculation of spin-spiral states. See
                       <pre>vqlss</pre>
                       for details.
                     </xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="vqlss" type="vect3d" default="0.0d0 0.0d0 0.0d0">
                   <xs:annotation>
                     <xs:documentation>
                       the
                       <inlinemath>{ \bf q}</inlinemath>
                       -vector of the spin-spiral state in lattice coordinates Spin-spirals arise from spinor states assumed to be of the form
                       <displaymath>
                         \Psi^{ \bf q}_{ \bf k}({ \bf r})= \left( \begin{array}{c} U^{{\bf q}\uparrow}_{ \bf k}({\bf r})e^{i({ \bf k+q/2})\cdot{ \bf r}} \\ U^{{
                         \bf q}\downarrow}_{\bf k}({ \bf r})e^{i({\bf k-q/2})\cdot{ \bf r}} \\ \end{array} \right).
                       </displaymath>
                       These are determined using a second-variational approach, and give rise to a magnetisation density of the form
                       <displaymath>
                         {\bf m}^{ \bf q}({ \bf r})=(m_x({\bf r})\cos({ \bf q \cdot r}), m_y({\bf r})\sin({ \bf q \cdot r}),m_z({\bf r})),
                       </displaymath>
                       where
                       <inlinemath>m_x</inlinemath>
                       ,
                       <inlinemath>m_y</inlinemath>
                       and
                       <inlinemath>m_z</inlinemath>
                       are lattice periodic. See also
                       <pre>spinprl</pre>
                       .
                     </xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="taufsm" type="fortrandouble" default="0.01d0" />
                 <xs:attribute ex:status="expert" ex:unit="" name="reducebf" type="fortrandouble" default="1.0d0">
                   <xs:annotation>
                     <xs:documentation>
                       After each iteration the external magnetic fields are multiplied with reducebf. This al- lows for a large external magnetic field at the
                       start of the self-consistent loop to break spin symmetry, while at the end of the loop the field will be effectively zero, i.e.
                       infinitesimal. See bfieldc and atoms.
                     </xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="essential" ex:unit="" name="fixspin" default="none">
                   <xs:simpleType>
                     <xs:restriction base="xs:string">
                       <xs:enumeration value="none">
                         <xs:annotation>
                           <xs:appinfo>
                             <oldnr>0</oldnr>
                           </xs:appinfo>
                         </xs:annotation>
                       </xs:enumeration>
                       <xs:enumeration value="total FSM">
                         <xs:annotation>
                           <xs:appinfo>
                             <oldnr>1</oldnr>
                           </xs:appinfo>
                         </xs:annotation>
                       </xs:enumeration>
                       <xs:enumeration value="localmt FSM">
                         <xs:annotation>
                           <xs:appinfo>
                             <oldnr>2</oldnr>
                           </xs:appinfo>
                         </xs:annotation>
                       </xs:enumeration>
                       <xs:enumeration value="both">
                         <xs:annotation>
                           <xs:appinfo>
                             <oldnr>3</oldnr>
                           </xs:appinfo>
                         </xs:annotation>
                       </xs:enumeration>
                     </xs:restriction>
                   </xs:simpleType>
                 </xs:attribute>
               </xs:complexType>
             </xs:element>
             <xs:element ex:status="expert" ex:unit="" name="HartreeFock" minOccurs="0" maxOccurs="1"><!-- sag -->
               <xs:annotation>
                 <xs:documentation>If preset HartreeFock calculation is triggered.</xs:documentation>
               </xs:annotation>
               <xs:complexType>
                 <xs:attribute ex:status="expert" ex:unit="" name="epsengy" type="fortrandouble" use="optional" default="1.0d-7">
                   <xs:annotation>
                     <xs:documentation>energy convergence tolerance</xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
               </xs:complexType>
             </xs:element>
             <xs:element ex:status="expert" ex:unit="" name="solver" minOccurs="0" maxOccurs="1">
               <xs:annotation>
                 <xs:documentation>Optional configuration options for eigenvector solver.</xs:documentation>
               </xs:annotation>
               <xs:complexType>
                 <xs:attribute ex:status="expert" ex:unit="" name="type" default="Lapack">
                   <xs:annotation>
                     <xs:appinfo>
                       <oldname>solvertype</oldname>
                     </xs:appinfo>
                     <xs:documentation>select the eigenvalue solver for the first variational equation</xs:documentation>
                   </xs:annotation>
                   <xs:simpleType>
                     <xs:restriction base="xs:string">
                       <xs:enumeration value="Lapack">
                         <xs:annotation>
                           <xs:appinfo>
                             <oldnr>1</oldnr>
                           </xs:appinfo>
                         </xs:annotation>
                       </xs:enumeration>
                       <xs:enumeration value="Arpack">
                         <xs:annotation>
                           <xs:appinfo>
                             <oldnr>2</oldnr>
                           </xs:appinfo>
                         </xs:annotation>
                       </xs:enumeration>
                       <xs:enumeration value="DIIS">
                         <xs:annotation>
                           <xs:appinfo>
                             <oldnr>3</oldnr>
                           </xs:appinfo>
                         </xs:annotation>
                       </xs:enumeration>
                     </xs:restriction>
                   </xs:simpleType>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="packedmatrixstorage" type="xs:boolean" use="optional" default="true">
                   <xs:annotation>
                     <xs:documentation>
                       In the default calculation the matrix is sored in packed form. When using multithreaded BLAS setting this parmeter to false increases
                       efficiency.
                     </xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="epsarpack" type="fortrandouble" default="1.0d-8">
                   <xs:annotation>
                     <xs:documentation>Tolerance parameter for the ARPACK shift invert solver</xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="evaltol" type="fortrandouble" default="1.0d-8"><!-- sag -->
                   <xs:annotation>
                     <xs:documentation>error tolerance for the first-variational eigenvalues using the LAPACK Solver</xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
               </xs:complexType>
             </xs:element>
             <xs:element ex:status="expert" ex:unit="" name="OEP" minOccurs="0" maxOccurs="1">
               <xs:annotation>
                 <xs:documentation>If present exact exchange calculation is triggered. (experimental)</xs:documentation>
               </xs:annotation>
               <xs:complexType>
                 <xs:attribute ex:status="expert" ex:unit="" name="maxitoep" type="xs:integer" default="120">
                   <xs:annotation>
                     <xs:documentation>maximum number of iterations when solving the exact exchange integral equations</xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="tauoep" type="vect3d" default="1.0d0 0.2d0 1.5d0">
                   <xs:annotation>
                     <xs:documentation>
                       The optimised effective potential is determined using an interative method. [Phys. Rev. Lett. 98, 196405 (2007)]. At the first iteration
                       the step length is set to tauoep(1). Dur- ing subsequent iterations, the step length is scaled by tauoep(2) or tauoep(3), when the
                       residual is increasing or decreasing, respectively. See also maxitoep.
                     </xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
               </xs:complexType>
             </xs:element>
             <xs:element ex:status="expert" ex:unit="" name="RDMFT" minOccurs="0" maxOccurs="1">
               <xs:annotation>
                 <xs:documentation>If present Reduced Density Matrix Funcional Theory calculation is triggered</xs:documentation>
               </xs:annotation>
               <xs:complexType>
                 <xs:attribute ex:status="expert" ex:unit="" name="rdmxctype" type="xs:integer" default="2">
                   <xs:annotation>
                     <xs:documentation>xc functional.</xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="rdmmaxscl" type="xs:integer" default="1">
                   <xs:annotation>
                     <xs:documentation>maximum number of self-consistent loops.</xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="maxitn" type="xs:integer" default="250">
                   <xs:annotation>
                     <xs:documentation>maximum number of iteration for occupation number optimisation.</xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="maxitc" type="xs:integer" default="10">
                   <xs:annotation>
                     <xs:documentation>maximum number of iteration for natural orbital optimisation.</xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="taurdmn" type="fortrandouble" default="1.0d0">
                   <xs:annotation>
                     <xs:documentation>step size for occupation numbers.</xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="taurdmc" type="fortrandouble" default="0.5d0">
                   <xs:annotation>
                     <xs:documentation>step size for natural orbital coefficients.</xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="rdmalpha" type="fortrandouble" default="0.7d0">
                   <xs:annotation>
                     <xs:documentation>exponent for the functional.</xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="rdmtemp" type="fortrandouble" default="0.0d0">
                   <xs:annotation>
                     <xs:documentation>temperature.</xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
               </xs:complexType>
             </xs:element>
           </xs:all>
           <xs:attribute ex:status="essential" ex:unit="" ref="do" default="fromscratch">
             <xs:annotation>
               <xs:appinfo>
                 <oldname>nonreplace</oldname>
               </xs:appinfo>
               <xs:documentation>Decides if the groundstate is skipped or recalculated or continued from file.</xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="essential" ex:unit="" name="ngridk" type="integertriple" use="required">
             <xs:annotation>
               <xs:appinfo>
                 <oldname>ngridk</oldname>
               </xs:appinfo>
               <xs:documentation>Number of k grid points along the basis vector directions.</xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="essential" ex:unit="" name="rgkmax" type="fortrandouble" default="7.0d0">
             <xs:annotation>
               <xs:documentation>
                 This sets the maximum length for the
                 <inlinemath>{ \bf G}+{ \bf k}</inlinemath>
                 vectors, defined as
                 <pre>rgkmax</pre>
                 divided by the smallest muffin-tin radius.
               </xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="epspot" type="fortrandouble" use="optional" default="1.0d-6">
             <xs:annotation>
               <xs:documentation>
                 If the RMS change in the effective potential and magnetic field is smaller than epspot, then the self-consistent loop is considered converged
                 and exited. For structural optimisation runs this results in the forces being calculated, the atomic positions updated and the loop restarted.
                 See also maxscl.
               </xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="rmtapm" type="vect2d" default="0.25d0 0.95d0">
             <xs:annotation>
               <xs:documentation>
                 parameters governing the automatic generation of the muffin-tin radii. When @autormt is set to true, the muffin-tin radii are found
                 automatically from the formula
                 <displaymath>R_i\propto 1+\zeta|Z_i|^{1/3},</displaymath>
                 where
                 <inlinemath>Z_i</inlinemath>
                 is the atomic number of the $i$th species,
                 <inlinemath>\zeta</inlinemath>
                 is stored in @rmtapm(1) and the value which governs the distance between the muffin-tins is stored in @rmtapm(2). When @rmtapm(2) =1, the
                 closest muffin-tins will touch.
               </xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="swidth" type="fortrandouble" default="0.001d0">
             <xs:annotation>
               <xs:documentation>width of the smooth approximation to the Dirac delta function.</xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="stype" default="Gaussian">
             <xs:annotation>
               <xs:documentation>
                 A smooth approximation to the Dirac delta function is needed to compute the occupancies of the Kohn-Sham states. The variable
                 <pre>swidth</pre>
                 determines the width of the approximate delta function.
               </xs:documentation>
             </xs:annotation>
             <xs:simpleType>
               <xs:restriction base="xs:string">
                 <xs:enumeration value="Gaussian">
                   <xs:annotation>
                     <xs:appinfo>
                       <oldnr>0</oldnr>
                     </xs:appinfo>
                   </xs:annotation>
                 </xs:enumeration>
                 <xs:enumeration value="Methfessel-Paxton 1">
                   <xs:annotation>
                     <xs:appinfo>
                       <oldnr>1</oldnr>
                     </xs:appinfo>
                   </xs:annotation>
                 </xs:enumeration>
                 <xs:enumeration value="Methfessel-Paxton 2">
                   <xs:annotation>
                     <xs:appinfo>
                       <oldnr>2</oldnr>
                     </xs:appinfo>
                   </xs:annotation>
                 </xs:enumeration>
                 <xs:enumeration value="Fermi Dirac">
                   <xs:annotation>
                     <xs:appinfo>
                       <oldnr>3</oldnr>
                     </xs:appinfo>
                   </xs:annotation>
                 </xs:enumeration>
                 <xs:enumeration value="Square-wave impulse">
                   <xs:annotation>
                     <xs:appinfo>
                       <oldnr>4</oldnr>
                     </xs:appinfo>
                   </xs:annotation>
                 </xs:enumeration>
               </xs:restriction>
             </xs:simpleType>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="findlinentype" default="advanced">
             <xs:annotation>
               <xs:documentation>select method to determine the linearization energies.</xs:documentation>
             </xs:annotation>
             <xs:simpleType>
               <xs:restriction base="xs:string">
                 <xs:enumeration value="simple" />
                 <xs:enumeration value="advanced" />
               </xs:restriction>
             </xs:simpleType>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="isgkmax" type="xs:integer" default="-1">
             <xs:annotation>
               <xs:documentation>species for which the muffin-tin radius will be used for calculating gkmax.</xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="gmaxvr" type="fortrandouble" default="12.0d0">
             <xs:annotation>
               <xs:documentation>maximum length of |G| for expanding the interstitial density and potential.</xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="nempty" type="xs:integer" default="5">
             <xs:annotation>
               <xs:documentation>
                 Defines the number of eigenstates beyond that required for charge neutrality. When running metals it is not known
                 <it>a priori</it>
                 how many states will be below the Fermi energy for each
                 <bf>k</bf>
                 -point. Setting
                 <pre>nempty</pre>
                 greater than zero allows the additional states to act as a buffer in such cases. Furthermore, magnetic calculations use the first-variational
                 eigenstates as a basis for setting up the second-variational Hamiltonian, and thus
                 <pre>nempty</pre>
                 will determine the size of this basis set. Convergence with respect to this quantity should be checked.
               </xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="nosym" type="xs:boolean" default="false">
             <xs:annotation>
               <xs:documentation>
                 when set to
                 <pre>.true.</pre>
                 no symmetries, apart from the identity, are used anywhere in the code.
               </xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="frozencore" type="xs:boolean" default="false">
             <xs:annotation>
               <xs:documentation>
                 when set to
                 <pre>true</pre>
                 the frozen core approximation is applied, i.e., the core states are fixed to the atomic states.
               </xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="autokpt" type="xs:boolean" default="false">
             <xs:annotation>
               <xs:documentation>
                 if the
                 <bf>k</bf>
                 -point set is to be determined automatically
               </xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="radkpt" type="fortrandouble" default="40.0d0">
             <xs:annotation>
               <xs:documentation>
                 Used for the automatic determination of the
                 <bf>k</bf>
                 -point mesh. If
                 <pre>autokpt</pre>
                 is set to
                 <pre>true</pre>
                 then the mesh sizes will be determined by
                 <inlinemath>n_i=\lambda/|{ \bf A}_i|+1</inlinemath>
                 .
               </xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="essential" ex:unit="" name="reducek" type="xs:boolean" default="true">
             <xs:annotation>
               <xs:documentation>
                 <pre>reducek</pre>
                 set to
                 <pre>true</pre>
                 if the
                 <inlinemath>
                   <bf>k</bf>
                 </inlinemath>
                 -point set is to be reduced with the crystal symmetries.
               </xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" ref="tfibs" default="true">
             <xs:annotation>
               <xs:documentation>
                 Because calculation of the incomplete basis set (IBS) correction to the force is fairly time- consuming, it can be switched off by setting
                 tfibs to .false. This correction can then be included only when necessary, i.e. when the atoms are close to equilibrium in a structural
                 relaxation run.
               </xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="essential" ex:unit="" ref="tforce" default="false">
             <xs:annotation>
               <xs:documentation>if the force should be calculated at the end of the self-consistent cycle.</xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="lmaxapw" type="xs:integer" default="10">
             <xs:annotation>
               <xs:documentation>angular momentum cut-off for the APW functions.</xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="essential" ex:unit="" name="maxscl" type="xs:integer" default="200">
             <xs:annotation>
               <xs:documentation>upper limit for te selfconsistency loop.</xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="chgexs" type="fortrandouble" default="0.0d0">
             <xs:annotation>
               <xs:documentation>
                 This controls the amount of charge in the unit cell beyond that required to maintain neu-trality. It can be set positive or negative depending
                 on whether electron or hole doping is required.
               </xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="deband" type="fortrandouble" default="0.0025d0">
             <xs:annotation>
               <xs:documentation>
                 initial band energy step size The initial step length used when searching for the band energy, which is used as the APW linearisation energy.
                 This is done by first searching upwards in energy until the radial wavefunction at the muffin-tin radius is zero. This is the energy at the top
                 of the band, denoted
                 <inlinemath>E_{\rm t}</inlinemath>
                 . A downward search is now performed from
                 <inlinemath>E_{\rm t}</inlinemath>
                 until the slope of the radial wavefunction at the muffin-tin radius is zero. This energy,
                 <inlinemath>E_{\rm b}</inlinemath>
                 , is at the bottom of the band. The band energy is taken as
                 <inlinemath>(E_{\rm t}+E_{\rm b})/2</inlinemath>
                 . If either
                 <inlinemath>E_{\rm t}</inlinemath>
                 or
                 <inlinemath>E_{\rm b}</inlinemath>
                 cannot be found then the band energy is set to the default value.
               </xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="epschg" type="fortrandouble" default="1.0d-3">
             <xs:annotation>
               <xs:documentation>maximum allowed error in the calculated total charge beyond which a warning message will be issued.</xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="epsocc" type="fortrandouble" default="1.0d-8">
             <xs:annotation>
               <xs:documentation>smallest occupancy for which a state will contribute to the density.</xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="essential" ex:unit="" name="mixer" default="msec">
             <xs:annotation>
               <xs:documentation>select the mixing (relaxation) scheme for SCF</xs:documentation>
               <xs:appinfo>
                 <oldname>mixtype</oldname>
               </xs:appinfo>
             </xs:annotation>
             <xs:simpleType>
               <xs:restriction base="xs:string">
                 <xs:enumeration value="lin">
                   <xs:annotation>
                     <xs:appinfo>
                       <oldnr>1</oldnr>
                     </xs:appinfo>
                   </xs:annotation>
                 </xs:enumeration>
                 <xs:enumeration value="msec">
                   <xs:annotation>
                     <xs:appinfo>
                       <oldnr>2</oldnr>
                     </xs:appinfo>
                   </xs:annotation>
                 </xs:enumeration>
                 <xs:enumeration value="pulay">
                   <xs:annotation>
                     <xs:appinfo>
                       <oldnr>3</oldnr>
                     </xs:appinfo>
                   </xs:annotation>
                 </xs:enumeration>
               </xs:restriction>
             </xs:simpleType>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="beta0" type="fortrandouble" default="0.4d0"><!-- sag -->
             <xs:annotation>
               <xs:documentation>initial value for mixing parameter. Used in linear mixing.</xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="betainc" type="fortrandouble" default="1.1d0"><!-- sag -->
             <xs:annotation>
               <xs:documentation>mixing parameter increase. Used in linear mixing.</xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="betadec" type="fortrandouble" default="0.6d0"><!-- sag -->
             <xs:annotation>
               <xs:documentation>mixing parameter decrease. Used in linear mixing.</xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="lradstep" type="xs:integer" default="4">
             <xs:annotation>
               <xs:documentation>
                 Some muffin-tin functions (such as the density) are calculated on a coarse radial mesh and then interpolated onto a fine mesh. This is done for
                 the sake of efficiency. lradstp defines the step size in going from the fine to the coarse radial mesh. If it is too large, loss of precision
                 may occur.
               </xs:documentation>
               <xs:appinfo>
                 <oldname>lradstp</oldname>
               </xs:appinfo>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="nprad" type="xs:integer" default="4">
             <xs:annotation>
               <xs:documentation>smallest occupancy for which a state will contribute to the density.</xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="essential" ex:unit="" name="xctype" default="LSDAPerdew-Wang">
             <xs:annotation>
               <xs:documentation>
                 type of exchange-correlation functional to be used \begin{itemize} \item No exchange-correlation funtional (
                 <inlinemath>E_{\rm xc}\equiv 0</inlinemath>
                 ) \item LDA, Perdew-Zunger/Ceperley-Alder, {\it Phys. Rev. B}
                 <bf>23</bf>
                 , 5048 (1981) \item LSDA, Perdew-Wang/Ceperley-Alder,
                 <it>Phys. Rev. B</it>
                 <bf>45</bf>
                 , 13244 (1992) \item LDA, X-alpha approximation, J. C. Slater,
                 <it>Phys. Rev.</it>
                 <bf>81</bf>
                 , 385 (1951) \item LSDA, von Barth-Hedin,
                 <it>J. Phys. C</it>
                 <bf>5</bf>
                 , 1629 (1972) \\ \item GGA, Perdew-Burke-Ernzerhof,
                 <it>Phys. Rev. Lett.</it>
                 <bf>77</bf>
                 , 3865 (1996) \item GGA, Revised PBE, Zhang-Yang, {\it Phys. Rev. Lett.}
                 <bf>80</bf>
                 , 890 (1998) \item GGA, PBEsol, arXiv:0707.2088v1 (2007) \item GGA, Wu-Cohen exchange (WC06) with PBE correlation,
                 <it>Phys. Rev. B</it>
                 <bf>73</bf>
                 , 235116 (2006) \item GGA, Armiento-Mattsson (AM05) spin-unpolarised functional, {\it Phys. Rev. B}
                 <bf>72</bf>
                 , 085108 (2005) \end{itemize}
               </xs:documentation>
             </xs:annotation>
             <xs:simpleType>
               <xs:restriction base="xs:string">
                 <xs:enumeration value="LDAPerdew-Zunger">
                   <xs:annotation>
                     <xs:appinfo>
                       <oldnr>2</oldnr>
                     </xs:appinfo>
                   </xs:annotation>
                 </xs:enumeration>
                 <xs:enumeration value="LSDAPerdew-Wang">
                   <xs:annotation>
                     <xs:appinfo>
                       <oldnr>3</oldnr>
                     </xs:appinfo>
                   </xs:annotation>
                 </xs:enumeration>
                 <xs:enumeration value="LDA-X-alpha">
                   <xs:annotation>
                     <xs:appinfo>
                       <oldnr>4</oldnr>
                     </xs:appinfo>
                   </xs:annotation>
                 </xs:enumeration>
                 <xs:enumeration value="LSDA-Barth-Hedin">
                   <xs:annotation>
                     <xs:appinfo>
                       <oldnr>5</oldnr>
                     </xs:appinfo>
                   </xs:annotation>
                 </xs:enumeration>
                 <xs:enumeration value="GGAPerdew-Burke-Ernzerhof">
                   <xs:annotation>
                     <xs:appinfo>
                       <oldnr>20</oldnr>
                     </xs:appinfo>
                   </xs:annotation>
                 </xs:enumeration>
                 <xs:enumeration value="GGArevPBE">
                   <xs:annotation>
                     <xs:appinfo>
                       <oldnr>21</oldnr>
                     </xs:appinfo>
                   </xs:annotation>
                 </xs:enumeration>
                 <xs:enumeration value="GGAPBEsol">
                   <xs:annotation>
                     <xs:appinfo>
                       <oldnr>22</oldnr>
                     </xs:appinfo>
                   </xs:annotation>
                 </xs:enumeration>
                 <xs:enumeration value="GGA-Wu-Cohen">
                   <xs:annotation>
                     <xs:appinfo>
                       <oldnr>26</oldnr>
                     </xs:appinfo>
                   </xs:annotation>
                 </xs:enumeration>
                 <xs:enumeration value="GGAArmiento-Mattsson">
                   <xs:annotation>
                     <xs:appinfo>
                       <oldnr>30</oldnr>
                     </xs:appinfo>
                   </xs:annotation>
                 </xs:enumeration>
                 <xs:enumeration value="EXX">
                   <xs:annotation>
                     <xs:appinfo><!-- set to "-2" or lower for EXX -->
                       <oldnr>-2</oldnr>
                     </xs:appinfo>
                   </xs:annotation>
                 </xs:enumeration>
                 <xs:enumeration value="none">
                   <xs:annotation>
                     <xs:appinfo>
                       <oldnr>1</oldnr>
                     </xs:appinfo>
                   </xs:annotation>
                 </xs:enumeration>
               </xs:restriction>
             </xs:simpleType>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="ldapu" default="none">
             <xs:annotation>
               <xs:documentation>type of LDA+U method to be used.</xs:documentation>
             </xs:annotation>
             <xs:simpleType>
               <xs:restriction base="xs:string">
                 <xs:enumeration value="none">
                   <xs:annotation>
                     <xs:appinfo>
                       <oldnr>0</oldnr>
                     </xs:appinfo>
                   </xs:annotation>
                 </xs:enumeration>
                 <xs:enumeration value="FullyLocalisedLimit">
                   <xs:annotation>
                     <xs:appinfo>
                       <oldnr>1</oldnr>
                     </xs:appinfo>
                   </xs:annotation>
                 </xs:enumeration>
                 <xs:enumeration value="AroundMeanField">
                   <xs:annotation>
                     <xs:appinfo>
                       <oldnr>2</oldnr>
                     </xs:appinfo>
                   </xs:annotation>
                 </xs:enumeration>
                 <xs:enumeration value="FFL-AMF-interpolation">
                   <xs:annotation>
                     <xs:appinfo>
                       <oldnr>3</oldnr>
                     </xs:appinfo>
                   </xs:annotation>
                 </xs:enumeration>
               </xs:restriction>
             </xs:simpleType>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="evalmin" type="fortrandouble" default="-4.5d0">
             <xs:annotation>
               <xs:documentation>Any valence states with eigenvalues below evalmin are not occupied and a warning message is issued.</xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="lmaxvr" type="xs:integer" default="6">
             <xs:annotation>
               <xs:documentation>angular momentum cut-off for the muffin-tin density and potential.</xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="fracinr" type="fortrandouble" default="0.25d0">
             <xs:annotation>
               <xs:documentation>fraction of the muffin-tin radius up to which lmaxinr is used as the angular momentum cut-off.</xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="lmaxinr" type="xs:integer" default="2">
             <xs:annotation>
               <xs:documentation>
                 Close to the nucleus, the density and potential is almost spherical and therefore the spherical harmonic expansion can be truncated a low
                 angular momentum. See also fracinr.
               </xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="lmaxmat" type="xs:integer" default="5">
             <xs:annotation>
               <xs:documentation>angular momentum cut-off for the outer-most loop in the hamiltonian and overlap matrix setup.</xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="vkloff" type="vect3d" default="0.0d0 0.0d0 0.0d0">
             <xs:annotation>
               <xs:documentation>the k-point offset vector in lattice coordinates.</xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="npsden" type="xs:integer" default="9">
             <xs:annotation>
               <xs:documentation>order of polynomial for pseudocharge density.</xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="cfdamp" type="fortrandouble" default="0.0d0"><!-- sag -->
             <xs:annotation>
               <xs:documentation>damping coefficient for characteristic function.</xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="nosource" type="xs:boolean" default="false"><!-- sag -->
             <xs:annotation>
               <xs:documentation>
                 when set to true, source fields are projected out of the exchange-correlation magnetic field. experimental feature.
               </xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="tevecsv" type="xs:boolean" default="false"><!-- sag -->
             <xs:annotation>
               <xs:documentation>tevecsv is true if second-variational eigenvectors are calculated</xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="nwrite" type="xs:integer" default="0"><!-- sag -->
             <xs:annotation>
               <xs:documentation>
                 Normally, the density and potentials are written to the file STATE.OUT only after com- pletion of the self-consistent loop. By setting nwrite
                 to a positive integer the file will be written during the loop every nwrite iterations.
               </xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="ptnucl" type="xs:boolean" default="true"><!-- sag -->
             <xs:annotation>
               <xs:documentation>
                 ptnucl is true if the nuclei are to be treated as point charges, if .false. ! the nuclei have a finite spherical distribution.
               </xs:documentation>
             </xs:annotation>
           </xs:attribute>
         </xs:complexType>
       </xs:element>
       <xs:element ex:status="essential" ex:unit="" name="structureoptimization" minOccurs="0">
         <xs:annotation>
           <xs:documentation>The structure optimization element triggers if present a geometry relaxation.</xs:documentation>
         </xs:annotation>
         <xs:complexType>
           <xs:annotation>
<<<<<<< HEAD:xml/excitinginput.xsd
            <xs:documentation>atomic position in lattice coordinates for atom</xs:documentation>
            <xs:appinfo>
             <oldname>noname</oldname>
            </xs:appinfo>
=======
             <xs:documentation>
               tructural optimisation run starting from the atomic densities, with atomic positions written to
               <pre>GEOMETRY.OUT</pre>
               .
             </xs:documentation>
>>>>>>> 0e4cdde6f89434702cbce7aee38bfe95334ba215:xml/excitinginput.xsd
           </xs:annotation>
           <xs:attribute ex:status="essential" ex:unit="" name="epsforce" type="fortrandouble" default="5.0d-5">
             <!-- sag: 0.9.224: epsforce=5.d-4 -->
             <xs:annotation>
               <xs:documentation>convergence tolerance for the forces during a structural optimisation run.</xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="tau0atm" type="fortrandouble" default="0.2d0">
             <xs:annotation>
               <xs:documentation>
                 the step size to be used for structural optimisation
                 <p />
                 The position of atom
                 <inlinemath>\alpha</inlinemath>
                 is updated on step
                 <inlinemath>m</inlinemath>
                 of a structural optimisation run using
                 <displaymath>{\bf r}_{\alpha}^{m+1}={\bf r}_{\alpha}^m+\tau_{\alpha}^m \left({ \bf F}_{\alpha}^m+{ \bf F}_{\alpha}^{m-1}\right),</displaymath>
                 where
                 <inlinemath>\tau_{\alpha}</inlinemath>
                 is set to
                 <pre>tau0atm</pre>
                 for
                 <inlinemath>m=0</inlinemath>
                 , and incremented by the same amount if the atom is moving in the same direction between steps. If the direction changes then
                 <inlinemath>\tau_{\alpha}</inlinemath>
                 is reset to
                 <pre>tau0atm</pre>
                 .
               </xs:documentation>
             </xs:annotation>
<<<<<<< HEAD:xml/excitinginput.xsd
            </xs:attribute>
            <xs:attribute name="mommtfix" type="vect3d" use="optional" />
           </xs:complexType>
          </xs:element>
          <xs:element name="LDAplusU" minOccurs="0">
           <xs:annotation>
            <xs:documentation>If present defines ldaplusU parameters for species</xs:documentation>
           </xs:annotation>
           <xs:complexType>
            <xs:attribute name="l" type="xs:integer" default="-1">
             <xs:annotation>
              <xs:appinfo>
               <oldname>notaname</oldname>
              </xs:appinfo>
             </xs:annotation>
            </xs:attribute>
            <xs:attribute name="U" type="fortrandouble" default="0.0d0">
             <xs:annotation>
              <xs:appinfo>
               <oldname>notaname</oldname>
              </xs:appinfo>
             </xs:annotation>
            </xs:attribute>
            <xs:attribute name="J" type="fortrandouble" default="0.0d0">
             <xs:annotation>
              <xs:appinfo>
               <oldname>notaname</oldname>
              </xs:appinfo>
             </xs:annotation>
            </xs:attribute>
           </xs:complexType>
          </xs:element>
         </xs:sequence>
         <xs:attribute name="speciesfile" type="xs:anyURI" use="required">
          <xs:annotation>
           <xs:documentation>
            defines the file from which the species definition is read. It is looked up in the species directory specified by the
            species path.
           </xs:documentation>
           <xs:appinfo>
            <oldname>spfname</oldname>
           </xs:appinfo>
          </xs:annotation>
         </xs:attribute>
         <xs:attribute name="chemicalSymbol" type="xs:string" use="optional" default="">
          <xs:annotation>
           <xs:documentation>can be given to simplify visualisation and converters. is ignored by exciting</xs:documentation>
           <xs:appinfo>
            <oldname>spsymb</oldname>
           </xs:appinfo>
          </xs:annotation>
         </xs:attribute>
         <xs:attribute name="atomicNumber" type="xs:integer" use="optional">
          <xs:annotation>
           <xs:documentation>
            Is an optional attribute can be given to simplify visualisation and converters. It is not used by exciting
           </xs:documentation>
          </xs:annotation>
         </xs:attribute>
         <xs:attribute name="rmt" type="fortrandouble" default="-1.0d0" use="optional">
          <xs:annotation>
           <xs:appinfo>
            <oldname>noreplace></oldname>
           </xs:appinfo>
           <xs:documentation>
            muffin tin radius this optional parameter allows to override speciesfile or automatic tetemination
           </xs:documentation>
          </xs:annotation>
         </xs:attribute>
         <xs:attribute name="href" type="xs:anyURI" default=""></xs:attribute>
        </xs:complexType>
=======
           </xs:attribute>
           <xs:attribute ex:status="essential" ex:unit="" name="resume" type="xs:boolean" default="false">
             <xs:annotation>
               <xs:documentation>
                 Resumption of structural optimisation run using density in
                 <pre>STATE.OUT</pre>
                 but with positions from
                 <pre>exciting.in</pre>
                 .
               </xs:documentation>
             </xs:annotation>
           </xs:attribute>
         </xs:complexType>
>>>>>>> 0e4cdde6f89434702cbce7aee38bfe95334ba215:xml/excitinginput.xsd
       </xs:element>
       <xs:element ex:status="essential" ex:unit="" name="properties" maxOccurs="1" minOccurs="0">
         <xs:annotation>
           <xs:documentation>
             Properties listed in this element can be calculated from the groundstate. It works also from a saved state from a previous run.
           </xs:documentation>
         </xs:annotation>
         <xs:complexType>
           <xs:all>
             <xs:element ex:status="essential" ex:unit="" name="bandstructure" maxOccurs="1" minOccurs="0">
               <xs:annotation>
                 <xs:documentation>If present a banstructure is calculated.</xs:documentation>
               </xs:annotation>
               <xs:complexType>
                 <xs:annotation>
                   <xs:documentation>Create a bandstructure. Must contain plot1d element for bandstructure path.</xs:documentation>
                 </xs:annotation>
                 <xs:all>
                   <xs:element ex:status="essential" ex:unit="" ref="plot1d" />
                 </xs:all>
                 <xs:attribute ex:status="essential" ex:unit="" ref="scissor" default="0.0d0">
                   <xs:annotation>
                     <xs:documentation>value to shift bandgap.</xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="character" type="xs:boolean" default="false">
                   <xs:annotation>
                     <xs:documentation>Band structure plot which includes angular momentum characters for every atom.</xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
               </xs:complexType>
             </xs:element>
             <xs:element ex:status="expert" ex:unit="" name="STM" minOccurs="0" maxOccurs="1">
               <xs:complexType>
                 <xs:all>
                   <xs:element ex:status="expert" ex:unit="" ref="plot2d" minOccurs="0" />
                 </xs:all>
               </xs:complexType>
             </xs:element>
             <xs:element ex:status="expert" ex:unit="" name="wfplot" maxOccurs="1" minOccurs="0">
               <xs:annotation>
                 <xs:documentation>wavefunction plot.</xs:documentation>
               </xs:annotation>
               <xs:complexType>
                 <xs:annotation>
                   <xs:documentation>Plot the wave function at a set of kpoints</xs:documentation>
                 </xs:annotation>
                 <xs:all>
                   <xs:element ex:status="expert" ex:unit="" ref="kstlist" minOccurs="0">
                     <xs:annotation>
                       <xs:documentation>List of kpoints of which the wave functions should be plotted.</xs:documentation>
                     </xs:annotation>
                   </xs:element>
                   <xs:element ex:status="expert" ex:unit="" ref="plot1d" minOccurs="0" />
                   <xs:element ex:status="expert" ex:unit="" ref="plot2d" minOccurs="0" />
                   <xs:element ex:status="expert" ex:unit="" ref="plot3d" minOccurs="0" />
                 </xs:all>
               </xs:complexType>
             </xs:element>
             <xs:element ex:status="essential" ex:unit="" name="dos" maxOccurs="1" minOccurs="0">
               <xs:annotation>
                 <xs:documentation>
                   If present a DOS calculation is started.
                   <p />
                   DOS and optics plots require integrals of the kind
                   <displaymath>g(\omega_i)=\frac{\Omega}{(2\pi)^3}\int_{\rm BZ} f({ \bf k}) \delta(\omega_i-e({\bf k}))d{ \bf k}.</displaymath>
                   These are calculated by first interpolating the functions
                   <inlinemath>e({ \bf k})</inlinemath>
                   and
                   <inlinemath>f({ \bf k})</inlinemath>
                   with the trilinear method on a much finer mesh whose size is determined by
                   <pre>ngrdos</pre>
                   . Then the
                   <inlinemath>\omega</inlinemath>
                   -dependent histogram of the integrand is accumulated over the fine mesh. If the output function is noisy then either
                   <pre>ngrdos</pre>
                   should be increased or
                   <pre>nwdos</pre>
                   decreased. Alternatively, the output function can be artificially smoothed up to a level given by
                   <pre>nsmdos</pre>
                   . This is the number of successive 3-point averages to be applied to the function
                   <inlinemath>g</inlinemath>
                   .
                 </xs:documentation>
               </xs:annotation>
               <xs:complexType>
                 <xs:attribute ex:status="expert" ex:unit="" name="sqados" default="0.0d0 0.0d0 1.0d0" type="vect3d">
                   <xs:annotation>
                     <xs:documentation>
                       spin-quantisation axis in Cartesian coordinates used when plotting the spin-resolved DOS (z-axis by default)
                     </xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="lmirep" type="xs:boolean" default="false">
                   <xs:annotation>
                     <xs:documentation>
                       When lmirep is set to true, the spherical harmonic basis is transformed into one in which the site symmetries are block diagonal. Band
                       characters determined from the density ma- trix expressed in this basis correspond to irreducible representations, and allow the partial
                       DOS to be resolved into physically relevant contributions, for example eg and t2g .
                     </xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="essential" ex:unit="" name="nwdos" type="xs:integer" default="500">
                   <xs:annotation>
                     <xs:documentation>number of frequency/energy points in the DOS</xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="essential" ex:unit="" name="ngrdos" type="xs:integer" default="100">
                   <xs:annotation>
                     <xs:documentation>effective k-point mesh size to be used for Brillouin zone integration.</xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="essential" ex:unit="" ref="scissor" />
                 <xs:attribute ex:status="expert" ex:unit="" name="nsmdos" type="xs:integer" default="0">
                   <xs:annotation>
                     <xs:documentation>level of smoothing applied to DOS/optics output integer 0</xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="winddos" default="0.0d0 0.5d0" type="vect2d">
                   <xs:annotation>
                     <xs:documentation>frequency/energy window for the DOS or optics plot</xs:documentation>
                     <xs:appinfo>
                       <oldname>wdos</oldname>
                     </xs:appinfo>
                   </xs:annotation>
                 </xs:attribute>
               </xs:complexType>
             </xs:element>
             <xs:element ex:status="expert" ex:unit="" name="LSJ" maxOccurs="1" minOccurs="0">
               <xs:annotation>
                 <xs:documentation>Output L, S and J expectation values.</xs:documentation>
               </xs:annotation>
               <xs:complexType>
                 <xs:all>
                   <xs:element ex:status="expert" ex:unit="" ref="kstlist">
                     <xs:annotation>
                       <xs:documentation>
                         <inlinemath>i</inlinemath>
                         th
                         <inlinemath>{ \bf k}</inlinemath>
                         -point and state pair
                       </xs:documentation>
                     </xs:annotation>
                   </xs:element>
                 </xs:all>
               </xs:complexType>
             </xs:element>
             <xs:element ex:status="expert" ex:unit="" name="masstensor" maxOccurs="1" minOccurs="0">
               <xs:annotation>
                 <xs:documentation>
                   Compute the effective mass tensor at the
                   <bf>k</bf>
                   -point given by vklem.
                 </xs:documentation>
               </xs:annotation>
               <xs:complexType>
                 <xs:attribute ex:status="expert" ex:unit="" name="deltaem" type="fortrandouble" default="0.025d0">
                   <xs:annotation>
                     <xs:documentation>
                       The size of the k-vector displacement used when calculating numerical derivatives for the effective mass tensor.
                     </xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="ndspem" type="xs:integer" default="1">
                   <xs:annotation>
                     <xs:documentation>
                       the number of k-vector displacements in each direction around vklem when computing the numerical derivatives for the effective mass
                       tensor.
                     </xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="vklem" type="vect3d" default="0.0d0 0.0d0 0.0d0">
                   <xs:annotation>
                     <xs:documentation>the k-point in lattice coordinates at which to compute the effective mass tensors.</xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
               </xs:complexType>
             </xs:element>
             <xs:element ex:status="essential" ex:unit="" name="chargedensityplot" maxOccurs="1" minOccurs="0">
               <xs:annotation>
                 <xs:documentation>Plot the charge density</xs:documentation>
               </xs:annotation>
               <xs:complexType>
                 <xs:all>
                   <xs:element ex:status="essential" ex:unit="" ref="plot1d" minOccurs="0" />
                   <xs:element ex:status="essential" ex:unit="" ref="plot2d" minOccurs="0" />
                   <xs:element ex:status="essential" ex:unit="" ref="plot3d" minOccurs="0" />
                 </xs:all>
               </xs:complexType>
             </xs:element>
             <xs:element ex:status="expert" ex:unit="" name="exccplot" maxOccurs="1" minOccurs="0">
               <xs:annotation>
                 <xs:documentation>exchange-correlation and Coulomb potential plots.</xs:documentation>
               </xs:annotation>
               <xs:complexType>
                 <xs:all>
                   <xs:element ex:status="expert" ex:unit="" ref="plot1d" minOccurs="0" />
                   <xs:element ex:status="expert" ex:unit="" ref="plot2d" minOccurs="0" />
                   <xs:element ex:status="expert" ex:unit="" ref="plot3d" minOccurs="0" />
                 </xs:all>
               </xs:complexType>
             </xs:element>
             <xs:element ex:status="expert" ex:unit="" name="elfplot" maxOccurs="1" minOccurs="0">
               <xs:annotation>
                 <xs:documentation>electron localisation function (ELF)</xs:documentation>
               </xs:annotation>
               <xs:complexType>
                 <xs:all>
                   <xs:element ex:status="expert" ex:unit="" ref="plot1d" minOccurs="0" />
                   <xs:element ex:status="expert" ex:unit="" ref="plot2d" minOccurs="0" />
                   <xs:element ex:status="expert" ex:unit="" ref="plot3d" minOccurs="0" />
                 </xs:all>
               </xs:complexType>
             </xs:element>
             <xs:element ex:status="expert" ex:unit="" name="mvecfield" maxOccurs="1" minOccurs="0">
               <xs:annotation>
                 <xs:documentation>plot of magnetisation vector field</xs:documentation>
               </xs:annotation>
               <xs:complexType>
                 <xs:all>
                   <xs:element ex:status="expert" ex:unit="" ref="plot2d" minOccurs="0" />
                   <xs:element ex:status="expert" ex:unit="" ref="plot3d" minOccurs="0" />
                 </xs:all>
               </xs:complexType>
             </xs:element>
             <xs:element ex:status="expert" ex:unit="" name="xcmvecfield" maxOccurs="1" minOccurs="0">
               <xs:annotation>
                 <xs:documentation>plot of exchange-correlation magnetic vector field</xs:documentation>
               </xs:annotation>
               <xs:complexType>
                 <xs:all>
                   <xs:element ex:status="expert" ex:unit="" ref="plot2d" minOccurs="0" />
                   <xs:element ex:status="expert" ex:unit="" ref="plot3d" minOccurs="0" />
                 </xs:all>
               </xs:complexType>
             </xs:element>
             <xs:element ex:status="expert" ex:unit="" name="electricfield" minOccurs="0" maxOccurs="1">
               <xs:annotation>
                 <xs:documentation>writes the elsectric field to file.</xs:documentation>
               </xs:annotation>
               <xs:complexType>
                 <xs:all>
                   <xs:element ex:status="expert" ex:unit="" ref="plot2d" minOccurs="0" />
                   <xs:element ex:status="expert" ex:unit="" ref="plot3d" minOccurs="0" />
                 </xs:all>
               </xs:complexType>
             </xs:element>
             <xs:element ex:status="expert" ex:unit="" name="gradmvecfield" maxOccurs="1" minOccurs="0">
               <xs:annotation>
                 <xs:documentation>plot of he gradient of the magnetic vector field.</xs:documentation>
               </xs:annotation>
               <xs:complexType>
                 <xs:all>
                   <xs:element ex:status="expert" ex:unit="" ref="plot1d" minOccurs="0" />
                   <xs:element ex:status="expert" ex:unit="" ref="plot2d" minOccurs="0" />
                   <xs:element ex:status="expert" ex:unit="" ref="plot3d" minOccurs="0" />
                 </xs:all>
               </xs:complexType>
             </xs:element>
             <xs:element ex:status="essential" ex:unit="" name="fermisurfaceplot" maxOccurs="1" minOccurs="0">
               <xs:annotation>
                 <xs:documentation>writes fermisurface data to file.</xs:documentation>
               </xs:annotation>
               <xs:complexType>
                 <xs:attribute ex:status="expert" ex:unit="" name="nstfsp" type="xs:integer" default="6">
                   <xs:annotation>
                     <xs:documentation>number of states to be included in the Fermi surface plot file</xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="separate" type="xs:boolean" />
               </xs:complexType>
             </xs:element>
             <xs:element ex:status="expert" ex:unit="" name="EFG" maxOccurs="1" minOccurs="0">
               <xs:annotation>
                 <xs:documentation>Calculation of electric field gradient (EFG), contact charge</xs:documentation>
               </xs:annotation>
               <xs:complexType />
             </xs:element>
             <xs:element ex:status="expert" ex:unit="" name="momentummatrix" maxOccurs="1" minOccurs="0">
               <xs:complexType />
             </xs:element>
             <xs:element ex:status="expert" ex:unit="" name="linresponsetensor" maxOccurs="1" minOccurs="0">
               <xs:annotation>
                 <xs:documentation>Linear optical response tensor.</xs:documentation>
               </xs:annotation>
               <xs:complexType>
                 <xs:sequence>
                   <xs:element ex:status="expert" ex:unit="" name="optcomp" type="integertriple" default="1 1 1" maxOccurs="27">
                     <xs:annotation>
                       <xs:documentation>the components of the first- or second-order optical tensor to be calculated</xs:documentation>
                     </xs:annotation>
                   </xs:element>
                 </xs:sequence>
                 <xs:attribute ex:status="expert" ex:unit="" ref="scissor" />
               </xs:complexType>
             </xs:element>
             <xs:element ex:status="expert" ex:unit="" name="mossbauer" minOccurs="0">
               <xs:complexType />
             </xs:element>
             <xs:element ex:status="expert" ex:unit="" name="dielectric" minOccurs="0">
               <xs:annotation>
                 <xs:appinfo>
                   <oldname>noname</oldname>
                 </xs:appinfo>
               </xs:annotation>
               <xs:complexType />
             </xs:element>
             <xs:element ex:status="expert" ex:unit="" name="expiqr" minOccurs="0">
               <xs:complexType />
             </xs:element>
             <xs:element ex:status="expert" ex:unit="" name="elnes" minOccurs="0">
               <xs:complexType>
                 <xs:attribute ex:status="expert" ex:unit="" name="vecql" type="vect3d">
                   <xs:annotation>
                     <xs:documentation>q-vector in lattice coordinates for calculating ELNES</xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
               </xs:complexType>
             </xs:element>
             <xs:element ex:status="expert" ex:unit="" name="eliashberg" minOccurs="0">
               <xs:complexType>
                 <xs:attribute ex:status="expert" ex:unit="" name="mustar" type="fortrandouble" default="0.15d0">
                   <xs:annotation>
                     <xs:documentation>Coulomb pseudopotential, μ*, used in the McMillan-Allen-Dynes equation</xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
               </xs:complexType>
             </xs:element>
           </xs:all>
         </xs:complexType>
       </xs:element>
       <xs:element ex:status="expert" ex:unit="" name="phonons" maxOccurs="1" minOccurs="0">
         <xs:annotation>
           <xs:documentation>Phonon frequencies and eigen vectors for an arbitrary q-point.</xs:documentation>
         </xs:annotation>
         <xs:complexType>
           <xs:annotation>
             <xs:documentation>The phonon element must contain one or more q-point elements</xs:documentation>
           </xs:annotation>
           <xs:all>
             <xs:element ex:status="expert" ex:unit="" ref="qpointset" minOccurs="1" maxOccurs="1"></xs:element>
             <xs:element ex:status="expert" ex:unit="" name="phonondos" maxOccurs="1" minOccurs="0">
               <xs:annotation>
                 <xs:documentation>
                   Phonon density of states.
                   <p>no special blocks required</p>
                 </xs:documentation>
               </xs:annotation>
               <xs:complexType />
             </xs:element>
             <xs:element ex:status="expert" ex:unit="" name="phonondispplot" maxOccurs="1" minOccurs="0">
               <xs:annotation>
                 <xs:documentation>Phonon dispersion plot.</xs:documentation>
               </xs:annotation>
               <xs:complexType>
                 <xs:sequence>
                   <xs:element ex:status="expert" ex:unit="" ref="plot1d" />
                 </xs:sequence>
               </xs:complexType>
             </xs:element>
           </xs:all>
           <!--
             sag: phwrite-block: allocate(vqlwrt(3,nphwrt)); another q-point
             list
           -->
           <xs:attribute ex:status="expert" ex:unit="" ref="do" default="fromscratch">
             <xs:annotation>
               <xs:appinfo>
                 <oldname>nonreplace</oldname>
               </xs:appinfo>
               <xs:documentation>Decides if the phonon calculation is skipped or recalculated or continued from file.</xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="ngridq" type="integertriple" use="required">
             <xs:annotation>
               <xs:appinfo>
                 <oldname>ngridq</oldname>
               </xs:appinfo>
               <xs:documentation>Number of q grid points along the basis vector directions.</xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="reduceq" type="xs:boolean" default="true"><!-- sag -->
             <xs:annotation>
               <xs:documentation>
                 <pre>reduceq</pre>
                 set to
                 <pre>true</pre>
                 if the
                 <inlinemath>
                   <bf>q</bf>
                 </inlinemath>
                 -point set is to be reduced with the crystal symmetries.
               </xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="deltaph" type="fortrandouble" default="0.03d0"><!-- sag -->
             <xs:annotation>
               <xs:documentation>
                 Phonon calculations are performed by constructing a supercell corresponding to a particular
                 <inlinemath>{\bf q}</inlinemath>
                 -vector and making a small periodic displacement of the atoms. The magnitude of this displacement is given by deltaph. This should not be made
                 too large, as anharmonic terms could then become significant, neither should it be too small as this can introduce numerical error.
               </xs:documentation>
             </xs:annotation>
           </xs:attribute>
         </xs:complexType>
       </xs:element>
       <xs:element ex:status="expert" ex:unit="" name="xs" minOccurs="0" maxOccurs="1">
         <xs:annotation>
           <xs:documentation>
             If this element is present with valid configuration, the macroscopic dielectric function and related spectroscopic quantities in the linear regime
             are calculated through either time-dependent DFT (TDDFT) or the Bethe-Salpeter equation (BSE).
           </xs:documentation>
         </xs:annotation>
         <xs:complexType>
           <xs:all>
             <xs:element ex:status="expert" ex:unit="" name="tddft" minOccurs="0">
               <xs:complexType>
                 <xs:all>
                   <xs:element ex:status="expert" ex:unit="" name="dftrans" maxOccurs="1" minOccurs="0">
                     <xs:annotation>
                       <xs:appinfo>
                         <oldname>dftrans,ndftrans</oldname>
                       </xs:appinfo>
                     </xs:annotation>
                     <xs:complexType>
                       <xs:sequence>
                         <xs:element ex:status="expert" ex:unit="" name="trans" type="integertriple" maxOccurs="unbounded" minOccurs="1" />
                       </xs:sequence>
                     </xs:complexType>
                   </xs:element>
                 </xs:all>
                 <xs:attribute ex:status="expert" ex:unit="" name="intraband" type="xs:boolean" default="false">
                   <xs:annotation>
                     <xs:documentation>intraband is true if the intraband term is to be added to the optical matrix (q=0)</xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="torddf" type="xs:boolean" default="false" />
                 <xs:attribute ex:status="expert" ex:unit="" name="tordfxc" type="xs:boolean" default="false" />
                 <xs:attribute ex:status="expert" ex:unit="" name="aresdf" type="xs:boolean" default="true">
                   <xs:annotation>
                     <xs:documentation>true if to consider the anti-resonant part for the dielectric function</xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="aresfxc" type="xs:boolean" default="true">
                   <xs:annotation>
                     <xs:documentation>true if to consider the anti-resonant part for the BSE-derived xc-kernels</xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="fxcbsesplit" type="fortrandouble" default="1.0d-5">
                   <xs:annotation>
                     <xs:documentation>split parameter for degeneracy in energy differences of BSE-derived kernel</xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="acont" type="xs:boolean" default="false">
                   <xs:annotation>
                     <xs:documentation>true if analytic continuation from the imaginary axis to the real axis is to be performed</xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="nwacont" type="xs:integer" default="0">
                   <xs:annotation>
                     <xs:documentation>number of energy intervals (on imaginary axis) for analytic continuation</xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="lindhard" type="xs:boolean" default="false">
                   <xs:annotation>
                     <xs:documentation>true if Lindhard like function is calculated (trivial matrix elements)</xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="epsdfde" type="fortrandouble" default="1.0d-8">
                   <xs:annotation>
                     <xs:documentation>
                       smallest energy difference for which the square of its inverse will be considered in the Kohn-Sham response function
                     </xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="kerndiag" type="xs:boolean" default="false" />
                 <xs:attribute ex:status="expert" ex:unit="" name="lmaxalda" type="xs:integer" default="3">
                   <xs:annotation>
                     <xs:documentation>angular momentum cutoff for Rayleigh expansion of exponential factor for ALDA-kernel</xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="alphalrc" type="fortrandouble" default="0.0d0">
                   <xs:annotation>
                     <xs:documentation>alpha-parameter for the static long range contribution (LRC) model xc kernel</xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="alphalrcdyn" type="fortrandouble" default="0.0d0">
                   <xs:annotation>
                     <xs:documentation>alpha-parameter for the dynamical long range contribution (LRC) model xc kernel</xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="betalrcdyn" type="fortrandouble" fixed="0.0d0">
                   <xs:annotation>
                     <xs:documentation>beta-parameter for the dynamical long range contribution (LRC) model xc kernel</xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="mdfqtype" type="xs:integer" default="0">
                   <xs:annotation>
                     <xs:documentation>
                       treatment of macroscopic dielectric function for
                       <inlinemath>{\bf Q}</inlinemath>
                       -point outside of Brillouin zone. A value of 0 uses the full
                       <inlinemath>{\bf Q}</inlinemath>
                       and and the
                       <inlinemath>({\bf 0},{\bf 0})</inlinemath>
                       component of the microscopic dielectric matrix is used. A value of 1 invokes a decomposition
                       <inlinemath>{\bf Q}={\bf q}+{\bf G}_{\bf q}</inlinemath>
                       and and the
                       <inlinemath>({\bf Q}_{\bf q},{\bf Q}_{\bf q})</inlinemath>
                       component of the microscopic dielectric matrix is used.
                     </xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="fxctype" default="RPA">
                   <xs:annotation>
                     <xs:documentation>defines which xc kernel is to be used</xs:documentation>
                   </xs:annotation>
                   <xs:simpleType>
                     <xs:restriction base="xs:string">
                       <xs:enumeration value="RPA">
                         <xs:annotation>
                           <xs:appinfo>
                             <oldnr>0</oldnr>
                           </xs:appinfo>
                         </xs:annotation>
                       </xs:enumeration>
                       <xs:enumeration value="LRCstatic_NLF">
                         <xs:annotation>
                           <xs:appinfo>
                             <oldnr>1</oldnr>
                           </xs:appinfo>
                         </xs:annotation>
                       </xs:enumeration>
                       <xs:enumeration value="LRCstatic">
                         <xs:annotation>
                           <xs:appinfo>
                             <oldnr>2</oldnr>
                           </xs:appinfo>
                         </xs:annotation>
                       </xs:enumeration>
                       <xs:enumeration value="LRCdyn_NLF">
                         <xs:annotation>
                           <xs:appinfo>
                             <oldnr>3</oldnr>
                           </xs:appinfo>
                         </xs:annotation>
                       </xs:enumeration>
                       <xs:enumeration value="LRCdyn">
                         <xs:annotation>
                           <xs:appinfo>
                             <oldnr>4</oldnr>
                           </xs:appinfo>
                         </xs:annotation>
                       </xs:enumeration>
                       <xs:enumeration value="ALDA">
                         <xs:annotation>
                           <xs:appinfo>
                             <oldnr>5</oldnr>
                           </xs:appinfo>
                         </xs:annotation>
                       </xs:enumeration>
                       <xs:enumeration value="MB1_NLF">
                         <xs:annotation>
                           <xs:appinfo>
                             <oldnr>7</oldnr>
                           </xs:appinfo>
                         </xs:annotation>
                       </xs:enumeration>
                       <xs:enumeration value="MB1">
                         <xs:annotation>
                           <xs:appinfo>
                             <oldnr>8</oldnr>
                           </xs:appinfo>
                         </xs:annotation>
                       </xs:enumeration>
                     </xs:restriction>
                   </xs:simpleType>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="resumefromkernel" type="xs:boolean" default="false">
                   <xs:annotation>
                     <xs:documentation>true if the TDDFT calculation is to be resumed starting from a new xc kernel.</xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
               </xs:complexType>
             </xs:element>
             <xs:element ex:status="expert" ex:unit="" name="screening" minOccurs="0" maxOccurs="1">
               <xs:complexType>
                 <xs:attribute ex:status="expert" ex:unit="" name="run" default="fromscratch">
                   <xs:annotation>
                     <xs:appinfo>
                       <oldname>nonreplace</oldname>
                     </xs:appinfo>
                   </xs:annotation>
                   <xs:simpleType>
                     <xs:restriction base="xs:string">
                       <xs:enumeration value="fromscratch" />
                       <xs:enumeration value="skip" />
                     </xs:restriction>
                   </xs:simpleType>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="nosym" type="xs:boolean" default="false">
                   <xs:annotation>
                     <xs:appinfo>
                       <oldname>nosymscr</oldname>
                     </xs:appinfo>
                     <xs:documentation>nosym is true if no symmetry information should be used</xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="ngridk" type="integertriple" default="0 0 0">
                   <xs:annotation>
                     <xs:appinfo>
                       <oldname>ngridkscr</oldname>
                     </xs:appinfo>
                     <xs:documentation>k-point grid sizes</xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="reducek" type="xs:boolean" default="false">
                   <xs:annotation>
                     <xs:appinfo>
                       <oldname>reducekscr</oldname>
                     </xs:appinfo>
                     <xs:documentation>reducek is true if k-points are to be reduced (with crystal symmetries)</xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="vkloff" type="vect3d" default="-1.0d0 -1.0d0 -1.0d0">
                   <xs:annotation>
                     <xs:appinfo>
                       <oldname>vkloffscr</oldname>
                     </xs:appinfo>
                     <xs:documentation>k-point offset</xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="rgkmax" type="fortrandouble" default="0.0d0">
                   <xs:annotation>
                     <xs:appinfo>
                       <oldname>rgkmaxscr</oldname>
                     </xs:appinfo>
                     <xs:documentation>smallest muffin-tin radius times gkmax</xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="nempty" type="xs:integer" default="0">
                   <xs:annotation>
                     <xs:appinfo>
                       <oldname>nemptyscr</oldname>
                     </xs:appinfo>
                     <xs:documentation>number of empty states</xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="screentype" default="full">
                   <xs:annotation>
                     <xs:documentation>defines which screening is used</xs:documentation>
                   </xs:annotation>
                   <xs:simpleType>
                     <xs:restriction base="xs:string">
                       <xs:enumeration value="full" />
                       <xs:enumeration value="diag" />
                       <xs:enumeration value="noinvdiag" />
                       <xs:enumeration value="longrange" />
                     </xs:restriction>
                   </xs:simpleType>
                 </xs:attribute>
               </xs:complexType>
             </xs:element>
             <xs:element ex:status="expert" ex:unit="" name="BSE" minOccurs="0" maxOccurs="1">
               <xs:complexType>
                 <xs:attribute ex:status="expert" ex:unit="" name="nosym" type="xs:boolean" default="false">
                   <xs:annotation>
                     <xs:appinfo>
                       <oldname>nosymbse</oldname>
                     </xs:appinfo>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="reducek" type="xs:boolean" default="false">
                   <xs:annotation>
                     <xs:appinfo>
                       <oldname>reducekbse</oldname>
                     </xs:appinfo>
                     <xs:documentation>reducek is true if k-points are to be reduced (with crystal symmetries)</xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="vkloff" type="vect3d" default="-1.0d0 -1.0d0 -1.0d0">
                   <xs:annotation>
                     <xs:appinfo>
                       <oldname>vkloffbse</oldname>
                     </xs:appinfo>
                     <xs:documentation>k-point offset</xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="rgkmax" type="fortrandouble" default="0.0d0">
                   <xs:annotation>
                     <xs:appinfo>
                       <oldname>rgkmaxbse</oldname>
                     </xs:appinfo>
                     <xs:documentation>smallest muffin-tin radius times gkmax</xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="scrherm" type="xs:integer" default="0" />
                 <xs:attribute ex:status="expert" ex:unit="" name="fbzq" type="xs:boolean" default="false" />
                 <xs:attribute ex:status="expert" ex:unit="" name="sciavtype" default="spherical">
                   <xs:annotation>
                     <xs:documentation>
                       defines how the screened Coulomb interaction matrix is to be averaged (important for the singular terms)
                     </xs:documentation>
                   </xs:annotation>
                   <xs:simpleType>
                     <xs:restriction base="xs:string">
                       <xs:enumeration value="spherical" />
                       <xs:enumeration value="screendiag" />
                       <xs:enumeration value="invscreendiag" />
                     </xs:restriction>
                   </xs:simpleType>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="sciavbd" type="xs:boolean" default="false">
                   <xs:annotation>
                     <xs:documentation>true if the body of the screened Coulomb interaction is to be averaged (q=0)</xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="sciavqhd" type="xs:boolean" default="false">
                   <xs:annotation>
                     <xs:documentation>true if the head of the screened Coulomb interaction is to be averaged (q!=0)</xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="sciavqwg" type="xs:boolean" default="false">
                   <xs:annotation>
                     <xs:documentation>true if the wings of the screened Coulomb interaction is to be averaged (q!=0)</xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="sciavqbd" type="xs:boolean" default="false">
                   <xs:annotation>
                     <xs:documentation>true if the body of the screened Coulomb interaction is to be averaged (q!=0)</xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="bsedirsing" type="xs:boolean" default="false" />
                 <xs:attribute ex:status="expert" ex:unit="" name="lmaxdielt" type="xs:integer" default="14">
                   <xs:annotation>
                     <xs:documentation>angular momentum cutoff of the spherical harmonics expansion of the dielectric matrix</xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="nleblaik" type="xs:integer" default="5810">
                   <xs:annotation>
                     <xs:documentation>number of points used for the Lebedev-Laikov grids (must be selected according to Ref.LebLaik)</xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="nexcitmax" type="xs:integer" default="100" />
                 <xs:attribute ex:status="expert" ex:unit="" name="nstlbse" type="integerpair" default="0 0">
                   <xs:annotation>
                     <xs:appinfo>
                       <oldname>nbfbse,nafbse</oldname>
                     </xs:appinfo>
                     <xs:documentation>number of states below and above the Fermi level</xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="nstlce" type="integerpair" default="0 0">
                   <xs:annotation>
                     <xs:appinfo>
                       <oldname>nbfce,nafce</oldname>
                     </xs:appinfo>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="bsetype" default="singlet">
                   <xs:annotation>
                     <xs:documentation>defines which parts of the BSE Hamiltonian are to be considered</xs:documentation>
                   </xs:annotation>
                   <xs:simpleType>
                     <xs:restriction base="xs:string">
                       <xs:enumeration value="ip" />
                       <xs:enumeration value="rpa" />
                       <xs:enumeration value="singlet" />
                       <xs:enumeration value="triplet" />
                     </xs:restriction>
                   </xs:simpleType>
                 </xs:attribute>
               </xs:complexType>
             </xs:element>
             <xs:element ex:status="expert" ex:unit="" ref="qpointset" minOccurs="1" maxOccurs="1">
               <xs:annotation>
                 <xs:documentation>
                   finite momentum transfer
                   <inlinemath>{ \bf G}+{ \bf q}</inlinemath>
                   vector
                 </xs:documentation>
                 <xs:appinfo>
                   <oldname>vgqlmt,nqptmt</oldname>
                 </xs:appinfo>
               </xs:annotation>
             </xs:element>
             <xs:element ex:status="expert" ex:unit="" name="tetra" maxOccurs="1" minOccurs="0">
               <xs:complexType>
                 <xs:attribute ex:status="expert" ex:unit="" name="tetraocc" type="xs:boolean" default="false" />
                 <xs:attribute ex:status="expert" ex:unit="" name="tetradf" type="xs:boolean" default="false">
                   <xs:annotation>
                     <xs:documentation>true if tetrahedron method is used for the k-space integration in the Kohn-Sham response function</xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="kordexc" type="xs:boolean" default="false">
                   <xs:annotation>
                     <xs:appinfo>
                       <oldname>tetrakordexc</oldname>
                     </xs:appinfo>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="cw1k" type="xs:boolean" default="false">
                   <xs:annotation>
                     <xs:appinfo>
                       <oldname>tetracw1k</oldname>
                     </xs:appinfo>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="qweights" type="xs:integer" default="1">
                   <xs:annotation>
                     <xs:appinfo>
                       <oldname>tetraqweights</oldname>
                     </xs:appinfo>
                   </xs:annotation>
                 </xs:attribute>
               </xs:complexType>
             </xs:element>
             <xs:element ex:status="expert" ex:unit="" name="dosWindow" maxOccurs="1" minOccurs="1">
               <xs:complexType>
                 <xs:attribute ex:status="expert" ex:unit="" name="points" type="xs:integer" default="500">
                   <xs:annotation>
                     <xs:documentation>number of points to be sampled linearly inside the energy interval</xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="intv" type="vect2d" default="-0.5d0 0.5d0">
                   <xs:annotation>
                     <xs:documentation>energy interval for the density of states</xs:documentation>
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute ex:status="expert" ex:unit="" name="nsmdos" type="xs:integer" default="0">
                   <xs:annotation>
                     <xs:appinfo>
                       <oldname>noreplace</oldname>
                     </xs:appinfo>
                   </xs:annotation>
                 </xs:attribute>
               </xs:complexType>
             </xs:element>
             <xs:element ex:status="expert" ex:unit="" name="plan" minOccurs="0" maxOccurs="1">
               <xs:complexType>
                 <xs:sequence>
                   <xs:element ex:status="expert" ex:unit="" name="doonly" minOccurs="0" maxOccurs="unbounded">
                     <xs:complexType>
                       <xs:attribute ex:status="expert" ex:unit="" name="task" use="required">
                         <xs:annotation>
                           <xs:appinfo>
                             <oldname>noreplace</oldname>
                           </xs:appinfo>
                         </xs:annotation>
                         <xs:simpleType>
                           <xs:restriction base="xs:string"><!-- required workflow tasks below-->
                             <xs:enumeration value="xsgeneigvec">
                               <xs:annotation>
                                 <xs:appinfo>
                                   <oldnr>301</oldnr>
                                 </xs:appinfo>
                                 <xs:documentation>Calculate eigenvectors, -values and occupancies</xs:documentation>
                               </xs:annotation>
                             </xs:enumeration>
                             <xs:enumeration value="tetcalccw">
                               <xs:annotation>
                                 <xs:appinfo>
                                   <oldnr>310</oldnr>
                                 </xs:appinfo>
                                 <xs:documentation>Calculate frequency-dependent weights for convolutions using the linear tetrahedron method</xs:documentation>
                               </xs:annotation>
                             </xs:enumeration>
                             <xs:enumeration value="writepmatxs">
                               <xs:annotation>
                                 <xs:appinfo>
                                   <oldnr>320</oldnr>
                                 </xs:appinfo>
                                 <xs:documentation>Calculate momentum matrix elements</xs:documentation>
                               </xs:annotation>
                             </xs:enumeration>
                             <xs:enumeration value="writeemat">
                               <xs:annotation>
                                 <xs:appinfo>
                                   <oldnr>330</oldnr>
                                 </xs:appinfo>
                                 <xs:documentation>Calculate q-dependent matrix elements</xs:documentation>
                               </xs:annotation>
                             </xs:enumeration>
                             <xs:enumeration value="df">
                               <xs:annotation>
                                 <xs:appinfo>
                                   <oldnr>340</oldnr>
                                 </xs:appinfo>
                                 <xs:documentation>Calculate the Kohn-Sham response function checked in the code !</xs:documentation>
                               </xs:annotation>
                             </xs:enumeration>
                             <xs:enumeration value="df2">
                               <xs:annotation>
                                 <xs:appinfo>
                                   <oldnr>345</oldnr>
                                 </xs:appinfo>
                                 <xs:documentation>
                                   Calculate the Kohn-Sham response function taking into account the rigid shift of the BSE diagonal. This is not a duplicate
                                   task, as the task-Nr. is referenced. checked in the code !
                                 </xs:documentation>
                               </xs:annotation>
                             </xs:enumeration>
                             <xs:enumeration value="idf">
                               <xs:annotation>
                                 <xs:appinfo>
                                   <oldnr>350</oldnr>
                                 </xs:appinfo>
                                 <xs:documentation>
                                   Set up simple xc-kernels, solve Dyson's equation for the full polarizability and determine the macroscopic dielectric
                                   function and other spectroscopic quantities.
                                 </xs:documentation>
                               </xs:annotation>
                             </xs:enumeration>
                             <xs:enumeration value="scrgeneigvec">
                               <xs:annotation>
                                 <xs:appinfo>
                                   <oldnr>401</oldnr>
                                 </xs:appinfo>
                                 <xs:documentation>Calculate eigenvectors, -values and occupancies for screening</xs:documentation>
                               </xs:annotation>
                             </xs:enumeration>
                             <xs:enumeration value="scrtetcalccw">
                               <xs:annotation>
                                 <xs:appinfo>
                                   <oldnr>410</oldnr>
                                 </xs:appinfo>
                                 <xs:documentation>
                                   Calculate frequency-dependent weights for convolutions using the linear tetrahedron method for screening
                                 </xs:documentation>
                               </xs:annotation>
                             </xs:enumeration>
                             <xs:enumeration value="scrwritepmat">
                               <xs:annotation>
                                 <xs:appinfo>
                                   <oldnr>420</oldnr>
                                 </xs:appinfo>
                                 <xs:documentation>Calculate momentum matrix elements for screening</xs:documentation>
                               </xs:annotation>
                             </xs:enumeration>
                             <xs:enumeration value="screen">
                               <xs:annotation>
                                 <xs:appinfo>
                                   <oldnr>430</oldnr>
                                 </xs:appinfo>
                                 <xs:documentation>Calculate RPA screening (ignoring scissor's shift)</xs:documentation>
                               </xs:annotation>
                             </xs:enumeration>
                             <xs:enumeration value="scrcoulint">
                               <xs:annotation>
                                 <xs:appinfo>
                                   <oldnr>440</oldnr>
                                 </xs:appinfo>
                                 <xs:documentation>Calculate direct term of BSE Hamiltonian</xs:documentation>
                               </xs:annotation>
                             </xs:enumeration>
                             <xs:enumeration value="exccoulint">
                               <xs:annotation>
                                 <xs:appinfo>
                                   <oldnr>441</oldnr>
                                 </xs:appinfo>
                                 <xs:documentation>Calculate exchange term of BSE Hamiltonian</xs:documentation>
                               </xs:annotation>
                             </xs:enumeration>
                             <xs:enumeration value="BSE">
                               <xs:annotation>
                                 <xs:appinfo>
                                   <oldnr>445</oldnr>
                                 </xs:appinfo>
                                 <xs:documentation>Bethe-Salpeter equation</xs:documentation>
                               </xs:annotation>
                             </xs:enumeration>
                             <xs:enumeration value="kernxc_bse">
                               <xs:annotation>
                                 <xs:appinfo>
                                   <oldnr>450</oldnr>
                                 </xs:appinfo>
                                 <xs:documentation>
                                   Calculate frequency dependent xc-kernel drived from the Bethe-Salpeter equation in first order
                                 </xs:documentation>
                               </xs:annotation>
                             </xs:enumeration><!-- experimental and debugging tasks below-->
                             <xs:enumeration value="writebandgapgrid">
                               <xs:annotation>
                                 <xs:appinfo>
                                   <oldnr>23</oldnr>
                                 </xs:appinfo>
                                 <xs:documentation>estimate bandgap from regular grid</xs:documentation>
                               </xs:annotation>
                             </xs:enumeration>
                             <xs:enumeration value="writepmat">
                               <xs:annotation>
                                 <xs:appinfo>
                                   <oldnr>120</oldnr>
                                 </xs:appinfo>
                                 <xs:documentation>calculate momentum matrix elements (legacy)</xs:documentation>
                               </xs:annotation>
                             </xs:enumeration>
                             <xs:enumeration value="dielectric">
                               <xs:annotation>
                                 <xs:appinfo>
                                   <oldnr>121</oldnr>
                                 </xs:appinfo>
                                 <xs:documentation>linear optics (legacy)</xs:documentation>
                               </xs:annotation>
                             </xs:enumeration>
                             <xs:enumeration value="writepmatasc">
                               <xs:annotation>
                                 <xs:appinfo>
                                   <oldnr>321</oldnr>
                                 </xs:appinfo>
                                 <xs:documentation>ASCII output of momentum matrix elements</xs:documentation>
                               </xs:annotation>
                             </xs:enumeration>
                             <xs:enumeration value="pmatxs2orig">
                               <xs:annotation>
                                 <xs:appinfo>
                                   <oldnr>322</oldnr>
                                 </xs:appinfo>
                                 <xs:documentation>convert momentum matrix elements file to old format</xs:documentation>
                               </xs:annotation>
                             </xs:enumeration>
                             <xs:enumeration value="writeematasc">
                               <xs:annotation>
                                 <xs:appinfo>
                                   <oldnr>331</oldnr>
                                 </xs:appinfo>
                                 <xs:documentation>ASCII output of q-dependent matrix elements</xs:documentation>
                               </xs:annotation>
                             </xs:enumeration>
                             <xs:enumeration value="writepwmat">
                               <xs:annotation>
                                 <xs:appinfo>
                                   <oldnr>335</oldnr>
                                 </xs:appinfo>
                                 <xs:documentation>calculate matrix elements of the plane wave (simple version for checking)</xs:documentation>
                               </xs:annotation>
                             </xs:enumeration>
                             <xs:enumeration value="emattest">
                               <xs:annotation>
                                 <xs:appinfo>
                                   <oldnr>339</oldnr>
                                 </xs:appinfo>
                                 <xs:documentation>check relation between matr. el. of exp. and mom. matr. el.</xs:documentation>
                               </xs:annotation>
                             </xs:enumeration>
                             <xs:enumeration value="x0toasc">
                               <xs:annotation>
                                 <xs:appinfo>
                                   <oldnr>341</oldnr>
                                 </xs:appinfo>
                                 <xs:documentation>ASCII output of Kohn Sham response function</xs:documentation>
                               </xs:annotation>
                             </xs:enumeration>
                             <xs:enumeration value="x0tobin">
                               <xs:annotation>
                                 <xs:appinfo>
                                   <oldnr>342</oldnr>
                                 </xs:appinfo>
                                 <xs:documentation>binary output of Kohn Sham response function</xs:documentation>
                               </xs:annotation>
                             </xs:enumeration>
                             <xs:enumeration value="epsconv">
                               <xs:annotation>
                                 <xs:appinfo>
                                   <oldnr>396</oldnr>
                                 </xs:appinfo>
                                 <xs:documentation>convolute dielectric function from tetrahedron method with Lorentzian</xs:documentation>
                               </xs:annotation>
                             </xs:enumeration>
                             <xs:enumeration value="fxc_alda_check">
                               <xs:annotation>
                                 <xs:appinfo>
                                   <oldnr>398</oldnr>
                                 </xs:appinfo>
                                 <xs:documentation>check ALDA kernel</xs:documentation>
                               </xs:annotation>
                             </xs:enumeration>
                             <xs:enumeration value="kernxc_bse3">
                               <xs:annotation>
                                 <xs:appinfo>
                                   <oldnr>451</oldnr>
                                 </xs:appinfo>
                                 <xs:documentation>BSE-kernel, straight forward version</xs:documentation>
                               </xs:annotation>
                             </xs:enumeration>
                             <xs:enumeration value="testxs">
                               <xs:annotation>
                                 <xs:appinfo>
                                   <oldnr>499</oldnr>
                                 </xs:appinfo>
                                 <xs:documentation>degub routine of xs-part</xs:documentation>
                               </xs:annotation>
                             </xs:enumeration>
                             <xs:enumeration value="xsestimate">
                               <xs:annotation>
                                 <xs:appinfo>
                                   <oldnr>700</oldnr>
                                 </xs:appinfo>
                                 <xs:documentation>estimate disk-space, cpu-time and memory requirements</xs:documentation>
                               </xs:annotation>
                             </xs:enumeration>
                             <xs:enumeration value="xstiming">
                               <xs:annotation>
                                 <xs:appinfo>
                                   <oldnr>701</oldnr>
                                 </xs:appinfo>
                                 <xs:documentation>test timing</xs:documentation>
                               </xs:annotation>
                             </xs:enumeration><!-- debugging main part-->
                             <xs:enumeration value="testmain">
                               <xs:annotation>
                                 <xs:appinfo>
                                   <oldnr>999</oldnr>
                                 </xs:appinfo>
                                 <xs:documentation>debug routine main part of code</xs:documentation>
                               </xs:annotation>
                             </xs:enumeration><!-- import/export tasks below-->
                             <xs:enumeration value="portstate(1)">
                               <xs:annotation>
                                 <xs:appinfo>
                                   <oldnr>900</oldnr>
                                 </xs:appinfo>
                                 <xs:documentation>generate STATE.xml file from STATE.OUT file</xs:documentation>
                               </xs:annotation>
                             </xs:enumeration>
                             <xs:enumeration value="portstate(2)">
                               <xs:annotation>
                                 <xs:appinfo>
                                   <oldnr>901</oldnr>
                                 </xs:appinfo>
                                 <xs:documentation>generate STATE.OUT file from STATE.xml file</xs:documentation>
                               </xs:annotation>
                             </xs:enumeration>
                             <xs:enumeration value="portstate(-1)">
                               <xs:annotation>
                                 <xs:appinfo>
                                   <oldnr>910</oldnr>
                                 </xs:appinfo>
                                 <xs:documentation>display Information about STATE.OUT file</xs:documentation>
                               </xs:annotation>
                             </xs:enumeration>
                             <xs:enumeration value="portstate(-2)">
                               <xs:annotation>
                                 <xs:appinfo>
                                   <oldnr>911</oldnr>
                                 </xs:appinfo>
                                 <xs:documentation>display Information about STATE.xml file</xs:documentation>
                               </xs:annotation>
                             </xs:enumeration>
                           </xs:restriction>
                         </xs:simpleType>
                       </xs:attribute>
                     </xs:complexType>
                   </xs:element>
                 </xs:sequence>
               </xs:complexType>
             </xs:element>
           </xs:all>
           <xs:attribute ex:status="expert" ex:unit="" name="emattype" type="xs:integer" default="1">
             <xs:annotation>
               <xs:documentation>Type of matrix element generation (band-combinations). Should only be referenced for experimental features.</xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="dfoffdiag" type="xs:boolean" default="false">
             <xs:annotation>
               <xs:documentation>true if also off-diagonal tensor elements for the interacting response function are to be calculated</xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="lmaxapwwf" type="xs:integer" default="-1">
             <xs:annotation>
               <xs:documentation>maximum angular momentum for APW functions for q-dependent matrix elements</xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="lmaxemat" type="xs:integer" default="3">
             <xs:annotation>
               <xs:documentation>
                 maximum angular momentum for Rayleigh expansion of
                 <inlinemath>{\bf q}</inlinemath>
                 -dependent plane wave factor
               </xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="emaxdf" type="fortrandouble" default="1.0d10">
             <xs:annotation>
               <xs:documentation>energy cutoff for the unoccupied states in the Kohn-Sahm response function and screening</xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="broad" type="fortrandouble" default="0.01d0">
             <xs:annotation>
               <xs:documentation>Lorentzian broadening for all spectra</xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="tevout" type="xs:boolean" default="false">
             <xs:annotation>
               <xs:documentation>true if energy outputs are in eV</xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="xstype" use="required">
             <xs:annotation>
               <xs:documentation>Should TDDFT be used or BSE</xs:documentation>
             </xs:annotation>
             <xs:simpleType>
               <xs:restriction base="xs:string">
                 <xs:enumeration value="TDDFT" />
                 <xs:enumeration value="BSE" />
               </xs:restriction>
             </xs:simpleType>
           </xs:attribute><!-- Here are experimental parameters -->
           <xs:attribute ex:status="expert" ex:unit="" name="symmorph" type="xs:boolean" default="false">
             <xs:annotation>
               <xs:documentation>
                 True if only symmorphic space-group operations are to be considered, i.e. only symmetries without non-primitive translations are allowed.
               </xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="fastpmat" type="xs:boolean" default="true">
             <xs:annotation>
               <xs:documentation>
                 if true, a fast method to calculate APW-lo, lo-APW and lo-lo parts of the momentum matrix elements in the muffin-tin is used.
               </xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="fastemat" type="xs:boolean" default="true">
             <xs:annotation>
               <xs:documentation>
                 if true, a fast method to calculate APW-lo, lo-APW and lo-lo parts of the
                 <inlinemath>{\bf q}</inlinemath>
                 -dependent matrix elements in the muffin-tin is used.
               </xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="gather" type="xs:boolean" default="false" />
           <xs:attribute ex:status="expert" ex:unit="" name="tappinfo" type="xs:boolean" default="false" />
           <xs:attribute ex:status="expert" ex:unit="" name="dbglev" type="xs:integer" default="0" />
           <xs:attribute ex:status="expert" ex:unit="" name="usegdft" type="xs:boolean" default="false"><!-- used from src_optics/mod_DOS_optics_response.F90 -->
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="gqmax" type="fortrandouble" default="0.0d0">
             <xs:annotation>
               <xs:documentation>|G+q| cutoff for Kohn-Sham response function, screening and for expansion of Coulomb potential</xs:documentation>
             </xs:annotation>
           </xs:attribute><!-- section of parameters from groundstate which are allowed to be different from the ones of the ground state run -->
           <xs:attribute ex:status="expert" ex:unit="" name="nosym" type="xs:boolean" default="false">
             <xs:annotation>
               <xs:appinfo>
                 <oldname>nosymxs</oldname>
               </xs:appinfo>
               <xs:documentation>nosym is true if no symmetry information should be used</xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="ngridk" type="integertriple" default="1 1 1">
             <xs:annotation>
               <xs:appinfo>
                 <oldname>ngridkxs</oldname>
               </xs:appinfo>
               <xs:documentation>k-point grid sizes</xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="vkloff" type="vect3d" default="0.0d0 0.0d0 0.0d0 ">
             <xs:annotation>
               <xs:appinfo>
                 <oldname>vkloffxs</oldname>
               </xs:appinfo>
               <xs:documentation>k-point offset</xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="reducek" type="xs:boolean" default="true">
             <xs:annotation>
               <xs:appinfo>
                 <oldname>reducekxs</oldname>
               </xs:appinfo>
               <xs:documentation>reducek is true if k-points are to be reduced (with crystal symmetries)</xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="ngridq" type="integertriple" default="1 1 1">
             <xs:annotation>
               <xs:appinfo>
                 <oldname>ngridqxs</oldname>
               </xs:appinfo>
               <xs:documentation>q-point grid sizes</xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="reduceq" type="xs:boolean" default="true">
             <xs:annotation>
               <xs:appinfo>
                 <oldname>reduceqxs</oldname>
               </xs:appinfo>
               <xs:documentation>reducek is true if q-points are to be reduced (with crystal symmetries)</xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="rgkmax" type="fortrandouble" default="7.0d0">
             <xs:annotation>
               <xs:appinfo>
                 <oldname>rgkmaxxs</oldname>
               </xs:appinfo>
               <xs:documentation>smallest muffin-tin radius times gkmax</xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="swidth" type="fortrandouble" default="0.001d0">
             <xs:annotation>
               <xs:appinfo>
                 <oldname>swidthxs</oldname>
               </xs:appinfo>
               <xs:documentation>width of the smooth approximation to the Dirac delta function</xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="lmaxapw" type="xs:integer" default="10">
             <xs:annotation>
               <xs:appinfo>
                 <oldname>lmaxapwxs</oldname>
               </xs:appinfo>
               <xs:documentation>angular momentum cut-off for the APW functions</xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="lmaxmat" type="xs:integer" default="5">
             <xs:annotation>
               <xs:appinfo>
                 <oldname>lmaxmatxs</oldname>
               </xs:appinfo>
               <xs:documentation>angular momentum cut-off for the outer-most loop in the hamiltonian and overlap matrix setup</xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ex:status="expert" ex:unit="" name="nempty" type="xs:integer" default="5">
             <xs:annotation>
               <xs:appinfo>
                 <oldname>nemptyxs</oldname>
               </xs:appinfo>
               <xs:documentation>number of empty states</xs:documentation>
             </xs:annotation>
           </xs:attribute>
           <xs:attribute ref="scissor">
             <xs:annotation>
               <xs:documentation>scissors correction</xs:documentation>
             </xs:annotation>
           </xs:attribute>
         </xs:complexType>
       </xs:element>
     </xs:all>
     <xs:attribute ex:status="expert" ex:unit="" name="xsltpath" type="xs:anyURI" default="../../xml" >
       <xs:annotation>
         <xs:appinfo>
           
         </xs:appinfo>
       </xs:annotation>
     </xs:attribute>
     <xs:attribute ex:status="expert" ex:unit="" name="scratchpath" type="xs:anyURI" use="optional">
       <xs:annotation>
         <xs:documentation>
           This is the path to scratch space where the eigenvector files EVECFV.OUT, EVECSV.OUT and OCCSV.OUT will be written. If the local directory is
           accessed via a network then scrpath can be set to a directory on a local disk
         </xs:documentation>
       </xs:annotation>
     </xs:attribute>
     <xs:attribute ex:status="expert" ex:unit="" name="id" type="xs:ID">
       <xs:annotation>
         <xs:documentation>The id is a unique identifier in an input set. The inputset element is currently not used by the exciting code.</xs:documentation>
       </xs:annotation>
     </xs:attribute>
     <xs:attribute ex:status="expert" ex:unit="" name="depends" type="xs:IDREFS">
       <!--
         <xs:simpleType> <xs:list itemType="xs:IDREF"/> </xs:simpleType>
       -->
       <xs:annotation>
         <xs:documentation>
           The depends attribute can be used to specify a dependence from another simulation in the same input set. The inputset element is currently not used
           by the exciting code.
         </xs:documentation>
       </xs:annotation>
     </xs:attribute>
   </xs:complexType>
 </xs:element>
 <xs:element ex:status="expert" ex:unit="" name="qpointset">
  <xs:complexType>
   <xs:sequence>
    <xs:element ex:status="expert" ex:unit="" name="qpoint" type="vect3d" minOccurs="1" maxOccurs="unbounded">
     <xs:annotation>
      <xs:documentation> a q-point is given in reciprocal space coordinates</xs:documentation>
     </xs:annotation>
    </xs:element>
   </xs:sequence>
  </xs:complexType>
 </xs:element>
</xs:schema>

