EBSDpython code
Public Member Functions | Properties | List of all members
ebsd_Orientation.Orientation Class Reference

Detailed Description

Orientation combination of material symmetry and specific rotation.

Public Member Functions

def __copy__ (self)
 
def __init__ (self, quaternion=Quaternion.fromIdentity(), Rodrigues=None, angleAxis=None, matrix=None, Eulers=None, random=False, symmetry=None)
 
def __repr__ (self)
 
def asAngleAxis (self, degrees=False)
 
def asEulers (self, notation='bunge', degrees=False, standardRange=False)
 
def asMatrix (self)
 
def asQuaternion (self)
 
def asRodrigues (self)
 
def equivalentOrientations (self, who=[])
 
def equivalentQuaternions (self, who=[])
 
def inFZ (self)
 Check whether given Rodrigues vector falls into fundamental zone of own symmetry. More...
 
def reduced (self)
 Transform orientation to fall into fundamental zone according to symmetry. More...
 
MATERIAL SPECIFIC ROUTINES

Disorientation between myself and given other orientation.

Rotation axis falls into SST if SST == True. (Currently requires same symmetry for both orientations. Look into A. Heinz and P. Neumann 1991 for cases with differing sym.)

Parameters
otherother orientation
SSTTrue (rotation axis falls into SST); False
Returns
disorientation quaternion, idx of equivalent orientation1, idx of equivalent orientation2, num. of conjugated
def disorientation (self, other, SST=True)
 
def inversePole (self, axis, proper=False, SST=True)
 axis rotated according to orientation (using crystal symmetry to ensure location falls into SST) More...
 
def IPFcolor (self, axis, proper=False)
 color of inverse pole figure for given axis More...
 
def average (cls, orientations, multiplicity=[])
 Return the average orientation. More...
 
PLOTTING, PRINTING
    down    y, -x
    up      -y, x
    right   x,y
    left    -x,-y
    3D      x,y,z
def project (self, x, y, z)
 
def plotLine (self, ax, start, delta, color='k', lw=1, ls='solid', markerSize=None)
 Plot one line using given projection. More...
 
def plotUnit (self, ax, xlabel, ylabel, zlabel, x=0, y=0, z=0, s=1)
 Coordinate see plotLine. More...
 
def plot (self, poles=None, unitCell=True, cos=True, annotate=False, plot2D=None, scale=2, fileName=None)
 Plot rotated unit-cell in 3D, and possibly the pole-figure and specific poles. More...
 
def toScreen (self, equivalent=True)
 print Euler angles and HKL /UVW More...
 
MISC

Related

Models
  • KS from S. Morito et al./Journal of Alloys and Compounds 5775 (2013) S587-S592 DOES THIS PAPER EXISTS?
  • GT from Y. He et al./Journal of Applied Crystallography (2006). 39, 72-81
  • GT' from Y. He et al./Journal of Applied Crystallography (2006). 39, 72-81
  • NW from H. Kitahara et al./Materials Characterization 54 (2005) 378-386
  • Pitsch from Y. He et al./Acta Materialia 53 (2005) 1179-1190
  • Bain from Y. He et al./Journal of Applied Crystallography (2006). 39, 72-81
Parameters
relationModel
direction
targetSymmetry
Returns
vector
def related (self, relationModel, direction, targetSymmetry=None)
 

Properties

 angleAxis = property(asAngleAxis)
 
 eulers = property(asEulers)
 
 infz = property(inFZ)
 
 matrix = property(asMatrix)
 
 rodrigues = property(asRodrigues)
 

Constructor & Destructor Documentation

◆ __init__()

def ebsd_Orientation.Orientation.__init__ (   self,
  quaternion = Quaternion.fromIdentity(),
  Rodrigues = None,
  angleAxis = None,
  matrix = None,
  Eulers = None,
  random = False,
  symmetry = None 
)

Member Function Documentation

◆ __copy__()

def ebsd_Orientation.Orientation.__copy__ (   self)

◆ __repr__()

def ebsd_Orientation.Orientation.__repr__ (   self)

◆ asAngleAxis()

def ebsd_Orientation.Orientation.asAngleAxis (   self,
  degrees = False 
)

◆ asEulers()

def ebsd_Orientation.Orientation.asEulers (   self,
  notation = 'bunge',
  degrees = False,
  standardRange = False 
)

◆ asMatrix()

def ebsd_Orientation.Orientation.asMatrix (   self)

◆ asQuaternion()

def ebsd_Orientation.Orientation.asQuaternion (   self)

◆ asRodrigues()

def ebsd_Orientation.Orientation.asRodrigues (   self)

◆ average()

