public void ProviderSurvivesFreeResources() { var samples = Generate.PeriodicMap(16, w => new Complex(Math.Sin(w), 0), 16, 1.0, Constants.Pi2); var spectrum1 = new Complex[samples.Length]; samples.Copy(spectrum1); FourierTransformControl.Provider.Forward(spectrum1, FourierTransformScaling.ForwardScaling); FourierTransformControl.FreeResources(); var spectrum2 = new Complex[samples.Length]; samples.Copy(spectrum2); FourierTransformControl.Provider.Forward(spectrum2, FourierTransformScaling.ForwardScaling); for (var i = 0; i < spectrum1.Length; i++) { Assert.AreEqual(spectrum1[i], spectrum2[i]); } }
public static void FreeResources() { LinearAlgebraControl.FreeResources(); FourierTransformControl.FreeResources(); }