NOTE MLwiN macro code generated by MLPowSim
NOTE b21 - number of level 1 per level 2, b22 - number of level 2 per level 3
NOTE b30 - number of level 3 units
CALC b23 = b30*b21*b22
CALC b24 = b21*b22
CALC b25 = b30*b22
ERASE c1011 c1012
GENErate 1 b23 c1
CODE b22 b21 b30 c2
CODE b30 b24 1 c3
PUT b23 1 c4
PUT b23 1 c5
NAME c1 'l1id' c2 'l2id' c3 'l3id' c4 'cons' c5 'resp'
CLEAr
RESP c5
IDEN 3 c3
IDEN 2 c2
IDEN 1 c1
EXPL 1 c4
SETV 1 c4
SETV 2 c4
SETV 3 c4
PUT b23 1 c11
ADDT c11
PUT b23 1 c12
ADDT c12
ERROR 0
BATCH 1
LOOP b40 1 b41
    NRAN b30 c990
    CALC c990 = c990*0.353553
    REPE b24 c990 C991
    NRAN b25 c990
    CALC c990 = c990*0.000000
    REPE b21 c990 c992
    NRAN b23 c11
    CALC c11 = 0.500000 + c11*0.353553 + c991 + c992
    NRAN b30 c990
    CALC c990 = c990*0.141421
    REPE b24 c990 C991
    NRAN b25 c990
    CALC c990 = c990*0.100000
    REPE b21 c990 c992
    NRAN b23 c12
    CALC c12 = 0.400000 + c12*0.000000 + c991 + c992
    BRAN b23 c771 0.200000 1
    EXCL 1 c771
    PICK 1 c998 b51
    EDIT 1 c1098 b51
    PICK 2 c998 b51
    EDIT 2 c1098 b51
    PICK 3 c998 b51
    EDIT 3 c1098 b51
    PICK 1 c996 b51
    EDIT 1 c1096 b51
    PICK 2 c996 b51
    EDIT 2 c1096 b51
    PICK 3 c996 b51
    EDIT 3 c1096 b51
    PUT b23 1 c5
    SIMU c5
    METH 1
    START
    JOIN c1098 c1096 c1011 c1011
    SEPICK c1001
    JOIN c1001 c1012 c1012
    EXCL 0
ENDL
OBEY analyse.txt
PAUSE 1