diff options
Diffstat (limited to 'gnu/packages/astronomy.scm')
-rw-r--r-- | gnu/packages/astronomy.scm | 112 |
1 files changed, 98 insertions, 14 deletions
diff --git a/gnu/packages/astronomy.scm b/gnu/packages/astronomy.scm index 439fdf72a8..c59f4d02a4 100644 --- a/gnu/packages/astronomy.scm +++ b/gnu/packages/astronomy.scm @@ -89,6 +89,58 @@ #:use-module (ice-9 match) #:use-module (srfi srfi-1)) +(define-public alfa + (package + (name "alfa") + (version "2.2") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/rwesson/ALFA") + (commit (string-append "v" version)))) + (sha256 + (base32 + "0aqxqar36822mh373awsl79j7zn8vik4yddyydsxv0c76gn4i2k3")) + (file-name (git-file-name name version)))) + (build-system gnu-build-system) + (arguments + (list #:parallel-build? #f + #:make-flags #~(list (string-append "PREFIX=" + #$output) + (string-append "VERSION=" + #$version)) + #:phases #~(modify-phases %standard-phases + (delete 'configure) + (delete 'check) + (add-after 'install 'post-install-check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (invoke "make" "fittest"))))))) + (inputs (list cfitsio gfortran)) + (home-page "https://nebulousresearch.org/codes/alfa/") + (synopsis "Automated line fitting algorithm") + (description + "This package provides @acronym{ALFA, Automatic line fitting algorithm}, +which can identify and fit hundreds of lines in emission line spectra in just a +few seconds with following features: +@itemize + +@item A population of synthetic spectra is generated using a reference line +catalogue. + +@item The goodness of fit for each synthetic spectrum is calculated. The best +sets of parameters are retained and the rest discarded. + +@item A new population of synthetic spectra is obtained by averaging pairs of +the best performers. + +@item A small fraction of the parameters of the lines in the new generation are +randomly altered. + +@item The process repeats until a good fit is obtained. +@end itemize") + (license license:gpl3))) + (define-public aocommon (let ((commit "7329a075271edab8f6264db649e81e62b2b6ae5e") (revision "1")) @@ -1412,6 +1464,35 @@ re-gridding of images from one world coordinate system to another e.g. changing the pixel resolution, orientation, coordinate system.") (license license:bsd-3))) +(define-public python-sgp4 + (package + (name "python-sgp4") + (version "2.21") + (source + (origin + (method url-fetch) + (uri (pypi-uri "sgp4" version)) + (sha256 + (base32 "1vzcrlrlzmhbycdz16m8v241l8zx49vsy81wcd0yjxs80isvhyb1")))) + (build-system python-build-system) + (propagated-inputs + (list python-numpy)) + (home-page "https://github.com/brandon-rhodes/python-sgp4") + (synopsis "Track earth satellite TLE orbits using SGP4") + (description + "This package provides a Python implementation for computations of the +position and velocity of an earth-orbiting satellite, given the satellite’s +@acronym{TLE, Two-line element set} orbital elements from a source like +@url{CelesTrak, https://celestrak.org/}. + +It implements the most recent version of @acronym{SGP4, Simplified General +Perturbation models}, and is regularly run against the SGP4 test suite to make +sure that its satellite position predictions agree to within 0.1 mm with the +predictions of the standard distribution of the algorithm. This error is far +less than the 1–3 km/day by which satellites themselves deviate from the ideal +orbits described in TLE files.") + (license license:expat))) + (define-public python-sunpy (package (name "python-sunpy") @@ -1810,12 +1891,12 @@ provide you with detailed information about each pass.") (license license:gpl2+))) (define-public sgp4 - ;; No tagged releases, use commit directly. - (let ((commit "ca9d4d97af4ee62461de6f13e0c85d1dc6000040") - (revision "1")) + ;; Version tag v1.0 is dated to <2021-01-11>, use the lates commit instead. + (let ((commit "6a448b4850e5fbf8c1ca03bb5f6013a9fdc1fd91") + (revision "2")) (package (name "sgp4") - (version (git-version "0.0.0" revision commit)) + (version (git-version "1.0" revision commit)) (source (origin (method git-fetch) @@ -1824,17 +1905,20 @@ provide you with detailed information about each pass.") (commit commit))) (file-name (git-file-name name version)) (sha256 - (base32 "1xwfa6papmd2qz5w0hwzvijmzvp9np8dlw3q3qz4bmsippzjv8p7")))) + (base32 "15q8sain87cbppmzq66y6gp6bvm3kdd1bcchrl59rcvjp0w51wl1")))) (build-system cmake-build-system) (arguments - `(#:phases - (modify-phases %standard-phases - (replace 'check - (lambda _ - ;; Tests fails, probably because of a few "(e <= -0.001)" errors. - ;; Or maybe this is not the right way to run the tests? - ;; (invoke "runtest/runtest") - #t))))) + (list + ;; FIXME: Tests evaluated via runtest binary, but it's failing even + ;; when SGP4-VER.TLE file was copied next to it during install phase. + ;; + ;; There are 2 more binaries are created after build phase - + ;; passpredict and sattrack which are failing to execute after + ;; install, strace output: + ;; + ;; strace: exec: Exec format error + ;; + #:tests? #f)) (home-page "https://github.com/dnwrnr/sgp4") (synopsis "Simplified perturbations models library") (description @@ -1873,7 +1957,7 @@ It can be used to calculate the trajectory of satellites.") (native-inputs (list boost pkg-config)) (inputs - (list cfitsio freeimage glew wxwidgets)) + (list cfitsio freeimage glew wxwidgets-3.0)) (home-page "https://github.com/GreatAttractor/imppg") (synopsis "Astronomical Image Post-Proccessor (ImPPG)") (description |