I am interested in studying the morphology of galaxies on the LSST, I have seen that the DP0.1 “reference” catalog has some columns associated with a Vaucouleur and exponential fit (“modelfit_CModel_dev_…” and “modelfit_CModel_exp_…”) but I haven’t found the relation between these and the common elliptical profile parameters (half-light radius, positional angle, axial ratio). How are these parameters related?
Hi @furcelay, thanks for your interest in DP0 and for this question.
I have looked for (but cannot yet find) a concise explanation of the modelfit_CModel paramters and their relation to more commonly-known galaxy profile parameters. I’ll bring this post to the attention of some Rubin staff who I think could better answer the question, and post some related information below.
I know the following doesn’t answer your question – and maybe you already know this – but the DP0.1 “reference” table available via the TAP service also has elliptical Gaussian adaptive moments in the “base_SdssShape_” columns (as does the “forced_photometry” table). So until I (or someone else) finds and posts relevant modelfit_CModel documentation, those common parameters are there and could be used.
I’m not sure if you’d be interested in more information on adaptive moment shape parameters, but just for completeness and for any other users reading this post: the LSST Data Products Definitions document references Bernstein & 2002, AJ, 123, 583, and TBH the place I typically return to for a reminder of how the adaptive moments relate to the half-light radii and position angle is the Source Extractor documentation – it won’t use the same column names but it’s a good general reference.
As a final note (more to myself and any others here to answer the question), I briefly looked at:
- The documentation for lsst.meas.modelfit, which computes these parameters, but it is not yet complete (lsst.meas.modelfit — LSST Science Pipelines).
- The doxygen site for this code but I didn’t see anything immediately relevant (LSST Applications: lsst::meas::modelfit; Source Measurement via Model Fitting).
- The two talks on Thursday 19 March during the Rubin Algorithms Workshop in 2020, on galaxy model fitting and shape measurement, by @jbosch, but the slides I looked at didn’t deal directly with output parameters
_xy columns that I think you found are the parameters of the half-light ellipses for the exponential and de Vaucouleurs models. You can find the mapping between those parameters and other ellipse parameters in Appendix 3 of the HSC Pipeline Paper. You may want to check out Appendix 2 as well for more information about CModel.
It’s also worth noting that there’s a pretty good chance that we’ll replace CModel with a Sersic or more-principled bulge+disk fit of some kind before DR1, but the replacement isn’t yet being run in production.
With your help I’ve been able to get the parameters that I was looking for. For anyone who wants these parameters they can be obtained with python in the following way from the reference catalog:
obj_row = 0 # the object we want xx, xy, yy = ref_cat[["modelfit_CModel_dev_ellipse_xx", "modelfit_CModel_dev_ellipse_xy", "modelfit_CModel_dev_ellipse_yy"]] Q = np.array([[xx, xy], [xy, yy]]) eig_val, eig_vec = np.linalg.eig(Q) a = np.sqrt(np.max(eig_val)) # major axis b = np.sqrt(np.min(eig_val)) # minor axis a_indx = np.argmax(eig_val) cos_t, sin_t = eig_vec[0, a_indx], -eig_vec[1, a_indx] theta = np.rad2deg(np.arctan2(sin_t, cos_t)) # position angle r_eff = np.sqrt(a * b) # effective radius q = b / a # axial ratio