Add the crate to your dependencies in your Cargo.toml file, specifying as a git dependency.
pip install procdarn
If you want to build from source, you first need to have Rust installed on your machine. Then:
- Clone the repository:
git clone https://github.com/SuperDARNCanada/procdarn - Run
cargo buildin the repository directory - If wanting to install the Python API, create a virtual environment and source it, then install
maturin - In the project directory, run
maturin developto build and install the Python bindings. This will make a wheel file based on your operating system and architecture that you can install directly on any compatible machine.
Use FITACF3 algorithm to fit a list of RAWACF records
fitacf3(recs: list[dict]) -> list[dict]import procdarn
import dmap
infile = "path/to/rawacf"
rawacf_records = dmap.read_rawacf(infile)
fitacf_records = procdarn.fitacf3(rawacf_records)
dmap.write_fitacf(fitacf_records, "path/to/fitacf")Fit a RAWACF file into a FITACF file
fitacf3_file(rawacf_file: str, fitacf_file: str)import procdarn
procdarn.fitacf3_file("path/to/rawacf", "path/to/fitacf")procdarn::fitacf3_file(raw_file: PathBuf, fit_file: PathBuf) -> Result<(), Fitacf3Error>: Fits a RAWACF file into a FITACF fileprocdarn::fitacf3(Vec<RawacfRecord>) -> Result<Vec<FitacfRecord>, Fitacf3Error>: parallelized FITACFv3 on collection ofRawacfRecords (fromdmapcrate)procdarn::fitacf3_single_threaded(Vec<RawacfRecord>) -> Result<Vec<FitacfRecord>, Fitacf3Error>: single-threaded FITACFv3 implementation
raw2fit: Command-line tool for fitting a RAWACF file using the FITACF3 algorithm.
Usage: raw2fit <INFILE> <OUTFILE>
Arguments:
<INFILE> Rawacf file to fit
<OUTFILE> Output fitacf file path
Options:
-h, --help Print help
-V, --version Print version