We are running canonical emc2 simulations (with the -g2c option) and have noticed that the free energy of mixing is always equal to 0 at the highest temperature of simulation. If it is true, why did you choose this constraint? The free energy also coincides with the enthalpy of mixing at the lowest temperature - does it mean that you add linear with respect to temperature term to satisfy both conditions? Can it influence somehow the physical properties obtained in the calculations?
The free energy of mixing should not always be zero in the high T limit. If you send me your exact command line and input file I can help you see what is happening.
BTW, -g2c is not a true canonical simulation - it just outputs canonical-like quantities. For true canonical, use -cm.
The mean-field calculation of free energy in canonical mode (-cm option) is not implemented in ecm2, so it is set to zero (or another value that you can specify with -phi0=…) at the beginning of a thermodynamic integration run.
(The mean-field model is used as the starting free energy while doing thermodynamic integration from a disordered solid solution.)
It’s not implemented because it involves multiple spin flips, which can get fairly tricky to implement in full generality (Sorry!).
But you could calculate it in simple case from a regular solution model, or get it from a previous grand canonical run at the same composition (after subtracting the mu*x terms from the grand canonical free energy).