Skip to content

File structure

brambozz edited this page Oct 31, 2018 · 8 revisions

If you want to perform a new experiment which needs some new code, or if you are simply curious how the repo is layed out, this page is for you.

In the repo's home directory there are a couple of folders: config, instruments, modules, test and experiments.

The config directory holds a config class definition file (config_class.py) and a template for an experiment config file (config_template.py).

The instruments folder holds various drivers for instruments used here in the lab.

The modules folder contains some modules which are useful in writing your experiment scripts. These modules include Evolution (implementation of a genetic algorithm), PlotBuilder (various functions to create nice graphical output), Reservoir (an implementation of a reservoir computer)and SaveLib (some basic functions to save experiment in/output).

The test folder is specifically for experiments which are designed to test anything in the repo. There is for example an evolution test script, to assess if any changes to the Evolution module did not break the module.

Lastly, the experiments folder is where experiments are stored. An experiment always consists of a config file and a script (both .py files). These are bundled together in one folder, such that each experiment specific files are in one place. The figure below illustrates the file structure explained above.

|
/config
    |
    /config_class.py
/instruments
    |
    /ADwin
    /niDAQ
    /etc
/modules
    |
    /Evolution
    /etc
/test
    |
    /
/experiments
    |
    /boolean_logic
        |
        /boolean_logic.py
        /config_boolean_logic.py
Clone this wiki locally