snoplusuk / echidna

MIT License
4 stars 12 forks source link

energy smearing script #140

Closed jwaterfield closed 8 years ago

jwaterfield commented 8 years ago

Script which will be used for creating the shared production hdf5s

jwaterfield commented 8 years ago

Do you think that due to the attached plot we should set the default num_sigma to 4? The limits were set using a 2D fit with ROI of 2.3 - 2.7 MeV with 20 keV bins and (r/r_av)**3 0. - 0.3 with 0.05 bins

pois_gaus_sigma_study_hl

ashleyrback commented 8 years ago

@snoplusuk/core please post any comments you have regarding the plot James uploaded and the corresponding proposal to change the default value of num_sigma to 4.

EdLeming commented 8 years ago

Looks reasonable to me. The difference between 4-5 sigma appears <<1%

ashleyrback commented 8 years ago

All tests passed but I got warning:

/home/ashley/snoplus/software/echidna/local/lib/python2.7/site-packages/scipy/optimize/minpack.py:604: OptimizeWarning: Covariance of the parameters could not be estimated
  category=OptimizeWarning)

have you seen ever seen that? Is this something we need to worry about?

ashleyrback commented 8 years ago

Final comment, I've made an issue with some general thoughts about echidna scripts (#146). It would be nice to add some of those features here, mainly logging and main function. I'm happy to merge it without those, but if you've got time it would be good.

Just need to decide on default save directory and then I'm happy to merge.

jwaterfield commented 8 years ago

@ashleyrback Not seen that error before no. Any idea to what its related to?

Not sure about the smear/ dir by default. I've already written the bash script already which will dump the smeared spectra in a smear dir. Can send it over to you if you'd like.

jwaterfield commented 8 years ago

@ashleyrback I can add the #146 points now.

ashleyrback commented 8 years ago

Cool, thanks.

The warning is coming from either test_scale, test_shift or test_smear, where we use scipy.optimise.curve_fit. I think it is still fitting OK as it hasn't raised an exception - so all the unittests actually pass.

OK, maybe it would be better to leave the default as it is then. Yeah could you send me your script please.

ashleyrback commented 8 years ago

The scipy documentation for curve_fit just says it is raised if covariance of the parameters cannot be estimated, which is just what the warning message says.

Without looking into the source code, I'm assuming it fits the curve and then runs some sort of grid serach of the parameter space to estimate the covariance between parameters. For some reason, the fit is working fine (it is obviously fitting out acceptable values for the unittest to pass) but it cannot calculate the covariances of the fit.

ashleyrback commented 8 years ago

Cheers, looks fine. Merging!