-
Notifications
You must be signed in to change notification settings - Fork 3
2A. Simulation box
--(**) These command is compulsary as was in the original definition.
--(***) They have no effect.
The first step to create your system is to define the parameters of the unit cell. The unit cell can correspond to a real mineral, like quartz, or to a theorical one, like a Kossel crystal. Three considerations can be highlighted.
-
You can define as a unit cell, a supercell consisting of several unit cells, or even the hole system. As we will see in section Events definition, this will give more versatility to your simulation, but the program performance is reduced.
-
The particles of your unit cell can represent actual atoms, or coarse grains.
-
You can define 'phantom positions' inside your unit cell without physical meaining but helping define the events of your system.
The commands for defining the unit cell are the following:
CELL_A (double) --(**)
CELL_B (double) --(**)
CELL_C (double) --(**)
CELL_ALPHA (double) --(**)
CELL_BETA (double) --(**)
CELL_GAMMA (double) --(**)
There are two ways of defining the positions of atoms or particles inside the unit cell.
1- They can be specified directly in the input file:
POSITION (text)atom_type (double)x (double)y (double)z (double)occupancy --(***)
where the occupancy
(number bettwen 0 and 1) represents the likelihood to find that element in that position.
2- Or they can also be read from external files with a simple xyz format, useful to load experimental crystal structures of mineralogist databases (AMS, for example):
READ_POSITIONS_FROM_XYZ_FILE (text)path_xyz_file --(***)
where path_xyz_file
indicates the path of the xyz file in your computer.
These two ways are complementary, so you can define additional positions to the ones in the xyz file.
Tip: There are some crystallographic structures in which one unit cell position can be occupied by different elements with certain likelihood. This likelihood, named occupancy, is not contemplated in a simple xyz file. Therefore, if the occupancy feature needs to be used, the way to proceed is to introduce them with the
POSITION
command by coping them from the xyz file, but taking into account the occupancy value which is available in the cif file.
Tip: The xyz file is a simplification of the cif file. You can usually download both files from the mineralogist database, or at least the cif one. There are tools, like VESTA program that allows you to transform your cif file into a xyz file.
Once we have the unit cell with the positions defined, we replicate it in the three space directions
DIMENSION_A (int) --(**)
DIMENSION_B (int) --(**)
DIMENSION_C (int) --(**)
We can consider the resulting simulation box to have periodicity in any of the three space directions, which is known as periodic boundary conditions (PBC).
PERIODICITY (optional)A (optional)B (optional)C
Usually, dissolution simulations are done in slab models to mimic macroscopic surfaces, i.e. with periodic boundary conditions (PBC) in x and y, making the reactive surface perpendicular to the z axis. In other cases we may want to simulate particles, so PBC are not considered.
Tip: Studies of different planes are possible by unit cell transformations with external programs such as VESTA.
Once our simulation box is defined, we can modify its shape as described in the next section 2B. Topography or change the constituent particles or atoms, as described in section 2C. Particle type modifiers.
Whenever you use KIMERA, please cite "Martin, P., Gaitero, J. J., Dolado, J. S., & Manzano, H. (2020). KIMERA: A Kinetic Montecarlo Code for Mineral Dissolution. Minerals, 10(9), 825" https://www.mdpi.com/2075-163X/10/9/825/htm