Create and fill cell

Description

This function creates an empty cell and fills it with copies of other systems.

The arrangement of the inserted systems can be controlled using the variables orientation and position. The orientation variable allows for random rotation of each inserted molecule (using the random option) or keeping the system’s original orientation (using the regular option), so all inserted systems maintain the same orientation. The position variable can be set to either random or space-fill.

The space-fill option implement this algorithm:

  • It first creates a straight line going from the origin of the coordinates' system (also origin of the simulation cell) to the point: [int(replica_x)*cell_x, int(replica_y)*cell_y, int(replica_z)*cell_z] where cell_x, cell_y and cell_z are the cell sides and: replica_z = 1 replica_y = (N_t)^(1/3) * (cell_z)^(1/3) * (cell_x*cell_y)^(-1/6) replica_x = (replica_y * N_t)^(1/2) (cell_y/cell_x)^(1/2) where N_t is the total number of molecule to insert.

  • Then, it insert the N_t molecule on the defined line, leaving equal space among them.

  • Finally, it wraps the straight line into the simulation cell, guaranteeing a uniform distribution of the molecules in the cell.

In every case, a minimum distance between the inserted systems can be defined in input.

It’s important to consider that the system cell, number of molecules, and minimum distance affect the reliability and speed of the algorithm. These parameters should be chosen carefully to ensure that the system density is compatible with the specified minimum distance. The denser the system, the longer it will take the algorithm to find a stable arrangement.

Periodic boundary conditions (PBCs) can also be considered when inserting systems, meaning that the distance between atoms will be calculated using PBC. Regardless of whether PBC is used, the center of mass of each component will always be placed inside the cell.

Latest version

Allowed number of parents: 1 or 2

  1. System to insert

  2. System to insert

Parameter Description Value type Value restrictions Default value Units

Cell dimensions

The three cell lengths (x,y,z)

float

>0

[0.0, 0.0, 0.0]

Angstrom

Seed for random generation

The seed used in the random generator, -1 can be selected for a random seed

int

>-1

123

N/A

Total number of components

The number of components to insert. We have one entry for each parent component (max2)

int

≥0

0

N/A

Orientation

The orientation of the components to be inserted

selector

random, regular

random

N/A

Position

The position within the cell where the components shall be inserted

selector

random, spacefilling

random

N/A

Minimal distance between atoms

Minimal distance between two inserted components.

float

>0

2.0

Angstrom

Periodic boundary conditions

Indicates whether we have periodic boundary conditions in x, y and z

boolean

True, False

[True, True,True]

N/A

Enable minimization

Indicates if a GROMACS energy minimization should be performed to increase the insertion success rate

boolean

True, False

False

N/A