exojax icon indicating copy to clipboard operation
exojax copied to clipboard

🐈 Automatic differentiable spectrum modeling of exoplanets/brown dwarfs using JAX, compatible with NumPyro and JAXopt

Results 50 exojax issues
Sort by recently updated
recently updated
newest added

I found that in some case, `trans_coeff` in the flux-adding reflection scheme becomes `nan`.

enhancement

This issue requests ExoJAX's support for the Exomol broadener extension implemented in [radis #716](https://github.com/radis/radis/pull/716). Please refer to [radis #742](https://github.com/radis/radis/issues/742) as well.

enhancement
common API compatibility

For transmission spectroscopy, we found that there is essentially no method to significantly reduce device memory usage through layer-by-layer calculations. Therefore, a practical solution is to perform wavenumber-wise stitching. While...

enhancement

I would figure out what parts limit the device memory use and computational costs of the current implementation for transmission spectra. - [x] a naive `opart` (layer-by-layer update of the...

help wanted

Using `treeverse` for the computation of each layer might alleviate the memory-time tradeoff problem, so this will be investigated. It seems that `equinox` has implemented a `scan` with checkpointing functionality....

experimental

|R | 20000 | 40000 | 80000 | | ---- | ---- | ---- | ---- | |`opa`+`art` | ![forward_opa_ard_art_200000](https://github.com/user-attachments/assets/7975ce34-7502-41d1-bfd1-98d2fb52faad)| ![forward_opa_ard_art_400000](https://github.com/user-attachments/assets/31c6b456-1424-4a1b-826c-c3139b74bb4a)| ![forward_opa_ard_art_800000](https://github.com/user-attachments/assets/ce8feb52-1327-4d28-913c-545c025f456b) | | `opart` | ![forward_opart_200000](https://github.com/user-attachments/assets/7265afce-0777-4024-82d9-1b78130a1e35) | ![forward_opart_400000](https://github.com/user-attachments/assets/02922386-ce5b-465a-aa07-de3cd7c4cf2f)| ![forward_opart_800000](https://github.com/user-attachments/assets/99d79341-a52e-4129-a98e-1a9984e5660d)...

The main methods in `atm` are currently `.run()`. But should we directly call the main method? Note that in any case we will keep `.run()` as an alias.

refactoring
maintenance

We would try to add the capability of an emulator-based opacity calculator, developing as [ExoEmulator](https://github.com/HajimeKawahara/exoemulator). Very experimental.

enhancement
experimental

We do not yet have the rotation kernel for (high-res) transmission spectrum.

enhancement
good first issue

The `opa` class (in particular `OpaDirect`) is not yet compatible with atomic databases `adb`. This involves complex issues, so it is undecided whether it will be included in the `ExoJAX2`...

enhancement