Trying to get my thoughts organized for the first paper.
In [2]:
import numpy as np
from pylab import *
%matplotlib inline
import warnings
warnings.filterwarnings('ignore')
In [3]:
%run ~/Dropbox/pythonCode/LCSanalyzeblue.py
In [1]:
# using John Moustakas's stellar mass estimates
figure()
plot(s.s.ABSMAG[:,4][s.blueflag2],s.logstellarmass[s.blueflag2],'bo')
xlabel('$M_r$')
ylabel('$ log_{10}(M_*) $')
# r-band limit
rlim=17.77
# distance modulus to Hercules, the furthest cluster
mM=35.97
# absolute mag limit corresponding to r=17.7
Mr=rlim-mM
axvline(x=Mr,ls='--',color='r')
axis([-20,-16,8.5,10.5])
axhline(y=9.5)
RESULT: SDSS mag limit corresponds to a stellar mass cut of approximately $log_{10}(M_*) > 9.5$.
I have limited the sample to blue galaxies only, using a NUV-r color cut:
self.blueflag2= (self.nsamag[:,1] - self.nsamag[:,4]) < 4.
Some galaxies don't have GALEX data (JM is checking into why this is the case). For these, I require u-r < 1.8.
In [213]:
s.plotsalimcolormag()
In [214]:
# For blue galaxies only
s.plotSFRStellarmassSizeBlue(blueflag=True)
In [215]:
# to compare size distributions
print 'comparing size ratios for field vs cluster'
f1=s.bluesampleflag & ~s.membflag & ~s.agnflag
m1=s.bluesampleflag & s.membflag & ~s.agnflag
t=ks(s.s.SIZE_RATIO[f1],s.s.SIZE_RATIO[m1])
print 'mean of field = %5.2f +/- %5.2f'%(mean(s.s.SIZE_RATIO[f1]),std(s.s.SIZE_RATIO[f1])/sqrt(1.*sum(f1)))
print 'mean of clust = %5.2f +/- %5.2f'%(mean(s.s.SIZE_RATIO[m1]),std(s.s.SIZE_RATIO[m1])/sqrt(1.*sum(m1)))
In [216]:
s.printsize()
In [ ]:
# comparing sizes for sample with Coma removed
nc.plotSFRStellarmassSizeBlue(blueflag=True)
nc.printsize()
ncf1=nc.bluesampleflag & ~nc.membflag & ~nc.agnflag
ncm1=nc.bluesampleflag & nc.membflag & ~nc.agnflag
t=ks(nc.s.SIZE_RATIO[ncf1],nc.s.SIZE_RATIO[ncm1])
RESULTS ARE NOT AS SIGNIFICANT ONCE COMA IS REMOVED. DIFFERENCE BETWEEN FIELD AND CLUSTERS ARE NOW AT 2-SIGMA LEVEL. THE CONCLUSION IS THAT COMA IS IMPORTANT - PERHAPS ENVIRONMENTAL EFFECTS ARE STRONGER; COMA ALSO CONTRIBUTES TO SAMPLE SIZE.
Need to make sure that we are not seeing the effect of some parameter that is linked with environment. For example, B/T is strongly correlated with environments.
Check:
In [ ]:
# stellar mass
print 'comparing stellar mass for field vs cluster'
f1=s.bluesampleflag & ~s.membflag & ~s.agnflag
m1=s.bluesampleflag & s.membflag & ~s.agnflag
t=ks(s.logstellarmass[f1],s.logstellarmass[m1])
# B/T
print ''
print 'comparing B/T for field vs cluster'
f1=s.bluesampleflag & ~s.membflag & ~s.agnflag & s.gim2dflag
m1=s.bluesampleflag & s.membflag & ~s.agnflag & s.gim2dflag
t=ks(s.s.B_T_r[f1],s.s.B_T_r[m1])
In [ ]:
# not sure why I was looking at this
plot(s.s.SIZE_RATIO[s.sampleflag & ~s.agnflag],s.s.fcnsersic1[s.sampleflag&~s.agnflag],'bo')
xlabel('Re(24)/Re(r)')
ylabel('Sersic index')
gca().set_yscale('log')
looking for systematics in size measurements. In particular, how does size vary with
B/A
Re(r)
distance
In [ ]:
# SIZE VS B/A
figure()
plot(s.s.SERSIC_BA[s.sampleflag & ~s.agnflag],s.s.SIZE_RATIO[s.sampleflag & ~s.agnflag],'bo')
xlabel('r-band B/A')
ylabel('Re(24)/Re(r)')
t=spearman(s.s.SERSIC_BA[s.sampleflag & ~s.agnflag],s.s.SIZE_RATIO[s.sampleflag & ~s.agnflag])
In [ ]:
# SIZE VS SERSIC_TH50
figure()
plot(s.s.SERSIC_TH50[s.sampleflag & ~s.agnflag],s.s.SIZE_RATIO[s.sampleflag & ~s.agnflag],'bo')
xlabel('r-band Re(r) (arcsec)')
ylabel('Re(24)/Re(r)')
spearman(s.s.SERSIC_TH50[s.sampleflag & ~s.agnflag],s.s.SIZE_RATIO[s.sampleflag & ~s.agnflag])
In [ ]:
# SIZE VS DISTANCE
figure()
plot(s.s.ZDIST[s.sampleflag & ~s.agnflag],s.s.SIZE_RATIO[s.sampleflag & ~s.agnflag],'bo')
plot(s.s.ZDIST[s.sampleflag & ~s.agnflag & s.membflag],s.s.SIZE_RATIO[s.sampleflag & ~s.agnflag & s.membflag],'ro',label='Member')
xlabel('ZDISTANCE')
ylabel('Re(24)/Re(r)')
spearman(s.s.ZDIST[s.sampleflag & ~s.agnflag],s.s.SIZE_RATIO[s.sampleflag & ~s.agnflag])
In [ ]:
# looking at using SE FLUX_RADIUS to define a concentration value
figure()
flag=s.sampleflag & ~s.agnflag
plot(s.s.fcre1[flag],s.s.FLUX_RADIUS1[flag],'bo',label='SE R50')
plot(s.s.fcre1[flag],s.s.FLUX_RADIUS2[flag],'go',label='SE R90')
xlabel('GALFIT R50')
ylabel('SE FLUX RADIUS')
legend(numpoints=1)
xl=arange(0,8)
plot(xl,xl,'k-')
plot(xl,xl,'k-')
plot(xl,xl+3.5,'k-')
axis([0,6,0,10])
In [ ]:
truncflag=(s.s.SIZE_RATIO > 0.6) & (s.s.FLUX_RADIUS2*mipspixelscale < (0.6*s.s.PETROTH90 +3)) & s.sampleflag
In [ ]:
t=sort(s.s.NSAID[truncflag])
for i in t: print i, s.s.SIZE_RATIO[s.nsadict[i]],s.c90[s.nsadict[i]]
In [ ]:
i=72481
print s.s.SIZE_RATIO[s.nsadict[i]],s.c90[s.nsadict[i]]
In [ ]:
figure()
flag=s.sampleflag & ~s.agnflag
scatter(s.s.SIZE_RATIO[flag],s.c90[flag],c=log10(s.ssfr[flag]),s=60)
colorbar(fraction=.08,label='$log_{10}(sSFR)$')
xlabel('Re(24)/Re(r)')
ylabel('R90(24)/Re(24)')
axhline(y=1.34, color='k',ls='--',label='Uniform')
axhline(y=4.2, color='k',ls=':',label='Gaussian')
legend()
axvline(x=.40)
In [ ]:
figure()
flag=s.sampleflag & ~s.agnflag
y=s.s.fcre1*mipspixelscale/s.s.PETROTH90
scatter(s.s.SIZE_RATIO[flag],y[flag],c=log10(s.ssfr[flag]),s=60)
colorbar(fraction=.08,label='$log_{10}(sSFR)$')
xlabel('Re(24)/Re(r)')
ylabel('R90(24)/R90(r)')
xl=arange(.1,1.4,.1)
plot(xl,.55*xl,'k-')
plot(xl,.55*xl-.095,'k--')
#axhline(y=1.34, color='k',ls='--',label='Uniform')
#axhline(y=4.2, color='k',ls=':',label='Gaussian')
#legend()
#axvline(x=.40)
checkflag=(s.s.SIZE_RATIO > 0.6) & (y < (0.55*s.s.SIZE_RATIO-.095)) & s.sampleflag & ~s.agnflag
t=sort(s.s.NSAID[checkflag])
for i in t: print i, s.s.SIZE_RATIO[s.nsadict[i]],s.c90[s.nsadict[i]]
This doesn't seem like a physically significant cut in the sense that it is not picking up galaxies that I would say are truncated - meaning ok emission in the center, but it cuts off before the optical end of the galaxy.
Let's identify a list of truncated galaxies, and then see if they stand out in any size parameters. I am going to select galaxies with extended emission that is truncated relative to the stellar disk.
18234 (MKW8)
43851
69517
69610
70703
72481
72679
79360
104090
In [ ]:
# 99882 - undefined NUV-r color
i=s.nsadict[99882]
print s.sampleflag[i]
print s.blueflag2[i]
print s.NUVr[i],s.agnflag[i]
i=s.nsadict[163584]
print s.sampleflag[i]
print s.blueflag2[i]
print s.NUVr[i],s.agnflag[i]
going to plot NUV-r vs u-g or maybe u-r to see what NUV-r < 4 corresponds to in SDSS color space.
So 34 galaxies that have galfit fits do not have NUV data from galex. Let's find the ones that are spirals.
In [ ]: