the quadrature grid on SO(3) of a bandwidth: the nodes and weights that integrate every harmonic function up to that degree exactly

Syntax

G = quadratureSO3Grid(L)

Clenshaw-Curtis in beta, no symmetry.

G = quadratureSO3Grid(bandwidthFor(L, cs), cs, ss, 'GaussLegendre')

Gauss-Legendre, reduced by the frames.

G = quadratureSO3Grid(15, rA=4, rB=2)

Reduced by fourfold and twofold folds about z.

ori, w = G.nodes(), G.weights

The nodes and their weights.

Description

The grid integrates exactly every function of harmonic degree up to the bandwidth, which is what SO3FunHarmonic.quadrature needs to compute the coefficients of a function from its values. The weights sum to one, the Haar measure.

The Euler angles alpha and gamma are equispaced, 2L + 2 of each; the scheme chooses the rule for beta:

  • ‘ClenshawCurtis’, the default: 2L + 1 nodes.
  • ‘GaussLegendre’: L + 1 nodes, about half as many for the same degree.

The rotations about z of the frames shorten the grid: the crystal fold rA the gamma range and the specimen fold rB the alpha range. Both must divide 2L + 2; bandwidthFor(L, cs, ss) gives the next bandwidth that they divide, and any other is refused.

Unlike MATLAB’s, the grid is not itself an orientation: G.nodes() gives the orientations, beta fastest, then alpha, then gamma, and G.weights their weights.

Input

bandwidth int, the degree up to which the rule is exact
CS, SS crystalFrame and specimenFrame (positional, optional)
scheme ‘ClenshawCurtis’ (default) or ‘GaussLegendre’ (positional, optional)

Keywords

keyword default description
rA   the fold about z on the crystal side, without frames
rB   the fold about z on the specimen side, without frames
dtype   the floating point type of the angles and weights

Output

G quadratureSO3Grid

See also

bandwidthFor, SO3FunHarmonic.quadrature, regularSO3Grid, SO3FunQuadrature

Members

flatten the distinct nodes, MATLAB’s grid(:)
fromHalf values at halfNodes() spread onto all nodes, in the order of nodes()
fullGrid MATLAB’s view of the grid: the nodes that differ under the symmetries, on which an evaluator need be called, and the full grid
fullValues values at the distinct nodes spread onto the full grid, values at the full grid kept
halfNodes the nodes beta <= pi/2 as orientations, where a 2-fold axis perpendicular to z on either side maps them onto the rest of the grid
nodes the nodes as orientations in the frames of the grid, beta fastest, then alpha, then gamma
quadratureSO3Grid the quadrature grid on SO(3) of a bandwidth: the nodes and weights that integrate every harmonic function up to that degree exactly
shape the shape of the grid, the numbers of gamma, alpha and beta nodes
size the number of the distinct nodes, MATLAB’s numel(grid)
weights the quadrature weights of the nodes, in the order of nodes()

Used on

SO3FunQuadrature

MATLAB’s quadratureSO3Grid_index

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/quadratureSO3Grid_index_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.