zkbt / chromatic

Tools for visualizing spectrosopic light curves, with flux as a function of wavelength and time.
MIT License
14 stars 4 forks source link

Numpy version issue with Starry #82

Closed Pat-Wachiraphan closed 2 years ago

Pat-Wachiraphan commented 2 years ago

There is a problem with numpy incompatibility with starry package. Starry need numpy == 1.20.3 due to theano. However, when this chromatic use numpy==1.20.3 instead of numpy == 1.22.3, it prompted the error that

RuntimeError: module compiled against API version 0xf but this version of numpy is 0xe Traceback (most recent call last): File "/home/patcharapol/work/summer_2022/read_x1dfit.py", line 1, in <module> from chromatic import * File "/home/patcharapol/work/summer_2022/chromatic/chromatic/__init__.py", line 2, in <module> from .rainbows import * File "/home/patcharapol/work/summer_2022/chromatic/chromatic/rainbows/__init__.py", line 1, in <module> from .rainbow import * File "/home/patcharapol/work/summer_2022/chromatic/chromatic/rainbows/rainbow.py", line 1, in <module> from ..imports import * File "/home/patcharapol/work/summer_2022/chromatic/chromatic/imports.py", line 36, in <module> import batman File "/home/patcharapol/anaconda3/envs/multiwave_emission/lib/python3.9/site-packages/batman/__init__.py", line 6, in <module> from .transitmodel import * File "/home/patcharapol/anaconda3/envs/multiwave_emission/lib/python3.9/site-packages/batman/transitmodel.py", line 18, in <module> from . import _nonlinear_ld ImportError: numpy.core.multiarray failed to import

zkbt commented 2 years ago

Thanks, @Pat-Wachiraphan ! I think the best move here is probably to remove batman-package as a required dependency for chromatic.

We'll need to do something to make .inject_transit still work, because I think it is important to have a simple way to simulate a transit dataset. There are a couple of options:

zkbt commented 2 years ago

I think removing the batman-package dependence in here will solve this. I think the nicest solution might be to switch to exoplanet-core, to allow inject_transit to still work but with fewer requirements. Actual exoplanet requires pymc3 too, which can be messy to install, so getting to the minimum required function is probably the way to go.

zkbt commented 2 years ago

It appears possible this might have been solved with the newest version of batman-package, but let's please test it out to see for sure? @Pat-Wachiraphan , could you please try running this alongside starry in the same new environment and seeing if it works now?

Pat-Wachiraphan commented 2 years ago

Yes, it's work! here are all the dependencies I used to successfully run both starry and chromatic

