adhishm / dd2d_Matryoshka

A set of classes defining the behaviour of crystalline defects, with the final goal of carrying out dislocation dynamics simulations in two dimensions.
Other
5 stars 4 forks source link

Dislocation displacement #10

Closed adhishm closed 11 years ago

adhishm commented 11 years ago

Objective: To have a single global time increment but all dislocations simply move to a position at which the force from the neighbouring defect balances out the stresses from all other sources.

Benefit: This will eliminate the need to calculate individual time increment for each dislocation. A global value t_global will still be imposed and this will limit the movement of dislocations that would take greater than t_global amount of time to reach the equilibrium position.

adhishm commented 11 years ago

Interaction force between parallel dislocations

Ref: Elementary Dislocation Theory, J Weertman and J R Weertman (eq. 3.27, page 69)

In the most general case of forces between two dislocations parallel to the z-axis the dislocation at the origin has a Burgers vector b = bxi + byj + bzk, and the dislocation situated away from the origin has a Burgers vector b' = b'xi + b'yj + b'zk. The dislocation at the origin exerts upon the second dislocation a force F which is:

F = Fx i + Fy j + Fz k

where

Fx = D * [ c*{(1-nu)bzb'z + (1-2s2)bxb'x + (1+2s2)byb'y} + s(1-2s2)(bxb'y + b'xby) ]

Fy = D * [ s{(1-nu)bzb'z + (1+2c2)bxb'x - (1-2s2)byb'y} - c(1-2s2)(bxb'y + b'xby) ]

Fz = 0

with D = ( mu / 2pi(1-nu)*r ); s = sin( theta ); c = cos( theta )

Dislocations on the same slip plane

In the case of two dislocations on the same slip plane, the angle theta is equal to 0. This simplifies the expression for the interaction force to:

Fx = D * [ (1-nu)bzb'z + bxb'x + byb'y ]

Fy = -D * (bxb'y + b'xby)

Note that the forces are represented in the co-ordinate system of the dislocation that exerts the force.

Equilibrium distance

Consider a dislocation experiences a total force of F = Fx i + Fy j. The z -component of the force is zero because it is not expected that a dislocation should experience a force along its line vector.

Assuming that this force does not change with short displacements, the distance from the next dislocation at which the x -component of this force will be balanced by the x -component of the interaction force is given by:

r = [ mu / 2pi(1-nu)Fx ] \ [ (1-nu)bzb'z + bxb'x + byb'y ]

In the case the two dislocations have Burgers vectors of opposite sign, this distance will be negative, implying that the dislocations have to cross each other in order to balance the forces. In such an event, the dislocations should simply be brought to within the interaction distance and another function should be used to handle the annihilation event.

adhishm commented 11 years ago

Another possible scenario is that in order to reach the equilibrium position calculated above, the distance to be travelled by the dislocation is greater than it's velocity v times the global time increment dt . In this case, the dislocation should simply be moved by dmax = v * dt .

adhishm commented 11 years ago

Dislocations with Burgers vectors of opposite sign

For two dislocations having opposite sign, let their position vectors be p and p' . The mid-point between them is then defined by m = ( p + p' ) / 2. Let the interaction distance be given by d . The position to which the dislocation at p is to be moved is then given by p dt = m - ( d / 2 ) [ ( p' - p ) / ( | p' - p | ) ].

When the dislocation at p' is treated, the same expression will bring it to the position where they can interact according to set rules.

adhishm commented 11 years ago

Dislocation displacement based on a fixed time increment is complete. Pending: Interactions between dislocations and other defects.