In the documentation says that to fit the lines we can use that command:
IDL> objm = obj_new('eis_moment', obj, iwin=iwin, fit='gauss')
But I find two problems, the first of them comes when I try to fit more than one line in the same window. It starts to appear error messages like that:
% MCURVEFIT: Too many repeats, silly lambda value. % MCURVEFIT: Failed to converge, done 8 iterations % CFIT_BLOCK_POINT: Failed at (302,29,0,0,0,0), chi^2 set to zero
and I cannot find a way to extract from objm the values for the different lines that had been fitted. Any idea to do it? or I should cut the window in sub-windows? or there are any other way to do it (maybe without objects..)? Also, is there any way to see the values of wavelength in the xcfit window?
The other problem appears when I want to extract the wavelength, and I do in that way:
IDL> wavel=obj->getlam(iwin) IDL> help,data,wavel DATA FLOAT = Array[104, 512, 41] WAVEL DOUBLE = Array[105]Why am I getting one value more than the number of pixels?
--David Pérez-Suárez, 22 Nov 2024
- I didn't use 'gauss' option before in moment object. I am using 'moment' option, maybe you could try it to see if it works.
- The second problem is caused by some typoes. It will be fixed soon.
IDL> wavel=obj->getlam(iwin) IDL> n_wavel=n_elements(wavel) ;get the number of wavel IDL> wavel=wavel[0:n_wavel-2] ;cut the last element of the 'wavel'
-- Jian,22 Nov 2024