From 7e3b78bc6b12102f3b428872933b1d2c0ddbb9f8 Mon Sep 17 00:00:00 2001 From: kcgallagher Date: Wed, 7 Feb 2024 16:49:46 +0000 Subject: [PATCH 01/19] Include readme in online pyEpiabm docs --- pyEpiabm/README.md | 3 - pyEpiabm/README.rst | 134 +++++++++++++++++++++++++++++++++ pyEpiabm/docs/source/conf.py | 1 + pyEpiabm/docs/source/index.rst | 10 +-- pyEpiabm/setup.py | 1 + 5 files changed, 140 insertions(+), 9 deletions(-) delete mode 100644 pyEpiabm/README.md create mode 100644 pyEpiabm/README.rst diff --git a/pyEpiabm/README.md b/pyEpiabm/README.md deleted file mode 100644 index bfedcece1..000000000 --- a/pyEpiabm/README.md +++ /dev/null @@ -1,3 +0,0 @@ -# pyEpiabm - -This is the python backend for epiabm. diff --git a/pyEpiabm/README.rst b/pyEpiabm/README.rst new file mode 100644 index 000000000..f9cbf6fe7 --- /dev/null +++ b/pyEpiabm/README.rst @@ -0,0 +1,134 @@ +pyEpiabm +======== + +The pyEpiabm backend is written in python, chosen for its readability +and user-friendliness. It is not able to cope with large population +sizes, but can configure a toy population to explore the functionality +of the model and better understand the underlying code. Additionally, +toy models may be quicker for model comparison and parameter inference, +though care should obviously be taken when scaling up to a full +population. We provide a variety of workflows to show the utility of +code. + +Installation of pyEpiabm +------------------------ + +pyEpiabm is not yet available on `PyPI `__, but the +module can be pip installed locally. The directory should first be +downloaded to your local machine, and can then be installed using the +command: + +.. code:: console + + pip install -e . + +from the ``pyEpiabm`` directory. If you also wish to build the docs +locally, this requires additional dependencies, which must be specified: + +.. code:: console + + pip install -e .[docs] + +Running a simulation +-------------------- + +A number of example simulations are included the in the +``python_examples`` directory. The simplest complete workflow for +running a simulation is provided in +``python_examples/basic_example/simulation_flow.py``, but all others +follow a similar format. Other example simulations include an +``age_stratified_example``, and ``spatial_example`` which demonstrate +these aspects of the module. ``gilbraltar_example`` combines age and +spatial stratification using census data from Gibraltar, and can be used +to benchmark against CovidSIM. + +There are a number of steps to any simulation: + +Set Random Seed *(Optional)* +~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +This allows the random seed to be set for all random modules used in the +simulation, to enable reproducible simulations. The recommended approach +here is to set one seed at the start of the script (before configuring +the population or the simulation objects), so that both are generated +according to this seed. It is also possible to set a separate seed for +one or other object, by passing ``population_seed`` or +``simulation_seed`` into their respective parameter dictionaries, +however care should be exercised to ensure the two objects are +configured sequentially. For example, generating a second population +after setting the simulation seed would be done according to +``simulation_seed`` not ``population_seed``. Setting the seed is not +currently compatible with multi-threaded execution. + +Configure Population +~~~~~~~~~~~~~~~~~~~~ + +Create a population based on the parameters given, from the following +list: + +- ``population_size``: Number of people in population +- ``cell_number``: Number of cells in population +- ``microcell_number``: Number of microcells in each cell +- ``household_number``: Number of households in each microcell + *(Optional)* +- ``place_number``: Number of places in each microcell *(Optional)* +- ``population_seed``: Random seed for reproducible populations - see + above *(Optional)* + +Import Population +~~~~~~~~~~~~~~~~~ + +Alternatively, it is possible to import a population from a ``.csv`` +file, with the following headings: + +- ``cell``: ID code for cell +- ``microcell``: ID code for microcell +- ``location_x``: The x coordinate of the parent cell location +- ``location_y``: The y coordinate of the parent cell location +- ``household_number``: Number of households in that microcell +- Any number of columns with titles from the ``InfectionStatus`` enum + (such as ``InfectionStatus.Susceptible``), giving the number of + people with that status in that cell + +File of this format can also be exported using the +``pyEpiabm.routine.FilePopulationConfig.print_population()`` method, +i.e. for reproducibility or use in further simulations. + +Configure Simulation +~~~~~~~~~~~~~~~~~~~~ + +Configure a simulation with a number of parameters. These are split into +three categories: + +sim_params +"""""""""" + +- ``simulation_start_time``: The initial time at the start of the simulation +- ``simulation_end_time``: The final time at which to stop the simulation +- ``initial_infected_number``: The initial number of infected individuals in the population +- ``initial_infect_cell``: Whether to choose initial infected individuals from a single cell +- ``simulation_seed``: Random seed for reproducible simulations - see above *(Optional)* + +file_params +""""""""""" +*(For controlling output location)* + +- ``output_file``: String for the name of the output .csv file +- ``output_dir``: String for the location of the output file, as a relative path +- ``spatial_output``: Boolean to determine whether a spatial output should be used *(Default false)* +- ``age_stratified``: Boolean to determine whether the output will be age stratified *(Default false)* + +inf_history_params +"""""""""""""""""" +*(For controlling the infection history output - Default None)* + +- ``output_dir``: String for the location for the output files, as a relative path +- ``status_output``: Boolean to determine whether we need a csv file containing infection status values (Default false) +- ``infectiousness_output``: Boolean to determine whether we need a csv file containing infectiousness (viral load) values (Default false) +- ``compress``: Boolean to determine whether we compress a csv file containing infection status values and/or a csv file containing infectiousness (viral load) values if they are written (Default false) + +Two lists of sweeps must also be passed to this function - the first +will be executed once at the start of the simulation (i.e. to determine +the initial infections in the population), while the second list will be +ran at every timestep (i.e. to propagate the infection through the +population). diff --git a/pyEpiabm/docs/source/conf.py b/pyEpiabm/docs/source/conf.py index b9e0ff271..5be8510d2 100644 --- a/pyEpiabm/docs/source/conf.py +++ b/pyEpiabm/docs/source/conf.py @@ -37,6 +37,7 @@ 'sphinx.ext.mathjax', 'sphinx.ext.napoleon', 'sphinx.ext.viewcode', + "myst_parser" ] # Autodoc defaults diff --git a/pyEpiabm/docs/source/index.rst b/pyEpiabm/docs/source/index.rst index 14360d76d..4882444c1 100644 --- a/pyEpiabm/docs/source/index.rst +++ b/pyEpiabm/docs/source/index.rst @@ -1,13 +1,12 @@ .. pyEpiabm documentation master file, created by - sphinx-quickstart on Wed Oct 28 05:13:22 2020. - You can adapt this file completely to your liking, but it should at least - contain the root `toctree` directive. + sphinx-quickstart on Wed Oct 28 05:13:22 2020. + You can adapt this file completely to your liking, but it should at least + contain the root `toctree` directive. Welcome to pyEpiabm's documentation! ==================================== -This is a python backend for the EpiAbm package. - +.. include:: ../../README.rst Contents ======== @@ -15,7 +14,6 @@ Contents .. module:: pyEpiabm .. toctree:: - core interventions outputs diff --git a/pyEpiabm/setup.py b/pyEpiabm/setup.py index ff1118caf..52feec069 100644 --- a/pyEpiabm/setup.py +++ b/pyEpiabm/setup.py @@ -73,6 +73,7 @@ def get_readme(): 'docs': [ # Sphinx for doc generation. Version 1.7.3 has a bug: 'sphinx<7,>=1.5, !=1.7.3', + 'myst_parser', # Nice theme for docs 'alabaster', From 9c4dd3af4fbef5cae62be1c5c23d64aca13999a6 Mon Sep 17 00:00:00 2001 From: kcgallagher Date: Wed, 7 Feb 2024 17:12:17 +0000 Subject: [PATCH 02/19] Include readme in cEpiabm docs --- .gitignore | 1 + cEpiabm/README.rst | 53 ++++++++++++++++++++++++++++++++++++++++++ cEpiabm/docs/index.rst | 3 +-- 3 files changed, 55 insertions(+), 2 deletions(-) create mode 100644 cEpiabm/README.rst diff --git a/.gitignore b/.gitignore index 8b22ff275..2427012b1 100644 --- a/.gitignore +++ b/.gitignore @@ -53,6 +53,7 @@ share/python-wheels/ .installed.cfg *.egg build/ +_build/ build_dir/ MANIFEST diff --git a/cEpiabm/README.rst b/cEpiabm/README.rst new file mode 100644 index 000000000..a0141c3be --- /dev/null +++ b/cEpiabm/README.rst @@ -0,0 +1,53 @@ +cEpiabm +======= + +We provide an efficient and scalable backend in C++, which can run +simulations for populations comparable to the UK in a reasonable +timeframe. This code may be harder than pyEpiabm for new users to +understand, but the parallels with the python code should be +sufficiently informative for those who wish to look deeper into the +code. + +Set up +------ + +Installation of cEpiabm +~~~~~~~~~~~~~~~~~~~~~~~ + +Cmake is used for installation of the cEpiabm software. The following +procedure will compile the code and run all unit tests: + +.. code:: console + + mkdir build_dir + cd build_dir + cmake ../cEpiabm/. -DCMAKE_BUILD_TYPE=Debug + cmake --build . --parallel 2 --target unit_tests + ctest -j2 --output-on-failure + +Note that cmake must be installed on your system. The following command +can be used on ubuntu systems: + +.. code:: console + + sudo apt-get install cmake cmake-data + +Compiling cEpiabm Python Bindings +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Pybind11 is required for compiling cEpiabm with Python bindings. +Pybind11 is added as a git submodule, make sure this submodule is cloned +along with the main epiabm repository. + +Compiling Python bindings follows similar procedure to compiling the +cEpiabm tests: + +.. code:: console + + mkdir build_dir + cd build_dir + cmake ../cEpiabm/. -DCMAKE_BUILD_TYPE=Release -DENABLE_COVERAGE=OFF + cmake --build . --parallel 6 --target epiabm + +cEpiabm’s python bindings will be compiled to a python module named +epiabm, located in ``build_dir/src/epiabm.cpython-(version info).so``. diff --git a/cEpiabm/docs/index.rst b/cEpiabm/docs/index.rst index 1e761e90b..d5757bb82 100644 --- a/cEpiabm/docs/index.rst +++ b/cEpiabm/docs/index.rst @@ -6,8 +6,7 @@ Welcome to C++ Epiabm's documentation! ====================================== -This is the C++ Backend for the EpiAbm Package. - +.. include:: ../README.rst Contents ======== From 5f41b1053dbacb55229e8de25a16d93d2fda7fc3 Mon Sep 17 00:00:00 2001 From: kcgallagher Date: Thu, 8 Feb 2024 18:34:56 +0000 Subject: [PATCH 03/19] Compiler listings --- README.md | 2 ++ cEpiabm/README.rst | 5 +++++ 2 files changed, 7 insertions(+) diff --git a/README.md b/README.md index 679a6a5cc..03bc4d154 100644 --- a/README.md +++ b/README.md @@ -130,6 +130,8 @@ Note that cmake must be installed on your system. The following command can be u sudo apt-get install cmake cmake-data ``` +We recommend the use of the G++ compiler (version 9 or higher) with cEpiabm. If other compilers are used, users should ensure they include the filesystem library, or include this explicitly by inserting `link_libraries(stdc++fs)` in [CMakeLists.txt](cEpiabm\CMakeLists.txt). + ### Compiling cEpiabm Python Bindings Pybind11 is required for compiling cEpiabm with Python bindings. Pybind11 is added as a git submodule, make sure this submodule is cloned along with the main epiabm repository. diff --git a/cEpiabm/README.rst b/cEpiabm/README.rst index a0141c3be..21e6466f8 100644 --- a/cEpiabm/README.rst +++ b/cEpiabm/README.rst @@ -32,6 +32,11 @@ can be used on ubuntu systems: sudo apt-get install cmake cmake-data +We recommend the use of the G++ compiler (version 9 or higher) with +cEpiabm. If other compilers are used, users should ensure they include +the filesystem library, or include this explicitly by inserting +`link_libraries(stdc++fs)` in [CMakeLists.txt](cEpiabm\CMakeLists.txt). + Compiling cEpiabm Python Bindings ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ From f74928186a2bd6c88987730fdb0679e236e337bb Mon Sep 17 00:00:00 2001 From: kcgallagher Date: Thu, 8 Feb 2024 20:37:26 +0000 Subject: [PATCH 04/19] Bugfix - installation issues --- pyEpiabm/pyEpiabm/version_info.py | 2 +- pyEpiabm/setup.py | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/pyEpiabm/pyEpiabm/version_info.py b/pyEpiabm/pyEpiabm/version_info.py index f6ad75892..8ea984176 100644 --- a/pyEpiabm/pyEpiabm/version_info.py +++ b/pyEpiabm/pyEpiabm/version_info.py @@ -6,7 +6,7 @@ # - Changes to minor indicate new features, possible slight backwards # incompatibility # - Changes to revision indicate bugfixes, tiny new features -VERSION_INT = 0, 0, 3 +VERSION_INT = 1, 1, 0 # String version of the version number VERSION = '.'.join([str(x) for x in VERSION_INT]) diff --git a/pyEpiabm/setup.py b/pyEpiabm/setup.py index 52feec069..53ef7bc2f 100644 --- a/pyEpiabm/setup.py +++ b/pyEpiabm/setup.py @@ -25,9 +25,9 @@ def get_version(): def get_readme(): """ - Load README.md text for use as description. + Load README.rst text for use as description. """ - with open('README.md') as f: + with open('README.rst') as f: return f.read() From aa8198e61cc4a8ccac95eec59116ee5e1b1c87fa Mon Sep 17 00:00:00 2001 From: kcgallagher Date: Thu, 8 Feb 2024 23:14:28 +0000 Subject: [PATCH 05/19] Remove myst-parser dependence --- pyEpiabm/docs/source/conf.py | 1 - pyEpiabm/setup.py | 1 - 2 files changed, 2 deletions(-) diff --git a/pyEpiabm/docs/source/conf.py b/pyEpiabm/docs/source/conf.py index 5be8510d2..b9e0ff271 100644 --- a/pyEpiabm/docs/source/conf.py +++ b/pyEpiabm/docs/source/conf.py @@ -37,7 +37,6 @@ 'sphinx.ext.mathjax', 'sphinx.ext.napoleon', 'sphinx.ext.viewcode', - "myst_parser" ] # Autodoc defaults diff --git a/pyEpiabm/setup.py b/pyEpiabm/setup.py index 53ef7bc2f..97d9988a1 100644 --- a/pyEpiabm/setup.py +++ b/pyEpiabm/setup.py @@ -73,7 +73,6 @@ def get_readme(): 'docs': [ # Sphinx for doc generation. Version 1.7.3 has a bug: 'sphinx<7,>=1.5, !=1.7.3', - 'myst_parser', # Nice theme for docs 'alabaster', From d72cbcf838657fbfe11bef5fa4b1df68be6f0f44 Mon Sep 17 00:00:00 2001 From: kcgallagher Date: Thu, 8 Feb 2024 23:59:48 +0000 Subject: [PATCH 06/19] Separate yaml files for each backend --- cEpiabm/docs/.readthedocs.yml | 14 ++++++++++++++ .../docs/.readthedocs.yaml | 0 2 files changed, 14 insertions(+) create mode 100644 cEpiabm/docs/.readthedocs.yml rename .readthedocs.yml => pyEpiabm/docs/.readthedocs.yaml (100%) diff --git a/cEpiabm/docs/.readthedocs.yml b/cEpiabm/docs/.readthedocs.yml new file mode 100644 index 000000000..72e09df12 --- /dev/null +++ b/cEpiabm/docs/.readthedocs.yml @@ -0,0 +1,14 @@ +# .readthedocs.yaml +# Read the Docs configuration file +# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details + +# Required +version: 2 + +# Set the required OS +build: + os: ubuntu-22.04 + +# Build documentation in the docs/ directory with Sphinx +sphinx: + configuration: cEpiabm/docs/conf.py diff --git a/.readthedocs.yml b/pyEpiabm/docs/.readthedocs.yaml similarity index 100% rename from .readthedocs.yml rename to pyEpiabm/docs/.readthedocs.yaml From 3bb2d517fe2653ef1429718ac68990739c219dbd Mon Sep 17 00:00:00 2001 From: kcgallagher Date: Thu, 8 Feb 2024 23:59:48 +0000 Subject: [PATCH 07/19] Separate yaml files for each backend --- cEpiabm/docs/.readthedocs.yaml | 14 ++++++++++++++ .../docs/.readthedocs.yaml | 0 2 files changed, 14 insertions(+) create mode 100644 cEpiabm/docs/.readthedocs.yaml rename .readthedocs.yml => pyEpiabm/docs/.readthedocs.yaml (100%) diff --git a/cEpiabm/docs/.readthedocs.yaml b/cEpiabm/docs/.readthedocs.yaml new file mode 100644 index 000000000..72e09df12 --- /dev/null +++ b/cEpiabm/docs/.readthedocs.yaml @@ -0,0 +1,14 @@ +# .readthedocs.yaml +# Read the Docs configuration file +# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details + +# Required +version: 2 + +# Set the required OS +build: + os: ubuntu-22.04 + +# Build documentation in the docs/ directory with Sphinx +sphinx: + configuration: cEpiabm/docs/conf.py diff --git a/.readthedocs.yml b/pyEpiabm/docs/.readthedocs.yaml similarity index 100% rename from .readthedocs.yml rename to pyEpiabm/docs/.readthedocs.yaml From 4fa525b7377ca044b7b3266900561fe4c5e5eee5 Mon Sep 17 00:00:00 2001 From: kcgallagher Date: Fri, 9 Feb 2024 00:09:35 +0000 Subject: [PATCH 08/19] Remove extra yml file --- cEpiabm/docs/.readthedocs.yml | 14 -------------- 1 file changed, 14 deletions(-) delete mode 100644 cEpiabm/docs/.readthedocs.yml diff --git a/cEpiabm/docs/.readthedocs.yml b/cEpiabm/docs/.readthedocs.yml deleted file mode 100644 index 72e09df12..000000000 --- a/cEpiabm/docs/.readthedocs.yml +++ /dev/null @@ -1,14 +0,0 @@ -# .readthedocs.yaml -# Read the Docs configuration file -# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details - -# Required -version: 2 - -# Set the required OS -build: - os: ubuntu-22.04 - -# Build documentation in the docs/ directory with Sphinx -sphinx: - configuration: cEpiabm/docs/conf.py From 32f67551d0697e51855412550157f7eb822861bc Mon Sep 17 00:00:00 2001 From: kcgallagher Date: Fri, 9 Feb 2024 00:15:07 +0000 Subject: [PATCH 09/19] Updated yaml file with python tool --- cEpiabm/docs/.readthedocs.yaml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/cEpiabm/docs/.readthedocs.yaml b/cEpiabm/docs/.readthedocs.yaml index 72e09df12..d58b30746 100644 --- a/cEpiabm/docs/.readthedocs.yaml +++ b/cEpiabm/docs/.readthedocs.yaml @@ -5,9 +5,11 @@ # Required version: 2 -# Set the required OS +# Set the required OS and Python version build: os: ubuntu-22.04 + tools: + python: "3.10" # Build documentation in the docs/ directory with Sphinx sphinx: From 64167eef54ec9484fc448d0b5ce1671dac0ce653 Mon Sep 17 00:00:00 2001 From: kcgallagher Date: Fri, 9 Feb 2024 00:15:07 +0000 Subject: [PATCH 10/19] Updated yaml file with python tool --- cEpiabm/docs/.readthedocs.yaml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/cEpiabm/docs/.readthedocs.yaml b/cEpiabm/docs/.readthedocs.yaml index 72e09df12..d58b30746 100644 --- a/cEpiabm/docs/.readthedocs.yaml +++ b/cEpiabm/docs/.readthedocs.yaml @@ -5,9 +5,11 @@ # Required version: 2 -# Set the required OS +# Set the required OS and Python version build: os: ubuntu-22.04 + tools: + python: "3.10" # Build documentation in the docs/ directory with Sphinx sphinx: From 5b1fa3950de69b38a87515042c9cf6a53526377d Mon Sep 17 00:00:00 2001 From: kcgallagher Date: Fri, 9 Feb 2024 00:47:24 +0000 Subject: [PATCH 11/19] Updated yaml file --- cEpiabm/docs/.readthedocs.yaml | 4 ++++ cEpiabm/docs/requirements.txt | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/cEpiabm/docs/.readthedocs.yaml b/cEpiabm/docs/.readthedocs.yaml index d58b30746..1e10de6d0 100644 --- a/cEpiabm/docs/.readthedocs.yaml +++ b/cEpiabm/docs/.readthedocs.yaml @@ -14,3 +14,7 @@ build: # Build documentation in the docs/ directory with Sphinx sphinx: configuration: cEpiabm/docs/conf.py + +python: + install: + - requirements: cEpiabm/docs/requirements.txt diff --git a/cEpiabm/docs/requirements.txt b/cEpiabm/docs/requirements.txt index cd6467ed8..58e4bd9ac 100644 --- a/cEpiabm/docs/requirements.txt +++ b/cEpiabm/docs/requirements.txt @@ -1 +1 @@ -breathe +breathe==4.35.0 From f407e03c135a901255e3e4f2248e22050012f002 Mon Sep 17 00:00:00 2001 From: kcgallagher Date: Fri, 9 Feb 2024 00:51:40 +0000 Subject: [PATCH 12/19] Change style of cEpiabm docs --- cEpiabm/docs/conf.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cEpiabm/docs/conf.py b/cEpiabm/docs/conf.py index 0abda9182..3f8ae162e 100644 --- a/cEpiabm/docs/conf.py +++ b/cEpiabm/docs/conf.py @@ -80,7 +80,7 @@ def configure_doxyfile(_input_dir, _output_dir): # The theme to use for HTML and HTML Help pages. See the documentation for # a list of builtin themes. # -html_theme = 'sphinx_rtd_theme' +html_theme = 'alabaster' # Add any paths that contain custom static files (such as style sheets) here, # relative to this directory. They are copied after the builtin static files, From f70af1225f3eba715990f5bdc3db43ae19f1e759 Mon Sep 17 00:00:00 2001 From: kcgallagher Date: Fri, 9 Feb 2024 01:01:30 +0000 Subject: [PATCH 13/19] Remove version requirement on breathe --- cEpiabm/docs/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cEpiabm/docs/requirements.txt b/cEpiabm/docs/requirements.txt index 58e4bd9ac..cd6467ed8 100644 --- a/cEpiabm/docs/requirements.txt +++ b/cEpiabm/docs/requirements.txt @@ -1 +1 @@ -breathe==4.35.0 +breathe From d8a6b4d3cba78e05c6e9f166898bbb65a6edece9 Mon Sep 17 00:00:00 2001 From: rccreswell <56924958+rccreswell@users.noreply.github.com> Date: Fri, 9 Feb 2024 08:46:42 +0000 Subject: [PATCH 14/19] Update cEpiabm/README.rst --- cEpiabm/README.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cEpiabm/README.rst b/cEpiabm/README.rst index 21e6466f8..d8fe28b67 100644 --- a/cEpiabm/README.rst +++ b/cEpiabm/README.rst @@ -35,7 +35,7 @@ can be used on ubuntu systems: We recommend the use of the G++ compiler (version 9 or higher) with cEpiabm. If other compilers are used, users should ensure they include the filesystem library, or include this explicitly by inserting -`link_libraries(stdc++fs)` in [CMakeLists.txt](cEpiabm\CMakeLists.txt). +`link_libraries(stdc++fs)` in [CMakeLists.txt](cEpiabm/CMakeLists.txt). Compiling cEpiabm Python Bindings ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ From aecca629635b19c61bfa8f1e8be089bc2eccce42 Mon Sep 17 00:00:00 2001 From: Kit Gallagher <60467371+KCGallagher@users.noreply.github.com> Date: Fri, 9 Feb 2024 11:31:01 +0000 Subject: [PATCH 15/19] Update README.md Co-authored-by: rccreswell <56924958+rccreswell@users.noreply.github.com> --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 03bc4d154..10a8b406e 100644 --- a/README.md +++ b/README.md @@ -130,7 +130,7 @@ Note that cmake must be installed on your system. The following command can be u sudo apt-get install cmake cmake-data ``` -We recommend the use of the G++ compiler (version 9 or higher) with cEpiabm. If other compilers are used, users should ensure they include the filesystem library, or include this explicitly by inserting `link_libraries(stdc++fs)` in [CMakeLists.txt](cEpiabm\CMakeLists.txt). +We recommend the use of the G++ compiler (version 9 or higher) with cEpiabm. If other compilers are used, users should ensure they include the filesystem library, or include this explicitly by inserting `link_libraries(stdc++fs)` in [CMakeLists.txt](cEpiabm/CMakeLists.txt). ### Compiling cEpiabm Python Bindings From e54c8555fe1b19b6ef8fac9faadbc1d562e44198 Mon Sep 17 00:00:00 2001 From: Kit Gallagher <60467371+KCGallagher@users.noreply.github.com> Date: Fri, 9 Feb 2024 11:31:08 +0000 Subject: [PATCH 16/19] Update cEpiabm/README.rst Co-authored-by: NicholasFan235 <30301848+NicholasFan235@users.noreply.github.com> --- cEpiabm/README.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cEpiabm/README.rst b/cEpiabm/README.rst index d8fe28b67..b7642d609 100644 --- a/cEpiabm/README.rst +++ b/cEpiabm/README.rst @@ -35,7 +35,7 @@ can be used on ubuntu systems: We recommend the use of the G++ compiler (version 9 or higher) with cEpiabm. If other compilers are used, users should ensure they include the filesystem library, or include this explicitly by inserting -`link_libraries(stdc++fs)` in [CMakeLists.txt](cEpiabm/CMakeLists.txt). +`link_libraries(stdc++fs)` in [CMakeLists.txt](src/CMakeLists.txt). Compiling cEpiabm Python Bindings ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ From 8e53615ce07839e08d5e36ee617f4e41de8c6a09 Mon Sep 17 00:00:00 2001 From: kcgallagher Date: Fri, 9 Feb 2024 11:35:33 +0000 Subject: [PATCH 17/19] Remove link from rst file --- cEpiabm/README.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cEpiabm/README.rst b/cEpiabm/README.rst index b7642d609..a02d45ed2 100644 --- a/cEpiabm/README.rst +++ b/cEpiabm/README.rst @@ -35,7 +35,7 @@ can be used on ubuntu systems: We recommend the use of the G++ compiler (version 9 or higher) with cEpiabm. If other compilers are used, users should ensure they include the filesystem library, or include this explicitly by inserting -`link_libraries(stdc++fs)` in [CMakeLists.txt](src/CMakeLists.txt). +`link_libraries(stdc++fs)` in the `CMakeLists.txt` file. Compiling cEpiabm Python Bindings ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ From 02f5f6ac1e8df4c205ff1d0252a008713a11916a Mon Sep 17 00:00:00 2001 From: kcgallagher Date: Fri, 9 Feb 2024 11:44:28 +0000 Subject: [PATCH 18/19] Correct code environments in rst file --- cEpiabm/README.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cEpiabm/README.rst b/cEpiabm/README.rst index a02d45ed2..63f59c710 100644 --- a/cEpiabm/README.rst +++ b/cEpiabm/README.rst @@ -35,7 +35,7 @@ can be used on ubuntu systems: We recommend the use of the G++ compiler (version 9 or higher) with cEpiabm. If other compilers are used, users should ensure they include the filesystem library, or include this explicitly by inserting -`link_libraries(stdc++fs)` in the `CMakeLists.txt` file. +``link_libraries(stdc++fs)`` in the ``CMakeLists.txt`` file. Compiling cEpiabm Python Bindings ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ From c934d1013fba8f1783e0e28106ec11dc5d86a99e Mon Sep 17 00:00:00 2001 From: Kit Gallagher <60467371+KCGallagher@users.noreply.github.com> Date: Fri, 9 Feb 2024 12:06:48 +0000 Subject: [PATCH 19/19] Update cEpiabm/README.rst Co-authored-by: rccreswell <56924958+rccreswell@users.noreply.github.com> --- cEpiabm/README.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cEpiabm/README.rst b/cEpiabm/README.rst index 63f59c710..3732bfa20 100644 --- a/cEpiabm/README.rst +++ b/cEpiabm/README.rst @@ -35,7 +35,7 @@ can be used on ubuntu systems: We recommend the use of the G++ compiler (version 9 or higher) with cEpiabm. If other compilers are used, users should ensure they include the filesystem library, or include this explicitly by inserting -``link_libraries(stdc++fs)`` in the ``CMakeLists.txt`` file. +``link_libraries(stdc++fs)`` in the ``cEpiabm/CMakeLists.txt`` file. Compiling cEpiabm Python Bindings ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~