Softanza
DémarrerEnglish
Softanza
La bibliothèque se documente elle-même · Numérique et optimisation

stzFourier

14 méthodes propres · 1 formes avec extensions, rangées sous leur méthode

la source: base/number/stzFourier.ring(s'ouvre dans un nouvel onglet) · Toutes les classes · La référence du domaine : Numérique et optimisation

Sous chaque méthode, ses extensions (Q CS XT Z ZZ IB W U) : en gras et cochée, elle existe ; barrée, elle n'existe pas. Les extensions et leur sens

Exemples : 0 viennent des tests de la bibliothèque ; 11 ont été composés à partir de la signature de chaque méthode et exécutés pour cette page, sur un objet neuf, par exemple o1 = new stzFourier([3,3,3,3,3,3,3,3]). 3 méthodes n'en ont pas encore. Exemples exécutés le 2026-10-03 12:54 dans la bibliothèque au commit 0e72e2e2c.

Méthode
Explication, telle que la source la porte
init
(sans commentaire dans la source : le nom se lit comme une phrase) initaucune extension
Content
(sans commentaire dans la source : le nom se lit comme une phrase) contentaucune extension
Real
(sans commentaire dans la source : le nom se lit comme une phrase) realaucune extension
Imaginary
(sans commentaire dans la source : le nom se lit comme une phrase) imaginary
exemple composé
o1 = new stzFourier([3,3,3,3,3,3,3,3])
? @@( o1.Imaginary() )
#--> [ 0, 0, 0, 0, 0, 0, 0, 0 ]
composé à partir de la signature, exécuté pour cette page
aucune extension
Count
(sans commentaire dans la source : le nom se lit comme une phrase) count
exemple composé
o1 = new stzFourier([3,3,3,3,3,3,3,3])
? o1.Count()
#--> 8
composé à partir de la signature, exécuté pour cette page
aucune extension
IsRadix2Length
TRUE when the length is a power of two, i.e. when the plain radix-2 path applies. Informational only -- Transform() works either way.
exemple composé
o1 = new stzFourier([3,3,3,3,3,3,3,3])
? o1.IsRadix2Length()
#--> 1
composé à partir de la signature, exécuté pour cette page
aucune extension
Transform
The spectrum, as a list of [re, im] pairs, one per frequency bin.aussi écrite: DFT · Spectrum
exemple composé
o1 = new stzFourier([3,3,3,3,3,3,3,3])
? @@( o1.Transform() )
#--> [ [ 24, 0 ], [ 0, 0 ], [ 0, 0 ], [ 0, 0 ], [ 0, 0 ], [ 0, 0 ], [ 0, 0 ], [ 0, 0 ] ]
composé à partir de la signature, exécuté pour cette page
aucune extension
InverseTransform
Back to the time domain. InverseTransform(Transform()) is the identity.aussi écrite: InverseDFT
exemple composé
o1 = new stzFourier([3,3,3,3,3,3,3,3])
? @@( o1.InverseTransform() )
#--> [ [ 3, 0 ], [ 0, 0 ], [ 0, 0 ], [ 0, 0 ], [ 0, 0 ], [ 0, 0 ], [ 0, 0 ], [ 0, 0 ] ]
composé à partir de la signature, exécuté pour cette page
aucune extension
Magnitudes
EACH OF THESE IS ONE ENGINE CALL, not a transform this class then walks. The readings are what callers actually want -- raw complex bins are rarely the answer -- so they belong to the engine and every language over it, not to a loop written once per binding. |X_k| per bin: "how much of this frequency is present". Phase-blind, which is what you want when looking for a periodicity.
exemple composé
o1 = new stzFourier([3,3,3,3,3,3,3,3])
? @@( o1.Magnitudes() )
#--> [ 24, 0, 0, 0, 0, 0, 0, 0 ]
composé à partir de la signature, exécuté pour cette page
aucune extension
Phases
The phase angle of each bin, in radians.
exemple composé
o1 = new stzFourier([3,3,3,3,3,3,3,3])
? @@( o1.Phases() )
#--> [ 0, 0, 0, 0, 0, 0, 0, 0 ]
composé à partir de la signature, exécuté pour cette page
aucune extension
PowerSpectrum
|X_k|^2 -- energy per bin, the quantity Parseval's theorem is about.
exemple composé
o1 = new stzFourier([3,3,3,3,3,3,3,3])
? @@( o1.PowerSpectrum() )
#--> [ 576, 0, 0, 0, 0, 0, 0, 0 ]
composé à partir de la signature, exécuté pour cette page
aucune extension
DominantBin
The engine excludes bin 0 and searches only the first half, and both matter: bin 0 holds the mean rather than a frequency and usually dominates, while a real signal's spectrum is conjugate-symmetric so the second half is a mirror. Getting either wrong names the wrong frequency; neither is a caller's problem.
exemple composé
o1 = new stzFourier([3,3,3,3,3,3,3,3])
? o1.DominantBin()
#--> 2
composé à partir de la signature, exécuté pour cette page
aucune extension
DominantFrequency
The dominant frequency in cycles per sample-interval; multiply by a sample rate to get Hz.
exemple composé
o1 = new stzFourier([3,3,3,3,3,3,3,3])
? o1.DominantFrequency()
#--> 0.13
composé à partir de la signature, exécuté pour cette page
aucune extension
ConvolvedWith
This is also POLYNOMIAL MULTIPLICATION -- the coefficients of a product are the convolution of the coefficients -- which is why stzPolynomial uses it.
exemple composé
o1 = new stzFourier([3,3,3,3,3,3,3,3])
? @@( o1.ConvolvedWith([ 2, 3 ]) )
#--> [ 6.00, 15, 15.00, 15.00, 15, 15.00, 15, 15, 9.00 ]
composé à partir de la signature, exécuté pour cette page
QCSXTZZZIBWU