the modal orientations of an orientation density, the components: their orientations, their volumes and the mode every seed flowed into

Syntax

modes, weights, centerId = calcComponents(odf)

The components from a grid of seeds.

modes, weights, centerId = calcComponents(odf, seed=ori)

The modes the orientations ascend to.

modes, weights, centerId = calcComponents(odf, seed=ori, radius=10*degree, exact=True)

Volumes within a radius, every mode kept.

Description

Every seed climbs by steepest ascent to a local maximum of the function. Maxima closer than tol are one mode, and its weight is the sum of the weights of the seeds that reached it, only of those within radius of it when a radius is given. The modes are ordered by decreasing weight.

The seeds are, in this order of preference:

  • the orientations given as seed, weighted by the function’s values there unless weights are given.
  • the centres of a radial function, with its weights.
  • the nodes of a 2.5 degree grid, with equal weights, which first climb to their peaks on the grid; the weight of a mode is then the share of the orientation space that flows into it, not its volume.

Seeds of weight zero are left out, so centerId has one entry per seed of positive weight. Modes of less than one percent of the weight are dropped unless exact=True, and the seeds that reached them get centerId -1. No seed gives no modes. With verbose the number of seeds and of the components found are reported.

Input

f SO3Fun

Keywords

keyword default description
seed None orientation, the starting points of the ascent
weights None the weights of the seeds, by default the values of the function at them, equal for the nodes of the grid
tol 1.5*degree the angle within which modes merge, and the accuracy of the ascent
maxIter 100 the largest number of steps of the ascent
radius inf only the seeds within this angle of their mode count to its weight; MATLAB’s ‘angle’
exact False keep the modes of less than one percent
verbose True report the progress

Output

modes orientation, the modal orientations
weights ndarray, the weight of every mode, the volume of the component
centerId ndarray, the index of the mode every seed flowed into, numbered from 0, -1 for a dropped mode

See also

SO3Fun.max, SO3Fun.volume, ODFComponents

Used on

ODFComponents

MATLAB’s SO3Fun.calcComponents

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/SO3Fun.calcComponents_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.