input_description -distribution {Quantum ESPRESSO} -package turboMAGNON -program turbo_magnon.x {

    toc {}

    intro {
    	  Input data format: { } = optional, [ ] = it depends.

	  All quantities whose dimensions are not explicitly specified are in
	  RYDBERG ATOMIC UNITS

	  BEWARE: TABS, DOS <CR><LF> CHARACTERS ARE POTENTIAL SOURCES OF TROUBLE

          Comment lines in namelists can be introduced by a "!", exactly as in 
          fortran code. Comments lines in ``cards'' can be introduced by 
          either a "!" or a "#" character in the first position of a line.

	  Structure of the input data:
	  ===============================================================================

	  &LR_INPUT
	    ...
	  /

	  &LR_CONTROL
	    ...
	  /	    

    }

    namelist LR_INPUT {

	label { This namelist is always needed ! }

	var prefix -type CHARACTER { 
	    default { 'pwscf' }
	    info {
		Sets the prefix for generated and read files. The files 
		generated by the ground state pw.x run must have this 
		same prefix.
	    }
	}

	var outdir -type CHARACTER { 
	    default { './' }
	    info {
		The directory that contains the run critical files, which 
		include the files generated by ground state pw.x run.
	    }
	}

	var restart -type LOGICAL {
	    default {.false.}
	    info {
		When set to .true., turbo_magnons.x will attempt to restart 
		from a previous interrupted calculation. (see restart_step 
		variable).
		Beware, if set to .false. turbo_magnons.x will OVERWRITE any
		previous runs.
	    }
	}

	var restart_step -type INTEGER {
	    default {itermax}
	    info {
		The code writes restart files every restart_step iterations.
		Restart files are automatically written at the end of 
		itermax Lanczos steps.
	    }
	}

	var lr_verbosity -type INTEGER {
	    default {1}
	    info {
		This integer variable controls the amount of information 
		written to standard output.
	    }
	}

	var disk_io -type CHARACTER {
	    default { 'default' }
	    info {
    		Fine control of disk usage. Currently only 'reduced' is 
		supported where no restart files are written, apart from 
		the 'default' mode.
	    }
	}
    }
    namelist LR_CONTROL {
	var itermax -type INTEGER {
	    default {500}
	    info {
		Number of Lanczos iterations to be performed.
		}
	}

        var pseudo_hermitian -type LOGICAL {
            default {.true.}
            info {
                When set to .true. the pseudo-Hermitian Lanczos 
                algorithm is used. When set to .false. the 
                non-Hermitian Lanczos biorthogonalization algorithm 
                is used (which is two times slower).
                }
        }
	
	var approximation -type CHARACTER {
	    default { 'TDDFT' }
	    info {
                A string describing a level of theory:
                'TDDFT'            - Time-Dependent Local Density Approximation or
                                     Time-Dependent Generalized Gradient Approximation
                                     (depending on the XC functional),
                'IPA'              - Independent Particle Approximation,
		}
	}

        var ipol -type INTEGER {
            default {1}
            info {
                An integer variable that determines which element of the
                dynamical magnetic susceptibility will be computed:
                1 -> chi_xx(omega), 2 -> chi_yy(omega), and
                3 -> chi_zz(omega). When set to 4, three Lanczos chains
                are sequentially performed and the full susceptibility
                tensor is computed.
                }
        }

        vargroup -type REAL {
            var q1
            var q2
            var q3
            default { 1.0, 1.0, 1.0 }
            info {
                The values of the transferred momentum q = (q1, q2, q3)
                in Cartesian coordinates in units of 2pi/a, where
                "a" is the lattice parameter.
            }
        }


    }			

}
