License: arXiv.org perpetual non-exclusive license
arXiv:2404.07780v1 [astro-ph.GA] 11 Apr 2024

Galmoss: A package for GPU-accelerated Galaxy Profile Fitting

Mi Chen Rafael S. de Souza rd23aag@herts.ac.uk Quanfeng Xu Shiyin Shen Ana L. Chies-Santos Renhao Ye Marco A. Canossa-Gosteinski Yanping Cong School of Astronomy and Space Science, University of Chinese Academy of Sciences, 1 East Yanqi Lake Rd., Beijing 100049, P.R. China Shanghai Astronomical Observatory, Chinese Academy of Sciences, 80 Nandan Rd., Shanghai, 200030, China Key Lab for Astrophysics, Shanghai, 200034, China center for Astrophysics Research, University of Hertfordshire, College Lane, Hatfield, AL10 9AB, UK Instituto de Física, Universidade Federal do Rio Grande do Sul, Porto Alegre, RS, Brazil
Abstract

We introduce galmoss, a python-based, torch-powered tool for two-dimensional fitting of galaxy profiles. By seamlessly enabling GPU parallelization, galmoss meets the high computational demands of large-scale galaxy surveys, placing galaxy profile fitting in the LSST-era. It incorporates widely used profiles such as the Sérsic, Exponential disk, Ferrer, King, Gaussian, and Moffat profiles, and allows for the easy integration of more complex models. Tested on 8,289 galaxies from the Sloan Digital Sky Survey (SDSS) g-band with a single NVIDIA A100 GPU, galmoss completed classical Sérsic profile fitting in about 10 minutes. Benchmark tests show that galmoss achieves computational speeds that are 6 × faster than those of default implementations.

keywords:
galaxies: general – methods: data analysis – methods: statistical – GPU computing
journal: Astronomy & Computing

1 Introduction

Galaxies, the cosmic building blocks, comprise diverse stellar components such as bulges, discs, bars, spiral arms, and nuclear star clusters. One of the main drivers of extragalactic astronomy is the study of the structural and morphological properties of galaxies from their photometric images, which has been shown to correlate with the galaxies’ formation and evolutionary paths (van der Wel, 2008; Conselice, 2014; Dimauro et al., 2022).

Several approaches have been developed for galaxy structural and morphological analysis. Classical eyeball morphology classifications, such as the Hubble sequence (Hubble, 1926), are generally descriptive and rely on visual inspection. Non-parametric morphological analysis (Ferrari et al., 2015; Rodriguez-Gomez et al., 2019) employs quantitative metrics to represent attributes such as concentration, asymmetry, and smoothness (Conselice, 2003). These metrics are considered robust because they do not depend on any underlying model. In contrast, the analysis of surface brightness profiles of galaxies involves fitting the light distribution with parametric models to interpret and quantify morphology using specific model parameters (Nantais et al., 2013; Zhuang and Ho, 2022). This profile fitting method has evolved from one-dimensional (de Vaucouleurs, 1958; Sersic, 1968) to two-dimensional analyses, improving accuracy by incorporating factors such as the point spread function and non-axisymmetric components (Andredakis et al., 1995; Schade et al., 1995; Byun and Freeman, 1995).

The fitting of two-dimensional light profiles in galaxies has grown increasingly complex, requiring faster and more scalable algorithms. Two primary methods dominate: Markov Chain Monte Carlo (MCMC) and gradient-based approaches. MCMC-based programs, such as profit (Robotham et al., 2017) and autogalaxy (Nightingale et al., 2023), iteratively sample to approximate the target distribution, with fitted values and uncertainties derived from the Markov chain’s statistics. Conversely, gradient-based methods, utilized by tools like galfit (Peng et al., 2010) and imfit (Erwin, 2015), offer quicker solutions by directly navigating to the loss function’s local minima. However, this speed compromises the exploration of parameter space and the robustness of uncertainty estimates, a trade-off not present in MCMC-based approaches (Chen et al., 2016).

With the expanding volume of data from astronomical surveys such as the Sloan Digital Sky Survey (SDSS, York et al., 2000), Dark Energy Survey (DES, Collaboration: et al., 2016), Chinese Survey Space Telescope (CSST, Zhan, 2011), Legacy Survey of Space and Time (LSST, Abell et al., 2009), and EUCLID (Laureijs et al., 2011), significant challenges emerge in galaxy profile fitting tasks. Both gradient-based and MCMC approaches face difficulties in processing the vast number of galaxies efficiently.

To address these challenges, deep learning strategies are increasingly being employed. For instance, deeplegato (Tuccillo et al., 2018) and galnets (Li et al., 2022; Qiu et al., 2023) train convolutional neural networks to predict profile-fitting parameters from simulated galaxy images. These deep learning approaches establish an implicit link between galaxy images and their profile parameters, substantially accelerating the process of parameter estimation (see also gamornet, Ghosh, 2019). However, these methods cannot be easily adapted to new data domains due to the well-known ’black box’ problem (Castelvecchi, 2016), which means that the implicit mappings generated by the models usually lack clear interpretations.

Another method to address speed challenges involves parallel gradient-based methodology, which relies exclusively on GPU-accelerated matrix parallel computation. This is supported by popular frameworks such as pytorch (Paszke et al., 2019), tensorflow (Abadi et al., 2016), and jax (Bradbury et al., 2018), enabling the incorporation of automatic differentiation. Applications of this approach range from galaxy kinematic modeling (Bekiaris, 2017) to cosmological N-body simulations (Modi et al., 2021).

To speed up galaxy profile fitting, bringing it to the LSST-era and contribute to the literature on galaxy formation and evolution, we introduce galmoss. We aim to harness the advantages of both traditional and contemporary approaches by providing a framework that enables seamless parallelization while preserving the interpretability of more conventional methods. galmoss processes batches of galaxy photometric images as multidimensional arrays, facilitating efficient fitting on GPUs. This tensor-based approach permits dynamic management of data sizes during computations through the adjustment of batch sizes and the optimization of GPU utilization. For the fitting process, galmoss makes use of gradient descent due to its relatively low computational and memory requirements. Finally, galmoss provides two methods for uncertainty estimation. In the realm of galaxy profile fitting, astrophot (Stone et al., 2023) leverages GPU acceleration and automatic differentiation in its serial optimization process while preserving physical interpretability. While our package focuses on processing numerous images of individual galaxies, astrophot is optimized for fitting multiple galaxies within a single, crowded image.

This paper is structured as follows: Section 2 provides an overview of the galmoss workflow. Section 3 describes the data that we use to showcase the software’s performance. Section 4 details the generation of model images, using the Sérsic profile as an example, and introduces a set of built-in profiles along with advanced applications. Section 5 discusses the fitting process post-image generation. Finally, Section 6 showcases galmoss’ performance through case studies, with concluding remarks presented in Section 7.

