Releases: LDEO-CREW/Pythonic-DISORT
v0.8.0
Enabled each output function of pydisort
to switch to its antiderivative by passing the argument is_antiderivative_wrt_tau = True
. For example, flux_up(tau0, is_antiderivative_wrt_tau=True) - flux_up(0, is_antiderivative_wrt_tau=True)
will give the integral of flux_up
over
Full Changelog: v0.7.0...v0.8.0
v0.7.0
Added a lot of documentation and comments to the code. Also, renamed a number of variables, files and functions. Changed the
test points to exactly match those of DISORT (per disotest.f90) which significantly reduces the size of the repository. Fixed a few minor bugs.
Full Changelog: v0.6.2...v0.7.0
v0.6.2
Renamed the NLoops
computational parameter to NFourier
.
Full Changelog: v0.6.1...v0.6.2
v0.6.1
We fixed a bug and reverted a change from the previous release: np.add.at
is not fast enough even with the optimizations to it in NumPy 1.25.0.
Full Changelog: v0.6.0...v0.6.1
v0.6.0
We have further optimized the code to increase speed and reduce memory usage. We have improved our sparse matrix framework to better handle a large number of atmospheric layers. In this and a few other ways, the algorithm has been made more robust. The newly optimized code makes use of np.add.at
which may itself have optimization flaws. Nonetheless, %timeit
tests show our new code to be faster. We also made some quality of life and documentation changes.
Full Changelog: v0.5.0...v0.6.0
v0.5.0
Further optimized PythonicDISORT and removed parallelization option since parallelization will now almost never be worth the overhead. Consequently, joblib
is no longer a dependency. The file structure of the algorithm (in src
) also underwent significant changes.
Full Changelog: v0.4.2...v0.5.0
v0.4.2
v0.4.0
- Removed spherical symmetry assumption from BDRF. The upgraded BDRF feature should now accommodate Hapke, Cox-Munk, RPV and Ross-Li BDR models (and more) but this has not been tested.
- Sped up loops over atmospheric layers and changed the timing tests for PythonicDISORT to better demonstrate the benefits of parallelization and the use of sparse matrices. Increased number of layers from 4 to 16. PythonicDISORT now requires
numpy >= 1.8.0
. - Increased default
use_sparse_NLayers
from 6 to 13.
Full Changelog: v0.3.0...v0.4.0
v0.3.0
Implemented the function generate_diff_act_flux_funcs
in the subroutines
module to generate the diffuse actinic flux functions from u0.
Full Changelog: v0.2.4...v0.3.0
v0.2.4
We no longer set values close to zero to exactly zero as that caused more problems than it solved. We replaced all "np.allclose" and "np.isclose" in the algorithm to speed it up.
Full Changelog: v0.2.3...v0.2.4