Giter Site home page Giter Site logo

snoshews's Introduction

SNOWSHEWS: Supernova NeutrinO SHockwave Effects With SNEWPY

image Image by dreamstudio.ai

Installation Instructions

  1. You will need the packages python-devel (in Linux), pybind11 and setuptools

  2. Modify setup.py to use the correct libraries and paths.

  3. To compile enter

sudo python3 setup.py install
  1. If you don't want to sudo you may want to use the option
--install-lib=destination/directory/

Troubleshooting:

  1. You may have to set the PYTHONPATH environment variable to your PWD and/or wherever the SNOSHEWS module was installed

  2. If the script cannot find the module you may need to put the *.so library in the same directory as your script. The *.so library is in one of the subfolders in the build directory.

  3. SNOSHEWS uses OpenMP. You may want to set the OMP_NUM_THREADS environment variable to a reasonable number for your machine.

snoshews's People

Contributors

jpkneller avatar jostmigenda avatar sybenzvi avatar

Watchers

Chris Tunnell avatar Andrey Sheshukov avatar  avatar Kate Scholberg avatar J Tseng avatar Alec Habig avatar  avatar

snoshews's Issues

add data files as `SNOSHEWS.data` submodule?

The repo includes two sample files (profiles00585_stp.d and profiles00585_Ye.d) which are hard-coded in SNOSHEWS_example.py; so the user has to manually download them and ensure they are in the current working directory.

Unlike in BEMEWS (where the same PREM data files will be used everytime), these data files will need to be different for each progenitor, so users will generally need to provide their own data files. I wonder if it would still be nice to include those files as a submodule[*] to make it easier to run the demo script? Definitely not a high priority, though; we’ve got some more important work to do to get snewpy v2.0, EMEWS and SNOSHEWS out to users first.

[*] I.e. add them to the installable package (sdist or wheel), so users automatically get them when they run pip install. We would then be able to access the files via importlib.resources, similar to the SNOwGLoBES data files.

Publish releases to PyPI

In addition to building SNOSHEWS in GitHub Actions (see #4 and #5), we should add a workflow to automatically publish releases to PyPI. This can reuse much of the machinery developed for BEMEWS in SNEWS2/BEMEWS#10.

Build on Linux and Windows as part of GitHub Actions

In #4, I’ve focussed on getting this to build on macOS; and the workflow is currently skipping Linux and Windows which I can’t test on my machine. @jpkneller and @Sheshuk, could you help with this?

Ideally, this would only require modifying a single install step per OS, to

  1. install any OS-specific dependencies
  2. export the LIBOMP_INCLUDE environment variable

… and everything else should remain unchanged.
(In practice, I suspect it won’t go quite as smoothly; but we should be able to figure this out.)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.