from pulse import Pulse #from fftw_transforms import fftcomputer as fftw #from scipy import fftpack plt.close('all') steps = 100 centerwl = 850.0 gamma = 0.045 fiber_length = 0.1 P0 = 10e3 T0 = 28.4e-3 init = Pulse(n = 2**13) init.gen_sech(P0, T0, centerwl) fiber1 = Fiber() fiber1.generate_fiber(fiber_length ,centerwl, [-1.276e-2, 8.119e-5, -1.321e-7, 3.032e-10, -4.196e-13, 2.570e-16], gamma, 0) evol = SSFM(disable_Raman = False, disable_self_steepening = False, local_error = 0.1, suppress_iteration = True) y = np.zeros(steps) AW = np.complex64(np.zeros((init.n, steps))) AT = np.complex64(np.copy(AW)) y, AW, AT, pulse1, = evol.Fiber_propagate(pulse_in = init, fiber = fiber1, n_steps = steps)
from SSFM import SSFM from fiber import Fiber from pulse import Pulse plt.close('all') dz = 1e-3 steps = 500 range1 = np.arange(steps) centerwl = 835.0 fiber_length = 0.15 init = Pulse(n = 2**13) init.gen_sech(1e4, 28.4e-3, centerwl) fiber1 = Fiber() fiber1.load_from_db( fiber_length, 'dudley') evoladv = SSFM(dz = 1e-6, local_error = 0.001, USE_SIMPLE_RAMAN = False) yadv = np.zeros(steps) AWadv = np.zeros((init.n, steps)) ATadv = np.copy(AWadv) yadv, AWadv, ATadv, pulse1adv = evoladv.propagate(pulse_in = init, fiber = fiber1, n_steps = steps) evolsimp = SSFM(dz = 1e-6, local_error = 0.001, USE_SIMPLE_RAMAN = True) ysimp = np.zeros(steps)
fiber1 = Fiber() steps = 250 centerwl = 1550.0 gamma = 2e-3 fiber_length = 100.0 T0 = 50e-3 D = 4 # ps / km / nm beta2 = -2 * np.pi * fiber1.c / centerwl**2 * D beta3 = 0.1 betas = [beta2, beta3] print betas P0 = abs(betas[0] * 1e-3) / gamma / T0**2 init = Pulse(n=2**14) init.gen_sech(P0, T0, centerwl, time_window=25) fiber1.generate_fiber(fiber_length, centerwl, betas, gamma, 0, "ps^n/km") evol = SSFM(disable_Raman=False, disable_self_steepening=False, local_error=0.001, suppress_iteration=True, USE_SIMPLE_RAMAN=True) y = np.zeros(steps) AW = np.complex64(np.zeros((init.n, steps))) AT = np.complex64(np.copy(AW)) wl = 2 * np.pi * init.c / (init.W) shift = np.zeros((len(y), 3)) fwhm = np.copy(shift)
from pulse import Pulse #from fftw_transforms import fftcomputer as fftw #from scipy import fftpack plt.close('all') steps = 100 centerwl = 850.0 gamma = 0.045 fiber_length = 0.1 P0 = 10e3 T0 = 28.4e-3 init = Pulse(n = 2**13) init.gen_sech(P0, T0, centerwl) fiber1 = Fiber() fiber1.generate_fiber(fiber_length ,centerwl, [-1.276e-2, 8.119e-5, -1.321e-7, 3.032e-10, -4.196e-13, 2.570e-16], gamma, 0) evol = SSFM(disable_Raman = False, disable_self_steepening = False, local_error = 0.1, suppress_iteration = True) y = np.zeros(steps) AW = np.complex64(np.zeros((init.n, steps))) AT = np.complex64(np.copy(AW)) y, AW, AT, pulse1, = evol.propagate(pulse_in = init, fiber = fiber1, n_steps = steps)
fiber1 = Fiber() steps = 250 centerwl = 1550.0 gamma = 2e-3 fiber_length = 100.0 T0 = 50e-3 D = 4 # ps / km / nm beta2 = -2 * np.pi * fiber1.c / centerwl**2 * D beta3 = 0.1 betas = [beta2, beta3] print betas P0 = abs(betas[0] * 1e-3) / gamma / T0**2 init = Pulse(n = 2**14) init.gen_sech(P0, T0, centerwl, time_window=25) fiber1.generate_fiber(fiber_length, centerwl, betas, gamma, 0, "ps^n/km") evol = SSFM(disable_Raman = False, disable_self_steepening = False, local_error = 0.001, suppress_iteration = True, USE_SIMPLE_RAMAN = True) y = np.zeros(steps) AW = np.complex64(np.zeros((init.n, steps))) AT = np.complex64(np.copy(AW)) wl = 2 * np.pi * init.c / (init.W) shift = np.zeros((len(y), 3)) fwhm = np.copy(shift) chirps = np.array([0.0])*-1 j = 0