plastic_slip module

class plastic_slip.dislocation_dipole(dislocation_points, period, burgers_vector)[source]

Bases: object

Class to calculate plastic slip due to a dislocation dipole.

dislocation_points

Array of coordinates for dislocations (2D points).

Type:

np.ndarray

period

Periodicity of the system (typically along GB direction).

Type:

float

burgers_vector

Magnitude of the Burgers vector.

Type:

float

dislocation_vector

Vector from first to second dislocation.

Type:

np.ndarray

dislocation_distance

Distance between the two dislocations.

Type:

float

__init__(dislocation_points, period, burgers_vector)[source]

Initialize a dislocation dipole object.

Parameters:
  • dislocation_points (np.ndarray) – Coordinates of the dislocation pair (shape: 2x2).

  • period (float) – Periodicity of the system (along grain boundary direction).

  • burgers_vector (float) – Magnitude of the Burgers vector.

plastic_displacement(x, nImages=2)[source]

Compute the plastic displacement at a point x due to a dislocation dipole.

Parameters:
  • x (np.ndarray) – 2D point at which displacement is calculated.

  • nImages (int, optional) – Number of periodic image dipoles to consider. Defaults to 2.

Returns:

  • float: Total angle of plastic distortion (radians).

  • float: Plastic displacement at the point x.

Return type:

tuple