R lmer4 package multilevel model adding random effect with 0 notation I do not understand what the difference between these two models is ( I am using the lmer4 package)
Model.1<-lmer(Y~ X1+ X2+ X3
          +(1|Subject) + (0+X1|Subject)+ (0+X2|Subject), 
          data=Data, REML=FALSE)

Model.2<-lmer(Y~ X1+ X2+ X3
          +(1|Subject) + (X1|Subject)+ (X2|Subject), 
          data=Data, REML=FALSE)

When I compare these two models, I get different degrees of freedom (with model 1 having less than model 2). But I am not sure what the (0+..) notation does to the random effect, and how I decide on a theoretical level which model to use (other than comparing BIC scores).
 A: Model.2 doesn't make much sense because you are asking the software to estimate random intercepts for Subject three times. That is because:
(1|Subject) + (X1|Subject)+ (X2|Subject)

is the same as:
(1|Subject) + (1 + X1|Subject) + (1 + X2|Subject)

where the 1 in each term specifies that you want random intercepts for the term on the right side of the |.
The 0 + X1 on the left side of the random effects terms in model.1 tells the software to estimate random slopes for X1 but not random intercepts for Subject, and since you also have (1|Subject) which does fit random intercepts for `Subject, this is how you specify random slopes that are not correlated with random intercepts. Note that another way to write:
(1 | Subject) + (0 + X1 | Subject)

is to write:
(X1 || Subject)

So your Model.1 could be re-written more compactly as:
lmer(Y~ X1+ X2+ X3 + (X1 + X2 || Subject)

which is different from:
lmer(Y~ X1+ X2+ X3 + (X1 + X2 | Subject)

because in this case the software would estimate correlations between both random slopes and the random intercepts.
