From 6cffffeadbd2acb408525a7cc65bfd744ef0d5bf Mon Sep 17 00:00:00 2001 From: Raul Infante-Sainz Date: Tue, 23 Apr 2019 20:27:44 +0100 Subject: Python package mpmath added into the template With this commit, we add `mpmath' Python package into the template. This package is a prerequisite of `sympy', a package to do symbolic mathematics. The motivation of adding this package is because it is a dependency of `sympy', which is more widely used into the Python science community. --- reproduce/software/config/installation/TARGETS.mk | 2 +- reproduce/software/config/installation/versions.mk | 2 ++ reproduce/software/make/python.mk | 16 ++++++++++++++++ 3 files changed, 19 insertions(+), 1 deletion(-) (limited to 'reproduce/software') diff --git a/reproduce/software/config/installation/TARGETS.mk b/reproduce/software/config/installation/TARGETS.mk index 4b1ff2e..5aee765 100644 --- a/reproduce/software/config/installation/TARGETS.mk +++ b/reproduce/software/config/installation/TARGETS.mk @@ -38,4 +38,4 @@ top-level-programs = gnuastro # Python libraries/modules. -top-level-python = astropy +top-level-python = astropy mpmath diff --git a/reproduce/software/config/installation/versions.mk b/reproduce/software/config/installation/versions.mk index cfa7f81..0d1010b 100644 --- a/reproduce/software/config/installation/versions.mk +++ b/reproduce/software/config/installation/versions.mk @@ -127,6 +127,7 @@ kiwisolver-version = 1.0.1 keyring-version = 18.0.0 matplotlib-version = 3.0.2 mpi4py-version = 3.0.1 +mpmath-version = 1.1.0 numpy-version = 1.16.2 pip-version = 19.0.2 pycparser-version = 2.19 @@ -140,6 +141,7 @@ setuptools-version = 40.8.0 setuptools_scm-version = 3.2.0 six-version = 1.12.0 soupsieve-version = 1.8 +sympy-version = 1.4 urllib3-version = 1.24.1 virtualenv-version = 16.4.0 webencodings-version = 0.5.1 diff --git a/reproduce/software/make/python.mk b/reproduce/software/make/python.mk index e856906..bdf5fe5 100644 --- a/reproduce/software/make/python.mk +++ b/reproduce/software/make/python.mk @@ -78,6 +78,7 @@ pytarballs = $(foreach t, asn1crypto-$(asn1crypto-version).tar.gz \ libffi-$(libffi-version).tar.gz \ matplotlib-$(matplotlib-version).tar.gz \ mpi4py-$(mpi4py-version).tar.gz \ + mpmath-$(mpmath-version).tar.gz \ numpy-$(numpy-version).zip \ pkgconfig-$(pypkgconfig-version).tar.gz \ pip-$(pip-version).tar.gz \ @@ -92,6 +93,7 @@ pytarballs = $(foreach t, asn1crypto-$(asn1crypto-version).tar.gz \ setuptools_scm-$(setuptools_scm-version).tar.gz \ six-$(six-version).tar.gz \ soupsieve-$(soupsieve-version).tar.gz \ + sympy-$(sympy-version).tar.gz \ urllib3-$(urllib3-version).tar.gz \ webencodings-$(webencodings-version).tar.gz \ virtualenv-$(virtualenv-version).tar.gz \ @@ -162,6 +164,7 @@ $(pytarballs): $(tdir)/%: elif [ $$n = kiwisolver ]; then h=31/60/494fcce70d60a598c32ee00e71542e52e27c978e5f8219fae0d4ac6e2864 elif [ $$n = matplotlib ]; then h=89/0c/653aec68e9cfb775c4fbae8f71011206e5e7fe4d60fcf01ea1a9d3bc957f elif [ $$n = mpi ]; then h=55/a2/c827b196070e161357b49287fa46d69f25641930fd5f854722319d431843 + elif [ $$n = mpmath ]; then h=ca/63/3384ebb3b51af9610086b23ea976e6d27d6d97bf140a76a365bd77a3eb32 elif [ $$n = numpy ]; then h=cf/8d/6345b4f32b37945fedc1e027e83970005fc9c699068d2f566b82826515f2 elif [ $$n = pip ]; then h=4c/4d/88bc9413da11702cbbace3ccc51350ae099bb351febae8acc85fec34f9af elif [ $$n = pkgconfig ]; then h=6e/a9/ff67ef67217dfdf2aca847685fe789f82b931a6957a3deac861297585db6 @@ -175,6 +178,7 @@ $(pytarballs): $(tdir)/%: elif [ $$n = setuptools_scm ]; then h=54/85/514ba3ca2a022bddd68819f187ae826986051d130ec5b972076e4f58a9f3 elif [ $$n = six ]; then h=dd/bf/4138e7bfb757de47d1f4b6994648ec67a51efe58fa907c1e11e350cddfca elif [ $$n = soupsieve ]; then h=0c/52/e9088bb9b96e2d39fc3b33fcda5b4fde9d71473536ac660a1ca9a0958a2f + elif [ $$n = sympy ]; then h=54/2e/6adb11fe599d4cfb7e8833753350ac51aa2c0603c226b36f9051cc9d2425 elif [ $$n = urllib ]; then h=b1/53/37d82ab391393565f2f831b8eedbffd57db5a718216f82f1a8b4d381a1c1 elif [ $$n = virtualenv ]; then h=51/aa/c395a6e6eaaedfa5a04723b6446a1df783b16cca6fec66e671cede514688 elif [ $$n = webencodings ]; then h=0b/02/ae6ceac1baeda530866a85075641cec12989bd8d31af6d5ab4a3e8c92f47 @@ -406,6 +410,11 @@ $(ipydir)/mpi4py: $(tdir)/mpi4py-$(mpi4py-version).tar.gz \ && cp $(dtexdir)/mpi4py.tex $(ictdir)/ \ && echo "mpi4py $(mpi4py-version) \citep{mpi4py2011}" > $@ +$(ipydir)/mpmath: $(tdir)/mpmath-$(mpmath-version).tar.gz \ + $(ipydir)/setuptools + $(call pybuild, tar xf, $<, mpmath-$(mpmath-version), ,\ + mpmath $(mpmath-version)) + $(ipydir)/numpy: $(tdir)/numpy-$(numpy-version).zip \ $(ipydir)/setuptools \ $(ibidir)/openblas \ @@ -495,6 +504,13 @@ $(ipydir)/soupsieve: $(tdir)/soupsieve-$(soupsieve-version).tar.gz \ $(call pybuild, tar xf, $<, soupsieve-$(soupsieve-version), ,\ SoupSieve $(soupsieve-version)) +$(ipydir)/sympy: $(tdir)/sympy-$(sympy-version).tar.gz \ + $(ipydir)/mpmath \ + $(ipydir)/setuptools + exit 1 + $(call pybuild, tar xf, $<, sympy-$(sympy-version), ,\ + SymPy $(sympy-version)) + $(ipydir)/urllib3: $(tdir)/urllib3-$(urllib3-version).tar.gz \ $(ipydir)/setuptools $(call pybuild, tar xf, $<, urllib3-$(urllib3-version), ,\ -- cgit v1.2.1 From 873257380912b88e9f5089bcbe6ec12e5ecef795 Mon Sep 17 00:00:00 2001 From: Raul Infante-Sainz Date: Tue, 23 Apr 2019 20:47:27 +0100 Subject: Python package SymPy added into the template With this commit, we add `sympy' Python package into the template. This is a package to do symbolic mathematics. The motivation is that it is a prerequisite of `sip_tpv' Python package, which is useful to convert SIP distorsion coefficients into PV coefficients (in the context of astronomical images). However, the availability of `sympy' in the template will be useful for anyone interested in this package. --- reproduce/software/bibtex/sympy.tex | 23 +++++++++++++++++++++++ reproduce/software/config/installation/TARGETS.mk | 2 +- reproduce/software/make/python.mk | 10 +++++----- 3 files changed, 29 insertions(+), 6 deletions(-) create mode 100644 reproduce/software/bibtex/sympy.tex (limited to 'reproduce/software') diff --git a/reproduce/software/bibtex/sympy.tex b/reproduce/software/bibtex/sympy.tex new file mode 100644 index 0000000..07aa0e7 --- /dev/null +++ b/reproduce/software/bibtex/sympy.tex @@ -0,0 +1,23 @@ +%% Copyright (C) 2019 Raul Infante-Sainz +%% +%% Copying and distribution of this file, with or without modification, +%% are permitted in any medium without royalty provided the copyright +%% notice and this notice are preserved. This file is offered as-is, +%% without any warranty. + +@article{sympy, + title = {SymPy: symbolic computing in Python}, + author = {Meurer, Aaron and Smith, Christopher P. and Paprocki, Mateusz and \v{C}ert\'{i}k, Ond\v{r}ej and Kirpichev, Sergey B. and Rocklin, Matthew and Kumar, AMiT and Ivanov, Sergiu and Moore, Jason K. and Singh, Sartaj and Rathnayake, Thilina and Vig, Sean and Granger, Brian E. and Muller, Richard P. and Bonazzi, Francesco and Gupta, Harsh and Vats, Shivam and Johansson, Fredrik and Pedregosa, Fabian and Curry, Matthew J. and Terrel, Andy R. and Rou\v{c}ka, \v{S}t\v{e}p\'{a}n and Saboo, Ashutosh and Fernando, Isuru and Kulal, Sumith and Cimrman, Robert and Scopatz, Anthony}, + year = 2017, + month = jan, + keywords = {Python, Computer algebra system, Symbolics}, + abstract = { + SymPy is an open source computer algebra system written in pure Python. It is built with a focus on extensibility and ease of use, through both interactive and programmatic applications. These characteristics have led SymPy to become a popular symbolic library for the scientific Python ecosystem. This paper presents the architecture of SymPy, a description of its features, and a discussion of select submodules. The supplementary material provide additional examples and further outline details of the architecture and features of SymPy. + }, + volume = 3, + pages = {103}, + journal = {PeerJ CompSci}, + issn = {2376-5992}, + url = {https://doi.org/10.7717/peerj-cs.103}, + doi = {10.7717/peerj-cs.103} +} diff --git a/reproduce/software/config/installation/TARGETS.mk b/reproduce/software/config/installation/TARGETS.mk index 5aee765..f1a27a2 100644 --- a/reproduce/software/config/installation/TARGETS.mk +++ b/reproduce/software/config/installation/TARGETS.mk @@ -38,4 +38,4 @@ top-level-programs = gnuastro # Python libraries/modules. -top-level-python = astropy mpmath +top-level-python = astropy sympy diff --git a/reproduce/software/make/python.mk b/reproduce/software/make/python.mk index bdf5fe5..7a818cd 100644 --- a/reproduce/software/make/python.mk +++ b/reproduce/software/make/python.mk @@ -504,12 +504,12 @@ $(ipydir)/soupsieve: $(tdir)/soupsieve-$(soupsieve-version).tar.gz \ $(call pybuild, tar xf, $<, soupsieve-$(soupsieve-version), ,\ SoupSieve $(soupsieve-version)) -$(ipydir)/sympy: $(tdir)/sympy-$(sympy-version).tar.gz \ - $(ipydir)/mpmath \ +$(ipydir)/sympy: $(tdir)/sympy-$(sympy-version).tar.gz \ + $(ipydir)/mpmath \ $(ipydir)/setuptools - exit 1 - $(call pybuild, tar xf, $<, sympy-$(sympy-version), ,\ - SymPy $(sympy-version)) + $(call pybuild, tar xf, $<, sympy-$(sympy-version), ,) \ + && cp $(dtexdir)/sympy.tex $(ictdir)/ \ + && echo "SymPy $(sympy-version) \citep{sympy}" > $@ $(ipydir)/urllib3: $(tdir)/urllib3-$(urllib3-version).tar.gz \ $(ipydir)/setuptools -- cgit v1.2.1 From 217fd1b054546e475c1a4edba571b8611dfefcee Mon Sep 17 00:00:00 2001 From: Raul Infante-Sainz Date: Tue, 23 Apr 2019 22:54:07 +0100 Subject: Python package sip_tpv added into the template With this commit, we add `sip_tpv' Python package into the template. This is a small package to convert SIP distorsion coefficients into PV distorsion coefficients, and the other way around. This package is useful in a astronomical context, specially when `swarp' is going to be used in order to resample images. The reason is that `swarp' only can understand PV distorsion coefficients. --- reproduce/software/config/installation/TARGETS.mk | 2 +- reproduce/software/config/installation/versions.mk | 1 + reproduce/software/make/python.mk | 8 ++++++++ 3 files changed, 10 insertions(+), 1 deletion(-) (limited to 'reproduce/software') diff --git a/reproduce/software/config/installation/TARGETS.mk b/reproduce/software/config/installation/TARGETS.mk index f1a27a2..7ed6960 100644 --- a/reproduce/software/config/installation/TARGETS.mk +++ b/reproduce/software/config/installation/TARGETS.mk @@ -38,4 +38,4 @@ top-level-programs = gnuastro # Python libraries/modules. -top-level-python = astropy sympy +top-level-python = astropy sip_tpv diff --git a/reproduce/software/config/installation/versions.mk b/reproduce/software/config/installation/versions.mk index 0d1010b..7ee36aa 100644 --- a/reproduce/software/config/installation/versions.mk +++ b/reproduce/software/config/installation/versions.mk @@ -139,6 +139,7 @@ scipy-version = 1.2.1 secretstorage-version = 3.1.1 setuptools-version = 40.8.0 setuptools_scm-version = 3.2.0 +sip_tpv-version = 1.1 six-version = 1.12.0 soupsieve-version = 1.8 sympy-version = 1.4 diff --git a/reproduce/software/make/python.mk b/reproduce/software/make/python.mk index 7a818cd..fe3decb 100644 --- a/reproduce/software/make/python.mk +++ b/reproduce/software/make/python.mk @@ -91,6 +91,7 @@ pytarballs = $(foreach t, asn1crypto-$(asn1crypto-version).tar.gz \ secretstorage-$(secretstorage-version).tar.gz \ setuptools-$(setuptools-version).zip \ setuptools_scm-$(setuptools_scm-version).tar.gz \ + sip_tpv-$(sip_tpv-version).tar.gz \ six-$(six-version).tar.gz \ soupsieve-$(soupsieve-version).tar.gz \ sympy-$(sympy-version).tar.gz \ @@ -177,6 +178,7 @@ $(pytarballs): $(tdir)/%: elif [ $$n = setuptools ]; then h=c2/f7/c7b501b783e5a74cf1768bc174ee4fb0a8a6ee5af6afa92274ff964703e0 elif [ $$n = setuptools_scm ]; then h=54/85/514ba3ca2a022bddd68819f187ae826986051d130ec5b972076e4f58a9f3 elif [ $$n = six ]; then h=dd/bf/4138e7bfb757de47d1f4b6994648ec67a51efe58fa907c1e11e350cddfca + elif [ $$n = sip_tpv ]; then h=27/93/a973aab2a3bf0c12cb385611819710921e13b090304c6bd015026cf9c502 elif [ $$n = soupsieve ]; then h=0c/52/e9088bb9b96e2d39fc3b33fcda5b4fde9d71473536ac660a1ca9a0958a2f elif [ $$n = sympy ]; then h=54/2e/6adb11fe599d4cfb7e8833753350ac51aa2c0603c226b36f9051cc9d2425 elif [ $$n = urllib ]; then h=b1/53/37d82ab391393565f2f831b8eedbffd57db5a718216f82f1a8b4d381a1c1 @@ -494,6 +496,12 @@ $(ipydir)/setuptools_scm: $(tdir)/setuptools_scm-$(setuptools_scm-version).tar.g $(call pybuild, tar xf, $<, setuptools_scm-$(setuptools_scm-version), ,\ Setuptools-scm $(setuptools_scm-version)) +$(ipydir)/sip_tpv: $(tdir)/sip_tpv-$(sip_tpv-version).tar.gz \ + $(ipydir)/mpmath \ + $(ipydir)/sympy + $(call pybuild, tar xf, $<, sip_tpv-$(sip_tpv-version), , \ + sip\_tpv $(sip_tpv-version)) + $(ipydir)/six: $(tdir)/six-$(six-version).tar.gz \ $(ipydir)/setuptools $(call pybuild, tar xf, $<, six-$(six-version), ,\ -- cgit v1.2.1 From c67b0b6788abd872bec0ca59d27a021a037b7c29 Mon Sep 17 00:00:00 2001 From: Raul Infante-Sainz Date: Wed, 24 Apr 2019 10:38:24 +0100 Subject: Removed sip_tpv from TARGETS, now it is an optional package With this commit, we let the Python package `sip_tpv' to be optional in order to not install it by default. It is a very specific package and I forgot to remove it from `TARGETS.mk' in the previous commit. --- reproduce/software/config/installation/TARGETS.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'reproduce/software') diff --git a/reproduce/software/config/installation/TARGETS.mk b/reproduce/software/config/installation/TARGETS.mk index 7ed6960..4b1ff2e 100644 --- a/reproduce/software/config/installation/TARGETS.mk +++ b/reproduce/software/config/installation/TARGETS.mk @@ -38,4 +38,4 @@ top-level-programs = gnuastro # Python libraries/modules. -top-level-python = astropy sip_tpv +top-level-python = astropy -- cgit v1.2.1 From eaae4193a3dcffa9ca04583d73a4b0f641489f74 Mon Sep 17 00:00:00 2001 From: Raul Infante-Sainz Date: Wed, 24 Apr 2019 18:26:45 +0100 Subject: Added paper citation of sip_tpv Python package Until now, we were not citing the paper of `sip_tpv' package. With this commit, we have been fix this issue. --- reproduce/software/bibtex/sip_tpv.tex | 16 ++++++++++++++++ reproduce/software/make/python.mk | 10 ++++++---- 2 files changed, 22 insertions(+), 4 deletions(-) create mode 100644 reproduce/software/bibtex/sip_tpv.tex (limited to 'reproduce/software') diff --git a/reproduce/software/bibtex/sip_tpv.tex b/reproduce/software/bibtex/sip_tpv.tex new file mode 100644 index 0000000..14915d4 --- /dev/null +++ b/reproduce/software/bibtex/sip_tpv.tex @@ -0,0 +1,16 @@ +@ARTICLE{sip-tpv, + author = {{Shupe}, D.~L. and {Laher}, R.~R. and {Storrie-Lombardi}, L. and + {Surace}, J. and {Grillmair}, C. and {Levitan}, D. and {Sesar}, B. + }, + title = "{More flexibility in representing geometric distortion in astronomical images}", + year = 2012, + journal = {SPIE}, + volume = 8451, + month = sep, + eid = {84511M}, + pages = {84511M}, + doi = {10.1117/12.925460}, + adsurl = {http://adsabs.harvard.edu/abs/2012SPIE.8451E..1MS}, + adsnote = {Provided by the SAO/NASA Astrophysics Data System} +} + diff --git a/reproduce/software/make/python.mk b/reproduce/software/make/python.mk index fe3decb..ba811ba 100644 --- a/reproduce/software/make/python.mk +++ b/reproduce/software/make/python.mk @@ -496,11 +496,13 @@ $(ipydir)/setuptools_scm: $(tdir)/setuptools_scm-$(setuptools_scm-version).tar.g $(call pybuild, tar xf, $<, setuptools_scm-$(setuptools_scm-version), ,\ Setuptools-scm $(setuptools_scm-version)) -$(ipydir)/sip_tpv: $(tdir)/sip_tpv-$(sip_tpv-version).tar.gz \ - $(ipydir)/mpmath \ +$(ipydir)/sip_tpv: $(tdir)/sip_tpv-$(sip_tpv-version).tar.gz \ + $(ipydir)/mpmath \ $(ipydir)/sympy - $(call pybuild, tar xf, $<, sip_tpv-$(sip_tpv-version), , \ - sip\_tpv $(sip_tpv-version)) + $(call pybuild, tar xf, $<, sip_tpv-$(sip_tpv-version), ,) \ + && cp $(dtexdir)/sip_tpv.tex $(ictdir)/ \ + && echo "sip\_tpv $(sip_tpv-version) \citep{sip-tpv}" > $@ + $(ipydir)/six: $(tdir)/six-$(six-version).tar.gz \ $(ipydir)/setuptools -- cgit v1.2.1