patriciogonzalezvivo / hypatia

Licence: other
Geo-Astronomical library for artist

Programming Languages

C++
36643 projects - #6 most used programming language
c
50402 projects - #5 most used programming language

Projects that are alternatives of or similar to hypatia

astrobook
The Astrobook source files
Stars: ✭ 32 (-39.62%)
Mutual labels:  astronomy, astronomical-algorithms
astroCV
Computer Vision library for Astronomy
Stars: ✭ 72 (+35.85%)
Mutual labels:  astronomy
Galaxy Image Classifier Tensorflow
Classify whether an image is of a Spiral or an Elliptical Galaxy using Transfer Learning (Tensorflow)
Stars: ✭ 179 (+237.74%)
Mutual labels:  astronomy
gleam
Galaxy Line Emission & Absorption Modeling
Stars: ✭ 23 (-56.6%)
Mutual labels:  astronomy
Taotie
饕餮:A curated collection of resources for astrophysical research
Stars: ✭ 224 (+322.64%)
Mutual labels:  astronomy
naima
Derivation of non-thermal particle distributions through MCMC spectral fitting
Stars: ✭ 32 (-39.62%)
Mutual labels:  astronomy
Astropy Tutorials
Tutorials for the Astropy Project
Stars: ✭ 174 (+228.3%)
Mutual labels:  astronomy
pyraf
Command language for IRAF based on Python.
Stars: ✭ 48 (-9.43%)
Mutual labels:  astronomy
regions
Astropy package for region handling
Stars: ✭ 52 (-1.89%)
Mutual labels:  astronomy
deepCR
Deep Learning Based Cosmic Ray Removal for Astronomical Images
Stars: ✭ 32 (-39.62%)
Mutual labels:  astronomy
Astropy
Repository for the Astropy core package
Stars: ✭ 2,933 (+5433.96%)
Mutual labels:  astronomy
Allsky
A Raspberry Pi operated Wireless Allsky Camera
Stars: ✭ 225 (+324.53%)
Mutual labels:  astronomy
FITSIO.jl
Flexible Image Transport System (FITS) file support for Julia
Stars: ✭ 46 (-13.21%)
Mutual labels:  astronomy
Topography atlas of space
Code and instructions for making topographic maps of planets and moons
Stars: ✭ 187 (+252.83%)
Mutual labels:  astronomy
frbpoppy
Fast Radio Burst Population Synthesis in Python
Stars: ✭ 23 (-56.6%)
Mutual labels:  astronomy
Pycbc
Core package to analyze gravitational-wave data, find signals, and study their parameters. This package was used in the first direct detection of gravitational waves (GW150914), and is used in the ongoing analysis of LIGO/Virgo data.
Stars: ✭ 177 (+233.96%)
Mutual labels:  astronomy
Lightkurve
A friendly package for Kepler & TESS time series analysis in Python.
Stars: ✭ 232 (+337.74%)
Mutual labels:  astronomy
astronify
Astronomical data sonification.
Stars: ✭ 57 (+7.55%)
Mutual labels:  astronomy
carsus
Atomic Database for Astronomy
Stars: ✭ 18 (-66.04%)
Mutual labels:  astronomy
gpuvmem
GPU Framework for Radio Astronomical Image Synthesis
Stars: ✭ 27 (-49.06%)
Mutual labels:  astronomical-algorithms

HYPATIA

Hypatia is a geo-astronomical library based on the work of Jean Meeus, Mark Huss, Bill Gray, Stuart Lowe, Brandon Rhodes , Daniel Warner, Oliver Montenbruck and Thomas Peleger. Was created mostly for educational purposes, but also to use in different personal artistic projects.

In comparison with other astronomical/geographical libraries created for profesional uses Hypatia have a focus on:

  • reusability and portability
  • realtime performance
  • simplicity of the interface, than other

Hypatia as C++ lib

You can easily add hypatia into your project by adding the include/ and src/ folder or by installing hypatia into your system. For the former option you need to:

sudo apt install cmake swig
mkdir build
cd build
cmake ..
make
sudo make install
#include <sstream>

#include "hypatia/Body.h"
#include "hypatia/Luna.h"
#include "hypatia/Constellation.h"

void main(int argc, char **argv) {

    obs = Observer(40.781098831465, -73.97715657655);

    sun = Body(SUN);
    moon = Luna(LUNA);
    std::cout << "Moon's phase: " << moon.getPhase() << std::endl

    const = Constellation(moon)
    std::cout << "Moon's transit constelation: " << const.getName() << std::endl

    return 0;
}

Hypatia as Python module

First you need to create the package and install it

sudo apt install swig
make install

Note: to install inside anaconda do:

/anaconda3/bin/./python3.7 setup.py install 

Then you can use it as follow:

from hypatia import *

obs = Observer(40.781098831465, -73.97715657655)

sun = Body(SUN)
sun.compute(obs)

moon = Luna(LUNA)
moon.compute(obs)
print("Moon's phase: ", const.getPhase())

const = Constellation(moon)
print("Moon's transit constelation: ", const.getName())

License

Hypatia have a non-commercial open source license.. If you want to use it for a commercial project, you have 30 days trial time. After that please get in touch to [email protected] to purchase a license.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].