Mlogs

Summer Open Source Project Report

This is a Report for my Summer Open Source Project with the Stingray group (member of Open Astronomy), as a part of the Google Summer of Code 2023. Below is a detailed description and results of my project

                        Quasi Periodic Oscillation detection using Gaussian Processes

Project Abstract

In the last few Decades, we have seen a huge increase in the number of X-ray telescopes scanning the skies, allowing us to peer into distant and highly informative astronomical events. The X-ray lightcurves of many interesting events are often quasi-periodic in nature, and their origin is linked to the physics of the event making them an important tool to study these objects.

The current QPO detection methods implemented in Stingray (an Xray TimeSeries Analysis Package) are limited in scope because they are based in the frequency domains. QPO transients are heteroscedastic and non-stationary in nature, which causes a bias in the periodogram methods.

This project deals with adding a Gaussian processes feature that models the time series and performs a sampling search for model hyperparameters. GP’s are Time Domain models and mitigate many shortcomings of frequency domain methods, while also being more flexible and robust.

In this project, I have modified the code by Moritz Huebner for the the stingray library. The code makes a GPResult Class object which takes a Ligthcurve as input and performs Nested Sampling to calculate Evidences for different Models, given their Prior and Log_likelihood functions (Respective Helper functions being get_prior and get_log_likelihood).

The user essentially can make different GP Models by specifying the parameter priors, kernel types and Mean Types. The evidence can be calculated and compared to find wheather a QPO model fits the data better or a Red Noise Model, strengthening or dissmissing the case for a QPO detection. A demonstration notebook is also provided, and will be added to the Stingray Notebooks repository.

read more

Jekyll Markdown examples

You’ll find this post in your _posts directory. Go ahead and edit it and re-build the site to see your changes. You can rebuild the site in many different ways, but the most common way is to run jekyll serve or bundle exec jekyll serve, which launches a web server and auto-regenerates your site when a file is updated.

read more

Advanced examples

Swiss Alps

read more