2 General workflow of galmoss

Refer to caption
Figure 1: The galmoss workflow: from parameter initialization and image processing to the fitting procedure and final data product generation, including the fitted model and residuals, all stored in FITS format.

Figure 1 shows the workflow of galmoss. It begins by reading a vector p={pG,pL} consisting of user-defined initial parameter values, along with the data image, sigma image (data uncertainty), mask image, and Point Spread Function (hereafter PSF) image. The first subset pG describes the geometric properties, which define the central position of the ellipse’s isophote, its major/minor axes, and the position angle. The second subset pL reads the initial values for the galaxy’s radial brightness profile ζ(𝐫).

With these initial values established, galmoss generates a series of image models following chosen profiles. These models are then convolved with the PSF of the image and augmented by adding a mean sky value to all pixels. This process results in the image model Mi,j, which is then compared to the image data Di,j and corresponding sigma images σi,j. The fitting process employs a χ2 loss function along with a mask Ωi,j to determine which pixels are included in the optimization. Internally, galmoss employs a gradient descent method embedded in pytorch.

After completing the fitting process, the package saves the data products, including the image block and fitted parameter values, to the designated output path. The image block files, saved in the FITS format, comprise the original image, the best-fit model image, and the residuals. With each component stored in a given FITS Head Data Unit (HDU), in the case of fitting multiple components (e.g., bulge + disc), each component can also be accessed individually alongside other data products.

3 Data

For showcasing galmoss capabilities, we gathered galaxy images (128×128 pixels) and PSF images (41×41 pixels) from the SDSS catalog111https://dr15.sdss.org/sas/dr15/eboss/photoObj/. Our data selection was guided by the availability of independent galaxy parameters, as provided by the MaNGA PyMorph Photometric Value Added catalog (MPP-VAC-DR17, Domínguez Sánchez et al., 2022), encompassing 10,293 galaxies from the final MaNGA release (Bundy et al., 2014). The selected sample predominantly consists of galaxies with an average redshift z 0.03 and features a relatively uniform distribution of stellar mass (Collaboration, 2022). The catalog offers photometric parameters obtained through two-dimensional surface profile fitting. These parameters include results from single Sérsic and combined Sérsic + Exponential models, calculated using the pymorph pipeline (Vikram et al., 2010). pymorph integrates sextractor with galfit, the former package streamlines the estimation of initial parameters and the generation of stamps, and the latter aims to fit the galaxy profile.

In our selection process, we excluded galaxies located at the edges of plates where obtaining a complete 128×128 pixel image was not possible. We also left out galaxies that failed in the single Sérsic fitting process within the MPP-VAC-DR17 catalog. This resulted in a final sample of 8,289 galaxies. We used only g-band images to ensure a good signal-to-noise ratio throughout the sample. Following pymorph, we generated masked images and initial values using sextractor (Bertin and Arnouts, 1996).

4 Image Generation and built-in Profiles

For a given set of galaxy or profile parameters, galmoss generates model images that represent the intensity or surface brightness of each pixel, based on the selected profile. galmoss provides six built-in radial profiles: Sérsic, Exponential disk, Ferrer, King, Gaussian, and Moffat, as well as a Flat sky model (with the option to include more complex sky models). These radial profiles are transformed into two-dimensional images by assuming circular symmetry. This process effectively projects the one-dimensional profile over a circular area in two dimensions to create the final image. To illustrate this projection process more concretely, we use the Sérsic profile as an example, given its widespread application in modeling galaxy profiles.

Furthermore, galmoss supports the combination and integration of different profiles. Detailed instructions on the practical use of the code can be found in the B, C and D.

4.1 Sérsic

Refer to caption
Figure 2: g-band galmoss fitting result of J162123.19+322056.4, showing a good fitting quality. The left four images show the model, model residuals (data-model), data, and the residual distribution. On the right, a one-dimensional projection is shown, where the upper panel represents the model distribution with a black line and the orange filled markers with error bars represent the galaxy image’s flux distribution and its uncertainty. The lower panel represents the flux residual with blue filled markers with error bars.

The Sérsic profile (Sersic, 1968) is commonly used to fit the surface brightness distribution of elliptical galaxies, as well as the disk and bulge components of other galaxy types. The intensity I(r) as a function of the radius r is given by

I(r)=Ieexp{νn[(rre)1n1]}, (1)

where Ie denotes the surface brightness at the effective radius re, which encompasses half of the total profile flux. The Sérsic index n dictates the profile’s curvature, and the parameter νn is computed numerically from the inverse cumulative distribution function of the gamma distribution. The versatility of the Sérsic profile lies in its ability to model a wide range of galaxy morphologies by adjusting the Sérsic index n. For example, setting n=4 transforms it into the de Vaucouleurs profile, known as the r1/4 profile. An exponential disk profile is obtained with n=1, and n=0.5 results in a Gaussian profile, enabling users to explore these diverse profiles by simply varying n.

In a one-dimensional context, the radius r refers to the distance from the galaxy center. In two dimensions, given a galaxy profile center (xc,yc), the position angle of the ellipse profile θ, and the axis ratio q, the circular radius r is defined by (see e.g. Robotham et al., 2017):

r =[rmaj(B+2)+(rminq)(B+2)]1B+2, (2)

where

rmaj =|cos(θ)(xxc)|+|sin(θ)(yyc)|, (3)
rmin =|sin(θ)(xxc)|+|cos(θ)(yyc)|. (4)

The boxiness parameter B introduces flexibility in the shape of the ellipse (Athanassoula et al., 1990), allowing for more general elliptical profiles. B=0 corresponds to a standard ellipse, while positive values result in more box-like shapes and negative values in more disc-like shapes. This flexibility is particularly useful in galaxy modeling, where a range of elliptical shapes can represent the diverse morphologies observed in galaxies.

Rather than directly using the surface brightness Ie in the Sérsic, magnitude m and its corresponding zero point magnitude m0 is used to specify the intensity level. This approach is consistent with methodologies employed by widely-used galaxy fitting tools such as galfit (Peng et al., 2010) and profit (Robotham et al., 2017), facilitating easier comparison with observational data. Both quantities are related as follow:

Ie=rboxνn2n100.4(mm0)2πqre2nΓ(2n)exp(νn), (5)

where

rbox=π(2+B)2β(12+B,12+B). (6)

