Skip to content

Releases: Goobley/Lightweaver

Minor fixes and versioning support

26 Jan 18:19
Compare
Choose a tag to compare
  • Improve path handling (mostly seemed to work, but was not correct)
  • Fix some missing arguments in the validation of optional arguments to Atmosphere.make_1d introduced in v0.7.6.
  • Better filter for numpy/numba versions. Need numpy internals to restabilise (and numba to catch up) to remove the upper limit.

v0.7.6

22 Dec 15:12
c5c2c02
Compare
Choose a tag to compare

Fixed some possible crashes, and added additional validation to Atmosphere.make_1d and LwAtmosphere to reduce the probability of incorrectly sized arrays arriving in the backend.

Enabled Universal2 builds for ARM on macOS

03 Oct 20:58
Compare
Choose a tag to compare

Removed AVX compiler flags on macOS as it isn't supported on Rosetta2 for the new ARM machines. The ARM component of the universal2 build is not properly tested, due to the lack of native conda/miniconda support for this platform at the moment, but should now be installable and usable directly from pyPI without illegal instruction problems.

Disabled ARM Builds

17 Sep 20:45
Compare
Choose a tag to compare

Due to reported illegal instruction problems, the ARM builds have been disabled. Hopefully will be able to re-enable when I can personally test. The Rosetta 2 approach works fine for now (even if not optimal in performance terms).

Improved edge case treatments in 2D

12 Aug 20:09
Compare
Choose a tag to compare

Fixes:

  • Lower thermalised boundaries improved in non-periodic grids (they could occasionally wrap before, but this is a non issue unless one is doing very strange things with the photosphere). Better formalised now.
  • In some situations final column purely vertical ray would be forced to degenerate to linear solution (when using BESSER).

Apple ARM Support & Bug Fixes

12 Aug 14:13
Compare
Choose a tag to compare

Fixes:

  • Bug relating to fully vertical rays in 2D formal solver
  • Dimensioned view for SpeciesStateTable

Features:

  • Python 3.9 Wheels
  • Apple ARM Wheels

nlteStartingPops bug fix

04 Aug 11:36
Compare
Choose a tag to compare

Several mistakes on conditions in the very rarely used nlteStartingPops path of compute_eq_pops and iterate_lte_ne_eq_pops now corrected.
For compute_eq_pops this path ends up equivalent to simply setting the NLTE or detailed static populations in the SpeciesStateTable after the fact. This path may be needed for iterate_lte_ne_eq_pops when some of the populations are known and need to be taken into account for the electron density.

Updated 2D Boundary Conditions

03 Aug 17:33
Compare
Choose a tag to compare

This update should significantly improve the usability of 1D boundary conditions (for use with 2D simulations) with compute_rays, in particular for when a single ray is used e.g. for muz=0.9. This is used in cases of things like MsLw2d.

So long as the boundary condition returns an array of [Nlambda, Nrays, Ndepth] as before everything should work, (see BoundaryCondition.muz etc and BoundaryCondition.indexVector for the ordering as always), but it should now be easier for single upgoing rays (not vertical, as this worked trivially before, and continues to do so), just return a [Nlambda, 1, Ndepth] array from compute_bcs synthesised at the right angle.

This also adds an upOnly argument to compute_rays and formal_sol which helps to avoid unintended boundary condition access from the down ray in 2D. This also halves the cost of the formal solution used in compute_rays, but is likely to be pretty minor overall.

v0.6.1

21 Jul 11:30
Compare
Choose a tag to compare

Fixes:

  • Bug fix for full Stokes compute_rays. Thanks @wtbarnes #30.

Features:

  • Added printUpdate parameter to most Context methods that otherwise print their iteration update progress. This defaults to True for no default change in behaviour. Inspired by #27.
  • Added recompute_gII method to LwTransition (accesible through ctx.activeAtoms[x].trans[x].recompute_gII()). For PRD lines this lazily indicates that the redistribution function needs to be recomputed (e.g. if the atmospheric parameters have been adjusted). This will be recomputed the next time .prd_redistribute is called on the Context.

Misc:

  • Updated README and added references to preprint.

Grotrian Diagram & BESSER Bug Fixes

08 Jun 17:14
Compare
Choose a tag to compare

A function for plotting Grotrian Diagrams has been added to utils.
Additionally, bug fixes for the BESSER formal solver in 2D with fixed boundary conditions which could attempt to "wrap-around" the grid, despite the fixed boundary conditions. Now correctly falls back to linear for the final column of each sweep in this setting.