An example of this file is shown below:
THIS LINE IS IGNORED generations: 1 extrainds: 0 population_size: 1 mutation_rate: 0.2 elite_percentage: 0.05 tabulated_parameters: 0 nontabulated_parameters: 10 M: 5 N: 0 force_weight: 0.2 energy_weight: 0 energy_shape_weight: 0.4 stress_weight: 0.4 pressure_weight: 0 pressure_shape_weight: 0 intervals: 0 4 0 1 0 50 0.01 10 0.01 10 0 50 0 50 0.01 50 1e-3 5 1e-3 5 decimal_place_accuracies: 2 2 2 2 2 2 2 2 2 2 ----------------------------------------LAMMPS SETUP COMMANDS log none neighbor 1.0 multi boundary p p p units metal atom_style hybrid atomic charge atom_modify map array ### Declare the box lattice diamond 5.46 region box prism 0 1 0 1 0 1 0 0 0 units lattice create_box 1 box ### Create atom type 1 in the box create_atoms 1 random 17 1919191 NULL # Positions don't matter... just declare the memory mass 1 69.7 #Ge compute P all pe compute S all pressure thermo_temp ----------------------------------------LAMMPS PAIR STYLE COMMANDS pair_style hybrid/overlay morse [] born 12 coul/dsf 0.25 12 set type 1 charge [] pair_coeff 1 1 coul/dsf pair_coeff 1 1 born [] [] [] [] [] pair_coeff 1 1 morse [] [] [] ----------------------------------------END OF FILE
The format of this file must be exactly as shown. All the fields in the first section are as follows:
generations: number of generations for the genetic algorithm
extrainds: number of extra individuals to add to the population, for refitting purposes
population_size: number of individuals for the genetic algorithm
mutation_rate: decimal probability to perform mutations
elite_percentage: decimal percent of individuals to have in the elite portion of a random selection algorithm
tabulated_parameters: number of parameters in a tabulated potential file
nontabulated_parameters: number of parameters in a LAMMPS input script, that are not in a tabulated file
M: number of configurations
N: number of atoms
force_weight: weighting factor for fitting forces
energy_weight: weighting factor for fitting energies
energy_shape_weight: weighting factor for fitting energy shape, which is total energy minus the energy of the lowest energy configuration. This ensures that the lowest energy has a value of zero.
stress_weight: weighting factor for fitting stresses
pressure_weight: weighting factor for fitting pressure
pressure_shape_weight: same as energy shape, except applied to pressure
—————————————-LAMMPS SETUP COMMANDS
This section includes all LAMMPS commands. Declare your neighbor skin distance, units, atom styles, and simply declare your box. You also tneed to declare the memory for atom types - at this point it doesn't mater where they are placed so just use the create_atoms random command (the positions will be updated as configurations are read). Finally, you need to include computes for potential energy and stress (see the above example).
—————————————-LAMMPS PAIR STYLE COMMANDS These are normal LAMMPS pair style commands, except you replace a fitting parameter with a bracketed term. Leave the terms that you don't want to fit as numbers.
Make sure the sum of all the bracketed terms corresponds with the sum of nontabulated_parameters and tabulated_parameters. In this example, we don't have any tabulated parameters.
If you are fitting a tabulated potential, fill the potential file with the bracketed terms ([]) in the necessary places and name the file “REFPOT”. Then label the potential file in this section as “TEMPPOT{}”. The “{}” symbols will ensure that this potential is written and evaluated in a parallel fashion.