Sun, 25 Sep 2022 21:45:56 +0300
Attempt at directly referring to measure masses as SliceStorageMut
0 | 1 | |
2 | # pointsource_algs | |
3 | ||
4 | This repository contains [Rust][] codes for the manuscript “_Proximal methods for point source localisation_” by Tuomo Valkonen ⟨tuomov@iki.fi⟩. | |
5 | It concerns solution of problems of the type | |
6 | $$ | |
7 | \min_{μ ∈ ℳ(Ω)}~ F(x) + λ \|μ\|_{ℳ(Ω)} + δ_{≥ 0}(x), | |
8 | $$ | |
9 | where $F(x)=\frac12\|Ax-b\|_2^2$ and $A \in 𝕃(ℳ(Ω); ℝ^m)$, and $ℳ(Ω)$ is the space of Radon measures on the (rectangular) domain $Ω ⊂ ℝ^n$. | |
10 | ||
11 | ## Installation and usage | |
12 | ||
13 | First install the Install [Rust][] compiler and `cargo`. | |
14 | Also install the [GNU Scientific Library][gsl]. On a Mac with [Homebrew][] | |
15 | installed, the latter can be done with | |
16 | ```sh | |
17 | $ brew install gsl | |
18 | ``` | |
19 | Then download [alg_tools][] and unpack it under the same directory as this package. | |
20 | To compile the code and run the experiments in the manuscript, use | |
21 | ```sh | |
22 | $ cargo run --release | |
23 | ``` | |
24 | The `--release` flag is required to build optimised high performance code. | |
25 | Without that flag the performance will be significantly worse. | |
26 | ||
27 | ## Documentation | |
28 | ||
29 | The integrated documentation may be built and opened with | |
30 | ```sh | |
31 | $ carg doc # build dependency docs | |
32 | $ . misc/doc-alias.sh # load KaTeX helper macro | |
33 | $ cargo-d --open # build and open KaTeX-aware docs for this crate | |
34 | ``` | |
35 | The `cargo-d` alias ensures that KaTeX mathematics is rendered in the generated documentation. `Rustdoc` is obsolete rubbish that does not support modern markdown featues, so `cargo doc` does not render mathematics. Instead an ugly workaround is needed. | |
36 | ||
37 | [alg_tools]: https://tuomov.iki.fi/software/alg_tools/ | |
38 | [Rust]: https://www.rust-lang.org/ | |
39 | [gsl]: https://www.gnu.org/software/gsl/ | |
40 | [Homebrew]: https://brew.sh | |
41 | ||
42 |