Releases: HajimeKawahara/exojax
Release v1.6
Version 1.6
The target for version 1.6 is to introduce features that facilitate the application to more practical data.
Also, v 1.6 will be the fixed version of ExoJAX2 prior to the paper II submission. a pre-release of ExoJAX2 ( v2.0).
- practical use of a cloud model. See
documents/tutorials/jupiters
@HajimeKawahara @YuiKasagi @takayukkotani - comprehensive review @ykawashima
- eq methods (and neq ) in
opa
andmdb
to enable to use == (and !=) operators. #509 - compatible to radis 0.15.2, in particular, "vaex as an option" strategy #500 #506
- as a result, ExoJAX supports python 3.9 3.10, 3.11, 3.12,
- new
art
,ArtAbsPure
, computes a pure absorption spectrum w/ and w/o a single reflection at Psurf.
Comparison
- Comparison with a tabulated cross section #491
- with pRT #427 @ykawashima
Bug Fixes
- side effect on a multiple call of
opa
#510 - Stark broadening #489 @chonma0ctopus
- solar abundance definition (
utils.zsol.nsol
) #535
Changes
removed
recexomol
#501- lpf.auto_crosssection #498
- utils.recexomol #501
Sij0
attribute from api.py (MdbExomol
,MdbHitemp
,MdbHitran
) #515atm.mixratio.vmr2mmr
,atm.mixratio.mmr2vmr
(useatm.atmconvert.vmr_to_mmr
,atm.atmconvert.mmr_to_vmr
instead)spec.dit.dtauM_vald_old
all methods in dynamics
package
getE.getE
,rvfunc.rvcoref
,rvfunc.rvf
,rvfunc.rvf2
,rvfunc.rv_semi_amplitude
,rvfunc.rvf1
,
several methods in spec.rtransfer
(deprecated since v1.5)
dtauM
,dtauCIA
,dtauHminus
,dtauVALD
,pressure_layer
renamed
- line_strength_ref_original was introduced for line strength at T=Tref_original, instead of
line_strength_ref
#515 - self.line_strength_ref (which depends on self.Tref) -> self.line_strength(Tref) #515
instances_from_dataframe
->attributes_from_dataframe
changes arguments
qr_interp(T)
->qr_interp(T,Tref)
inMdbExomol
#515qr_interp(iso,T)
->qr_interp(iso,T,Tref)
inMdbHitemp/Hitran
#515qr_interp_line(T)
->qr_interp_line(T,Tref)
inMdbHitemp/Hitran
#515
new methods
- computes X, Y, Z,
utils.zsol.mass_fraction_XYZ(number_ratio_elements)
#535
Science Grade ExoJAX Examples (external)
- exojaxample_WASP39b HMC-NUTS analysis of JWST WASP37b (ERS) transmission spectrum by @sh-tada
- exojaxample_jupiter HMC-NUTS analysis of Jupiter reflection spectrum as taken by petitIRD
Release v1.5.1 (patch)
This patch is to accommodate the specification changes on the ExoMol website.
See #496 for the details.
Release v1.5
Release version 1.5
Target
The target of version 1.5 is the radiative transfer. This includes a more sophisticated radiative transfer for pure absorption (i.e. the intensity-based scheme, petitRadtrans like one), with scattering, reflection lights (flux-adding scheme based on Robinson and Crisp (2018), LART), more test and improvements of transmission (incl. bug fix), and so on.
Feature List
Radiative Transfer
Important: the default RT scheme has been the intensity-based scheme w/ 8 streams (ibased), in ArtEmisPure for instance, since version 1.5 (more accurate and faster than the flux based, fbased, see #475, #457 ). This may change the result slightly because of the difference of the RT scheme.
- Intensity-based radiative transfer for pure absorption #411 #412 #419
- Toon-type two-stream radiative transfer (with scattering/reflection), flux-adding (and LART) #428 #477
- Forward modeling of the reflection spectrum, with an example of Jupiter's reflection spectrum. #477
- transmission improvements (Simpson) and more tests #421 #424 #463 #464
Scattering
- Rayleigh scattering #115 #430 #434
- Cloud (Mie) scattering using Ackerman and Marley cloud model #477
Other Improvements
- OLA-based convolution of the response (spin and IP) #417
- telluric line fitting #450
- OpaCont includes H-, Rayleigh, Mie, and CIA #434 #480
Big Fixes
- bugfix for non-constant gravity #447
- enables to compute gradients for transmission #463 #464
- enables OpaDirect for VALD #404
- optelower for HITEMP #454
- slight change (uses nansum) in the f-based transfer #475
- 32 bit issue for mmw #473
Minor Issues
- valid auto T-range became wider than the previous version #345 #456 #466
- allows 32bit for MultiMol #461
See here for more details.
Release v1.4.2 (hotfix for v1.4)
release note v1.4.2
Since version 1.3, ExoJAX contained a critical bug (#414) related to the setting of the pressure layer. This release fixes that bug. From v1.3 to v1.4.1, dParr
calculated with pressure_layer_logspace
, and consequently the layer optical depth calculated using this, was about half of its intended value. Please update urgently.
Release v1.4.1 (hotfix for v1.4)
This release includes the updates raised in #405 in addition to v1.4.
Release v1.4
Target
Version 1.4 targets broadband analysis (e.g., at least the entire H-band) of clear-sky late T dwarf emission; it also adds the capability of a pilot version of transmission spectroscopy.
Update List
- pilot version of the transmission spectra capability #356| tutorial
- operators on spectra class #363 (pilot) | see get started
- multiple molecules handler #388 | tutorial
-
OpaDirect
for Kurucz #400 - Non air broadening using the fitting formula by Tan et al. (2022) #378 | doc
- required device memory estimate #385 | doc
- single broadening parameter for PreMODIT #376 | doc
- uncertainty importing for HITEMP (for HITRAN, we postpone the release until the new release of RADIS) #397
- refactoring more, many small improvements , see here.
removing deprecated features and renaming
- spec.rtransfer.wavenumber_grid -> use utils.grids.wavenumber_grid instead
- spec.rtransper.dtauM -> use spec.layeropacity.layer_optical_depth
changes
- ExoJAX now
stronglyrecommends using 64-bit as default #385, unless you are confident that 32-bit is enough for computation.
from jax import config
config.update("jax_enable_x64", True)
- Users can choose the order of the wavelength grid, but the default is now descending order though v<=1.3 assumes the ascending order. #395
hotfix for v1.3
Version 1.3.1 fixes the bug related to HITEMP/H2O opacity computation.
- in set_grid.py the negative value was not allowed for the density grid. So, users could have removed the negative temperature exponent of the HITEMP/H2O. But, this modification could have removed some important H2O lines.
The following is the comparison, @ykawashima made: The blue lines removed the lines with n_air < 0.01, yellow clipped to n_air = 0, green no restriction for HITEMP H2O.
Release v1.3
Release Note Version 1.3
Since v1.3, PreMODIT (device-memory friendly calculator) is one of the standard opacity calculators of ExoJAX.
New Features
- more GPU memory saved method in PreMODIT (so called diffmode) #332
- opacity calculator class
opa
#346 see this tutorial - atmospheric RT class
art
#346 - optimal Elower max (reducing device memory use) in PreMODIT #331 #332 see this tutorial
- optional quantum states #336 #338 see this tutorial
- faster IP and spin convolutions #350
- molecular mass
mdb.molmass
available #328
schematics of mdb/opa/art classes
See http://secondearths.sakura.ne.jp/exojax/tutorials/get_started.html
Bug Fix
#341 MODIT/PreMODIT/DIT
#353 pressure reference point in spec.rtransfer.pressure_layer
Obsolescence and Replacement
- moldb relationals, instead, fully replaced to
api
(for ExoMol and HiTEMP/HITRAN) - autospec, instead, new interfaces,
opa
andart
available
Release v1.2
Release Note Version 1.2
ExoJAX Version 1.2 allows modelings with a number of molecular lines (for instance, 100 million lines) using a new algorithm (but beta version), PreMODIT. Also, the I/O of the molecular databases were switched to a common api with the RADIS team from the original one. Several other improvements in a spin rotation, instrumental responses are include.
Major changes
- Moved on a common I/O of molecular/atomic database with radis.api for ExoMol/HITRAN/HITEMP #272
- Removed old moldb for ExoMol/HITRAN/HITEMP
- PreMODIT algorithm, applicable to a wide wavenumber range #265 #287 #288 #307
- Memory saved version of spin rotation and instrumental response #295
Minor changes
- Solved unintended 4GB limit for MODIT #286
- Plotting tool to draw tau=1 height as a function of wavenumber #301
- molecular mass from HITRAN #269
- bug fixes #278 #285 #286 #303 #315
- refactoring...
gallery
Using PreMODIT, we can simulate an emission spectrum in wider wavenumber range (A100/80GB, x-axis wavelength AA):
Simpler new logo ;)
Release 1.1.3 (patches)
The changes by this release are listed as below:
- patch to adopt the recent JAX change of unsupport of
jax.ops.index
#248 #249 - setdgm for HITRAN/HITEMP #253
- doc updates, HITRAN, Krucz, jaxopt