FiniteHilbertTransform.jl is a Julia package designed to compute the finite version of the Hilbert transformations. This toolbox is inspired by Tricomi's work on the finite Hilbert transform from 1957. In the context of gravitational dynamics, the finite Hilbert transform may be used as a scheme for analytic continuation to the lower half of the complex plane. See Fouvry & Prunet (2022), or Petersen et al. (2024) for details.
Install Julia by following the instructions at julialang.org/downloads/.
To invoke Julia in the Terminal, you need to make sure that the julia
command-line program is in your PATH
.
See here for detailed instructions.
Once Julia installed, obtain the FiniteHilbertTransform.jl
library12 and compile it by running:
julia -e 'using Pkg; Pkg.add(url="https://github.com/JuliaStellarDynamics/FiniteHilbertTransform.jl.git")'
An introductory example is given in examples/run_plasma.jl
. This script will recreate Figure E1 from Fouvry & Prunet (2021).
Download the file by running:
wget https://github.com/JuliaStellarDynamics/FiniteHilbertTransform.jl/blob/main/examples/run_plasma.jl
Run the code with the following command:
$ julia /path/to/run_plasma.jl
This example will first install some required libraries (Plots
, ArgParse
) as needed. These installations might take a few minutes when first called.
The resulting plot will be created in the same folder where you executed the script, and will be called plasmademo.png
.
If you prefer interactive Jupyter notebooks, you will need to install IJulia
following these instructions.
The interactive introduction example is then given in examples/run_plasma.ipynb
.
For those who prefer not to install julia locally, we also provide a Google colab version3 that may be run in the cloud. See here.
To get more familiar with the content of the library and start and design your own use case, you may want to visit the documentation.
Mike Petersen - @michael-petersen - [email protected]
Mathieu Roule - @MathieuRoule - [email protected]
julia -e 'using Pkg; Pkg.rm("FiniteHilbertTransform");'
Footnotes
-
The library is also easy to uninstall: remove the package from the environment by running ↩
-
By default, packages are added to the default environment at ~/.julia/environments/v1.#. It is however easy to create other, independent, projects. If you want to install the
FiniteHilbertTransform
package in a different/test environment, first create a folder to host the environment files (Project.toml and Manifest.toml which will be created later on). Then, for every command line invoking Julia, usejulia --project=/path/to/my_env
instead ofjulia
alone. ↩ -
This notebook is not maintained as a priority. We would recommand you install Julia on your machine to test the library locally. ↩