Reflection Problem
Issue #25
new
x0 = np.linspace(-100 * um, 100 * um, 2048)
z0 = np.linspace(-100 * um, 100 * um, 2048)
wavelength = 5 * um
u0 = Scalar_source_X(x=x0, wavelength=wavelength)
u0.gauss_beam(A=1, x0=0 * um, z0=100 * um, w0=15 * um, theta=0 * degrees)
u1 = Scalar_mask_XZ(x=x0, z=z0, wavelength=wavelength, n_background=1)
u1.incident_field(u0)
u1.semi_plane(r0=(0, 0), refraction_index=1.5, angle=60 * degrees)
u1.draw_refraction_index()
u1.WPM(verbose=False)
u1.draw(kind='phase', draw_borders=True)
When the degree is 45 reflection is very low I don’t think that it calculates accurately. Has any one faced this problem do you have any suggestions?
Hello, this is completely expected and nothing unusual. the reflected wave is not a forward propagating wave and the method is a unidirectional propagation scheme, it only knows about forward propagating waves.
in other words the reflected wave has a kz of mostly 0
you could tilt your whole system as a simple workaround.