summaryrefslogtreecommitdiff
path: root/gnu/packages/astronomy.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/astronomy.scm')
-rw-r--r--gnu/packages/astronomy.scm112
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