# Name                    Version                   Build  Channel
_libgcc_mutex             0.1                 conda_forge    conda-forge
_openmp_mutex             4.5                       2_gnu    conda-forge
aesara-theano-fallback    0.1.0                    pypi_0    pypi
altair                    4.2.0                    pypi_0    pypi
argon2-cffi               21.3.0                   pypi_0    pypi
argon2-cffi-bindings      21.2.0                   pypi_0    pypi
arviz                     0.12.1                   pypi_0    pypi
astropy                   5.0.4                    pypi_0    pypi
asttokens                 2.0.5                    pypi_0    pypi
attrs                     21.4.0                   pypi_0    pypi
backcall                  0.2.0                    pypi_0    pypi
batman-package            2.4.9                    pypi_0    pypi
beautifulsoup4            4.11.1                   pypi_0    pypi
black                     22.3.0                   pypi_0    pypi
bleach                    5.0.0                    pypi_0    pypi
bokeh                     2.4.2                    pypi_0    pypi
bzip2                     1.0.8                h7f98852_4    conda-forge
ca-certificates           2021.10.8            ha878542_0    conda-forge
cachetools                5.1.0                    pypi_0    pypi
certifi                   2021.10.8        py39hf3d152e_2    conda-forge
cffi                      1.15.0                   pypi_0    pypi
cfgv                      3.3.1                    pypi_0    pypi
cftime                    1.6.0                    pypi_0    pypi
charset-normalizer        2.0.12                   pypi_0    pypi
chromatic-lightcurves     0.1.0                     dev_0    <develop>
click                     8.1.3                    pypi_0    pypi
commonmark                0.9.1                    pypi_0    pypi
corner                    2.2.1                    pypi_0    pypi
cryptography              37.0.2                   pypi_0    pypi
cycler                    0.11.0                   pypi_0    pypi
debugpy                   1.6.0                    pypi_0    pypi
decorator                 5.1.1                    pypi_0    pypi
defusedxml                0.7.1                    pypi_0    pypi
deprecat                  2.1.1                    pypi_0    pypi
dill                      0.3.4                    pypi_0    pypi
distlib                   0.3.4                    pypi_0    pypi
docstring-parser          0.14.1                   pypi_0    pypi
docutils                  0.18.1                   pypi_0    pypi
entrypoints               0.4                      pypi_0    pypi
executing                 0.8.3                    pypi_0    pypi
exoplanet                 0.5.2                    pypi_0    pypi
exoplanet-core            0.1.2                    pypi_0    pypi
fastjsonschema            2.15.3                   pypi_0    pypi
fastprogress              1.0.2                    pypi_0    pypi
filelock                  3.7.0                    pypi_0    pypi
fonttools                 4.33.3                   pypi_0    pypi
ghp-import                2.1.0                    pypi_0    pypi
identify                  2.5.1                    pypi_0    pypi
idna                      3.3                      pypi_0    pypi
importlib-metadata        4.11.4                   pypi_0    pypi
iniconfig                 1.1.1                    pypi_0    pypi
ipykernel                 6.13.0                   pypi_0    pypi
ipython                   8.3.0                    pypi_0    pypi
ipython-genutils          0.2.0                    pypi_0    pypi
ipywidgets                7.7.0                    pypi_0    pypi
jedi                      0.18.1                   pypi_0    pypi
jeepney                   0.8.0                    pypi_0    pypi
jinja2                    3.1.2                    pypi_0    pypi
jsonschema                4.5.1                    pypi_0    pypi
jupyter                   1.0.0                    pypi_0    pypi
jupyter-client            7.3.1                    pypi_0    pypi
jupyter-console           6.4.3                    pypi_0    pypi
jupyter-core              4.10.0                   pypi_0    pypi
jupyterlab-pygments       0.2.2                    pypi_0    pypi
jupyterlab-widgets        1.1.0                    pypi_0    pypi
jupytext                  1.13.8                   pypi_0    pypi
keyring                   23.5.1                   pypi_0    pypi
kiwisolver                1.4.2                    pypi_0    pypi
ld_impl_linux-64          2.36.1               hea4e1c9_2    conda-forge
libffi                    3.4.2                h7f98852_5    conda-forge
libgcc-ng                 12.1.0              h8d9b700_16    conda-forge
libgomp                   12.1.0              h8d9b700_16    conda-forge
libnsl                    2.0.0                h7f98852_0    conda-forge
libuuid                   2.32.1            h7f98852_1000    conda-forge
libzlib                   1.2.11            h166bdaf_1014    conda-forge
markdown                  3.3.7                    pypi_0    pypi
markdown-it-py            2.1.0                    pypi_0    pypi
markupsafe                2.1.1                    pypi_0    pypi
matplotlib                3.5.2                    pypi_0    pypi
matplotlib-inline         0.1.3                    pypi_0    pypi
mdit-py-plugins           0.3.0                    pypi_0    pypi
mdurl                     0.1.1                    pypi_0    pypi
mergedeep                 1.3.4                    pypi_0    pypi
mistune                   0.8.4                    pypi_0    pypi
mkdocs                    1.3.0                    pypi_0    pypi
mkdocs-autorefs           0.4.1                    pypi_0    pypi
mkdocs-exclude            1.0.2                    pypi_0    pypi
mkdocs-jupyter            0.21.0                   pypi_0    pypi
mkdocs-material           8.2.16                   pypi_0    pypi
mkdocs-material-extensions 1.0.3                    pypi_0    pypi
mkdocstrings              0.19.0                   pypi_0    pypi
mypy-extensions           0.4.3                    pypi_0    pypi
nbclient                  0.6.3                    pypi_0    pypi
nbconvert                 6.5.0                    pypi_0    pypi
nbformat                  5.4.0                    pypi_0    pypi
ncurses                   6.3                  h27087fc_1    conda-forge
nest-asyncio              1.5.5                    pypi_0    pypi
netcdf4                   1.5.8                    pypi_0    pypi
nodeenv                   1.6.0                    pypi_0    pypi
notebook                  6.4.11                   pypi_0    pypi
numpy                     1.20.3                   pypi_0    pypi
openssl                   3.0.3                h166bdaf_0    conda-forge
packaging                 21.3                     pypi_0    pypi
pandas                    1.4.2                    pypi_0    pypi
pandocfilters             1.5.0                    pypi_0    pypi
parso                     0.8.3                    pypi_0    pypi
pathspec                  0.9.0                    pypi_0    pypi
patsy                     0.5.2                    pypi_0    pypi
pexpect                   4.8.0                    pypi_0    pypi
pickleshare               0.7.5                    pypi_0    pypi
pillow                    9.1.1                    pypi_0    pypi
pip                       22.1               pyhd8ed1ab_0    conda-forge
pkginfo                   1.8.2                    pypi_0    pypi
platformdirs              2.5.2                    pypi_0    pypi
pluggy                    1.0.0                    pypi_0    pypi
pre-commit                2.19.0                   pypi_0    pypi
prometheus-client         0.14.1                   pypi_0    pypi
prompt-toolkit            3.0.29                   pypi_0    pypi
psutil                    5.9.1                    pypi_0    pypi
ptyprocess                0.7.0                    pypi_0    pypi
pure-eval                 0.2.2                    pypi_0    pypi
py                        1.11.0                   pypi_0    pypi
pycparser                 2.21                     pypi_0    pypi
pyerfa                    2.0.0.1                  pypi_0    pypi
pygments                  2.12.0                   pypi_0    pypi
pymc3                     3.11.5                   pypi_0    pypi
pymc3-ext                 0.1.1                    pypi_0    pypi
pymdown-extensions        9.4                      pypi_0    pypi
pyparsing                 3.0.9                    pypi_0    pypi
pyrsistent                0.18.1                   pypi_0    pypi
pytest                    7.1.2                    pypi_0    pypi
python                    3.9.12          h2660328_1_cpython    conda-forge
python-dateutil           2.8.2                    pypi_0    pypi
python_abi                3.9                      2_cp39    conda-forge
pytkdocs                  0.16.1                   pypi_0    pypi
pytz                      2022.1                   pypi_0    pypi
pyyaml                    6.0                      pypi_0    pypi
pyyaml-env-tag            0.1                      pypi_0    pypi
pyzmq                     23.0.0                   pypi_0    pypi
qtconsole                 5.3.0                    pypi_0    pypi
qtpy                      2.1.0                    pypi_0    pypi
readline                  8.1                  h46c0cb4_0    conda-forge
readme-renderer           35.0                     pypi_0    pypi
requests                  2.27.1                   pypi_0    pypi
requests-toolbelt         0.9.1                    pypi_0    pypi
rfc3986                   2.0.0                    pypi_0    pypi
rich                      12.4.4                   pypi_0    pypi
scipy                     1.7.3                    pypi_0    pypi
secretstorage             3.3.2                    pypi_0    pypi
semver                    2.13.0                   pypi_0    pypi
send2trash                1.8.0                    pypi_0    pypi
setuptools                62.3.1           py39hf3d152e_0    conda-forge
setuptools-scm            6.4.2                    pypi_0    pypi
six                       1.16.0                   pypi_0    pypi
soupsieve                 2.3.2.post1              pypi_0    pypi
sqlite                    3.38.5               h4ff8645_0    conda-forge
stack-data                0.2.0                    pypi_0    pypi
starry                    1.2.0                    pypi_0    pypi
terminado                 0.15.0                   pypi_0    pypi
theano-pymc               1.1.2                    pypi_0    pypi
tinycss2                  1.1.1                    pypi_0    pypi
tk                        8.6.12               h27826a3_0    conda-forge
toml                      0.10.2                   pypi_0    pypi
tomli                     2.0.1                    pypi_0    pypi
toolz                     0.11.2                   pypi_0    pypi
tornado                   6.1                      pypi_0    pypi
tqdm                      4.64.0                   pypi_0    pypi
traitlets                 5.2.1.post0              pypi_0    pypi
twine                     4.0.0                    pypi_0    pypi
typing-extensions         4.2.0                    pypi_0    pypi
tzdata                    2022a                h191b570_0    conda-forge
urllib3                   1.26.9                   pypi_0    pypi
virtualenv                20.14.1                  pypi_0    pypi
watchdog                  2.1.8                    pypi_0    pypi
wcwidth                   0.2.5                    pypi_0    pypi
webencodings              0.5.1                    pypi_0    pypi
wheel                     0.37.1             pyhd8ed1ab_0    conda-forge
widgetsnbextension        3.6.0                    pypi_0    pypi
wrapt                     1.14.1                   pypi_0    pypi
xarray                    2022.3.0                 pypi_0    pypi
xarray-einstats           0.2.2                    pypi_0    pypi
xz                        5.2.5                h516909a_1    conda-forge
zipp                      3.8.0                    pypi_0    pypi
zlib                      1.2.11            h166bdaf_1014    conda-forge
zkbt commented 2 years ago

Hooray!!! I'll close this one out (for now?)!