From d0f94713e4385990f0a4fda5488ff47d247620b6 Mon Sep 17 00:00:00 2001 From: Arnaud Vergnet Date: Wed, 25 Nov 2020 09:30:00 +0100 Subject: [PATCH] add more instructions to readme --- Makefile | 13 ++----------- README.md | 33 +++++++++++++++++++++++++-------- 2 files changed, 27 insertions(+), 19 deletions(-) diff --git a/Makefile b/Makefile index b6e6336..01ab017 100644 --- a/Makefile +++ b/Makefile @@ -15,15 +15,6 @@ build: format: ocp-indent --inplace src/* -edit: - codium . -n - -demo: build - @echo $(EXECUTING) - ./ftest.native graphs/graph1 1 2 test/outfile - @echo $(RESULT) - @cat test/outfile - test: build @echo $(EXECUTING) ./ftest.native graphs/graph1 1 2 test/outfile @@ -38,7 +29,7 @@ test: build @dot -Tsvg test/graph_res > test/graph_res.svg @echo "" -run: build +demo: build @echo $(EXECUTING) ./ftest.native graphs/test2 0 5 run/solution @echo $(BUILDING_SVG) @@ -55,7 +46,7 @@ build_circulation: @echo $(COMPILING) ocamlbuild circulationtest.native -run_circulation: build_circulation +demo_circulation: build_circulation @echo $(EXECUTING) ./circulationtest.native circulation_input_graphs/test1 run/circulation_solution @echo $(BUILDING_SVG) diff --git a/README.md b/README.md index 2ee1f32..69f764e 100644 --- a/README.md +++ b/README.md @@ -1,21 +1,38 @@ -Base project for Ocaml project on Ford-Fulkerson. This project contains some simple configuration files to facilitate editing Ocaml in VSCode. +# BE OCAML 4IR -To use, you should install the *OCaml* extension in VSCode. Other extensions might work as well but make sure there is only one installed. -Then open VSCode in the root directory of this repository (command line: `code path/to/ocaml-maxflow-project`). +## Group +* SIMARD Yohan +* VERGNET Arnaud -Features : +## Description + +Ocaml project on Ford-Fulkerson. This project contains some simple configuration files to facilitate editing Ocaml in VSCode. + +This project can compile 2 executables: + - `ftest.native`, the base FF algorithm implementation + - `circulationtest.native`, a circulation-demand problem solved by the use of the FF algorithm. The problem can be found on [Wikipedia](https://en.wikipedia.org/wiki/Maximum_flow_problem#Circulation%E2%80%93demand_problem). + +## Use in VSCode + +To use in VSCode, you should install the `OCaml` extension in VSCode. Other extensions might work as well but make sure there is only one installed. +Then open VSCode in the root directory of this repository. + +### Features : - full compilation as VSCode build task (Ctrl+Shift+b) - highlights of compilation errors as you type - code completion - automatic indentation on file save +## Build and Run A makefile provides some useful commands: - - `make build` to compile. This creates an ftest.native executable - - `make demo` to run the `ftest` program with some arguments + - `make build` to compile the base ff algorithm. This creates an ftest.native executable + - `make test` to run the `ftest` program with some arguments and generate svg files for each tests. You must first uncomment the tests in the `ftest` file. This uses graphs in the `graphs` folder and outputs in the `test` folder. + - `make demo` to run the `ftest` program with some arguments and generate the final svg file. This uses graphs in the `graphs` folder and outputs in the `run` folder. + - `make build_circulation` to compile the circulation-demand problem resolution. This creates a circulationtest.native executable + - `make demo_circulation` to run the `circulationtest` program with some arguments and generate the final svg file. This uses graphs in the `circulation_input_graphs` folder and outputs in the `run` folder. - `make format` to indent the entire project - - `make edit` to open the project in VSCode - `make clean` to remove build artifacts -In case of trouble with the VSCode extension (e.g. the project does not build, there are strange mistakes), a common workaround is to (1) close vscode, (2) `make clean`, (3) `make build` and (4) reopen vscode (`make edit`). +In case of trouble with the VSCode extension (e.g. the project does not build, there are strange mistakes), a common workaround is to (1) close vscode, (2) `make clean`, (3) `make build` and (4) reopen vscode.