a function on the circle by its Fourier coefficients fhat, k = -L..L, over e^{-ikx} as MATLAB’s
Syntax
sF = S1FunHarmonic([0.25, 0, 1, 0, 0.25])
From the coefficients, k = -2..2.
sF = S1FunHarmonic(lambda x: np.sin(2*x), bandwidth=16)
A callable by quadrature.
sF = S1FunHarmonic(psi, bandwidth=32)
The Fourier series of an S1 kernel.
sF = S1FunHarmonic(sF, bandwidth=8)
Another function, cut to a bandwidth.
Description
The coefficients run from the degree -L to L, so a coefficient vector has odd length 2 L + 1. A callable is sampled on the equispaced quadrature grid of the bandwidth, by default the preference maxS1Bandwidth; an S1 kernel, an S1FunHandle or another S1FunHarmonic gives its own coefficients, cut or padded to the bandwidth when one is given. A real function keeps c_{-k} = conj(c_k), which is checked from the coefficients unless real says it.
Input
fhat |
array of 2 L + 1 coefficients, a callable of the angle, an S1Kernel or an S1Fun |
Keywords
| keyword | default | description |
|---|---|---|
real |
whether the function takes real values only; by default read off the coefficients or the sampled values | |
bandwidth |
the largest degree L of the series | |
dtype |
the complex type of the coefficients, complex128 unless given |
Output
sF |
S1FunHarmonic |
Properties
fhat |
complex coefficients ordered from Fourier mode -L through L |
bandwidth |
largest Fourier mode L |
isReal |
whether the function is constrained to have real values |
antipodal |
whether f(x+pi)=f(x), read from its coefficients |
even, odd |
boolean symmetry tests under x -> -x |
See also
S1FunHarmonic.quadrature, S1FunHarmonic.interpolate, S1FunHandle, S1Grid
Members
| abs | the pointwise absolute value, a Fourier series of a smoothing bandwidth |
| abs | the pointwise absolute value, a Fourier series of a smoothing bandwidth |
| antipodal | whether f(x+pi)=f(x), tested by checking that every odd Fourier mode vanishes |
| approximate | the Fourier series of a function on the circle by quadrature |
| bandwidth | the bandwidth L, the largest frequency of the coefficients |
| cat | cat(a, b, …) is type(a).cat(a, b, …): the list of the operands, MATLAB’s [a, b], the carried attributes joined |
| conj | the complex conjugate function |
| conj | the complex conjugate function |
| conv | smoothing by a kernel is one factor per mode |
| conv | smoothing by a kernel is one factor per mode |
| diff | differentiate the circular function with respect to its angle in radians |
| dot | the inner product with g for the normalised measure, by the coefficients |
| eval | evaluate the Fourier series at angles in radians |
| even | whether f(x)=f(-x), tested from the Fourier coefficients |
| exp | the pointwise exponential, a Fourier series of a smoothing bandwidth, or at the bandwidth given |
| grad | the derivative as a function, or its values at the angles x |
| interpolate | the Fourier series through noisy samples at angles on the circle, fitted by regularised least squares |
| isclose | whether the coefficients of g agree within atol + rtol times their norm |
| log | the pointwise logarithm, a Fourier series of a smoothing bandwidth, or at the bandwidth given |
| max | global, local and pointwise maxima of a function on the circle |
| max | global, local and pointwise maxima of a function on the circle |
| mean | the mean over the circle, the coefficient c_0 |
| mean | the mean over the circle, the coefficient c_0 |
| min | global, local and pointwise minima of a function on the circle |
| min | global, local and pointwise minima of a function on the circle |
| minus | |
| mrdivide | |
| mtimes | |
| mtimes | |
| norm | the L2 norm for the normalised measure, the Euclidean norm of the coefficients |
| norm | the L2 norm for the normalised measure, the Euclidean norm of the coefficients |
| odd | whether f(x)=-f(-x), tested from the Fourier coefficients |
| plot | plot of a function on the circle, its values as the radius of a polar line |
| plotSpektra | the Chebyshev coefficients of a kernel, or the harmonic power of a function, per degree |
| plus | |
| plus | |
| power | |
| power | |
| quadrature | the Fourier series of a function on the circle by quadrature |
| rdivide | |
| rdivide | |
| rotate | shift the circular function by an angle in radians |
| S1Fun | a function on the circle by its Fourier coefficients fhat, k = -L..L, over e^{-ikx} as MATLAB’s |
| S1FunHarmonic | a function on the circle by its Fourier coefficients fhat, k = -L..L, over e^{-ikx} as MATLAB’s |
| smooth | the convolution with a de la Vallee Poussin kernel, 2.9 degree unless a kernel or a halfwidth is given |
| sqrt | the pointwise square root, a Fourier series of a smoothing bandwidth, or at the bandwidth given |
| sqrt | the pointwise square root, a Fourier series of a smoothing bandwidth, or at the bandwidth given |
| sum | the integral over the circle, 2 pi times the mean, MATLAB’s sum |
| sum | the integral over the circle, 2 pi times the mean, MATLAB’s sum |
| times | |
| times | |
| truncate | return the same circular function represented through Fourier mode L |
| uminus | |
| uminus |
Used on
MATLAB’s S1FunHarmonic_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/S1FunHarmonic_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.