[AstroPy] Gaussian models fitter non-functional?

banyal banyal at iiap.res.in
Fri Oct 16 23:15:32 EDT 2015



Hi Jeff, 

The fits data is located in hdulist[1].data and not in hdulist[0].data 

g = fit_g(g_init, xx, yy, hdulist[1].data) instead of 

g = fit_g(g_init, xx, yy, hdulist[0].data)

-Ravi

On 2015-10-16 19:06, Jeff Mangum wrote: 

> Thank you Steve. I mis-typed. Yes, "g" is where the fit should be. 
> Unfortunately, it is equal to g_init:
> 
> In [304]: g
> Out[304]: <Gaussian2D(amplitude=1.0, x_mean=55.873445625871355, 
> y_mean=55.410802834496835, x_stddev=1.0, y_stddev=1.0, theta=0.0)>
> 
> Still looks to me like the fitter is not fitting...
> 
> -- Jeff
> 
> On 10/16/15 9:28 AM, Steve Crawford wrote:
> 
>> Hi Jeff-- The fitted model will not be in g_init (this remains unchanged), but in g. If you take a look in g, you should be able to see the fitted results. Cheers Steve ----- Original Message ----- From: "Jeff Mangum" <jmangum at nrao.edu> To: astropy at scipy.org Sent: Friday, October 16, 2015 3:11:56 PM Subject: [AstroPy] Gaussian models fitter non-functional? Hello, Long-time listener but first-time caller. Have been trying to use the 2D Gaussian fitting capabilities within astropy.models to fit a 2D Gaussian to an image (in FITS format). Here is my script: import numpy as np import radio_beam from astropy.modeling import models, fitting from astropy import units as u from astropy.io import fits import astropy.coordinates as coord import astropy.wcs as wcs import matplotlib import pylab as pl # The following is the position of the peak in both J1 and J2, so use # it as the starting guess ra0 = '13h15m03.50s' dec0 = '24d37m08.2s' radeg = coord.Angle(ra0, unit=u.hour).degree de
 cdeg =
coord.Angle(dec0, unit=u.degree) # Now open the image hdulist = fits.open('IC860CbandCarrayH2COJ1_moment0.fits') #hdulist = fits.open('IC860KubandDarrayH2COJ2_moment0.fits') w = wcs.WCS(hdulist[0].header, hdulist) yy,xx = np.indices(hdulist[0].data.shape) x0,y0 = w.wcs_world2pix(radeg, decdeg, 1) # Now fit 2D gaussian g_init = models.Gaussian2D(amplitude=1., x_mean=x0, y_mean=y0, x_stddev=1, y_stddev=1) fit_g = fitting.LevMarLSQFitter() g = fit_g(g_init, xx, yy, hdulist[0].data) When I look at g_init (which is where I believe the fit results should be), I see that the fit has not moved from its initial settings. It appears that the fitter just did not run. With Adam Ginsburg's help I have a workaround using gaussfitter, but would certainly like to make this work with astropy.models. Thanks! -- Jeff _______________________________________________ AstroPy mailing list AstroPy at scipy.org https://mail.scipy.org/mailman/listinfo/astropy [1] !DSPAM:5620f7a993681466218807!
_______________________________________________ AstroPy mailing list AstroPy at scipy.org https://mail.scipy.org/mailman/listinfo/astropy [1]
> 
> _______________________________________________
> AstroPy mailing list
> AstroPy at scipy.org
> https://mail.scipy.org/mailman/listinfo/astropy [1]



Links:
------
[1] https://mail.scipy.org/mailman/listinfo/astropy
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/astropy/attachments/20151017/6d36a66c/attachment.html>


More information about the AstroPy mailing list