In this formulation, rbox serves as a geometric correction factor in Ie to account for deviations from a perfect ellipse, influenced by the level of diskiness or boxiness. Specifically, when B = 0, indicating a perfect ellipse, rbox = 1, implying no geometric correction. The beta function β(a,b), is calculated using the relationship β(a,b)=Γ(a)Γ(b)Γ(a+b), where Γ denotes the Gamma function.

Figure 2 presents the fitting results using the Sérsic profile for galaxy J162123.19+322056.4, which is one of the galaxies in our catalog. The quality of this model is evidenced by the residuals, highlighting the precision of the fit. For those interested in the implementation details, the code used for this analysis is provided in A.

4.2 Other available profiles

In this section, we briefly discuss the built-in profiles other than Sérsic. All these profiles but the Flat sky profile have circular radius r that follows Equation 2 to Equation 4.

4.2.1 Exponential Disk Profile

In an exponential disk profile, the intensity is defined as follows:

I(r)=I0exp(rrs), (7)

where I0 is the brightness of the profile’s surface in the center (at radial distance r=0), and rs is the disk scale-length.

The relation among the magnitude (m,m0), rs and I0 is given by

I0=rbox100.4(mm0)2πqrs2, (8)

where q is the axis ratio, and rbox is as defined in equation 6.

4.2.2 Modified Ferrer Profile

The modified Ferrer profile, which is characterised by a nearly flat core and a rapidly truncated shape on the periphery, was originally proposed by Ferrers (1877) and later modified by Laurikainen et al. (2005). The intensity is defined as follows:

I(r)=I0[1(rrout)2b]a, (9)

where I0 is also the central surface brightness parameter, rout is the outer truncation radius, and b and a are parameters governing the slopes of the truncation and core, respectively.

The relation between the magnitude (m, m0) and the profile model parameters is given by

I0=rbox100.4(mm0)πqrout2aβ(a,1+22b), (10)

where q is also the axis ratio and β is the beta function defined in equation 6. The modified Ferrer profile is particularly suitable to model the bar structure in galaxies (Blázquez-Calero et al., 2020; Dalla Bontà et al., 2018).

4.2.3 Empirical (Modified) King Profile

