From 4ee632698ff80deccfeff3ca9be26bf562baa205 Mon Sep 17 00:00:00 2001 From: Declan <5962877+dec1@users.noreply.github.com> Date: Fri, 10 May 2024 23:39:29 +0200 Subject: [PATCH] add image of clusters (40x40) --- details.md | 2 +- readme.md | 2 ++ supp/img/clusters_40x40.png | Bin 0 -> 24917 bytes supp/img/{clusters.png => clusters_test.png} | Bin 4 files changed, 3 insertions(+), 1 deletion(-) create mode 100644 supp/img/clusters_40x40.png rename supp/img/{clusters.png => clusters_test.png} (100%) diff --git a/details.md b/details.md index d2bef82..f739260 100644 --- a/details.md +++ b/details.md @@ -59,7 +59,7 @@ and I wanted to avoid requiring this of anyone else, wishing to run/test this pr ![alt example](supp/img/grid_seq.png) ![alt test_neigh_01](supp/img/test_neigh_01.png) -![alt clusters](supp/img/clusters.png) + ## Check Typing diff --git a/readme.md b/readme.md index ed61c38..828c2ff 100644 --- a/readme.md +++ b/readme.md @@ -46,5 +46,7 @@ marking a phase transition from low to high connectivity. ![alt example](supp/img/grid_seq.png) + ![alt example](supp/img/clusters_40x40.png) + # Detailed Usage - For detailed setup, usage, and automated tests, see [here](details.md) diff --git a/supp/img/clusters_40x40.png b/supp/img/clusters_40x40.png new file mode 100644 index 0000000000000000000000000000000000000000..fae5657c6d424803d28806a8a1ad0aad5e814dbf GIT binary patch literal 24917 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