def ebsd_Orientation.Orientation.average (   cls,
  orientations,
  multiplicity = [] 
)

Return the average orientation.

ref F. Landis Markley, Yang Cheng, John Lucas Crassidis, and Yaakov Oshman, Averaging Quaternions, Journal of Guidance, Control, and Dynamics, Vol. 30, No. 4 (2007), pp. 1193-1197. doi 10.2514/1.28949

Usage
  • a = Orientation(Eulers=np.radians([10, 10, 0]), symmetry='hexagonal')
  • b = Orientation(Eulers=np.radians([20, 0, 0]), symmetry='hexagonal')
  • avg = Orientation.average([a,b])
Parameters
clsclass method (void)
orientationslist of orientations
multiplicity
Returns
average orientation (not rotation) in radians

◆ disorientation()

def ebsd_Orientation.Orientation.disorientation (   self,
  other,
  SST = True 
)

◆ equivalentOrientations()

def ebsd_Orientation.Orientation.equivalentOrientations (   self,
  who = [] 
)

◆ equivalentQuaternions()

def ebsd_Orientation.Orientation.equivalentQuaternions (   self,
  who = [] 
)

◆ inFZ()

def ebsd_Orientation.Orientation.inFZ (   self)

Check whether given Rodrigues vector falls into fundamental zone of own symmetry.

◆ inversePole()

def ebsd_Orientation.Orientation.inversePole (   self,
  axis,
  proper = False,
  SST = True 
)

axis rotated according to orientation (using crystal symmetry to ensure location falls into SST)

Parameters
axisvector in crystal orientation, e.g. [100]
properconsiders only vectors with z >= 0, hence uses two neighboring SSTs to determine if in SST. i.e. allows more positive results, rgb-value does not depend on this
SSTiterate through all equivalent and find the one in the SST
Returns
vector of axis

◆ IPFcolor()

def ebsd_Orientation.Orientation.IPFcolor (   self,
  axis,
  proper = False 
)

color of inverse pole figure for given axis

Parameters
axisaxis of pole figure (ND=001)
properconsiders only vectors with z >= 0, hence uses two neighboring SSTs to determine if in SST. i.e. allows more positive results, rgb-value does not depend on this
Returns
vector of color (rgb)

◆ plot()

def ebsd_Orientation.Orientation.plot (   self,
  poles = None,
  unitCell = True,
  cos = True,
  annotate = False,
  plot2D = None,
  scale = 2,
  fileName = None 
)

Plot rotated unit-cell in 3D, and possibly the pole-figure and specific poles.

Projection onto 2D: cooradinate systems are given as xDirection-yDirection (z follows)

  • down-right: [default in text books] RD = x = down; TD = y = right; ND = z = outOfPlane
  • up-left: [default in OIM] RD = x = up; TD = y = left; ND = z = outOfPlane
Parameters
polesif given (e.g. [1,0,0]), plot pole-figure and the corresponding poles
unitCellplot unit cell
cosplot coordinate system
annotateannotate poles in pole figure (requires poles given)
plot2Ddo a normal projection onto 2D plane: [down-right, up-left, None]
scalescale of pole-figure dome over crystal
fileNamefileName for image output (if given, image not shown)

◆ plotLine()

def ebsd_Orientation.Orientation.plotLine (   self,
  ax,
  start,
  delta,
  color = 'k',
  lw = 1,
  ls = 'solid',
  markerSize = None 
)

Plot one line using given projection.

Parameters
axaxis to plot into
startstart coordinate
deltadelta cooradinate (end-start)
colorcolor
lwline width
lsline style "solid",'dashed'
markerSizesize of marker (only used for non-lines: delta>0)

◆ plotUnit()

def ebsd_Orientation.Orientation.plotUnit (   self,
  ax,
  xlabel,
  ylabel,
  zlabel,
  x = 0,
  y = 0,
  z = 0,
  s = 1 
)

Coordinate see plotLine.

Parameters
axaxis to used for plotting
xlabelx-label
ylabely-label
zlabelz-label
xx-coordinate of origin
yy-coordinate of origin
zz-coordinate of origin
sscale

◆ project()

def ebsd_Orientation.Orientation.project (   self,
  x,
  y,
  z 
)

◆ reduced()

def ebsd_Orientation.Orientation.reduced (   self)

Transform orientation to fall into fundamental zone according to symmetry.

◆ related()

def ebsd_Orientation.Orientation.related (   self,
  relationModel,
  direction,
  targetSymmetry = None 
)

◆ toScreen()

def ebsd_Orientation.Orientation.toScreen (   self,
  equivalent = True 
)

print Euler angles and HKL /UVW

Parameters
equivalentprint also equivalent orientations

The documentation for this class was generated from the following file: