Giter Site home page Giter Site logo

psfmachine's Introduction

  • ๐Ÿ‘‹ Hi, Iโ€™m @jorgemarpa
  • ๐Ÿ‘€ Iโ€™m interested in ...
  • ๐ŸŒฑ Iโ€™m currently learning ...
  • ๐Ÿ’ž๏ธ Iโ€™m looking to collaborate on ...
  • ๐Ÿ“ซ How to reach me ...

psfmachine's People

Watchers

 avatar

Forkers

christinahedges

psfmachine's Issues

Saturated pixels often have a "halo" around them, which will break our method.

Saturated stars cause a halo of light, and any stars that are inside this halo shouldn't be analyzed with this method.

We could do an investigation into how to build the halo shape of a saturated star, in order to remove it.

A good first approach might be to take the FFIs, identify the saturated stars, and come up with a data-driven approach to choose which pixels to remove/discount because they are in a halo.

Model iteration should be in the `build_model` stage

At the moment there is a build_model and fit_model step. This is great. When we run fit_model, it is actually iterating. This is not what we want, we want a first step to build the model, which iterates to remove significant outliers, and then a second step which fits that model.

`build_machine` should accept a user specified mask on which TPFs to train on

At the moment, build_machine selects which TPFs/sources to run on itself. It would be very useful to allow the user to specify their own mask, which would select which TPFs to build the model on. By doing this, we could pass in additional TPFs that we might want to train on. This would augment the masks that go on under the hood.

Possible use case:
We should pass in two copies of the same (uncontaminated) TPF, one original copy, and one copy where e.g. half the pixels have been removed (a test copy). We should train only on original copies, and then apply the model to both the copies. By comparing the resultant light curves, we'll be able to see how good our method is at returning the true flux.

Default phi spacing is too narrow in `_make_A_wcs`

The default knot spacing in _make_A_wcs is too narrow to capture the fine detail of the PSF. Here's a model with the current spacing:

image

It looks like it's not capturing the fine detail, the knots are too widely separated. Increasing the knots to 10 seems like a good fix:

image

Gaia query does not return all targets

I'm testing out psfmachine, and have come across the following issue. It looks like Gaia is not identifying all the targets in TPFs. This is a test of the 100 TPFs around K2-18.

test

You can see lots of TPFs aren't highlighted. I set a pretty tolerant magnitude limit (down to 20th magnitude) and they still aren't being found. This -could- be a bandpass problem, but I'm not sure. It seems like we might have to rely on both Gaia (for source positions and source identification) and the original mission input catalogs (for additional source identification) . This creates a bit of a nasty crossmatch problem.

psfmachine does not currently produce a good model fit.

I've been testing PSF machine on some K2 data. It seems like there is a problem with the model fit. I am using 100 TPFs, and psfmachine gives the following fit:
image

This is not a good fit to the data. It does this whether I use bin=True or bin=False.

I run the following to get this result:

tpfs = lk.search_targetpixelfile('K2-18', cadence='long', campaign=1, limit=100, radius=3*u.deg).download_all()
tpfs = lk.TargetPixelFileCollection([tpf for tpf in tpfs if tpf.hdu[0].header['kepmag'] > 10])
a = psm.Machine.from_TPFs(tpfs, magnitude_limit=20)
a.build_model()
a.fit_model()

There's definitely something funny going on!

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.