Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
class(material), | public, | pointer | :: | material | => | null() |
Pointer to the material modelled by this instance |
type(spin), | public, | dimension(1:3) | :: | field |
Spin-orbit coupling field (SU(2) gauge field) |
||
type(spin), | public | :: | Ax |
Spin-orbit coupling matrices (the components and square) |
|||
type(spin), | public | :: | Ay |
Spin-orbit coupling matrices (the components and square) |
|||
type(spin), | public | :: | Az |
Spin-orbit coupling matrices (the components and square) |
|||
type(spin), | public | :: | A2 |
Spin-orbit coupling matrices (the components and square) |
|||
type(spin), | public | :: | Axt |
Spin-orbit coupling matrices (tilde-conjugated versions) |
|||
type(spin), | public | :: | Ayt |
Spin-orbit coupling matrices (tilde-conjugated versions) |
|||
type(spin), | public | :: | Azt |
Spin-orbit coupling matrices (tilde-conjugated versions) |
|||
type(spin), | public | :: | A2t |
Spin-orbit coupling matrices (tilde-conjugated versions) |
Constructs a spinorbit object with a given parent material.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(material), | target | :: | parent |
Diffusion equation
Calculate the spin-orbit coupling terms in the diffusion equation, and update the second derivatives of the Riccati parameters.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(spinorbit), | intent(in) | :: | this | |||
type(propagator), | intent(inout) | :: | p |
Boundary condition (left)
Calculate the spin-orbit coupling terms in the left boundary condition, and update the residuals.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(spinorbit), | intent(in), | target | :: | this | ||
type(propagator), | intent(in) | :: | p | |||
type(spin), | intent(inout) | :: | r | |||
type(spin), | intent(inout) | :: | rt |
Boundary condition (right)
Calculate the spin-orbit coupling terms in the right boundary condition, and update the residuals.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(spinorbit), | intent(in), | target | :: | this | ||
type(propagator), | intent(in) | :: | p | |||
type(spin), | intent(inout) | :: | r | |||
type(spin), | intent(inout) | :: | rt |
Code to execute before updates
Updates the internal variables associated with spin-orbit coupling.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(spinorbit), | intent(inout) | :: | this |