Since its initial illustration by King (1962), the empirical King profile has been extensively used to fit both galactic and extragalactic globular clusters (BAOlab222https://github.com/soerenslarsen/baolab presented by Larsen, 2014; Chies-Santos et al., 2007; Bonatto and Bica, 2008; Tripathi et al., 2023). The intensity of this profile is defined as follows:

I(r)=I0[11(1+(rtrc)2)1/α]α×[1(1+(rtrc)2)1/α1(1+(rrc)2)1/α]α. (11)

Here, I0 is also the central surface brightness parameter. The core radius, rc, signifies the scale at which the density starts to deviate from uniformity, while rt, the truncation radius, marks the boundary of the cluster. The global power-law factor, α, dictates the rate at which the density declines with distance from the center. The concentration of stars in globular clusters can be defined using the parameters rt and rc, denoted by c=log(rtrc).

Refer to caption
Figure 3: Panels comparing the measured Sérsic profile parameters for the selected 8,000 SDSS galaxies, along with R2 estimation. The panels each display galaxy magnitude (m), position angle (θ), axis ratio (q), effective radius (re) and Sérsic index (n). The transparency of the dots illustrates their concentration. The blue line shows where galfit result equals galmoss result. The histogram on top and right illustrates the distribution of measured values for galmoss and galfit, respectively. The comparison shows proper consistency in all panels.

4.2.4 Gaussian Profile

In a Gaussian profile, the intensity is defined as follows:

I(r)=I0exp(r22σ2), (12)

where I0 is also the central surface brightness parameter, and σ is the radial dispersion. In the galmoss implementation, the Full Width at Half Maximum (FWHM = 2.354σ) is used instead. The classical application of the Gaussian profile includes modelling a simple PSF and point sources.

4.2.5 Moffat Profile

The Moffat profile (Moffat, 1969), commonly used for modelling a realistic telescope PSF, defines its intensity as follows:

I(r)=I0[1+(rrd)2]n, (13)

where

rd=FWHM221n1. (14)

and I0 also is the central density. The concentration index, n, dictates whether the distribution is more Lorentzian-like (n =1) or Gaussian-like (n).

When considering the ellipse with axis ratio q and boxiness parameter (rbox in equation 6), the relationship between the observed magnitude m and profile model parameter is

I0=rbox(n1)100.4(mm0)πqrd2. (15)

Similar to the Gaussian profile, the Moffat profile can also be used to model point sources.

4.2.6 Flat Sky

Unlike other radial light profiles, in galmoss, the sky profile is controlled by the sky mean value Isky across all pixels without a radial matrix:

I=Isky. (16)

In galmoss, the only parameter needed in sky Profile is Isky. If a sky profile varies with position (radius), it can be included as a user-defined profile.

5 Image Fitting and Evaluation

Following the generation of model images, galmoss implements an extended χ2 likelihood and gradient descent optimization, leveraging python and pytorch functionalities. In addition, uncertainty estimation is available.

5.1 Maximum Likelihood Estimation

The galmoss package employs a χ2 likelihood:

ln=k2ln2lnΓ(k/2)+(k21)lnχ2χ22, (17)
χ2=i=1Nij=1NjΩi.j(Di,jMi,j)2σi,j2, (18)

where Mi,j represents the model at pixel i,j, and σi,j represents the uncertainty of Di,j. In the χ2 distribution, the degrees of freedom, k, is the difference between the number of pixels with galaxy flux that are not included in the mask and the number of model fit parameters.

Internally galmoss adopts gradient descent for parallel fitting. Though slower in convergence than other traditional methods (e.g. Levenberg-Marquardt) it has lower computational and memory demands, enabling efficient parallel fitting on GPUs.

5.2 Confidence Intervals

Galmoss employs two strategies to estimate uncertainties in galaxy images, primarily using a covariance matrix based on Gaussian distribution assumptions (Hogg et al., 2010). The parameter uncertainties are calculated from the covariance matrix’s diagonal, derived using the Jacobian matrix (e.g., Gavin, 2022) for computational efficiency. This method approximates uncertainties as σp=diag[JTWJ]1, where J is the Jacobian matrix, and W is diagonal with Wi,j=1/σi,j2, offering a 1-σ confidence level for the parameters. The second methodology for uncertainty estimation is bootstrapping, which involves resampling with replacement each galaxy images multiple times (typically 100 iterations) and refitting them. The uncertainty is given by σ2=1Mi=1M[mim¯]2, where m¯ is the mean value of the estimated parameter. Figure 4 illustrates a comparison of uncertainty estimation methods for a random subset of galaxies. We display the uncertainties determined through bootstrap analysis (red error bars) and those derived from the covariance matrix (blue error bars). Generally, bootstrap uncertainties encompass a broader range, suggesting a more conservative estimate.

Refer to caption
Figure 4: A illustrative comparison of uncertainty estimations for fitted galaxy parameters using two methods: covariance matrix (depicted with blue error bars) and bootstrapping (depicted with red error bars), for a random selection of galaxies within our sample. Typically, the uncertainties derived from bootstrapping are observed to be larger than those obtained from the covariance matrix.
Refer to caption
Figure 5: A speed-up performance evaluation between galmoss and galfit. Each line represents the speedup time normalized by the running time of galfit. The results show that galmoss’s speed surpasses galfit when the batch size slightly exceeds 10 and about 6 × faster when the batch size is 1,000. The benchmark was executed in a machine with the following specifications: CPU – 2.2GHz Intel Xeon Silver 4210; GPU – NVIDIA A100 (80GB); OS – Ubuntu Linux 18.04 64 bits; RAM – 3.9 TB.

6 Results

To evaluate the performance of galmoss against established methods, we performed a validation test by fitting single galaxy profiles from the same dataset and comparing the structural parameters, such as the Sérsic index and effective radius, with those obtained using galfit, as catalogued in the MPP-VAC-DR17. This comparison acts as a fundamental ’sanity check’ to verify the reliability of galmoss’s fitting results. Figure 3 shows overall consistency across key galaxy parameters—magnitude (m), position angle (θ), axis ratio (q), effective radius (re), and Sérsic index (n)—as quantified by the R2 coefficient of determination.

The panels for magnitude, position angle, and axis ratio show a strong linear correlation, indicative of a high degree of alignment with galfit results. Specifically, in the position angle panel, objects that deviate significantly from the identity line are those fitted with large axis ratios (q1). This suggests that, in these cases, the light distributions are relatively insensitive to variations in the position angle (θ).

The parameters re and n, known to be challenging to fit accurately (Trujillo et al., 2001), demonstrate a linear relationship, albeit with greater dispersion compared to other parameters. Notably, in the Sérsic index panel, galmoss values are generally lower than those derived from galfit at higher values of n. This discrepancy could be attributed to variations in image quality and the characteristics of the optimization algorithms used in pytorch. For an in-depth analysis of this observed bias, we direct the reader to Section E.

In addition to the aforementioned test, we conducted an independent speed comparison using galfit and galmoss using the same dataset and initial values. The fitting of 8,289 galaxies with galmoss completed in roughly 10 minutes—six times faster than with serial galfit. Figure 5 demonstrates this efficiency gain across different batch sizes, showing galmoss’ speed advantage becoming more pronounced as batch size increases, up to the limits of GPU capacity.

7 Conclusions

In this study, we introduce galmoss, an open-source software package specifically designed for fitting galaxy light profiles on large datasets, ideally suited for the LSST era. Built on the torch framework, galmoss provides efficient 2D surface brightness profile fitting for batches of galaxy images, with the added benefit of GPU acceleration. It features a user-friendly interface that allows for the easy definition of parameters and their ranges. Moreover, galmoss is capable of efficiently quantifying uncertainty through both covariance matrix and bootstrap methods. The package also supports the integration of new profiles, making it an adaptable and versatile tool for statistical analysis in galaxy structure studies.

Benchmark tests reveal that galmoss can achieve speedup gains of up to 6 times compared to galfit, depending on the sample size. One novel aspect of galmoss is its use of native parallelization to process multiple observational fields of single galaxies as elements of a single multidimensional tensor, thereby enhancing its speed through efficient PyTorch GPU-accelerated matrix calculations and memory usage (Paszke et al., 2019). This approach contrasts with astrophot, which focuses on larger fields with multiple galaxies or joint multi-band fitting. A current limitation of galmoss is the requirement to manually select profile models and initial parameters, along with its sub-optimal GPU utilization for small galaxy batches—areas for improvement in future versions.

galmoss is freely available at GitHub 333https://github.com/Chenmi0619/GALMoss/, Zenodo 444https://doi.org/10.5281/zenodo.10654784 and listed in the Python Package Index 555https://pypi.org/project/galmoss/. The readthedocs 666https://galmoss.readthedocs.io/en/latest/ contains example usages, along with an overview of the package.

Acknowledgments

We thank Gongyu Chen for helping with the logic and language flow of the paper. We thank MengTing Shen for helping with the preparation of SDSS dataset. We thank Zhu Chen and Ziqi Ma for their help in learning the usage of sextractor. We thank Qiqi Wu and Shuairu Zhu for their help in galmoss application.

ACS acknowledges funding from the brazilian agencies Conselho Nacional de Desenvolvimento Científico e Tecnológico (CNPq) and the Rio Grande do Sul Research Foundation (FAPERGS) through grants CNPq-11153/2018-6 and FAPERGS/CAPES 19/2551-0000696-9. SS thanks research grants from the China Manned Space Project with NO. CMS-CSST-2021-A07, the National Key R&D Program of China (No. 2022YFF0503402, 2019YFA0405501,), National Natural Science Foundation of China (No. 12073059 & 12141302 ) and Shanghai Academic/Technology Research Leader (22XD1404200).

Funding for the Sloan Digital Sky Survey IV has been provided by the Alfred P. Sloan Foundation, the U.S. Department of Energy Office of Science, and the Participating Institutions. SDSS acknowledges support and resources from the Center for High-Performance Computing at the University of Utah. The SDSS web site is www.sdss4.org.

Appendix A How to use galmoss: single Sérsic case

Here, we demonstrate how to fit a single Sérsic profile to SDSS image data using the galmoss package.

First, we need to load the necessary packages.

1import Galmoss as gm

Next, we need to define the parameter objects and associate them with profile instances. The initial estimates of the galaxy parameters are provided by sextractor. Notably, we do not include the boxiness parameter in this simple example, despite its availability within the galmoss framework.

1# define parameter objects and profile
2
3sersic = gm.lp.Sersic(
4 cen_x=gm.p(65.43),
5 cen_y=gm.p(64.95),
6 pa=gm.p(-81.06, angle=True),
7 axis_r=gm.p(0.64),
8 eff_r=gm.p(7.58, pix_scale=0.396),
9 ser_n=gm.p(1.53, log=True),
10 mag=gm.p(17.68, M0=22.5)
11)

The comprehensive dataset object can be formulated utilising the image sets (galaxy image, sigma image, PSF image, mask image) together with the chosen profiles.

1dataset = gm.Dataset(
2 galaxy_index="J162123.19+322056.4",
3 image_path="./J162123.19+322056.4_image.fits",
4 sigma_path="./J162123.19+322056.4_sigma.fits",
5 psf_path="./J162123.19+322056.4_psf.fits",
6 mask_path="./J162123.19+322056.4_mask.fits"
7 mask_index=2,
8 img_block_path="./test_repo",
9 result_path="./test_repo"
10)
11
12dataset.define_profiles(sersic=sersic)

After initializing the hyperparameter during the fitting process, fitting could start. Subsequently, we run the uncertainty estimation process.

1fitting = gm.Fitting(dataset=dataset,
2 batch_size=1,
3 iteration=1000)
4fitting.fit()
5fitting.uncertainty(method="covar_mat")

When the fitting process is completed, the fitted results and the img_blocks are saved in corresponding path.

Appendix B How to use galmoss: bulge+disk case

Refer to caption
Figure 6: g-band galmoss decomposition result of J100247.00+042559.8, showing a good fitting quality. The left six images show the total model, disk model, bulge model, data, model residuals (data-model), and the residual distribution. On the right, a one-dimensional projection is shown. The upper panel represents the model distribution with a black line, and the orange dots with error bars represent the galaxy image’s flux distribution and its uncertainty. The red dashed line and blue dotted line represent the distribution of the bulge component and the disk component, respectively. The lower panel represents the flux residual with blue dots with error bars.

Here, we demonstrate how to use a combination of two Sérsic profiles to make disk and bulge decomposition on SDSS image data using the galmoss package.

1import Galmoss as gm

Upon importing the package, the subsequent step entails defining parameter objects. To ensure that the center parameter within both profiles remains the same, it suffices to specify the center parameter once and subsequently incorporate it into various profiles.

1xcen = gm.p(65.97)
2ycen = gm.p(65.30)

For a quick start, we let the disk and bulge profile share the initial value from the sextractor, with an initial Sérsic index of 1 for the bulge component and 4 for the disk component.

1bulge = gm.lp.Sersic(
2 cen_x=xcen,
3 cen_y=ycen,
4 pa=gm.p(58.70, angle=True),
5 axis_r=gm.p(0.75),
6 eff_r=gm.p(4.09, pix_scale=0.396),
7 ser_n=gm.p(4),
8 mag=gm.p(17.97, M0=22.5)
9)
10
11disk = gm.lp.Sersic(
12 cen_x=xcen,
13 cen_y=ycen,
14 pa=gm.p(ini_value=58.70, angle=True),
15 axis_r=gm.p(0.75),
16 eff_r=gm.p(ini_value=4.09, pix_scale=0.396),
17 ser_n=gm.p(ini_value=1),
18 mag=gm.p(ini_value=17.97, M0=22.5)
19)

Compared to the single profile case, we only need to change the code snippet of profile definition. We choose to use bootstrap to calculate the uncertainty here.

1dataset = gm.Data_Box(
2 galaxy_index="J100247.00+042559.8"],
3 image_path="./J100247.00+042559.8_image.fits",
4 sigma_path="./J100247.00+042559.8_sigma.fits",
5 psf_path="./J100247.00+042559.8_psf.fits",
6 mask_path="./J100247.00+042559.8_mask.fits"
7 img_block_path="./test_repo",
8 result_path="./test_repo"
9)
10
11dataset.define_profiles(bulge=bulge, disk=disk)
12fitting = gm.Fitting(dataset=dataset,
13 batch_size=1,
14 iteration=1000)
15fitting.fit()
16fitting.uncertainty(method="bstrap")

