It's slightly confusing and misleading that AbsorberExtractor must initialize using a file. It implies that a new AbsorberExtractor instance must be initialized every time a new ray is to be processed, even though get_absorbers is internally capable of making the supplied AbsorberExtractor object load in new rays.
Additionally, AbsorberExtractor is initialized with a mixture of arguments that apply to either the SPICE or Spectacle extraction methods.
If/when I start working on these, I'll open a linked WIP PR.
It's slightly confusing and misleading that
AbsorberExtractormust initialize using a file. It implies that a newAbsorberExtractorinstance must be initialized every time a new ray is to be processed, even thoughget_absorbersis internally capable of making the suppliedAbsorberExtractorobject load in new rays.ray_filenameshould be removed from theAbsorberExtractorinitializer.AbsorberExtractor.load_ray()should be either explicitly called by the user, or called by theget_spice_absorbersandget_spectacle_absorbermethods using associated arguments.Additionally,
AbsorberExtractoris initialized with a mixture of arguments that apply to either the SPICE or Spectacle extraction methods.verlocity_resargument toget_spice_absorbersandspectacle_restoget_spectacle_absorbers.units_dictandfieldarguments thatget_spice_absorberscurrently takes should be made part of theAbsorberExtractorinitializer.units_dictandfieldshould affect Spectacle data outputs as well. I figure this isn't currently the case because Spectacle was abandoned in favor of SPICE, but if SALSA still wants to support Spectacle I think it should be done.If/when I start working on these, I'll open a linked WIP PR.