コード例 #1
0
ファイル: fixtures.py プロジェクト: zhyhou/fdtd
def periodic_boundary():
    periodic_boundary = fdtd.PeriodicBoundary(name="periodic_boundary")
    return periodic_boundary
コード例 #2
0
# detectors
grid[12e-6, :, 0] = fdtd.LineDetector(name="detector")

# x boundaries
# grid[0, :, :] = fdtd.PeriodicBoundary(name="xbounds")
grid[0:10, :, :] = fdtd.PML(name="pml_xlow")
grid[-10:, :, :] = fdtd.PML(name="pml_xhigh")

# y boundaries
# grid[:, 0, :] = fdtd.PeriodicBoundary(name="ybounds")
grid[:, 0:10, :] = fdtd.PML(name="pml_ylow")
grid[:, -10:, :] = fdtd.PML(name="pml_yhigh")

# z boundaries
grid[:, :, 0] = fdtd.PeriodicBoundary(name="zbounds")

# objects
grid[11:32, 30:84, 0:1] = fdtd.AnisotropicObject(permittivity=2.5, name="object")

print(grid)
print(f"courant number: {grid.courant_number}")

# run simulation
grid.run(50, progress_bar=False)


## Plots

# Fields
if True: