diff --git a/README.md b/README.md index 238850b..604c302 100644 --- a/README.md +++ b/README.md @@ -1,9 +1,15 @@ -# What is it? +# What is this? +This a collection of Summation By Parts operators which can be used for solving partial differential equations. The operators has special properties that puts extra emphasis on boundary treatments, ensuring stable (energy bounded) and accurate (4th and 8th order) solutions to some PDEs. + +This is a Rust reimplementation [reimplementation](https://gitlab.com/mulimoen/EulerSolver) of code written during my Masters Thesis, made more general and easier to apply to more equations and cases. + +## Multigrid +This is the frontend for the Compressible Euler Equations, allowing solving the equations on curvilinear multi-block domains. The solver can be run in parallel using a block-per-thread approach (utilising `rayon`). + + +## Webfront This is a test at combining rust+WASM+WebGL+SBP. The prototypes can be seen [here (Maxwell solver)](https://ulimoen.dev/physics/websbp/maxwell), [here (Nonlinear Euler solver)](https://ulimoen.dev/physics/websbp/euler), and [here (shallow water equations)](https://ulimoen.dev/physics/websbp/shallowWater). -# Building -Run `make_wasm.py` or `make_wasm.py -r` for the release version. - -# Running -After building, a http server needs to serve the contents. WASM requires this server to serve files ending with `.wasm` as the `application/wasm` MIME type. +## SBP +The main portion of the library, composed of Traits for the operators, and implementation for some common operators in literature. diff --git a/multigrid/README.md b/multigrid/README.md new file mode 100644 index 0000000..2417148 --- /dev/null +++ b/multigrid/README.md @@ -0,0 +1,8 @@ +# Multigrid + +The input is `json5` files, superset of `json`, but supports comments and trailing commas. Examples of configuration files can be found under `examples`, and most combinations of options are found running the `output_configuration` test: +```sh +cargo test output_configuration -- --nocapture +``` + +Output is on the `hdf5` format, using a group-based system for storing the solution. Use `eulerplot` to plot the solution. diff --git a/webfront/README.md b/webfront/README.md new file mode 100644 index 0000000..abb5f37 --- /dev/null +++ b/webfront/README.md @@ -0,0 +1,12 @@ +# Webfront +Running different SBP solvers in the browser using `WASM`. + +## Building +Run `make_wasm.py -r` to compile the library, and put the finished artifacts and related pieces in the `publish` directory. + +## Running +After building, a http server needs to serve the contents. WASM requires this server to serve files ending with `.wasm` as the `application/wasm` MIME type. Python can be utilised with: +```sh +python3 -m http.server --directory publish +``` +A web browser can then be opened on the link suggested.