# Fourierspace grid omega_1 = arange(-params["ngn"]/2.0, 0, 1) omega_2 = arange(0, params["ngn"]/2.0) omega = hstack([omega_1, omega_2]) k = omega / (2*params["f"] * pi) #k = omega / params["ngn"] # A HAWP HAWP = HagedornWavepacket(params) HAWP.set_quadrature(None) HAWP.set_parameters((1j, 1, 0, 3, -2)) HAWP.set_coefficient(0,2,1) # Evaluate in real space y = HAWP.evaluate_at(x)[0] # Transform to Fourier space HAWP.to_fourier_space() # Evaluate in Fourier space w = HAWP.evaluate_at(k)[0] HAWP.to_real_space() # Evaluate in real space again z = HAWP.evaluate_at(x)[0] figure()
from WaveBlocks import HagedornWavepacket from WaveBlocks import HomogeneousQuadrature from WaveBlocks import InhomogeneousQuadrature nmax = 6 params = {} params["eps"] = 0.2 params["basis_size"] = 4 params["ncomponents"] = 1 WP1 = HagedornWavepacket(params) WP1.set_parameters((1.0j, 1.0, 0.0, 0.0, 0.85)) WP1.set_coefficient(0, 0, 1) WP1.set_quadrature(None) params["basis_size"] = 6 WP2 = HagedornWavepacket(params) WP2.set_coefficient(0, 0, 1) WP2.set_quadrature(None) HQ1 = HomogeneousQuadrature() HQ1.build_qr(max(WP1.get_basis_size())) HQ2 = HomogeneousQuadrature() HQ2.build_qr(max(WP2.get_basis_size())) IHQ = InhomogeneousQuadrature()
@copyright: Copyright (C) 2010, 2011 R. Bourquin @license: Modified BSD License """ from numpy import * from matplotlib.pyplot import * from WaveBlocks import HagedornWavepacket from WaveBlocks.Plot import plotcf nmax = 10 amp0 = 0.5 params = {} params["eps"] = 0.2 params["basis_size"] = nmax params["ncomponents"] = 1 HAWP = HagedornWavepacket(params) HAWP.set_parameters((1.0j, 1.0, 0.0, -1.0, 0.0)) for i in range(0,nmax): HAWP.set_coefficient(0, i, amp0/ 2**i) x = linspace(-4,4,4000) y = HAWP.evaluate_at(x, prefactor=True, component=0) figure() plotcf(x, angle(y), conj(y)*y) show()