Figure 6 show the decomposition result, with the residual demonstrating a high quality of fitting.

Appendix C Example code for definition of a set of galaxy profiles

Here, we provide an example that shows how to define a combination of profiles and extract the model image from the image function for an initial review. Figure 7 shows a model image featuring a central galaxy with a disk, bulge, and bar, each defined by two Sérsic profiles and a Ferrer profile, respectively. Additionally, there is a side galaxy defined by a Sérsic profile, two point sources defined by Moffat profiles, and an open cluster defined by a King profile. All of these are convolved with a PSF image produced by a Gaussian profile.

1import numpy as np
2import Galmoss as gm
3import torch_optimizer as optim

Upon importing the package, the first sub-model represents the central galaxy, comprising a disk, bulge, and bar.

1# The galaxy center
2xcen = gm.p(65.)
3ycen = gm.p(64.)
4
5# Define parameters and profiles
6Bisk = gm.lp.Sersic(
7 cen_x=xcen,
8 cen_y=ycen,
9 pa=gm.p(55., angle=True),
10 axis_r=gm.p(0.44),
11 eff_r=gm.p(13, pix_scale=0.396),
12 ser_n=gm.p(1),
13 mag=gm.p(17, M0=22.5),
14 box=gm.p(0.1)
15)
16
17Bulge = gm.lp.Sersic(
18 cen_x=xcen,
19 cen_y=ycen,
20 pa=gm.p(0., angle=True),
21 axis_r=gm.p(1),
22 eff_r=gm.p(6, pix_scale=0.396),
23 ser_n=gm.p(6),
24 mag=gm.p(21.5, M0=22.5)
25)
26
27Bar = gm.lp.King(
28 cen_x=xcen,
29 cen_y=ycen,
30 pa=gm.p(-40., angle=True),
31 axis_r=gm.p(0.2),
32 mag=gm.p(21.5, M0=22.5),
33 trunc_r=gm.p(5, pixScale=0.396),
34 trunc_a=gm.p(0.5),
35 trunc_b=gm.p(1.9),
36 box=gm.p(0.1)
37)

The second sub-model is a side galaxy.

1Sersic_s = gm.lp.Sersic(
2 cen_x=gm.p(45.43),
3 cen_y=gm.p(100.95),
4 pa=gm.p(-60., angle=True),
5 axis_r=gm.p(0.7),
6 eff_r=gm.p(13, pix_scale=0.396),
7 ser_n=gm.p(1.6),
8 mag=gm.p(17.5, M0=22.5),
9 box=gm.p(-0.6)
10)

The third sub-models are two point sources. They share the dispersion σ = 1.515 with the idealizsed PSF image, both of which are produced by a Gaussian profile.

1# Two point-souce
2P1 = gm.lp.Gaussian(
3 cen_x= gm.p(75),
4 cen_y= gm.p(80),
5 pa=gm.p(0., angle=True),
6 axis_r=gm.p(1),
7 inten=gm.p(0.1),
8 fwhm=gm.p(1.2,pix_scale=0.396),
9)
10
11P2 = gm.lp.Gaussian(
12 cen_x=gm.p(88.),
13 cen_y=gm.p(40.),
14 pa=gm.p(0., angle=True),
15 axis_r=gm.p(1),
16 inten=gm.p(0.1),
17 fwhm=gm.p(1.2, pix_scale=0.396),
18)
19
20# The idealized PSF
21PSF = gm.lp.Gaussian(
22 cen_x=gm.p(20),
23 cen_y=gm.p(20),
24 pa=gm.p(0., angle=True),
25 axis_r=gm.p(1),
26 inten=gm.p(1/(2*np.pi*((0.6/0.396)**2))),
27 fwhm=gm.p(1.2, pix_scale=0.396),
28)

