Todos#
Todo
Change back to Picasso version to check if lidar calibration constants get more similar.
(The original entry is located in /mnt/c/Users/radenz/dev/PicassoPy/PicassoPy/ppcpy/calibration/lidarconstant.py:docstring of ppcpy.calibration.lidarconstant.lc_for_cldFreeGrps, line 31.)
Todo
Check if LC’s are normalized with respect to the mean of the profiles.
(The original entry is located in /mnt/c/Users/radenz/dev/PicassoPy/PicassoPy/ppcpy/calibration/lidarconstant.py:docstring of ppcpy.calibration.lidarconstant.lc_for_cldFreeGrps, line 32.)
Todo
Write docstring.
(The original entry is located in /mnt/c/Users/radenz/dev/PicassoPy/PicassoPy/ppcpy/calibration/rayleighfit.py:docstring of ppcpy.calibration.rayleighfit.rayleighfit, line 26.)
Todo
not yet implemented from matlab version
(The original entry is located in /mnt/c/Users/radenz/dev/PicassoPy/PicassoPy/ppcpy/cloudmask/cloudscreen.py:docstring of ppcpy.cloudmask.cloudscreen.cloudScreen_Zhao, line 4.)
Todo
that might be covered via the mcps conversion
(The original entry is located in /mnt/c/Users/radenz/dev/PicassoPy/PicassoPy/ppcpy/interface/picassoProc.py:docstring of ppcpy.interface.picassoProc.PicassoProc.filter_or_correct_false_mshots, line 4.)
Todo
This is just a first draft for a docstring. Improve it. There is more processes and outputs of the function.
(The original entry is located in /mnt/c/Users/radenz/dev/PicassoPy/PicassoPy/ppcpy/interface/picassoProc.py:docstring of ppcpy.interface.picassoProc.PicassoProc.preprocessing, line 13.)
Todo
Decide on a consistent way for doing the aggregation, do not mix mean and sum
(The original entry is located in /mnt/c/Users/radenz/dev/PicassoPy/PicassoPy/ppcpy/interface/picassoProc.py:docstring of ppcpy.interface.picassoProc.PicassoProc.aggregate_profiles, line 4.)
Todo
Not yet implemented!
(The original entry is located in /mnt/c/Users/radenz/dev/PicassoPy/PicassoPy/ppcpy/interface/picassoProc.py:docstring of ppcpy.interface.picassoProc.PicassoProc.loadAOD, line 4.)
Todo
- flagTransCor = True:
Fix the GHK - Transmission correction
- flagTransCor = False:
Check if it is correct to use the BG corrected signal and find a better solution. It is a bit confusing to overwrite the signal as it is called sigTCor but actually is sigBGCor Like storing a dedicated signal dict to be used throuhot the processing, the dictionary could have elements like signal (sig), background (bg), and name. which we could overwrite each time a new correction is made. And by checking the name of the signal (TCor, BGCor) you can find out which signal it is.
(The original entry is located in /mnt/c/Users/radenz/dev/PicassoPy/PicassoPy/ppcpy/interface/picassoProc.py:docstring of ppcpy.interface.picassoProc.PicassoProc.transCor, line 4.)
Todo
Add option to read constants from database.
(The original entry is located in /mnt/c/Users/radenz/dev/PicassoPy/PicassoPy/ppcpy/interface/picassoProc.py:docstring of ppcpy.interface.picassoProc.PicassoProc.LidarCalibration, line 4.)
Todo
Find out how we prioritise raman, klett, and database retrieved LC…
(The original entry is located in /mnt/c/Users/radenz/dev/PicassoPy/PicassoPy/ppcpy/interface/picassoProc.py:docstring of ppcpy.interface.picassoProc.PicassoProc.LidarCalibration, line 5.)
Todo
Variables ‘force’ and ‘polly_files_list’ are not defined anywhere ..
(The original entry is located in /mnt/c/Users/radenz/dev/PicassoPy/PicassoPy/ppcpy/misc/helper.py:docstring of ppcpy.misc.helper.checking_attr, line 26.)
Todo
Finish docstring and remove all unnecessary comments
Could think of moving the scale convertion to after the loops ie. form PCR to PC
(The original entry is located in /mnt/c/Users/radenz/dev/PicassoPy/PicassoPy/ppcpy/preprocess/pollyPreprocess.py:docstring of ppcpy.preprocess.pollyPreprocess.pollyDTCor, line 44.)
Todo
Clarify the background treatment. The bgTCor should not change (i.e. assuming the vdr is 0?)
(The original entry is located in /mnt/c/Users/radenz/dev/PicassoPy/PicassoPy/ppcpy/qc/transCor.py:docstring of ppcpy.qc.transCor.transCor_E16_channel, line 44.)
Todo
What is returned by the function and what is described in the docstring does not corresponed.
(The original entry is located in /mnt/c/Users/radenz/dev/PicassoPy/PicassoPy/ppcpy/qc/overlapEst.py:docstring of ppcpy.qc.overlapEst.overlapCalcRaman, line 69.)
Todo
This function uses a mix of ppcpy.misc.helper.unifrom_filter and scipy.ndimage.uniform_filter1d for smoothing. This is done to avoid NaN-value related errors. A better more cohesive solution should be precude in the future.
(The original entry is located in /mnt/c/Users/radenz/dev/PicassoPy/PicassoPy/ppcpy/qc/overlapEst.py:docstring of ppcpy.qc.overlapEst.overlapCalcRaman, line 71.)
Todo
Be cearfull with NaN values! scipy.ndimage.uniform_filter1d used for smoothing in this module will propagate any NaN values present in the signal throughot the rest of the smoothed signal. Additionaly, here we are using mode ‘reflect’ for padding (see scipy.ndimage.uniform_filter1d documentation). This might not be the most optimal mode, the other availabel mode should also be considered. Optimally, should we designe our own filter for this purpuse that do not have the issue with propagating NaN values, Like what is used in the rest of the modules. However, without reducing dimension or filling in NaN values.
(The original entry is located in /mnt/c/Users/radenz/dev/PicassoPy/PicassoPy/ppcpy/qc/overlapEst.py:docstring of ppcpy.qc.overlapEst.overlapCalcRaman, line 76.)
Todo
could have also been in helpers, but that seems more on organizing stuff… while this is an calculation, in the matlab version this function is used more than 20 times
(The original entry is located in /mnt/c/Users/radenz/dev/PicassoPy/PicassoPy/ppcpy/retrievals/collection.py:docstring of ppcpy.retrievals.collection.calc_snr, line 4.)
Todo
Should sigBGCor, sigTCor or RCS be used for the Klett retrievals?
(The original entry is located in /mnt/c/Users/radenz/dev/PicassoPy/PicassoPy/ppcpy/retrievals/klettfernald.py:docstring of ppcpy.retrievals.klettfernald.run_cldFreeGrps, line 61.)
Todo
Define m (Unsure if this m addition is needed).
(The original entry is located in /mnt/c/Users/radenz/dev/PicassoPy/PicassoPy/ppcpy/retrievals/klettfernald.py:docstring of ppcpy.retrievals.klettfernald.fernald, line 64.)
Todo
sigma_angstroem and MC_count are hardcoded. Can this be automated?
in raman_ext calulations we use a different hard coded MC_count than the global parameter.
Should sigBGCor, sigTCor or RCS be used for the Raman retrievals? RCS dampens the effect form the wrong first bin and makes the profile more straight (insted of the s-shape) in the lower bins.
(The original entry is located in /mnt/c/Users/radenz/dev/PicassoPy/PicassoPy/ppcpy/retrievals/raman.py:docstring of ppcpy.retrievals.raman.run_cldFreeGrps, line 68.)
Todo
moving_smooth_varied_win function is not yet implemented.
moving_linfit_varied_win function is not yet implemented.
Investigate what smothing function is used, Savitzky-Golay or something else?
(The original entry is located in /mnt/c/Users/radenz/dev/PicassoPy/PicassoPy/ppcpy/retrievals/raman.py:docstring of ppcpy.retrievals.raman.raman_ext, line 68.)
Todo
Angstroem is an float in beta_aer calculations and an array of shape (1, ) in beta_aer_std claculations.
(The original entry is located in /mnt/c/Users/radenz/dev/PicassoPy/PicassoPy/ppcpy/retrievals/raman.py:docstring of ppcpy.retrievals.raman.calc_raman_bsc, line 77.)
Todo
Should the GHK-Transmission corrected (TCor) or the Background corrected (BGCor) signal be used for calculating the volume depolarisation ratio?
(The original entry is located in /mnt/c/Users/radenz/dev/PicassoPy/PicassoPy/ppcpy/retrievals/depolarization.py:docstring of ppcpy.retrievals.depolarization.voldepol_cldFreeGrps, line 2.)