NeutralAtom¶
- class NeutralAtom(electrode_constraint_length=None)¶
Class for representing a neutral atom initial density matrix for Device simulations.
- Parameters:
electrode_constraint_length (PhysicalQuantity of type length) – Length over which the atoms in the electrode copy within the central region will be initialized with a linear combination of the converged density matrix of the electrodes and the neutral atom density matrix. The weight of the electrode density matrix is 1 at the boundary and 0 at the distance
electrode_constraint_length
from the boundary. Default:10.0 * Angstrom
- electrodeConstraintLength()¶
- Returns:
The electrode constraint length.
- Return type:
PhysicalQuantity of type length
- static initializeCentralRegionDensityMatrix(device_builder, downgraded_calculator, schroedinger_container)¶
Method for initializing the density matrix of the central region.
- Parameters:
device_builder (
DeviceLCAOBuilder
|DeviceSemiEmpiricalBuilder
) – The device builder.downgraded_calculator (
LCAOCalculator
|HuckelCalculator
|SlaterKosterCalculator
) – Not used.schroedinger_container (
NLEngine.CompositeSchroedingerContainer
) – The device Schroedinger container, the density matrix of which will be initialized.
- uniqueString()¶
Return a unique string representing the state of the object.
Usage Examples¶
Setup a non-self-consistent calculation with a neutral atom initial density.
device_algorithm_parameters = DeviceAlgorithmParameters(
initial_density_type=Neutral(electrode_constraint_length=0.*Ang))
calculator=DeviceHuckelCalculator(
device_algorithm_parameters=device_algorithm_parameters,
iteration_control_parameters=NonSelfconsistent,
)
Notes¶
The NeutralAtom initial density type, corresponds to an initial density consisting of a superposition of atomic-like charge densities, constructed by occupying the basis orbital corresponding to the occupations of the atomic wave functions
If the
electrode_constraint_length
is longer than the length of the electrode, still only the electrode copy atoms within the central region will be affected. However, the weighting of the electrode density matrix will be larger. For instance, ifelectrode_constraint_length
is infinite, the initial density matrix of the electrode copy atoms in the central region will be the electrode density matrix.