/MP_ISRO_T8

ISRO Problem Statement for Inter-IIT 2022 Tech Meet: Web App for Light Curve Data Analysis

Primary LanguagePythonMIT LicenseMIT

Project Heimdall

License: MIT

Contents

Overview

Project Heimdall is a stand-alone web-based application using Streamlit.io to identify and categorize X-ray bursts.

Submission for the Inter-IIT Tech Meet's Mid Prep event: ISRO'S Web-Based Automatic Identifiaction Of Solar Bursts In X-Ray Light Curves

Team: MP_ISRO_T8

Installation

Prerequisites

An active internet connection is required to run the application, unless you build the application from source. In order to build application from source, click here

Windows

  1. Download and unzip the zip file from here
  2. Once unzipped, click on Heimdall.exe to launch the application

MacOS

  1. Download and unzip the zip file from here
  2. Once unzipped, click on Heimdall.app to launch the application

Linux and it's various distributions

  1. Download and unzip the zip file from here
  2. Once unzipped, run the following command to cd into the dirctory using the terminal
cd Heimdall-linux-x64
  1. Then run the following command to run the binary
./Heimdall

Local Setup

Prerequisites

  1. Python3

Setup

  1. Clone the repository using
git clone https://github.com/Heimdallr-Rig/MP_ISRO_T8.git
  1. Create a virtual environment, using:
virtualenv venv
  1. Activate the virtual environment using:
source venv/bin/activate
  1. cd into the repo and install dependencies using the following command
pip install -r requirements.txt
  1. Run the app using
streamlit run app.py
  1. On successful deployment you should get the following output. Click on the Local URL to open the application in your browser
  You can now view your Streamlit app in your browser.

  Local URL: http://localhost:8501
  Network URL: http://xx.xx.xx.xx:8501

Demo

Once the app is up and running , you'll be welcomed with a very simple welcome screen with an upload option. We support the following file extensions: lc, csv, ascii, txt, xls, xlsv, xlsm, xlsb, odf, odt

The files are then extracted for data using a pretty neat library called Astropy. This data is then further processed using various methods and processed.

image

Once the files are uploaded

To know if the app is processing your data, look at the upper right corner to see the status of your upload

IMG_0649

Once done, we get the following outputs. Each section comes with a description of each of our steps, making it easier to follow along

In order to get the output shown below we used the ch2_xsm_20211111_v1_level2.lc file under the data directory here

Section 1: Raw Data Input

Here we visualise the data with a graph to plot the raw data before any processing

raw_data_input

Section 2: Data After Noise Reduction

noise_red

Section 3: Peaks Observed from Input Data

peaks

Section 4: Wavelet Analysis and LC Solar Flare Classification

analysis

Features

Heimdall being a web app has dynamic graphs that are interactive, improving accessibility by supporting dragging and scrolling. You can also hover your mouse over points on the graph to view it's co-ordinates.

gif

Documentation

Visit https://bevel-bass-f2e.notion.site/Project-Heimdall-252649f8745b441d88cc9173f43179bc for more details