LAMMPS version: November 21, 2023
Hello, everyone,
I am using the fix atom/swap to generate phase diagrams of Al-Mg atoms and Al-Zn atoms. For Al-Mg, I generated Mg concentrations between 0 and 35 atomic % by using chemical potential differences (dmu) between the solvent and solute between 0.4 eV and 1.6 eV. This was done in the liquid and solid phase. For Al-Zn, I am having trouble generating the same concentration ranges in my atom swap simulations.
For the Al-Zn alloys, I have used dmus between 1.5 eV and 2.1 eV to attempt to regenerate the same solute concentration range as Al-Mg, between 0 and 35 atomic % Zn.
At 2.0 eV in the solid phase, the Zn concentration converges to approximately 7 atomic % Zn. At 2.1 eV , the concentration is 55 atomic percent Zn. This is a much higher concentration than I need, but I still need to generate Zn concentrations up to 35 atomic percent in the solid phase.
I do not believe this is due to a different alloy having different parameters, because I did not have this same problem with Al-Zn in the liquid phase. In the liquid phase, I was able to generate a concentration range between 0 and 35 atomic % by using dmus between 1.4 eV and 1.8 eV.
Has anyone else had experience with small changes of the dmus creating large differences in the solute concentration? And if so, could you please let me know how you solved it? Here is my code for the initialization and the atom swaps. I just included the initialization and the atomswap part of the script, though I can add more if needed. I used metal units, periodic boundary conditions, and MEAM interatomic potential. If you would like any further information, I would be happy to provide it.
# ------------------------------------------------------------------------------------------------------
# Stage 2: Initialize LAMMPS run for 3-d periodic defining regions and groups
# ------------------------------------------------------------------------------------------------------
group 1 region box
group Al type 1
group Zn type 2
variable T equal 930
variable m equal 3.05 #add +1.0 to your desired chemical potential difference
variable conc equal count(Zn)/count(all)
mass 1 26.982
mass 2 65.380
neighbor 2 bin
neigh_modify check yes
timer off
# ------------------------------------------------------------------------------------------------------
# Stage 4: Atom/swap on entire system and NPT for 10 ps
# ------------------------------------------------------------------------------------------------------
#reset_timestep 0
thermo_style custom step time v_conc temp press vol density ke pe
thermo 1000
velocity all create $T 72489 dist gaussian mom yes rot no
fix 1 all npt temp $T $T 0.1 iso 0.0 0.0 1.0
fix SGMC all atom/swap 1000 1440 2223456 $T ke yes types 1 2 semi-grand yes mu 1.0 $m
dump 2 all custom 1000 swap.dump id type x y z
timestep 0.001
run 1000000
undump 2
restart 0
run 0
unfix SGMC
Regards,
Tony