from kufdtd.dim3.cpu.base import *
from kufdtd.dim3.cpu.matter import Dielectric
from kufdtd.dim3.cpu.cpml import CpmlNonKappa
from kufdtd.dim3.output import Output

#--------------------------------------------------------------------
Nx, Ny, Nz = 200, 200, 32
dx = 10e-9
tmax = 1000
Ncore = 8

Npml = 15

Cpml = CpmlNonKappa(Npml, ('fb', 'fb', 'fb'))

Output_ez = Output('Ez', (0, 0, Nz / 2), (Nx - 1, Ny - 1, Nz / 2))
Output_e = Output('e', (None, 0, Nz / 2), (None, Ny - 2, Nz / 2), (2, 2, 1))
output_list = [Output_ez, Output_e]

#--------------------------------------------------------------------
S = Dielectric(Nx, Ny, Nz, dx, Ncore)

S.allocate_main()
S.allocate_coeff()
S.set_coeff()

Cpml.set_space(S)
Cpml.allocate_psi()
Cpml.allocate_coeff()

for output in output_list:
Ejemplo n.º 2
0
from kufdtd.dim3.cpu.cpml import CpmlNonKappa
from kufdtd.dim3.output import Output
from kufdtd.dim3.tfsf import Tfsf

#--------------------------------------------------------------------
Nx, Ny, Nz = 200, 200, 64
dx = 10e-9
tmax = 1000
Ncore = 8

Npml = 15
wavelength = 600e-9

Cpml = CpmlNonKappa(Npml, ('fb', 'fb', 'fb'))

Output_ey = Output('Ey', (None, None, Nz / 2), (None, None, Nz / 2))
output_list = [Output_ey]

Src = Tfsf((50, 50, 20), (150, 150, 40), ('fb', 'fb', 'fb'), wavelength,
           ['normal', 'x'], 0)
src_list = [Src]

#--------------------------------------------------------------------
S = Dielectric(Nx, Ny, Nz, dx, Ncore)

S.allocate_main()
S.allocate_coeff()
S.set_coeff()

Cpml.set_space(S)
Cpml.allocate_psi()