The unit cell of LiMn2O4 considered in my simulations contains 56 ions (8 lithium atoms, 16 manganese atom and 32 oxygen atoms)
In the LixMn2O4 system, the Li-ions are positioned on the 8a tetrahedral sites, and the manganese ions are located on the 16d octahedral sites. All possible initial configurations with a combination of Li+, Mn3+ and Mn4+ are constructed. For example,for x = 0.125, the number of Li+ is one and the number of available sites for Li+ is eight. For the manganese ions, one Mn3+ and fifteen Mn4+s occupy sixteen sites. Thus, the total number of crystal configurations is 128. In this way the number of cases for x = 0.250, 0.375, 0.500, 0.625, 0.750, 0.875 and 1.00 is 3360, 31360, 127400, 244608, 224224, 91520 and 12870, respectively.
Here a large number of cases for each x value are resulted from the intrinsic MD methodology that treats Li+, Mn3+ and Mn4+ as different atoms. Since it is almost impossible to check the equilibrium energy of all these cases, I want calculate the potential energy of these initial configurations by running one time step of MD simulations and sort the cases according to energy levels.
Main questions is :
How can I have an input script for automatically change initial structures using a loop or etc?
How can i produce all initial configurations and test them energetically?
# MD Run LiMn2O4 input script
#------------------------------- Initialization -----------------------------------------
Clear
units metal
dimension 3
atom_style charge
boundary p p p
#------------------------Atomic Structure Definition---------------------------------------------
variable alat equal 8.24
lattice custom ${alat} &
basis 0.0000 0.0000 0.0000 basis 0.2500 0.2500 0.2500 basis 0.0000 0.5000 0.5000 basis 0.5000 0.0000 0.5000 &
basis 0.5000 0.5000 0.0000 basis 0.2500 0.7500 0.7500 basis 0.7500 0.2500 0.7500 basis 0.7500 0.7500 0.2500 &
basis 0.6250 0.6250 0.6250 basis 0.6250 0.1250 0.1250 basis 0.1250 0.6250 0.1250 basis 0.1250 0.1250 0.6250 &
basis 0.6250 0.8750 0.8750 basis 0.6250 0.3750 0.3750 basis 0.1250 0.8750 0.3750 basis 0.1250 0.3750 0.8750 &
basis 0.8750 0.6250 0.8750 basis 0.8750 0.1250 0.3750 basis 0.3750 0.6250 0.3750 basis 0.3750 0.1250 0.8750 &
basis 0.8750 0.8750 0.6250 basis 0.8750 0.3750 0.1250 basis 0.3750 0.8750 0.1250 basis 0.3750 0.3750 0.6250 &
basis 0.3750 0.3750 0.3750 basis 0.3750 0.8750 0.8750 basis 0.8750 0.3750 0.8750 basis 0.8750 0.8750 0.3750 &
basis 0.3750 0.6250 0.6250 basis 0.3750 0.1250 0.1250 basis 0.8750 0.6250 0.1250 basis 0.8750 0.1250 0.6250 &
basis 0.6250 0.3750 0.6250 basis 0.6250 0.8750 0.1250 basis 0.1250 0.3750 0.1250 basis 0.1250 0.8750 0.6250 &
basis 0.6250 0.6250 0.3750 basis 0.6250 0.1250 0.8750 basis 0.1250 0.6250 0.8750 &basis 0.1250 0.1250 0.3750 &
basis 0.8750 0.8750 0.8750 basis 0.8750 0.3750 0.3750 basis 0.3750 0.8750 0.3750 basis 0.3750 0.3750 0.8750 &
basis 0.6250 0.6250 0.8750 basis 0.6250 0.1250 0.3750 basis 0.1250 0.6250 0.3750 basis 0.1250 0.1250 0.8750 &
basis 0.6250 0.8750 0.6250 basis 0.6250 0.3750 0.1250 basis 0.1250 0.8750 0.1250 basis 0.1250 0.3750 0.6250 &
basis 0.8750 0.6250 0.6250 basis 0.8750 0.1250 0.1250 basis 0.3750 0.6250 0.1250 basis 0.3750 0.1250 0.6250
region LMObox block 0 2 0 2 0 2
create_box 4 LMObox
create_atoms 4 box basis 1 1 basis 2 1 basis 3 1 basis 4 1 basis 5 1 basis 6 1 basis 7 1 basis 8 1 &
basis 9 2 basis 10 2 basis 11 2 basis 12 2 basis 13 2 basis 14 2 basis 15 2 basis 16 2 &
basis 17 3 basis 18 3 basis 19 3 basis 20 3 basis 21 3 basis 22 3 basis 23 3 basis 24 3 &
basis 25 4 basis 26 4 basis 27 4 basis 28 4 basis 29 4 basis 30 4 basis 31 4 basis 32 4 &
basis 33 4 basis 34 4 basis 35 4 basis 36 4 basis 37 4 basis 38 4 basis 39 4 basis 40 4 &
basis 41 4 basis 42 4 basis 43 4 basis 44 4 basis 45 4 basis 46 4 basis 47 4 basis 48 4 &
basis 49 4 basis 50 4 basis 51 4 basis 52 4 basis 53 4 basis 54 4 basis 55 4 basis 56 4
mass 1 6.94
mass 2 54.94
mass 3 54.94
mass 4 15.999
group Lithium type 1
group Manganese3 type 2
group Manganese4 type 3
group Oxygen type 4
set group Lithium charge +1
set group Manganese3 charge +1.4
set group Manganese4 charge +2.4
set group Oxygen charge -1.2
# -----------------------------------Force Field-----------------------------------------
pair_style born/coul/long 7.5 15
pair_modify tail yes
kspace_style ewald 1e-05
pair_coeff 1 1 0.2637055573 0.317 2.34 1.0485818488 -0.4993247392
pair_coeff 1 2 0.2637055573 0.317 2.34 1.0485818488 -0.4993247392
pair_coeff 1 3 0.2637055573 0.317 2.34 1.0485818488 -0.4993247392
pair_coeff 1 4 0.2637055573 0.317 2.34 1.0485818488 -0.4993247392
pair_coeff 2 2 0.2637055573 0.317 2.34 1.0485818488 -0.4993247392
pair_coeff 2 3 0.2637055573 0.317 2.34 1.0485818488 -0.4993247392
pair_coeff 2 4 0.2637055573 0.317 2.34 1.0485818488 -0.4993247392
pair_coeff 3 3 0.2637055573 0.317 2.34 1.0485818488 -0.4993247392
pair_coeff 3 4 0.2637055573 0.317 2.34 1.0485818488 -0.4993247392
pair_coeff 4 4 0.2637055573 0.317 2.34 1.0485818488 -0.4993247392
neighbor .3 bin
neigh_modify every 10 delay 10 check yes page 1000000
# -----------------------------------Initial velocities-------------------------------
compute mytemp all temp
compute mypress all pressure mytemp
velocity all create 300 6767888 temp mytemp
# ----------------------------------------Running-------------------------------------------
###### Equilibrate Phase #####################################
fix 1 all npt temp 300 300 .01 iso 0 0 .1
fix_modify 1 press mypress
fix 2 all temp/rescale 10 300.0 300.0 10.0 1.0
fix_modify 2 temp mytemp
#Set boundary conditions to be stress-free
fix 3 all box/relax iso 0.0
thermo 100
thermo_style custom step temp etotal pe ke press lx
thermo_modify temp mytemp press mypress lost error
timestep 0.001
dump 1 all atom 1 dump_minimize.lammpstrj
run 10000