Coder Social home page Coder Social logo

fedeoli / gammasearch Goto Github PK

View Code? Open in Web Editor NEW
1.0 1.0 0.0 2.4 MB

This repo develops an algorithm that locates gamma ray sources coordinates from source images in .fits format. The main algorithm is written in C/C++ while the analysis part is in python

Python 62.00% Shell 0.03% C++ 37.98%
algorithm python c fits-files

gammasearch's Introduction

gammasearch

This repo develops an algorithm that locates gamma ray sources coordinates from source images in .fits format. The main algorithm is written in C while the analysis part is in python

  1. REQUIREMENTS: in order to correctly run and use this library you need to install:

    -) gammalib ( git clone https://cta-gitlab.irap.omp.eu/gammalib/gammalib.git )

    -) ctools ( git clone https://cta-gitlab.irap.omp.eu/ctools/ctools.git )

    -) opencv library

    -) CFITSIO library ( https://heasarc.gsfc.nasa.gov/fitsio/ )

  2. PROVIDED FILES: -) data_analysis.py : This function aims to process big amounts of source images in order to perform some statistical analysis on the number of estimated sources and their estimated positions, expressed in RA and DEC.

    -) map_creator.py : function devoted to randomly generate astronomic coordinates and intensity of gamma ray sources. Also the number of sources per map is randomly generated

    -) recall.py : function devoted to randomly generate folder of .fits file. To be used if you're not in possess of analyzable data yet

    -) recall_inaf.py : function devoted to randomly generate folder of .fits file. To be used if you're not in possess of analyzable data yet (with specific settings asked for INAF project)

    -) order.py : This library sorts numerically the .fits images in a directory

    -) param_tuning.py: This function aims to tune the parameters of the "analyze_map.bin" algorithm: it just consists of a series of nested loops within which all the possible combinations of parameters are tested by calling "data_analysis.py"

    -) general_analysis.py: This library allows to analyze a general folder full of .fits file, writing the results on a logfile "est_map.log"

    -) analyze_map_source.bin: first version of the sources analyze algorithm

    -) analyze_map_smooth.bin: second version of the sources analyze algorithm

    -) CToolsGammaPipe.py + ExecuteCTools.py + obsutils.py + PipeConfiguration.py + PostAnalysisCopyResults.py : gammalib library files

    -) gamma_algorithm_source.cpp : source code of the first version of the algorithm

    -) gamma_algorithm_source.cpp : source code of the fsecond version of the algorithm

    -) functions.h + functions.cpp : C library for the gamma_algorithm

  3. PROVIDED DIRECTORIES:

    -) CTA3GHextractor + CTAGammaPipeCommon + GammaPipeCommon : directories needed by gammalib

  4. COMPILER OPTIONS :

    -) The C files have been compiled with the following command:

     > g++ -O0 -g3 -Wall -fmessage-length=0 -g -pthread -I/path/to/include/opencv -I/path/to/fitsio/include $(pkg-config --cflags --libs opencv) -lcfitsio -o test gamma_algorithm_version.cpp functions.cpp
    

FOR EACH FUNCTION AN INLINE HELP IS AVAILABLE (except for order.py and param_ which is meant to be used as a library).

> (e.g.) python file.py -h

gammasearch's People

Stargazers

 avatar

Watchers

 avatar

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.