Appendix S1: Details of conceptual fitness model presented in Figure 1. Our model simulates empirical estimates of natural selection using the Lande and Arnold (1983) quadratic selection models on flowering time in a finite population undergoing a shift in the adaptive landscape as a result of global climate change. We consider three scenarios: (A) ‘past conditions’ in which the population is at equilibrium, (B) ‘present conditions’ in which the population is evolving to a new optimum, and (C) ‘future conditions’ in which the population is far from the new optimum. Details of the model are provided as code for R (below) and briefly summarized here. In each scenario, we model the fitness surface for flowering time as a Gaussian function: we z z 2 2VS (1) where z is flowering time, 1/VS is the strength of stabilizing selection, and zɵ is the optimum flowering time. A second Gaussian distribution, similar to Eq. (1), defines the distribution of flowering time phenotypes in the population, but with z replacing zɵ in Eq. (1) and representing the population mean flowering time. We also replace VS from Eq. (1) with VP to represent the phenotypic variance. From this distribution, 50 individuals are sampled and their fitnesses are estimated using Eq. (1) plus a normally distributed random error term to simulate experimental and environmental deviations. Individuals with fitness < 0.01 are excluded from the analysis to simulate dead individuals and individuals which survive but fail to flower or produce offspring. To simulate a population whose rate of evolution lags behind the rate of climate change in scenarios (B) and (C), we multiply z by 0.4 for each scenario relative to its preceding scenario, representing a 60% shift in the mean towards the new optimum in each case. We also model a reduction in phenotypic variance (VP) to account for the fact that the evolutionary response to selection erodes standing genetic variation in a finite population. However, the resulting shift from stabilizing to directional selection as shown in scenario B, and eventual extinction as shown in scenario C, are both robust to any case in which z lags behind zɵ, even if there is no change in VP. A quadratic selection model is fit to the 50 randomly sampled individuals, following Lande and Arnold (1983) as an empirical estimate of the fitness surface. The quadratic coefficient is included in the fit only if significant, whereas the linear fit is included regardless of significance to allow comparison of the slope between scenarios B and C. References Lande R & Arnold SJ (1983) The measurement of selection on correlated characters. Evolution 37:1210-26 1 R-code: ## Variables Defined below, AFTER function ### ## zopt == Optimum value of z-trait (i.e. z-value with highest fitness) ## Vs == Variance in selection; inversely proportional to strength of stabilizing selection ## Vp == Variance in phenotypes on which seleciton is measured ## zmean == Mean z-score of population upon which selection is measured ## Plots fitness function graph given zopt, Vs, and Vp fitnessplot<-function(zopt,Vs,zmean,Vp){ z<-c(-200:200)/20 ## Arbitrary z-values for plotting fitness function w<-exp(-(z-zopt)^2 /(2*Vs)) ## Stabilizing selection equation from Johnson & Barton (2005): PRSB 360:1411-1425 ## Now randomly select n data points from the fitness surface zdat<-rnorm(50,mean=zmean,sd=Vp) wdat<-exp(-(zdat-zopt)^2 /(2*Vs))+rnorm(length(zdat))/20 ## And calculate the fitness of each data point, with experimental error zdat<-zdat[wdat>=0.01] ## Remove individuals with fitness~0 and recalculate wdat<-wdat[wdat>=0.01] ## And calculate the fitness of each data point, with experimental error points(z,w,col=rgb(1-(z+10)/20,(z+10)/30,(z+10)/20,0.2),cex=1,pch=16) ## Fitness function points(zdat,wdat,col=rgb(0.4,0.4,0.4),cex=1.5) mod<-lm(wdat~zdat+I(zdat^2)) ## Lande-Arnold estimate of fitness for sampled individuals zfit<-min(zdat)+c(0:100)/100*(max(zdat)-min(zdat)) ## increase number of z values so that fitted curve will be smoother quadtest<-anova(mod)[['Pr(>F)']][2] ## Is quadratic term significant? if(quadtest>0.05){ ## If not, exclude from model fit mod<-lm(wdat~zdat) wfit<-mod$coefficients[1]+mod$coefficients[2]*zfit} 2 if(quadtest<0.05){wfit<mod$coefficients[1]+mod$coefficients[2]*zfit+mod$coefficients[3]*zfit*zfit} ## If so, include it lines(zfit,wfit,col=rgb(0,1,0),lwd=3,lty=1) } ## Create a blank plot with x-y labels plot(0,0,col='white',xlab="Flowering Time",ylab="Fitness",axes=FALSE,frame.plot=FALSE) ## Plot 3 separate graphs par(mfcol=c(3,1),mar=c(0,0,0,0),oma=c(3,3,0,0),mfg=c(1,1)) ## First Graph plot(0,0,col='white',xlim=c(-10,10),ylim=c(0,1.2),axes=FALSE,frame.plot=TRUE) zopt<-5 ## Optimum value of z-trait (i.e. z-value with highest fitness) Vs<-10 ## Variance in selection; inversely proportional to strength of stabilizing selection zmean<-5 ## Mean z-score of population upon which selection is measured Vp<-Vs/10 ## Variance in phenotypes on which seleciton is measured fitnessplot(zopt,Vs,zmean,Vp) text(-10,1.1,"A",cex=1.5) ## Second Graph plot(0,0,col='white',xlim=c(10,10),ylim=c(0,1.2),axes=FALSE,frame.plot=TRUE,xlab="Flowering time",ylab="Fitness") zopt<- -2 ## Optimum value of z-trait (i.e. z-value with highest fitness) Vs<-10 ## Variance in selection; inversely proportional to strength of stabilizing selection zmean<- 3 ## Mean z-score of population upon which selection is measured Vp<-Vs/15 ## Variance in phenotypes on which seleciton is measured fitnessplot(zopt,Vs,zmean,Vp) text(-10,1.1,"B",cex=1.5) 3 ## Third Graph plot(0,0,col='white',xlim=c(10,10),ylim=c(0,1.2),axes=FALSE,frame.plot=TRUE,xlab="Flowering time",ylab="Fitness") zopt<- -10 ## Optimum value of z-trait (i.e. z-value with highest fitness) Vs<-10 ## Variance in selection; inversely proportional to strength of stabilizing selection zmean<- 1.8 ## Mean z-score of population upon which selection is measured Vp<-Vs/20 ## Variance in phenotypes on which seleciton is measured fitnessplot(zopt,Vs,zmean,Vp) text(-10,1.1,"C",cex=1.5) 4 Appendix S2: Year-level analyses of long-term flowering phenology data. For these analyses, we calculated yearly averages (LSMEANS) for the timing of first flowering in mixed models (Proc Mixed) that included plot as a random effect. As with the plot-level analyses (see main text), we ran one model including all predictors, and then three separate models for each predictor to address possible problems with multicollinearity. The results presented here are virtually identical to the plot-level analyses in the main text. The results in this table use data from 1975-2011 because snowmelt data are not available for 1973 and 1974. However, flowering time data are available from 1973-2011. A univariate model with data from 1973-2011 shows a significant advancement in the timing of first flowering (β=-0.35 ±0.15, F1,34=5.84, p=0.0212). Full model β F1,30 p-value Intercept 514.8 ± 137.8 Year -0.20 ±0.07 8.74 0.006 Snowmelt date 0.45 ±0.09 22.98 <0.0001 Temperature* -2.35 ± 0.9 6.97 0.013 *Average April and May temperature 5 Each predictor independently β F1,32 p-value -0.37 ±0.16 0.69±0.065 -6.2 ± 0.7 5.23 111.6 81.2 Intercept β 0.029 904.7± 323.7 <0.0001 67.6 ± 9.2 <0.0001 183.8± 2.3 Appendix S3: Relationship between the peak mean daily runoff in the East River (x) and snowmelt date in Gothic, the site of the Rocky Mountain Biology Laboratory (y), based on data from 1975-2011, with 2003 removed as an outlier. This relationship was used to estimate snowmelt date from 1935-1974. See main text for details. 6 Appendix S4: Selection analysis using raw data (not family means) for the recombinant inbred lines (RILs). In this dataset, the number of fruits (the fitness component) followed a zero-inflated Poisson distribution. We conducted this analysis using Proc NLMIXED, which can only accommodate one random effect. We incorporated family as the random effect, and block as a fixed effect. Zero-inflated Poisson analysis account for excess zeros by modeling the probability that fitness=0 in a logistic model, and then separately modeling the number of fruits >0 using a Poisson distribution. We used the same predictors in the zero and count components of this analysis: linear and quadratic effects of the timing of first flowering, plant size at flowering (height and leaf number), block, and covariates for initial plant size and density of neighboring plants, with a random effect for family. SAS code is presented after the figure. Zero-inflation parameter estimates were non-significant for all traits in our multivariate and univariate models (p-values ranging from 0.11 to 0.67). The following table contains maximum likelihood parameter estimates for the count component of the model. Please note that the general patterns presented here are qualitatively similar to the analysis conducted at the family level (main text), but this analysis was conducted using absolute fitness and the family-level analysis was done with relative fitness. We used absolute fitness here because relative fitness was not normally distributed and could not be fit using Poisson models. As with other analyses, this analysis shows directional selection for earlier flowering. The following table contains results from multivariate models to estimate standardized selection gradients in the presence of other traits (β'), as well as univariate models of each trait separately to estimate standardized selection differentials (S'). Univariate analyses included the specific trait (flowering time, height at flowering, or leaf number at flowering), as well as the covariates (plant density, and size at first flowering), block, and the random effect of family. There are 95 degrees of freedom for all analyses. Comparing selection gradients (β') to selection differentials (S') can expose the extent of direct and indirect selection on a given trait. Significant p-values are highlighted in bold. The unstandardized selection coefficient for flowering time from this analysis was -0.035 ± 0.004 relative fitness unit/day, t=-8.82, p<0.0001. This value is nearly identical to the unstandardized selection coefficient for the family-level analysis presented in the main text. 7 Univariate analyses Multivariate analysis β' Day of first flowering: Linear effect Day of first flowering: Quadratic effect Height at first flowering Number of leaves at first flowering t-value p-value -0.27 ±0.07 -3.80 0.0003 -0.013 ±0.08 0.34 ± 0.07 -0.17 4.59 0.87 <0.0001 0.125 ± 0.06 2.12 0.037 Plant density -0.13 ± 0.05 -2.55 0.0123 Initial plant size 0.099 ±0.04 2.28 0.025 -1.85 0.067 3.32 0.0013 Block (fixed effect) Genotype (random effect) S' t-value p-value -0.47±0.053 -8.85 <0.0001 0.038 ±0.08 0.5 0.62 0.51 ±0.055 -0.063 ± 0.056 9.21 -1.11 <0.0001 0.27 Values changed slightly for each phenotypic trait Values changed slightly for each phenotypic trait Values changed slightly for each phenotypic trait Values changed slightly for each phenotypic trait Analyses were conducted with standardized phenotypic data (mean=0, standard deviation=1), but the figure below illustrates the relationship using raw data on the timing of first flowering. 8 SAS code for Zero inflated Poisson regression. Trait values were standardized prior to analysis FT=flowering time veg= density of neighboring plants initW= initial rosette width (at planting) LFN= leaf number at flowering Height_at_flr= Height at flowering Siliques = Number of fruits = Fitness component bFT, bveg, bFT2, binitW, bheight, bLFN, bblock - > These will give parameter values for the associated predictors for the count component of the analysis (respectively: flowering time, density of neighboring plants, quadratic effect of flowering time, initial plant size, height at flowering, leaf number at flowering, block) inf0 – inf7 will provide the parameter estimates for the logistic regression component of the analysis.: proc nlmixed data=work.Traits; /* starting values */ parms b0=0 bFT=0 bveg=0 bFT2=0 binitW=0 bheight=0 bLFN=0 bblock=0 inf0=0 inf1=0 inf2=0 inf3=0 inf4=0 inf5=0 inf6=0 inf7=0 s2u1=1 s2u2=1; /* zero inflation model (including all traits) */ zeromodel = inf0 + inf1*FT+ inf2*FT*FT + inf3*veg + inf4*initW+inf5*height_at_flr + inf6*LFN + inf7*block +U1; infprob = 1/(1+exp(-zeromodel)); /* poisson model (including all traits) */ lambda = exp(b0 + bFT*FT + bFT2*FT*FT + bveg*veg + binitW*initW + bheight*height_at_flr + bLFN*LFN + bblock*block + U2); /* define ZIP log likelihood */ if siliques=0 then ll = log(infprob + (1-infprob)*exp(-lambda)); else ll = log((1-infprob)) + siliques*log(lambda) lgamma(siliques+1) - lambda; model siliques ~ general(ll); /* request predicted counts */ predict (1-infprob)*lambda out=nout; /* establish family as a random effect */ Random U1 U2~N([0,0],[s2u1,0,s2u2]) subject=family; run; 9 Appendix S5: (A) SAS code for calculating the genetic covariance between relative fitness and flowering time (the Robertson-Price identity) for the RILs. Here, we provide code for standardizing trait values to a mean of 0 and standard deviation of 1, but we used unstandardized values in our analyses to obtain results with the relevant phenotypic units (days of flowering time per generation, as opposed to standard deviation change per generation). In these models: w=relative fitness = fitness of an individual/average fitness of population FT= flowering time (day of first flowering) ID = unique number for each individual plant. Height=height at flowering Veg= Density of neighboring plants LFN=leaf number at flowering More complex models produced quantitatively very similar results, so we elected to use a simple model that converged more rapidly. The first data steps put the data into the correct format, and create dummy variables (“Trait” with associate numbers in “Value”) necessary to model genetic covariances. Here we show the proc mixed code for the reduced model (“data=reduced”), but the full model can be obtained by running the same code with “data=full.” data data data data w; set selection_final; Trait="1"; Value=w; run; FT; set selection_final; Trait="2"; Value=FT; run; height; set selection_final; Trait="3"; Value=height; run; LFN; set selection_final; Trait="4"; Value=LFN; run; *The following data step creates the data file for the univariate model to assess the genetic covariance of relative fitness and flowering time; data reduced; set w FT; keep ID family block veg Trait Value; run; *The following data step creates the data file for the multivariate model to assess the genetic covariance of relative fitness, flowering time, plant height at flowering and leaf number at flowering; data full; set w FT height LFN; keep ID family block veg Trait Value; run; *Here is the model statement. Substituting “data=full” for “data=reduced” will give the output of the full model. The univariate (data=reduced) model runs relatively quickly. The full model took 9.5 days to converge; ods output CovParms=Covs_reduced FitStatistics=LogLik_red; proc mixed data=reduced lognote covtest; Class ID family block Trait site cohort; model Value = Trait*veg Trait*site/ddfm=satterthwaite; random Trait /type=VC subject=block*site group=trait ; 10 random Trait /type=UN subject=family ; repeated Trait /type=UN subject=ID(family); run; To test the effect of the genetic covariance component in the reduce model, we simply constrained the covariance to 0, and used a likelihood ratio test : ods output CovParms=Covs_reduced FitStatistics=LogLik_red; proc mixed data=reduced lognote covtest; Class ID family block Trait site cohort; model Value = Trait*veg Trait*site/ddfm=satterthwaite; random Trait /type=VC subject=block*site group=trait ; random Trait /type=UN(1) subject=family ; repeated Trait /type=UN subject=ID(family); run; In the SAS output file for the reduced model, the genetic covariance between relative fitness and flowering time (highlighted for results of the reduced model, below) can be found in the covariance parameters. Trait 1= relative fitness, and trait 2 = unstandardized flowering time: Covariance Parameter Estimates Cov Parm Trait Trait UN(1,1) UN(2,1) UN(2,2) UN(1,1) UN(2,1) UN(2,2) Subject block*Site block*Site family family family ID(family) ID(family) ID(family) Group Trait 1 Trait 2 Standard Estimate Error Z-Value 0.02841 0.01885 1.51 80.2976 24.1446 3.33 0.06176 0.02708 2.28 0.2347 -2.2 -0.5165 5.4951 3.2123 1.71 0.7111 0.04412 16.12 -2.7539 0.3627 -7.59 82.1731 5.2221 15.74 11 Pr Z 0.0659 0.0004 0.0113 0.0277 0.0436 <.0001 <.0001 <.0001 (B) Genetic Variance-Covariance Matrix from full model (genetic variances are on the diagonals, covariances are below). The Robertson-Price identity predicts response to selection as the genetic covariance of a trait with relative fitness, so the response to selection for flowering time would be -0.52 days/generation, for height at flowering would be 1.69 mm/generation, and for leaf number at flowering would be 0.135 leaves/generation. Relative fitness Flowering time Height at flowering Leaf number at flowering Relative fitness 0.059 Flowering time -0.5186 5.37 Height at flowering 1.69 -11.68 357.9 Leaf number at flowering 0.135 -2.10 -8.46 12 3.64 (C) Response to selection via the breeder’s equation. (1) The univariate breeder’s equation (R=H2S) says that the response to selection is equal to heritability multiplied by the selection differential. The unstandardized selection differential is calculated by multiplying the total phenotypic variance in flowering time by the unstandardized regression coefficient for the regression of relative fitness on flowering time. We calculated the breeder’s equation from the recombinant inbred line experiment, using 2 datasets: (1) a reduced data set containing only data from the Colorado common garden in 2010, and (2) a combined dataset with data from Colorado in 2010 and the Montana common garden in 2009 and 2010. Unstandardized regression coefficients presented here come from the individual level data, and include random effects for family and block (Colorado dataset only) and family, family by site and block by site (combined dataset, Colorado and Montana). Analyses at the family level produced nearly identical parameter estimates (combined dataset: -0.035 ± 0.005 relative fitness units per day, F1,46=61.2, p<0.0001; Colorado dataset: -0.036 ± 0.007 relative fitness units per day, F1,95=26.1, p<0.0001), and would result in a response to selection of -0.20 (combined dataset) and -0.32 days per generation (Colorado dataset only). The calculations follow. We evaluated statistical significance for the regression coefficient, variance components and broad sense heritability only. *** p<0.0001, **p<0.01, * p<0.05, N.S.=Not significant: Combined dataset Unstandardized regression coefficient (relationship between flowering time and fitness). This is the covariance of relative fitness and flowering time divided by the variance in flowering time. Total phenotypic variance in flowering time Selection differential (S=Covariance of relative fitness and flowering time= regression coefficient × Variance in flowering time) Genetic variance in flowering time Residual variance in flowering time Block variance in flowering time Broad-sense heritability (H2) Response to selection (R=H2S). The units are days/generation 13 Reduced dataset (Colorado only) -0.035 ± 0.003 *** -0.038 ± 0.005 *** 118.1 -4.13 191.7 -7.35 5.77 ± 3.3* 82.0 ± 5.2 *** 30.34 ± 10.4 ** 0.049± 0.028* 9.06 ± 11.5 N.S. 98.8 ± 15.7 *** 83.8 ± 50.7 * 0.047 ± 0.06N.S. -0.20 -0.35 (2) The multivariate breeder’s equation predicts the response to selection based on multivariate selection gradients and the genetic variance-covariance matrix: R=Gβ We calculated unstandardized multivariate selection gradients for a regression of relative fitness on flowering time and plant height at flowering in a model with family and block by site as random effects and plant density as a covariate. G matrix (genetic variances are on the diagonals, and covariances are beneath). For the Colorado dataset, a full model with flowering time, plant height at flowering and leaf number at flowering did not converge. Since the number of leaves at flowering was nonsignificant in the multivariate selection analysis (Table 2 of main text), we eliminated leaf number at flowering, and the genetic covariances converged. Trait Combined dataset (Colorado and Montana) Colorado dataset only Flowering Height at Leaf number time flowering at flowering Flowering time Flowering 5.37 time Height at -11.68 flowering -2.10 Leaf number at flowering Height at flowering Leaf number at flowering 10.19 357.9 -8.46 3.64 -16.94 1204.6 Did not converge Did not converge Did not converge Multivariate selection gradients and predicted response to selection from the multivariate breeder’s equation. The multivariate selection analyses here used unstandardized data from individual-level analyses that included random effects for block and family (Colorado only, zeroinflated Poisson regression in NLMIXED), and block by site, family and family by site (combined Colorado and Montana dataset; a normal distribution in Proc Mixed produced reasonable residuals for these data). The family level analyses using LSMEANS produced nearly identical multivariate selection gradients for flowering time and height at flowering, but different results for leaf number at flowering in the Colorado and Montana dataset. For the combined dataset (Colorado and Montana), the selection gradients from family-level analyses 14 are: flowering time= -0.032 ± 0.006 relative fitness units/ day (p<0.0001); height at flowering=0.00515± 0.0008 relative fitness units/mm (p<0.0001); leaf number at flowering=0.004 ± 0.008 relative fitness units per leaf (p=0.63). For the Colorado dataset alone, the selection gradients from family-level analyses are: flowering time= -0.017 ± 0.007 relative fitness units/ day (p=0.0205); height at flowering=0.0045± 0.001 relative fitness units/mm (p<0.0001). *p<0.05, ** p<0.001, ***p<0.0001 Combined dataset (Colorado and Montana) Colorado dataset only Trait Multivariate selection gradient (β) Response to selection Multivariate selection gradient (β) Response to selection Flowering time -0.029 ± 0.0045*** -0.24 days/ generation -0.018 ± 0.005 ** -0.23 days/generation Height at flowering 0.0052 ± 0.0006*** 2.10 mm/generation 0.003 ± 0.0008*** 3.92 mm/generation Leaf number at flowering 0.012 ± 0.005* 0.0606 leaves/generation Not included in the model 15 Appendix S6: Sample sizes of individuals from each family and 4 cohorts planted at different dates in the greenhouse. family CME10 CME12 CME6 CME7 CME9 CMEA CMEB CMEC CMED CMEE CMEG CMEH CMEI 3/5/2010 3/12/2010 3/19/2010 3/25/2010 18 9 17 10 14 12 11 16 16 23 11 17 26 17 14 25 17 13 22 20 12 12 7 15 0 5 3 9 12 8 14 15 17 18 5 5 16 21 12 9 22 18 11 17 22 18 19 19 21 16 14 8 16 Appendix S7: Family-level analysis of selection on flowering time: Local genotypes. To analyze the data at the genotypic-level, we calculated family-level means (LSMEANs) for flowering time and fitness for each cohort in separate mixed model analyses (Proc Mixed), in which block was included as a random effect and the number of leaves at planting (initial plant size) was a covariate. At the family-level, we detected significant directional selection for earlier flowering (F1,15=34.9, p<0.0001, β'= -0.45 ± 0.08), with slight curvature to the relationship (F1,15=4.75, γ'=0.18± 0.08, p=0.045). This positive quadratic term does not represent stabilizing selection, but indicates minimal disruptive selection. This analysis found no effect of cohort age on fecundity (F3,15=0.76, p=0.53). Analyses used day of first flowering data standardized to a mean of 0 and standard deviation of 1. The figure here plots raw day of first flowering data. The unstandardized regression coefficient for a univariate analysis of flowering time and relative fitness was -0.026 ± 0.004 relative fitness unit/day, F1,19=35.1, p<0.0001. This value is similar to the unstandardized regression coefficient for the family-level analysis of recombinant inbred lines (RILs) presented in the main text. 17 Appendix S8: Changes in the timing of peak flowering from 1975-2011 in full and reduced models. Separate figures for each of these predictors are presented in Appendix S8. The results presented in this table use data from 1975-2011 because snowmelt data are not available for 1973 and 1974. However, peak flowering data are available from 19732011. A univariate model with data from 1973-2011 shows a significant advancement in the timing of peak flowering (β=-0.296 ±0.1, F1,26=8.67, p=0.0038). Significance of the random effect (plot) was determined by a likelihood ratio test with 1 d.f. Plot was nonsignificant for the reduced models (p-values for plot were 0.21, 0.17, 0.09 respectively for separate models of year, snowmelt date and temperature). Full model Each predictor independently Partial β F1,119 Year -0.20 ±0.09 4.77 Snowmelt day 0.25 ±0.12 4.33 Temperature* -3.11 ±1.17 Plot R2 β F1,121 0.016 -0.32 ±0.1 8.85 0.0035 0.04 0.026 0.54 ±0.07 53.5 <0.0001 0.28 7.05 0.009 0.039 -5.4 ±0.7 59.9 <0.0001 0.30 χ2=3.8 0.051 p-value 0.0309 *Average April and May temperature. 18 p-value R2 0.048 Appendix S9: Long term trends in peak flowering in Boechera stricta. The timing of peak flowering has advanced significantly since 1973 (a), and is tightly related to the timing of snowmelt (b), and late winter temperatures (average April and May temperatures, c). Grey bands represent confidence intervals. See Appendix S8 for statistics. (a) 19 (b) 20 (c) 21