cjordan / Marlu

Convenience Rust code that handles coordinate transformations, Jones matrices, etc.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Marlu

Convenience Rust code that handles coordinate transformations, Jones matrices, etc.

Prerequisites

  • A Rust compiler with a version >= 1.60.0

    $ rustc -V
    rustc 1.63.0 (4b91a6ea7 2022-08-08)

    https://www.rust-lang.org/tools/install

  • ERFA

    • Ubuntu: liberfa-dev
    • Arch: AUR package erfa
    • The library dir can be specified manually with ERFA_LIB
    • If not specified, pkg-config is used to find the library.
    • Use --features=erfa-static to build the library automatically. Requires a C compiler and autoconf.

Optional prerequisites

If using the mwalib feature (true by default):

  • cfitsio
    • Ubuntu: libcfitsio-dev
    • Arch: cfitsio
    • Library and include dirs can be specified manually with CFITSIO_LIB and CFITSIO_INC
    • If not specified, pkg-config is used to find the library.
    • Use --features=cfitsio-static to build the library automatically. Requires a C compiler and autoconf.

If using the cuda feature (false by default):

  • CUDA
    • Ubuntu: Follow the instructions here
    • Arch: cuda
    • The library directory can be specified manually with CUDA_LIB
    • If not specified, CUDA_LIBRARY_PATH and the /opt/cuda and /usr/local/cuda directories are searched.
    • If CUDA is available, use --features=cuda-static to link it statically.

To link a system-provided static library, use e.g. ERFA_STATIC=1. To link all system-provided static libraries, use PKG_CONFIG_ALL_STATIC=1. To build all C libraries and link statically, use the all-static feature.

Acknowledgement

This scientific work uses data obtained from the Murchison Radio-astronomy Observatory. We acknowledge the Wajarri Yamatji people as the traditional owners of the Observatory site.

This repo is approved by...

CIRA Rust Evangelism Strike Force logo

About

Convenience Rust code that handles coordinate transformations, Jones matrices, etc.

License:Mozilla Public License 2.0


Languages

Language:Rust 99.4%Language:Python 0.4%Language:Dockerfile 0.2%