Multilevel MIMIC model
Message/Author
 Benedict Orindi posted on Monday, April 13, 2015 - 7:44 am
I've been trying to fit a three-level MIMIC model in Mplus v7. I have 16 indicators- 14 of which are 4-point ordered categorical and 2 are dichotomous. I have covariates measured at all levels. I have noted something strange and I have read through Mplus discussion as well and I seem not to find a solution. My model runs quite well when the factors are regressed on the covariates, but when I include a line regressing the 16 indicators on the covariates (which I only do for the within level part) I get an error msg saying:

WARNING: A VARIABLE HAS A FREE MEAN AND VARIANCE FIXED TO ZERO.
THIS MAY LEAD TO POOR CONVERGENCE AND MIXING.
TO AVOID THIS, ESTIMATE THE MEAN ON A LEVEL WHERE THE VARIANCE IS FREE.

THE MODEL ESTIMATION DID NOT TERMINATE NORMALLY.
THE PSI MATRIX IS NOT POSITIVE DEFINITE.

THE PROBLEM OCCURRED IN CHAIN 1.

PROBLEM INVOLVING VARIABLE Y1.

THE MODEL ESTIMATION DID NOT TERMINATE NORMALLY.
THE PSI MATRIX IS NOT POSITIVE DEFINITE.

THE PROBLEM OCCURRED IN CHAIN 2.

PROBLEM INVOLVING VARIABLES Y1 AND Y2.

When I block the pointed variables (i.e. Y1 and Y2) the problem shifts to the next indicators, and this happens until I block the regressions on all the indicators. I have even tried reparametrizing the model but the problem persists.
 Benedict Orindi posted on Monday, April 13, 2015 - 7:49 am

DATA: FILE = "mydata.dat";

VARIABLE:NAMES = level3 level2 c1 c2 c3 c4 c5 c6
x1 x2 x3 x4 x5 y1 y2 y3 y4
y5 y6 y7 y8 y9 y10 y11 y12 y13 y14 y15 y16;
USEVARIABLES = c1-y16;
CATEGORICAL = y1-y16;
MISSING = .;
CLUSTER = level3 level2;
WITHIN = x5 c1-c6; !c1-c6 are dummies for a grouping variable.
BETWEEN = (level2) x4 (level3) x1 x2 x3;

ANALYSIS:TYPE = THREELEVEL;
ESTIMATOR = BAYES;
PROCESSORS = 2;
FBITER=1000; !to be increased.
!THIN=10;
 Benedict Orindi posted on Monday, April 13, 2015 - 7:50 am
model: %WITHIN%
fw1 BY y1* y2 y3 y4
y5 y6 y7 y8 y9 y10 y11 y12 y13 y14 y15 y16(xload1-xload12);
fw2 BY y5* y6 y7
y1 y2 y3 y4 y8 y9 y10 y11 y12 y13 y14 y15 y16(xload13-xload25);
fw3 BY y8* y9
y1 y2 y3 y4 y5 y6 y7 y10 y11 y12 y13 y14 y15 y16(xload26-xload39);
fw4 BY y10* y11 y12
y1 y2 y3 y4 y5 y6 y7 y8 y9 y13 y14 y15 y16(xload40-xload52);
fw5 BY y13* y14
y1 y2 y3 y4 y5 y6 y7 y8 y9 y10 y11 y12 y15 y16(xload53-xload66);
fw6 BY y15* y16
y1 y2 y3 y4 y5 y6 y7 y8 y9 y10 y11 y12 y13 y14(xload67-xload80);
fw1-fw6@1;
!Regress factors on covariates:
fw1-fw6 ON x5 c1-c6;
! direct effects:
y1-y16 ON x5 c1-c6(d1-d112); ! This is the part with problems.
 Benedict Orindi posted on Monday, April 13, 2015 - 7:51 am
%BETWEEN level2%
fu1 BY y1* y2 y3 y4 y8 y9 y10 y11 y12 y13 y14
fu2 BY y5* y6 y7
y1 y2 y3 y4 y8 y9 y10 y11 y12 y13 y14 y15 y16(xload86-xload98);
fu3 BY y15* y16
y1 y2 y3 y4 y5 y6 y7 y8 y9 y10 y11 y12 y13 y14(xload99-xload112);
fu1-fu3@1;
!Regress factors on covariates
fu1-fu3 ON x4;
 Benedict Orindi posted on Monday, April 13, 2015 - 7:52 am
%BETWEEN level3%
fh1 BY y1* y2 y3 y4 y8 y9 y10 y11 y12 y13 y14
fh2 BY y5* y6 y7
y1 y2 y3 y4 y8 y9 y10 y11 y12 y13 y14 y15 y16(xload118-xload130);
fh3 BY y15* y16
y1 y2 y3 y4 y5 y6 y7 y8 y9 y10 y11 y12 y13 y14(xload131-xload144);
fh1-fh3@1;
!Regress factors on covariates
fh1-fh3 ON x1 x2 x3;

MODEL PRIORS:
d1-d112~N(0,0.04);
 Benedict Orindi posted on Monday, April 13, 2015 - 7:53 am
Next, I excluded the binary indicators. With this, the error msg in the first block goes but the subsequent ones remain pointing to yet different indicators.

THE MODEL ESTIMATION DID NOT TERMINATE NORMALLY.
THE PSI MATRIX IS NOT POSITIVE DEFINITE.

THE PROBLEM OCCURRED IN CHAIN 1.

PROBLEM INVOLVING VARIABLES Y1 AND Y3.

THE MODEL ESTIMATION DID NOT TERMINATE NORMALLY.
THE PSI MATRIX IS NOT POSITIVE DEFINITE.

THE PROBLEM OCCURRED IN CHAIN 2.

PROBLEM INVOLVING VARIABLES Y1 AND Y5.

Any help will be greatly appreciated
 Linda K. Muthen posted on Monday, April 13, 2015 - 8:15 am
Posts on Mplus Discussion are limited to one window. These types of output specific questions should be sent to support@statmodel.com along with your license number.
 Benedict Orindi posted on Monday, April 13, 2015 - 8:36 am
Noted with thanks!
 z_sh posted on Saturday, March 05, 2016 - 2:37 am
dear Dr Muthen
I want to use multilevel MIMIC for detecting DIF.wv is my within cluster variable.
TITLE: two level MIMIC
DATA: FILE = "F:/replist.dat";
TYPE = MONTECARLO;
VARIABLE:
NAMES = rep clus per wv bv theta x1-x20;
usevariables x1-x20 wv;
CATEGORICAL = x1-x20 ;
CLUSTER = clus;
WITHIN =wv;
MISSING = ALL (999);
ANALYSIS:TYPE = TWOLEVEL random;
MODEL:
%WITHIN%
fw by x1-x20;
fw on wv;
! f1-f6 on age;
x1-x20 on wv@0;
%between%
fb by x1-x20;
OUTPUT:Sampstat TECH1 TECH8;
is this correct?
 Bengt O. Muthen posted on Saturday, March 05, 2016 - 6:16 pm
Looks ok. But you say that wv is your cluster variable - if so, it should not be declared as WITHIN.