The total model image without convolution is the sum of three sub-components (see Figure C.7(a)). To extract the model images, it is necessary to first define a grid, as grid generation occurs automatically only during the fit process within the fitting object.

1x = torch.linspace(0.5, 128-0.5, 128)
2y = torch.linspace(128-0.5, 0.5, 128)
3grid = torch.meshgrid(y, x, indexing=’ij’)
1bulge = Bulge.image_via_grid_from(grid, mode="initial_model")
2disk = Disk.image_via_grid_from(grid, mode="initial_model")
3bar = Bar.image_via_grid_from(grid, mode="initial_model")
4sersic_s = Sersic_s.image_via_grid_from(grid, mode="initial_model")
5p1 = P1.image_via_grid_from(grid, mode="initial_model")
6p2 = P2.image_via_grid_from(grid, mode="initial_model")
7result = bulge + disk + bar + sersic_s + p1 + p2

To mimic the effect of seeing, an idealized PSF image will be generated from a relatively small grid and then convolved with the model images (except for the point sources). The result is shown in Figure C.7(b).

1#Grid generation
2x_psf = torch.linspace(0.5, 40-0.5, 40)
3y_psf = torch.linspace(40-0.5, 0.5, 40)
4grid_psf = torch.meshgrid(x_psf, y_psf, indexing=’ij’)
5
6# PSF image
7psf = PSF.image_via_grid_from(grid_psf, mode="initial_model")
8
9#Convolving
10result_conv = torch.squeeze(torch.nn.functional.conv2d((bulge+disk+bar+sersic_s).reshape(1,1, 128,128), psf.reshape(1, 1, 40, 40), padding="same", groups=1)) + p1 + p2
Refer to caption
(a) The Model image without convolving a PSF image.
Refer to caption
(b) The Model image with a PSF image convolved.
Figure 7: The images of the model are provided for an initial review. The model consists of a central galaxy that has a disk, bulge, and bar, each defined by two Sérsic profiles and a Ferrer profile, respectively. Additionally, there is a side galaxy defined by a Sérsic profile, two point sources defined by Gaussian profile.

Appendix D User-defined profile

In Section 4.2.6, we introduced the sky profile. Here, we show how to integrate a more realistic sky profile as an example of a user-defined profile. In this new sky profile, the sky intensity is defined as follows:

I=I0+kx(xx0)+ky(yy0), (19)

where (x0,y0) is the geometric center of the image, I0 is the sky value at (x0,y0), and (kx,ky) describes the variation of the sky value along the x and y axes.

To integrate this new profile, we need to define a new class, which we have named NewSky. This class should include a function that guides the generation of the image model from the given parameters. Here are some caveats. Firstly, every profile class should inherit from the basic class LightProfile to access general light profile functions. Next, the parameters should be loaded into the profile class in the __init__ function, and set as attributions (e.g., self.sky_0 = sky_0).

1import galmoss as gm
2
3class NewSky(gm.LightProfile):
4 def __init__(self, sky_0, grad_x, grad_y):
5 super().__init__()
6 self.psf = False
7 self.sky_0 = sky_0
8 self.grad_x = grad_x
9 self.grad_y = grad_y
10
11 def image_via_grid_from(self,
12 grid,
13 mode="updating_model"):
14 return (self.sky_0.value(mode)
15 + self.grad_x.value(mode)
16 * (grid[1]-(grid[0].shape[1] + 1)/2)
17 + self.grad_y.value(mode)
18 * (grid[0]-(grid[0].shape[0] + 1)/2))

The equation for the profile is defined within the image_via_grid_from function. Parameter values are extracted after the mode value, which has a default value of updating_model. This mode calls for values that are continuously updated throughout the fitting process and have already been broadcast to a suitable shape for multi-dimensional matrix calculations.

A newly defined profile can be used as follows:

1sky = NewSky(sky_0=gm.p(0.3),
2 grad_x=gm.p(2),
3 grad_y=gm.p(3))

Appendix E The fitted bias in high Sérsic index end

As shown in Figure 3, we observe a general bias in the high Sérsic index (n) end in the comparison results. Galaxies with large n values (e.g., n>6) in the galfit results mostly exhibit lower values (e.g., n<6) in the galmoss results.

To further investigate the type of high n galaxies, we use the morphological classification afforded by catalog MDLM-VAC-DR17. We identify 8,289 galaxies into 2,849 ETGs and 5,440 LTGs, and further identify ETGs into 1,891 Elliptical galaxies, 793 S0 galaxies and 165 undefined galaxies. We find that ETGs account for 34.37 % of the total galaxy samples and represent 88.78 % in the biased region. To investigate further, we plot a histogram for the n value in E and S0 (Figure 8). In the plot, the histogram almost coincides between galmoss fitted results and galfit fitted results in S0 galaxies. However, the distribution of the histogram is very different between the galmoss fitted results and the galfit fitted results in elliptical galaxies. This result reveals that Elliptical galaxies contribute the most to the inconsistency in fitted n values.

There are several reasons for the observed result. One of them is the limitation of observation. Most elliptical galaxies have a steep central core and a flat outer wing. Due to the poor signal-to-noise ratio in the flat wing, the χ2 is insensitive to the change of n, which acts as a small gradient during the optimization. Another possible reason is related to the properties of the optimizer. Most prevalent optimizers in pytorch use self-adaptive learning rates which reduce the learning rate under low gradient conditions to fasten convergence. As a result, the sensitivity of n is further reduced at the high-value end compared to galfit, which adds to the difference in results between the two software in this case.

Refer to caption
Figure 8: The histogram shows the distribution of n values in E and S0 galaxies. Solid lines represent galmoss results, and dashed lines are for galfit. Purple and pink correspond to S0 and E, respectively. It is evident from the inconsistency between the values fitted by galmoss and galfit that Elliptical galaxies contribute most to the inconsistency in the high end of n fitted results.

