Code Monkey home page Code Monkey logo

nifty4gemini's Introduction

Nifty4Gemini

Nifty4Gemini's documentation, hosted on ReadtheDocs. DOI MIT license. Nifty4Gemini uses Astropy! Here is a link to the project webpage:

A Python Data Reduction Pipeline for the Gemini-North Near-Infrared Integral Field Spectrometer (NIFS).

Link to the referred paper of the pipeline: https://ui.adsabs.harvard.edu/abs/2019AJ....158..153L/abstract

Full documentation: ReadTheDocs.

This is a new data reduction Python pipeline that uses Astroconda and the Gemini IRAF Package to reduce NIFS data. It offers a complete data reduction process from sorting the data to producing a final flux calibrated and wavelength calibrated combined cube with the full S/N for a science target.

This pipeline is open source and it is supported via the Gemini Data Reduction User Forum.

Any feedback and comments ([email protected]) are welcome!

Copyright

For more details, please read the LICENSE.

How to Submit Bugs and Requests

Very important: do not submit a Gemini help desk ticket!

If you want to report a problem, use the Gemini Data Reduction Forum thread or create an issue in this repo.

Installation

Pre-Requisites

Make sure you have the latest version of Gemini Astroconda installed, have activated an Astroconda environment and have set up PYRAF. You can find instructions for installing Astroconda here. PYRAF can be set up by running the mkiraf command in your "~/iraf" directory.

Installing

From PyPi.org:

pip install nifty4gemini

Installing in Editable Mode

If you want to edit the Nifty source code, it's recommended to install Nifty in editable Mode. First obtain the Nifty source code. You can do this by downloading and unpacking the latest release or cloning this github repository.

Once you have the source code, change to the top level of the source code directory (you should see the setup.py file). Run:

pip install -e .

to install Nifty in editable mode. Now you can edit your copy of the Nifty source code and run it without having to reinstall every time.

Quick Start

To run Nifty4Gemini, getting data reduction parameters from an interactive input session:

runNifty nifsPipeline -i

To run Nifty in full-automatic mode with default input parameters, provide the -f flag and a full local path to the raw data or a Gemini Program ID string (Eg: GN-2013A-Q-62).

runNifty nifsPipeline -f <data_location>

Acknowledgment

Referred paper of the pipeline: https://ui.adsabs.harvard.edu/abs/2019AJ....158..153L/abstract

License

See the LICENSE file in the current directory. Note that downloadFromGeminiPublicArchive does not use the MIT license. Refer to the LICENCE file in the downloadFromGeminiPublicArchive directory to view the appropriate license.

nifty4gemini's People

Contributors

mrlb05 avatar nat1405 avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar

nifty4gemini's Issues

iraf.imarith() causing problems

Hi Marie,

It looks like iraf.gemini() and iraf.gemarith() are not playing nicely together. I put together a solution using astropy and numpy but I thought you should know.

The problem was that when iraf.gemini() was called in a previous script to iraf.imarith, imarith would fail. So, calling iraf.gemini in nifsTelluric definitely caused imarith calls in nifsFluxCalibration to fail.

I noticed similar issues with the imarith calls in nifsTelluric. I had to implement them as well with astropy and numpy.

One pro is that we see more of what is going on with astropy and numpy.

One thing to keep in mind is that iraf tasks sometimes need header info to do their jobs. When I tried to throw away the headers in nifsTelluric in my makeshift imarith, iraf.telluric complained and crashed with "illegal floating point error" messages.

I've gotten the first integration test to pass without errors. Let me know if you or anyone knows why iraf was throwing these funny errors.

Cheers,
Nat

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.