New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
version 1.0 #61
Open
mirochaj
wants to merge
383
commits into
main
Choose a base branch
from
v1
base: main
Could not load branches
Branch not found: {{ refName }}
Could not load tags
Nothing to show
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
version 1.0 #61
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
…generalize for cases when not scalable
…sis when re-processed SED changes as function of halo properties
…y for unzipping/tarring
…der for SIMPL model generation
…line luminosities (from Inoue) by Ha (should be Hb)
…en doing emissivity calculations
… packaging updates
…ransmission routine after refactor
…neous IGM transmission
…ummed over wrong axis for ps cross terms
…Hz^-1 when providing line emission by hand
…ground flux, must have changed convention there at some pt
…in ebl flux caused by convention change
…ass, and use of interpolate_cosmology_in_z parameter
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR represents a major change to ARES that breaks backward compatibility, and so will become version 1.0 once accepted. From then on, the goal is to use semantic versioning, keep test coverage near ~100%, and try to keep up with the documentation better than in the past.
There are many big changes, but the ones that will be most noticeable to people already familiar with ARES are:
$HOME/.ares
. Previously, we used a subdirectory within the ARES build directory, which often caused problems on clusters, and was awkward for many other reasons.remote.py
script. For example, to download NIRCAM transmission curves one can simply typeares download nircam
from anywhere on the command line, and they will be neatly tucked away in$HOME/.ares/nircam
.ares.simulations.Simulation
, which has methods for common models of interest likeget_21cm_gs
(to run global 21-cm signal models), which replaces the previous approach of calling individual objects likeGlobal21cm
and then executing therun
method.Simulation
object without supplying any parameters! The workflow is instead to start from a base set of parameters, likely drawn from aParameterBundle
, with modifications applied subsequently.litdata
, has been moved toares.data
, with the primary functionread
. So, to pull in dictionaries of data, one can do something like, e.g.,b15 = ares.data.read('bouwens2015')
.ares.static
has been renamedares.core
.ares.populations
classes had a__getattr__
method that could be used to find and even create non-existent attributes based on the contents of the parameter file. The hope here was to allow anything to be parameterized, and alleviate users and developers from having to implement new functions inares.populations
classes all the time to accommodate this. Things are more cumbersome now (i.e., there are manyget_<something>
routines inares.populations
objects), but I think much, much clearer.get_<something>
, lookup tables are attributes namedtab_<something>
, and routines that create big lookup tables are calledgenerate_<something>
. You might need to update some call sequences if you access internal methods much, e.g.,LuminosityFunction
is nowget_lf
,StellarMassFunction
is nowget_smf
, and so on.ares.realizations
, for (you guessed it) generating realizations of ARES models. This is extremely preliminary and you'll find no documentation for it. Contact me if you're interested.This PR is not yet ready for review, but I wanted to get the ball rolling and to see how the tests were doing. I'd like to continue updating documentation, tests, and potentially port to PyPi as well. I will keep updating until it is in slightly more respectable shape. In the meantime, if any recent users have some spare cycles and want to check things out, any and all input is totally welcome and much appreciated! @plaplant @gjsun @JudahRockLuberto @JJHibbard. You'll probably want to build the documentation locally in order to see updated examples.