pyiron_atomistics.atomistics.structure.factories.aimsgb.AimsgbFactory#
- class pyiron_atomistics.atomistics.structure.factories.aimsgb.AimsgbFactory[source]#
Bases:
object- __init__()#
Methods
__init__()build(axis, sigma, plane, initial_struct[, ...])Generate a grain boundary structure based on the aimsgb.GrainBoundary module.
info(axis, max_sigma)Provides a list of possible GB structures for a given rotational axis and upto the given maximum sigma value.
- static build(axis, sigma, plane, initial_struct, to_primitive=False, delete_layer='0b0t0b0t', add_if_dist=0.0, uc_a=1, uc_b=1)[source]#
Generate a grain boundary structure based on the aimsgb.GrainBoundary module.
- Parameters:
axis – Rotational axis for the GB you want to construct (for example, axis=[1,0,0])
sigma (int) – The sigma value of the GB you want to construct (for example, sigma=5)
plane – The grain boundary plane of the GB you want to construct (for example, plane=[2,1,0])
initial_struct – Initial bulk structure from which you want to construct the GB (a pyiron structure object).
delete_layer – To delete layers of the GB. For example, delete_layer=’1b0t1b0t’. The first 4 characters is for first grain and the other 4 is for second grain. b means bottom layer and t means top layer. Integer represents the number of layers to be deleted. The first t and second b from the left hand side represents the layers at the GB interface. Default value is delete_layer=’0b0t0b0t’, which means no deletion of layers.
add_if_dist – If you want to add extra interface distance, you can specify add_if_dist. Default value is add_if_dist=0.0
to_primitive – To generate primitive or non-primitive GB structure. Default value is to_primitive=False
uc_a (int) – Number of unit cell of grain A. Default to 1.
uc_b (int) – Number of unit cell of grain B. Default to 1.
- Returns:
final grain boundary structure
- Return type:
- static info(axis, max_sigma)[source]#
Provides a list of possible GB structures for a given rotational axis and upto the given maximum sigma value.
- Parameters:
axis – Rotational axis for the GB you want to construct (for example, axis=[1,0,0])
max_sigma (int) – The maximum value of sigma upto which you want to consider for your
GB (for example, sigma=5)
- Returns:
- {sigma value: {‘theta’: [theta value],
’plane’: the GB planes”) ‘rot_matrix’: array([the rotational matrix]), ‘csl’: [array([the csl matrix])]}}
- Return type:
A list of possible GB structures in the format
To construct the grain boundary select a GB plane and sigma value from the list and pass it to the GBBuilder.gb_build() function along with the rotational axis and initial bulk structure.