twVolc / PyCamPermanent

Permanent PiCam (SO2) installation project software
GNU General Public License v3.0
2 stars 2 forks source link

Making all doas/ifit parameters available to config #191

Open twVolc opened 2 months ago

twVolc commented 2 months ago

I think we've had a few discussions about this but I can't see any concrete issue that specifically addresses this.

Essentially, there are some parameters that can be adjusted in the GUI but that are hard-coded rather than defined by the config file initially. Most importantly that I can think of: -start_fit_wave, end_fit_wave -start_stray_wave, end_stray_wave -shift There may be others but these are some important ones that can quite often be adjusted by the user. It would be really useful if these can be added to the config file.

67 might be a useful reference and is at least somewhat related. #84 might also be a bit relevant here.

twVolc commented 1 month ago

@ubdbra001 I think this is an example of an issue that would be really good to address in the near future. It will definitely be needed for GUI-less running and hopefully won't be too difficult. The attributes I listed in the first comment are the main ones at the moment. If I see any others that would be needed I can add them here, but I'm pretty sure these are all of the editable parameters in the GUI that can't be loaded by the config.

ubdbra001 commented 1 month ago

Yeah, this is one of the places where I know the front and back end are entangled so it's definitely required work.

twVolc commented 1 month ago

As far as I understand with parameters like start_fit_wave they're all defined in IFitWorker and I can't see any clear place where they are tangled up in the GUI unless I'm massively missing something there. The GUI does contain links to re-running processing when changing the value, but from the point of view of editing the start up value through a config file it looks like it shouldn't need any untangling.

ubdbra001 commented 1 month ago

Okay, I'm likely mis-remembering then

ubdbra001 commented 3 weeks ago

Currently in ifit_worker alongside the parameters you mentioned (e.g. start_fit_wave) there are also:

https://github.com/twVolc/PyCamPermanent/blob/6f8941b107bae91f4c6cd8f8faa4c2ccf28bf63b/pycam/doas/ifit_worker.py#L54-L65

Should these also be moved to the config file?

twVolc commented 3 weeks ago

I think start/end_fit_wave_init are just initiating and Analyser object with a big range, so we don't ever want this to change and can leave this hidden.

start_fit_wave_2 is a little more complex. This is related to light dilution corrections which I'm not sure I've fully broken out into the GUI yet, and I'm not 100% when changing these would be a good idea. But I think in an ideal world if everything was set up correctly then these would be user configurable. So I guess whilst you're doing this work there's no harm in adding them to the config?

ubdbra001 commented 2 weeks ago

Okay, should we rename them for clarity? Maybe start/end_fit_wave_ld?