# Real space grid parameters

The parameters here are for generating real space numerical grids.

## calculation.realspacegrids.number

**keyword**: calculation.realspacegrids.number

**possible values**: 3 x 1 integer vector or a integer number

**default value**: determined from the value of realspacegrids.E_cutoff

**description**: the small grid number in each direction. It is used
to divide the central cell into the input number of
small grids.

**an example**:

```
calculation.realspacegrids.number = [64 64 64]'
```

## calculation.realspacegrids.E_cutoff

**keyword**: calculation.realspacegrids.E_cutoff

**possible values**: a double number with proper energy unit such as
‘eV’,
‘Ryd’, ‘Ryd.’, ‘Rydberg’,
‘au’, ‘a.u.’, ‘atomic unit’, ‘Hartree’,
where ‘au’ ‘a.u.’, and ‘atomic unit’ are for Hartree,
‘Ryd’, ‘Ryd.’ for Rydberg.

**default value**: 20, 50, or 150 Hartree, depending on the value of the
parameter calculation.control.precision.

**description**: the equivalent energy cut-off of the grid density.
E_cutoff ~ (1/2)(pi/grid_length)^2.
This input parameter is not used when
realspacegrids.number is given.
Note that if the number part of the input is missing, it
will be considered as 1, and if the unit part is
missing, it will be considered to use the unit defined
by calculation.control.energyUnit.

**an example**:

```
calculation.realspacegrids.E_cutoff = 50
```

## calculation.bandStructure.crystalStructure

**keyword**: calculation.bandStructure.crystalStructure

**possible values**: 0D,
1D,
HEXAGON, SQUARE
SC, FCC, BCC, HCP
or any other string representing another / new structure

**default value**: determined by nanodcal

**description**: the crystal structure of the system.
(1) zero dimensional system:
0D is for a molecular system.
(2) one dimensional system:
1D is for a system extended along the third
direction defined in the unitCellVectors.
(3) two dimensional system:
the system extended along the first and second
direction defined in the unitCellVectors.
HEXAGON is for a system whose unit cell has a
hexagonal shape, e.g. graphene.
SQUARE is a for a system whose unit cell has a
square shape.
(4) three dimensional system:
SC stands for simple cubic structure;
FCC for face center cubic structure;
BCC for body center cubic structure,
HCP for hexagonal close-packing structure.

Please note that for other structures not listed above, the parameter coordinatesOfTheSymmetryKPoints must be given explicitly.

**an example**:

```
calculation.bandStructure.crystalStructure = FCC
```

## calculation.bandStructure.unitCellVectors

**keyword**: calculation.bandStructure.unitCellVectors

**possible values**: 3\(\times\)3 or 1\(\times\)6 or 1\(\times\)3 double matrix

**default value**: determined by nanodcal

**description**: The band structure will be calculated along line
segments connecting some symmetry points in k-space.
The coordinates of those symmetry points are, in
convention, defined based on the unit cell. The
unitCellVectors will be used to calculate the
coordinates of the symmetry k-points.

When the parameter is a 3\(\times\)3 double matrix, its each column forms one of the three basis vectors. When the parameter is a 1\(\times\)6 double matrix, it defines the three basis vectors by giving their lengths, a, b, and c, and the angles between them, alpha, beta, and gamma, with the convention that the a-axis is collinear with the x-axis, and the b-axis lies in the xy-plane. When the parameter is a 1\(\times\)3 double matrix, the alpha, beta, and gamma are all assumed to be \(\pi\)/2.

If the unitCellVectors is to be given, but the coordinatesOfTheSymmetryKPoints is not to be given explicitly, the following are the rules to define the unitCellVectors:

For an 1D structure, the unit cell vector along which the system extends, should be defined as the third vector in the unitCellVectors.

For a 2D HEXAGON structure, the unit cell vectors along which the system extends, should be defined as the first and the second vectors in the unitCellVectors. In addition, the angle between the two vectors should be 60 degrees rather than 120 degrees.

For a 2D SQUARE structure, the unit cell vectors along which the system extends, should be defined as the first and the second vectors in the unitCellVectors.

For a 3D HCP structure, the unit cell vector which is perpendicular to the other two vectors, should be defined as the third vector in the unitCellVectors. In addition, the angle between the first and the second vectors should be 60 degrees rather than 120 degrees.

**an example**:

```
calculation.bandStructure.unitCellVectors = ...
eye(3)*10.2612164268616
```

## calculation.bandStructure.kInterval

**keyword**: calculation.bandStructure.kInterval

**possible values**: a double number

**default value**: 0.1

**description**: the small k-space interval between the k-points which
are chosen to represent the band structure. It will help
as a reference value to interpolate a integer
number of k-points between each pair of two adjacent
high symmetry points given in symmetryKPoints.
Note that the input value will not be used when
numberOfKPoints is given, and its unit is 2\(\pi\)/a for
cubic unit cell where a is the unit cell length, or
2\(\pi\)/V\(^{1/3}\) for a general unit cell, where V is the
unit cell volume.

**an example**:

```
calculation.bandStructure.kInterval = 0.01
```

## calculation.bandStructure.eMin

**keyword**: calculation.bandStructure.eMin

**possible values**: a double number

**default value**: -10 eV

**description**: minimum energy of the band structure plot.

**an example**:

```
calculation.bandStructure.eMin = -30
```

## calculation.bandStructure.eMax

**keyword**: calculation.bandStructure.eMax

**possible values**: a double number

**default value**: 10 eV

**description**: maximum energy of the band structure plot.

**an example**:

```
calculation.bandStructure.eMax = 30
```