# qpsh

qpsh is the Quantum Package shell. It is a Bash shell with all the required evironment variables loaded, a modified prompt, and the qp command.

## qp

This command is a hub to the most used command within Quantum Package. The power of the qpsh shell is the auto-completion that comes when the `<Tab>` key is pressed with the qp command.

### EZFIO access

`set_file```

      qp set_file EZFIO_DIR

  Sets the current EZFIO directory. All the following instruction will be relative to this directory.

  This command is equivalent to ezfio set_file EZFIO_DIR.

`unset_file```

      qp unset_file

  Unsets the current EZFIO directory.

  This command is equivalent to ezfio unset_file.

`has```

      qp has <module> <parameter>

  If the <module>/<parameter> is set in the EZFIO directory, returns 1. Otherwise returns 0.

  This command is equivalent to ezfio has <module> <parameter>.

`get```

      qp get <module> <parameter>

  Returns the value of <module>/<parameter>.

  This command is equivalent to ezfio get <module> <parameter>.

`set```

      qp set <module> <parameter> [<value>]

  Sets the value of <module>/<parameter>. If the value is not given in the command line it is read from the standard input.

  This command is equivalent to ezfio set <module> <parameter> [<value>].

### Running programs

`run```

  >     qp (run|srun|mpirun) [options] <program>

  Runs qp_run, qp_srun, or qp_mpirun using the current EZFIO directory.

`stop```

  qp stop : runs qp_stop

### Getting help

`man```

  >     qp man (<program>|<qp_command>)

  Displays a man page for a Quantum Package program or a Quantum Package command.

### Running quantum package commands

The `qp_` commands can be run without specifying the EZFIO directory:

`convert_output_to_ezfio```

  qp convert_output_to_ezfio : runs qp_convert_output_to_ezfio

`create_ezfio```

  qp create_ezfio : runs qp_create_ezfio

`plugins```

  qp plugins : runs qp_plugins

`reset```

  qp reset : runs qp_reset

`set_frozen_core```

  qp set_frozen_core : runs qp_set_frozen_core

`set_mo_class```

  qp set_mo_class : runs qp_set_mo_class

`update```

  qp update : runs qp_update