References

  • Abadi et al. (2016) Abadi, M., Agarwal, A., Barham, P., Brevdo, E., Chen, Z., Citro, C., Corrado, G.S., Davis, A., Dean, J., Devin, M., et al., 2016. Tensorflow: Large-scale machine learning on heterogeneous distributed systems. arXiv preprint arXiv:1603.04467 .
  • Abell et al. (2009) Abell, P.A., Allison, J., Anderson, S.F., Andrew, J.R., Angel, J.R.P., Armus, L., Arnett, D., Asztalos, S., Axelrod, T.S., Bailey, S., et al., 2009. Lsst science book, version 2.0. arXiv preprint arXiv:0912.0201 .
  • Andredakis et al. (1995) Andredakis, Y., Peletier, R., Balcells, M., 1995. The shape of the luminosity profiles of bulges of spiral galaxies. Monthly Notices of the Royal Astronomical Society 275, 874–888.
  • Athanassoula et al. (1990) Athanassoula, E., Morin, S., Wozniak, H., Puy, D., Pierce, M., Lombard, J., Bosma, A., 1990. The shape of bars in early-type barred galaxies. Monthly Notices of the Royal Astronomical Society (ISSN 0035-8711), vol. 245, July 1, 1990, p. 130-139. 245, 130–139.
  • Bekiaris (2017) Bekiaris, G., 2017. Enhancing galaxy kinematic modelling using novel hardware and software techniques and technologies. Ph. D. Thesis .
  • Bertin and Arnouts (1996) Bertin, E., Arnouts, S., 1996. Sextractor: Software for source extraction. Astronomy and astrophysics supplement series 117, 393–404.
  • Blázquez-Calero et al. (2020) Blázquez-Calero, G., Florido, E., Pérez, I., Zurita, A., Grand, R.J., Fragkoudi, F., Gómez, F.A., Marinacci, F., Pakmor, R., 2020. Structural and photometric properties of barred galaxies from the auriga cosmological simulations. Monthly Notices of the Royal Astronomical Society 491, 1800–1819.
  • Bonatto and Bica (2008) Bonatto, C., Bica, E., 2008. Structural parameters of 11 faint galactic globular clusters derived with 2mass. Astronomy & Astrophysics 479, 741–750.
  • Bradbury et al. (2018) Bradbury, J., Frostig, R., Hawkins, P., Johnson, M.J., Leary, C., Maclaurin, D., Necula, G., Paszke, A., VanderPlas, J., Wanderman-Milne, S., et al., 2018. Jax: composable transformations of python+ numpy programs.
  • Bundy et al. (2014) Bundy, K., Bershady, M.A., Law, D.R., Yan, R., Drory, N., MacDonald, N., Wake, D.A., Cherinka, B., Sánchez-Gallego, J.R., Weijmans, A.M., et al., 2014. Overview of the sdss-iv manga survey: mapping nearby galaxies at apache point observatory. The Astrophysical Journal 798, 7.
  • Byun and Freeman (1995) Byun, Y., Freeman, K., 1995. Two-dimensional decomposition of bulge and disk. Astrophysical Journal v. 448, p. 563 448, 563.
  • Castelvecchi (2016) Castelvecchi, D., 2016. Can we open the black box of ai? Nature News 538, 20.
  • Chen et al. (2016) Chen, C., Carlson, D., Gan, Z., Li, C., Carin, L., 2016. Bridging the gap between stochastic gradient mcmc and stochastic optimization, in: Artificial Intelligence and Statistics, PMLR. pp. 1051–1060.
  • Chies-Santos et al. (2007) Chies-Santos, A.L., Santiago, B.X., Pastoriza, M.G., 2007. High resolution imaging of the early-type galaxy ngc 1380: an insight into the nature of extended extragalactic star clusters. Astronomy & Astrophysics 467, 1003–1009.
  • Collaboration: et al. (2016) Collaboration:, D.E.S., Abbott, T., Abdalla, F., Aleksić, J., Allam, S., Amara, A., Bacon, D., Balbinot, E., Banerji, M., Bechtol, K., et al., 2016. The dark energy survey: more than dark energy–an overview. Monthly Notices of the Royal Astronomical Society 460, 1270–1299.
  • Collaboration (2022) Collaboration, S., 2022. The seventeenth data release of the sloan digital sky surveys. The Astrophysical Journal Supplement Series 259, 39pp.
  • Conselice (2003) Conselice, C.J., 2003. The relationship between stellar light distributions of galaxies and their formation histories. The Astrophysical Journal Supplement Series 147, 1.
  • Conselice (2014) Conselice, C.J., 2014. The evolution of galaxy structure over cosmic time. Annual Review of Astronomy and Astrophysics 52, 291–337.
  • Dalla Bontà et al. (2018) Dalla Bontà, E., Davies, R.L., Houghton, R.C., D’Eugenio, F., Méndez-Abreu, J., 2018. A photometric analysis of abell 1689: two-dimensional multistructure decomposition, morphological classification and the fundamental plane. Monthly Notices of the Royal Astronomical Society 474, 339–387.
  • Dimauro et al. (2022) Dimauro, P., Daddi, E., Shankar, F., Cattaneo, A., Huertas-Company, M., Bernardi, M., Caro, F., Dupke, R., Haeussler, B., Johnston, E., et al., 2022. Coincidence between morphology and star formation activity through cosmic time: the impact of the bulge growth. Monthly Notices of the Royal Astronomical Society 513, 256–281.
  • Domínguez Sánchez et al. (2022) Domínguez Sánchez, H., Margalef, B., Bernardi, M., Huertas-Company, M., 2022. Sdss-iv dr17: final release of manga pymorph photometric and deep-learning morphological catalogues. Monthly Notices of the Royal Astronomical Society 509, 4024–4036.
  • Erwin (2015) Erwin, P., 2015. Imfit: a fast, flexible new program for astronomical image fitting. The Astrophysical Journal 799, 226.
  • Ferrari et al. (2015) Ferrari, F., de Carvalho, R.R., Trevisan, M., 2015. Morfometryka—a new way of establishing morphological classification of galaxies. The Astrophysical Journal 814, 55.
  • Ferrers (1877) Ferrers, N.M., 1877. An elementary treatise on spherical harmonics and subjects connected with them. Macmillan and Company.
  • Gavin (2022) Gavin, H.P., 2022. The levenberg-marquardt algorithm for nonlinear least squares curve-fitting problems. Department of Civil and Environmental Engineering, Duke University Durham, NC USA .
  • Ghosh (2019) Ghosh, A., 2019. Galaxy morphology network (gamornet): A convolutional neural network used to study morphology and quenching in 100,000 sdss and 20,000 candels galaxies. The Art of Measuring Galaxy Physical Properties , 30.
  • Hogg et al. (2010) Hogg, D.W., Bovy, J., Lang, D., 2010. Data analysis recipes: Fitting a model to data. arXiv preprint arXiv:1008.4686 .
  • Hubble (1926) Hubble, E.P., 1926. Extragalactic nebulae. Astrophysical Journal, 64, 321-369 (1926) 64.
  • King (1962) King, I., 1962. The structure of star clusters. i. an empirical density law. Astronomical Journal, Vol. 67, p. 471 (1962) 67, 471.
  • Larsen (2014) Larsen, S.S., 2014. Baolab: Image processing program. Astrophysics Source Code Library , ascl–1403.
  • Laureijs et al. (2011) Laureijs, R., Amiaux, J., Arduini, S., Augueres, J.L., Brinchmann, J., Cole, R., Cropper, M., Dabin, C., Duvet, L., Ealet, A., et al., 2011. Euclid definition study report. arXiv preprint arXiv:1110.3193 .
  • Laurikainen et al. (2005) Laurikainen, E., Salo, H., Buta, R., 2005. Multicomponent decompositions for a sample of s0 galaxies. Monthly Notices of the Royal Astronomical Society 362, 1319–1347.
  • Li et al. (2022) Li, R., Napolitano, N., Roy, N., Tortora, C., La Barbera, F., Sonnenfeld, A., Qiu, C., Liu, S., 2022. Galaxy light profile convolutional neural networks (galnets). i. fast and accurate structural parameters for billion-galaxy samples. The Astrophysical Journal 929, 152.
  • Modi et al. (2021) Modi, C., Lanusse, F., Seljak, U., 2021. Flowpm: Distributed tensorflow implementation of the fastpm cosmological n-body solver. Astronomy and Computing 37, 100505.
  • Moffat (1969) Moffat, A., 1969. A theoretical investigation of focal stellar images in the photographic emulsion and application to photographic photometry. Astronomy and Astrophysics 3, 455.
  • Nantais et al. (2013) Nantais, J.B., Flores, H., Demarco, R., Lidman, C., Rosati, P., Jee, M.J., 2013. Morphology with light profile fitting of confirmed cluster galaxies at z= 0.84. Astronomy & Astrophysics 555, A5.
  • Nightingale et al. (2023) Nightingale, J.W., Amvrosiadis, A., Hayes, R.G., He, Q., Etherington, A., Cao, X., Cole, S., Frawley, J., Frenk, C.S., Lange, S., et al., 2023. Pyautogalaxy: Open-source multiwavelength galaxy structure & morphology. Journal of Open Source Software 8, 4475.
  • Paszke et al. (2019) Paszke, A., Gross, S., Massa, F., Lerer, A., Bradbury, J., Chanan, G., Killeen, T., Lin, Z., Gimelshein, N., Antiga, L., et al., 2019. Pytorch: An imperative style, high-performance deep learning library. Advances in neural information processing systems 32.
  • Peng et al. (2010) Peng, C.Y., Ho, L.C., Impey, C.D., Rix, H.W., 2010. Detailed decomposition of galaxy images. ii. beyond axisymmetric models. The Astronomical Journal 139, 2097.
  • Qiu et al. (2023) Qiu, C., Napolitano, N.R., Li, R., Fang, Y., Tortora, C., Shen, S., Ho, L.C., Lin, W., Wei, L., Li, R., et al., 2023. Galaxy light profile neural networks (galnets). ii. bulge-disc decomposition in optical space-based observations. arXiv preprint arXiv:2306.05909 .
  • Robotham et al. (2017) Robotham, A., Taranu, D., Tobar, R., Moffett, A., Driver, S., 2017. Profit: Bayesian profile fitting of galaxy images. Monthly Notices of the Royal Astronomical Society 466, 1513–1541.
  • Rodriguez-Gomez et al. (2019) Rodriguez-Gomez, V., Snyder, G.F., Lotz, J.M., Nelson, D., Pillepich, A., Springel, V., Genel, S., Weinberger, R., Tacchella, S., Pakmor, R., et al., 2019. The optical morphologies of galaxies in the illustristng simulation: a comparison to pan-starrs observations. Monthly Notices of the Royal Astronomical Society 483, 4140–4159.
  • Schade et al. (1995) Schade, D., Lilly, S., Crampton, D., Hammer, F., Le Fevre, O., Tresse, L., 1995. Canada-france redshift survey: Hubble space telescope imaging of high-redshift field galaxies. The Astrophysical Journal 451, L1.
  • Sersic (1968) Sersic, J.L., 1968. Atlas de Galaxias Australes.
  • Stone et al. (2023) Stone, C.J., Courteau, S., Cuillandre, J.C., Hezaveh, Y., Perreault-Levasseur, L., Arora, N., 2023. Astrophot: Fitting everything everywhere all at once in astronomical images. Monthly Notices of the Royal Astronomical Society , stad2477.
  • Tripathi et al. (2023) Tripathi, A., Panwar, N., Sharma, S., Kumar, B., Rastogi, S., 2023. Photometric and kinematic study of the open cluster ngc 1027. arXiv preprint arXiv:2304.05762 .
  • Trujillo et al. (2001) Trujillo, I., Graham, A.W., Caon, N., 2001. On the estimation of galaxy structural parameters: the sérsic model. Monthly Notices of the Royal Astronomical Society 326, 869–876.
  • Tuccillo et al. (2018) Tuccillo, D., Huertas-Company, M., Decencière, E., Velasco-Forero, S., Domínguez Sánchez, H., Dimauro, P., 2018. Deep learning for galaxy surface brightness profile fitting. Monthly Notices of the Royal Astronomical Society 475, 894–909.
  • de Vaucouleurs (1958) de Vaucouleurs, G., 1958. Photoelectric photometry of the andromeda nebula in the ubv system. Astrophysical Journal, Vol. 128, p. 465 128, 465.
  • Vikram et al. (2010) Vikram, V., Wadadekar, Y., Kembhavi, A.K., Vijayagovindan, G., 2010. Pymorph: automated galaxy structural parameter estimation using python. Monthly Notices of the Royal Astronomical Society 409, 1379–1392.
  • van der Wel (2008) van der Wel, A., 2008. The dependence of galaxy morphology and structure on environment and stellar mass. The Astrophysical Journal 675, L13.
  • York et al. (2000) York, D.G., Adelman, J., Anderson Jr, J.E., Anderson, S.F., Annis, J., Bahcall, N.A., Bakken, J., Barkhouser, R., Bastian, S., Berman, E., et al., 2000. The sloan digital sky survey: Technical summary. The Astronomical Journal 120, 1579.
  • Zhan (2011) Zhan, H., 2011. Consideration for a large-scale multi-color imaging and slitless spectroscopy survey on the chinese space station and its application in dark energy research. Scientia Sinica Physica, Mechanica & Astronomica 41, 1441.
  • Zhuang and Ho (2022) Zhuang, M.Y., Ho, L.C., 2022. The star-forming main sequence of the host galaxies of low-redshift quasars. The Astrophysical Journal 934, 130.