A method of vector3d.

the angle between two vectors; of crystal directions the smallest over their symmetric equivalents

Syntax

omega = angle(v1, v2)

Pointwise, broadcast against each other.

omega = angle(v1, v2, antipodal=True)

Between axes, at most 90 degree.

omega = angle(h1, h2, symmetry=False)

Crystal directions as they are given.

omega = angle(v1, v2, N)

In the plane normal to N, from 0 to 2 pi.

omega = angle(v1, v2, outer=True)

Every pair, MATLAB’s angle_outer.

Description

The angle is taken through atan2 of the cross and the inner product, accurate near 0 and pi. An axis on either side reads it up to sign; antipodal=True does so always, antipodal=False never. With a normal N both vectors are projected to the plane normal to N and the angle is counted counterclockwise about N from v1 to v2.

Input

v1, v2 vector3d
h1, h2 vector3d in one crystal frame
N vector3d, the normal of the plane the angle is measured in

Keywords

keyword default description
antipodal None read the vectors as axes: True always, False never; by default where one of them is an axis
symmetry True take the symmetric equivalents of crystal directions into account
outer False every entry of v1 with every entry of v2

Output

omega array, in radians; with outer=True of shape v1.shape + v2.shape

See also

vector3d.dot, vector3d.cross, VectorsAxes, CrystalOperations

MATLAB’s vector3d.angle

source

Citing this page. This page is part of the documentation of MTEX, a free and open source MATLAB toolbox for analyzing and modeling crystallographic textures. It was written by The MTEX Developers and is published at https://mtex-toolbox.github.io/vector3d.angle_py.html. If you use MTEX, or reuse text or figures from this page, in your research, please cite

F. Bachmann, R. Hielscher, H. Schaeben: Texture Analysis with MTEX - Free and Open Source Software Toolbox, Solid State Phenomena 160 (2010), 63-68. 10.4028/www.scientific.net/SSP.160.63

BibTeX
@article{bachmann2010mtex,
  author  = {F. Bachmann and R. Hielscher and H. Schaeben},
  title   = {Texture Analysis with MTEX - Free and Open Source Software Toolbox},
  journal = {Solid State Phenomena},
  volume  = {160},
  pages   = {63-68},
  year    = {2010},
  doi     = {10.4028/www.scientific.net/SSP.160.63},
  url     = {https://doi.org/10.4028/www.scientific.net/SSP.160.63}
}

Other papers describing specific MTEX methods are listed under Publications — please cite the one that best fits your application. The MTEX source code is licensed under the GNU General Public License v2.0; the text and figures of this documentation are licensed under CC BY 4.0, which permits reuse — including by automated systems — provided The MTEX Developers and this page are credited.