There was bug in the way the compositions were printed out in the output file that effects systems with sublattices having different multiplicities. This is corrected in versions 3.36 and above.
Thank for mentioning this - I’ll look into this.
If you could send me your eci.out and some sample output, it would help me debug.
With 3.36 and 3.37(beta) I am still getting negative concentrations either for vacancies or for atoms, depending on the T and mu.
I am running memc2 calculations for CuInSe2 with Cu vacancies and In@Cu antisites. lat.in file looks the following:
5.781 5.781 5.781 90 90 90
1 0 0
0 1 0
0.5 0.5 1.00694
0 0 0 Cu,In,Vac
1.000000000000000 0.500000000000000 0.503468258086837 Cu,In,Vac
0.226000000000000 0.250000000000000 0.251734129043418 Se
0.750000000000000 1.274000000000000 0.755202387130255 Se
0.774000000000000 0.750000000000000 0.251734129043418 Se
1.250000000000000 0.726000000000000 0.755202387130255 Se
0.500000000000000 0.500000000000000 0 In
0.500000000000000 1.000000000000000 0.503468258086837 In
In the output, x_mc(X) for X=Cu/In/Se/Vac might look e.g.
0.706463 0.043537 0.500000 -0.250000
-0.238013 0.495360 0.500000 0.242654
depending on the conditions. mcsnapshot.out looks fine. E.g., in the latter case, the active sites are almost equally filled by In and Vac with no Cu, and thus I would have expected x_mc to be 0, 0.375, 0.5, 0.125.
I might be doing something stupid, since it is my first time running multi-component version (and especially since I couldn’t find definition for chemical potentials in this case), but negative concentrations still don’t seem right.
Thanks! I’ve found the problem, which manifests itself only if you have spectator ions (i.e. that don’t change during MC). The fix is in version 3.38 (beta). Sorry for the inconvenience.