Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/ymaan4/RFIClean

Mitigation of periodic as well as narrow-band and spiky/bursty RFI from time-domain filterbank data.
https://github.com/ymaan4/RFIClean

fast-radio-bursts filterbank-data interference interference-cancellation interference-detection interference-identification interference-mitigation neutron-star pulsar pulsars rfi spiky time-domain-astronomy

Last synced: 2 months ago
JSON representation

Mitigation of periodic as well as narrow-band and spiky/bursty RFI from time-domain filterbank data.

Awesome Lists containing this project

README

        

# RFIClean
### Mitigation of periodic and spiky RFI from filterbank data.

RFIClean excises periodic RFI (broadband as well as narrow-band) in
the Fourier domain, and then mitigates narrow-band spectral line RFI
as well as broadband bursty time-domain RFI using robust statistics.
Currently, RFIClean anticipates the input data either in SIGPROC
filterbank format or the GMRT's pulsar data format.

RFIClean was primarily designed to efficiently search and mitigate
periodic RFI from GMRT time-domain data. Over the time, RFIClean has evolved
to mitigate any spiky (in time or frequency) RFI as well, and from any SIGPROC
filterbank format data file. It is written primarily in C. For handling the
filterbank format I/O, RFIClean uses several modules from Duncan Lorimer's SIGPROC
(https://sourceforge.net/p/sigproc/wiki/Home/; thank you Dunc) which are included
here in the src/ext/ folder (some of these codes are also modified suitably).

### Installation:
* For compiling RFIClean, a `Makefile` is included in the package.
* If you want to install the executable at a location other than `RFIClean/bin/`, then change `MYBIN` in the `Makefile` accordingly.
* RFIClean has the following dependencies: `FFTW3` and `PGPLOT`. If these are not included in the regular library paths then amend `LIBS` in the `Makefile` accordingly.
* To compile, run `make`. For installing the executable in your favourite location, run `make install`.
* Once installed, use `rficlean -h` or `rficlean --help` or just `rficlean` to see the usage information.

### Bash-script based parallel processing
For faster processing, use the bash script `crp_rficlean_fil.sh` in RFIClean/bin/ that uses RFIClean on different parts of a single data file simultaneously and then combines the output products at the end --- parallel processing in a rather crude but very efficient way.

To see the usage information, just execute the script without any command line arguments. The flags to be used with `rficlean` while using this script are picked up from a simple text file containing two rows: the first one indicating the block size and the second containing any other flags. For an example of this text file, see `RFIClean/bin/rficlean.flags`.

### Diagnostic plot
RFIClean produces a diagnostic plot showing which Fourier frequencies are
mitigated from the data and how frequently. The plot data are also output
in a file.

### RFIClean paper
Details of the methods used in RFIClean as well as some of the early
scientific contributions of RFIClean can be found [in this paper.](https://arxiv.org/abs/2012.11630)

#
If you find RFIClean useful, it would be great if you could cite the following paper that describes the underlying method in detail: https://arxiv.org/abs/2012.11630 . Thanks!

Yogesh Maan