Loading src/lsst_inaf_agile/mbh.py +5 −1 Original line number Diff line number Diff line Loading @@ -139,7 +139,11 @@ def get_log_mbh_graham2023(log_mstar, which="E/Es,e"): def get_delta_log_mbh_shankar2019(log_mstar, low=0.0, high=np.inf): """Return equation 6 from Shankar+2019.""" """ Return equation 6 from Shankar+2019. The reference for the relation is: Shankar F. et al., 2016, MNRAS, 460, 3119 """ delta_mbh = 0.32 - 0.1 * (log_mstar - 12) delta_mbh = np.clip(delta_mbh, low, high) return delta_mbh Loading src/scripts/plots/plot_mbh_mstar.py +42 −40 Original line number Diff line number Diff line Loading @@ -21,8 +21,9 @@ mpl.style.use("etc/agile.mplstyle") log_mstar = np.linspace(8.5, 12.5, 401) dlog_mstar = 0.10 dz = 1.0 lw1 = 2.5 lw2 = 2.0 lw1 = 3.0 lw2 = 3.0 lw3 = 1.5 alpha = 0.80 cmap = mpl.colormaps["gist_heat"] norm = mpl.colors.Normalize(vmin=0.0, vmax=5.5) Loading Loading @@ -57,46 +58,47 @@ def main(): axes[1].fill_between(log_mstar, log_mbh - 0.50, log_mbh + 0.50, color="k", alpha=0.20) axes[1].plot( log_mstar, mbh.get_log_mbh_haring_rix2004(log_mstar), lw=lw2, # label="Häring & Rix 2004", label="H&R04", alpha=alpha, ls="dashdot", ) # axes[1].plot( # log_mstar, # mbh.get_log_mbh_kormendy_ho2013(log_mstar), # lw=lw2, # label="K&H13", # alpha=alpha, # ls="dashed", # ) axes[1].plot( log_mstar, mbh.get_log_mbh_kormendy_ho2013(log_mstar, from_rv15=True), lw=lw2, # label="K&H13 (R&V15)", label="K&H13", alpha=alpha, ls="dashed", ) axes[1].plot( log_mstar, mbh.get_log_mbh_reines_volonteri2015(log_mstar), lw=lw2, label="R&V15", alpha=alpha, ls="dotted", ) ############################################################################### # Start plotting references # 1) cycle through color and linestyle "dashdot", "dashed", "dotted" # 2) cycle through linewidths lw2, lw3 ############################################################################### from cycler import cycler colors = [ "#1f77b4", "#ff7f0e", "#2ca02c", "#d62728", "#9467bd", "#8c564b", # "#e377c2", # "#7f7f7f", # "#bcbd22", # "#17becf", ] lss = "dashdot", "dashed", "dotted" lws = lw2, lw3 c = cycler(color=colors) + (cycler(lw=lws) * cycler(ls=lss)) axes[1].set_prop_cycle(c) for log_mbh, label in [ # NOTE: AV verified H&R is consistent with R&V15 plot (mbh.get_log_mbh_haring_rix2004(log_mstar), "H&R04"), # NOTE: updated K&H according to AWG email December 2025 (mbh.get_log_mbh_kormendy_ho2013(log_mstar, from_rv15=True), "K&H13"), (mbh.get_log_mbh_reines_volonteri2015(log_mstar), "R&V15"), # NOTE: Shankar email December 2025 # Shankar F. et al., 2016, MNRAS, 460, 3119 (mbh.get_log_mbh_shankar2019(log_mstar), "S+16"), # NOTE: AWG email December 2025 -- use the black line from Fig. A4, # slope is 2.07 \pm 0.19 (mbh.get_log_mbh_graham2023(log_mstar, which="major_mergers"), "G23"), ]: axes[1].plot(log_mstar, log_mbh, label=label, alpha=alpha) for ax in axes: ax.set_xlim(9.5, 11.9) ax.set_xlim(9.6, 11.9) ax.set_ylim(6.1, 8.9) ax.set_xlabel(r"$\log_{10} \left( M_{\rm star} \,/\, M_\odot \right)$") # ax.set_aspect(1.0) Loading Loading
src/lsst_inaf_agile/mbh.py +5 −1 Original line number Diff line number Diff line Loading @@ -139,7 +139,11 @@ def get_log_mbh_graham2023(log_mstar, which="E/Es,e"): def get_delta_log_mbh_shankar2019(log_mstar, low=0.0, high=np.inf): """Return equation 6 from Shankar+2019.""" """ Return equation 6 from Shankar+2019. The reference for the relation is: Shankar F. et al., 2016, MNRAS, 460, 3119 """ delta_mbh = 0.32 - 0.1 * (log_mstar - 12) delta_mbh = np.clip(delta_mbh, low, high) return delta_mbh Loading
src/scripts/plots/plot_mbh_mstar.py +42 −40 Original line number Diff line number Diff line Loading @@ -21,8 +21,9 @@ mpl.style.use("etc/agile.mplstyle") log_mstar = np.linspace(8.5, 12.5, 401) dlog_mstar = 0.10 dz = 1.0 lw1 = 2.5 lw2 = 2.0 lw1 = 3.0 lw2 = 3.0 lw3 = 1.5 alpha = 0.80 cmap = mpl.colormaps["gist_heat"] norm = mpl.colors.Normalize(vmin=0.0, vmax=5.5) Loading Loading @@ -57,46 +58,47 @@ def main(): axes[1].fill_between(log_mstar, log_mbh - 0.50, log_mbh + 0.50, color="k", alpha=0.20) axes[1].plot( log_mstar, mbh.get_log_mbh_haring_rix2004(log_mstar), lw=lw2, # label="Häring & Rix 2004", label="H&R04", alpha=alpha, ls="dashdot", ) # axes[1].plot( # log_mstar, # mbh.get_log_mbh_kormendy_ho2013(log_mstar), # lw=lw2, # label="K&H13", # alpha=alpha, # ls="dashed", # ) axes[1].plot( log_mstar, mbh.get_log_mbh_kormendy_ho2013(log_mstar, from_rv15=True), lw=lw2, # label="K&H13 (R&V15)", label="K&H13", alpha=alpha, ls="dashed", ) axes[1].plot( log_mstar, mbh.get_log_mbh_reines_volonteri2015(log_mstar), lw=lw2, label="R&V15", alpha=alpha, ls="dotted", ) ############################################################################### # Start plotting references # 1) cycle through color and linestyle "dashdot", "dashed", "dotted" # 2) cycle through linewidths lw2, lw3 ############################################################################### from cycler import cycler colors = [ "#1f77b4", "#ff7f0e", "#2ca02c", "#d62728", "#9467bd", "#8c564b", # "#e377c2", # "#7f7f7f", # "#bcbd22", # "#17becf", ] lss = "dashdot", "dashed", "dotted" lws = lw2, lw3 c = cycler(color=colors) + (cycler(lw=lws) * cycler(ls=lss)) axes[1].set_prop_cycle(c) for log_mbh, label in [ # NOTE: AV verified H&R is consistent with R&V15 plot (mbh.get_log_mbh_haring_rix2004(log_mstar), "H&R04"), # NOTE: updated K&H according to AWG email December 2025 (mbh.get_log_mbh_kormendy_ho2013(log_mstar, from_rv15=True), "K&H13"), (mbh.get_log_mbh_reines_volonteri2015(log_mstar), "R&V15"), # NOTE: Shankar email December 2025 # Shankar F. et al., 2016, MNRAS, 460, 3119 (mbh.get_log_mbh_shankar2019(log_mstar), "S+16"), # NOTE: AWG email December 2025 -- use the black line from Fig. A4, # slope is 2.07 \pm 0.19 (mbh.get_log_mbh_graham2023(log_mstar, which="major_mergers"), "G23"), ]: axes[1].plot(log_mstar, log_mbh, label=label, alpha=alpha) for ax in axes: ax.set_xlim(9.5, 11.9) ax.set_xlim(9.6, 11.9) ax.set_ylim(6.1, 8.9) ax.set_xlabel(r"$\log_{10} \left( M_{\rm star} \,/\, M_\odot \right)$") # ax.set_aspect(1.0) Loading