Skip to content

Commit

Permalink
[QNEBE-NNN] Updated readme
Browse files Browse the repository at this point in the history
  • Loading branch information
QFer committed May 31, 2023
1 parent 17f2594 commit a11d8c5
Show file tree
Hide file tree
Showing 2 changed files with 22 additions and 11 deletions.
14 changes: 6 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,20 +3,19 @@ The QNE-ADK is a Quantum Network Explorer - Application Development Kit that all

With the ADK you can create your own application using the ``qne application create`` command (see Commands below). An application directory is generated for you with all the necessary files for you to configure and prepare for an experiment. When configuring an application, you specify the different roles and what types of inputs your application uses. In addition, you write the functionality of your application using the NetQASM library.

After creating and configuring an application, you can create an experiment for it using the ``qne experiment create`` command. Also here an experiment directory is generated with all necessary files. When configuring your experiment you can give values to the inputs that were specified when creating your application. You also choose which channels and nodes you use in your network and which role is linked to which node. A network consists of channels and each channel consists of two nodes. The nodes can communicate with each other using the channel between them.
After creating and configuring an application, you can create an experiment for it using the ``qne experiment create`` command. Also, here an experiment directory is generated with all necessary files. When configuring your experiment you can give values to the inputs that were specified when creating your application. You also choose which channels and nodes you use in your network and which role is linked to which node. A network consists of channels and each channel consists of two nodes. The nodes can communicate with each other using the channel between them.

Once your experiment is configured you are ready to run it using the ``qne experiment run`` command. Your experiment is parsed and sent to the NetSquid simulator. After some time your experiment run will be finished and a results directory will be generated in which all the results of your experiment are stored.


## Prerequisites
- A modern Linux or MacOS (10 or 11) 64-bit (x86_64) operating system. If you don’t have Linux or MacOS you could run it via virtualization, e.g. using VirtualBox. If you have Windows 10 or 11 you can also use the [Bash on Ubuntu](https://docs.microsoft.com/en-us/windows/wsl/) subsystem.
- A modern Linux or macOS (10 or 11) 64-bit (x86_64) operating system. If you don’t have Linux or macOS you could run it via virtualization, e.g. using VirtualBox. If you have Windows 10 or 11 you can also use the [Bash on Ubuntu](https://docs.microsoft.com/en-us/windows/wsl/) subsystem.
- A [virtual environment](https://docs.python.org/3/library/venv.html) should be created and activated before creating an application.
- Python version 3.7 or higher and pip version 19 or higher.
- NetQASM makes use of SquidASM for which you need credentials in order to use it. These credentials can be obtained by registering on the forum of [NetSquid](https://forum.netsquid.org/).


## Installation

To install all the required packages, execute the following command:

```
Expand All @@ -31,17 +30,16 @@ pip install squidasm --extra-index-url=https://{netsquid-user-name}:{netsquid-pa

Now everything should be setup and ready in order to create your own applications and experiments and run them on the simulator!

### Troubleshooting

## Troubleshooting
If you have any issues installing SquidASM (e.g. it only seems to use version 0.0.1), check the following:

- Make sure you're using the latest version of `pip` (run: `python -m pip install --upgrade pip`)
- Check you're using a supported Python version [here](https://pypi.netsquid.org/netsquid/). In the wheel filenames, cpXX indicates the version - so if you have Python 3.10, but there is no cp310 wheel, it won't work. Check the OS is also compatible.
- Check you're using a supported Python version [here](https://pypi.netsquid.org/netsquid/). In the wheel filenames, cpXX indicates the version - so if you have Python 3.10, but there is no cp310 wheel, switch to a supported version of Python. Check the OS is also compatible.
- If `pydynaa` is failing, check the same as above [here](https://pypi.netsquid.org/pydynaa/).
- For help with python versions, check out [pyenv](https://github.com/pyenv/pyenv). You should probably be using [virtualenv](https://virtualenv.pypa.io/en/latest/) or [venv](https://docs.python.org/3/library/venv.html) too.
- For help with Python versions, check out [pyenv](https://github.com/pyenv/pyenv). You should probably be using [virtualenv](https://virtualenv.pypa.io/en/latest/) or [venv](https://docs.python.org/3/library/venv.html) too.

## Commands
The QNE-ADK uses various commands to create and run your applications and experiments. All of the commands are listed below:
The QNE-ADK uses various commands to create and run your applications and experiments. All commands are listed below:

<!--- QNE APPLICATION LIST --->
<details closed>
Expand Down
19 changes: 16 additions & 3 deletions docs/introduction.rst
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ experiment. When configuring an application, you specify the different roles and
application uses. In addition, you write the functionality of your application using the NetQASM library.

After creating and configuring an application, you can create an experiment for it using the ``qne experiment create``
command. Also here an experiment directory is generated with all necessary files. When configuring your experiment
command. Also, here an experiment directory is generated with all necessary files. When configuring your experiment
you can give values to the inputs that were specified when creating your application. You also choose which channels
and nodes you use in your network and which role is linked to which node. A network consists of channels and each
channel consists of two nodes. The nodes can communicate with each other using the channel between them.
Expand All @@ -22,7 +22,7 @@ directory will be generated in which all the results of your experiment are stor

Prerequisites
-------------
* A modern Linux or MacOS (10 or 11) 64-bit (x86_64) operating system. If you don't have Linux or MacOS you could run
* A modern Linux or macOS (10 or 11) 64-bit (x86_64) operating system. If you don't have Linux or macOS you could run
it via virtualization, e.g. using VirtualBox. If you have Windows 10 or 11 you can also use
the `Bash on Ubuntu <https://docs.microsoft.com/en-us/windows/wsl/>`_ subsystem.
* A `virtual environment <https://docs.python.org/3/library/venv.html>`_ should be created and activated before
Expand Down Expand Up @@ -85,9 +85,22 @@ To build the 'readthedocs' documentation do:
The documentation is then build in 'docs/_build/html' and can be viewed `here <index.html>`_.

Troubleshooting
---------------
If you have any issues installing SquidASM (e.g. it only seems to use version 0.0.1), check the following:

- Make sure you're using the latest version of `pip` (run: `python -m pip install --upgrade pip`)
- Check you're using a supported Python version `here <https://pypi.netsquid.org/netsquid/>`_. In the wheel filenames,
cpXX indicates the version - so if you have Python 3.10, but there is no cp310 wheel, switch to a supported version
of Python. Check the OS is also compatible.
- If `pydynaa` is failing, check the same as above `here <https://pypi.netsquid.org/pydynaa/>`_.
- For help with Python versions, check out `pyenv <https://github.com/pyenv/pyenv>`_. You should probably be
using `virtualenv <https://virtualenv.pypa.io/en/latest/>`_
or `venv <https://docs.python.org/3/library/venv.html>`_ too.

Commands
--------
The QNE-ADK uses various commands to create and run your applications and experiments. All of the commands are
The QNE-ADK uses various commands to create and run your applications and experiments. All commands are
listed below:

application list
Expand Down

0 comments on commit a11d8c5

Please sign in to comment.