can laser deck generate plane wave?
Closed this issue · 2 comments
hi developer
Under vacuum conditions, I used the laser module to generate a plane wave along the x direction and found that the amplitude of the wave was decreasing. Under this vacuum condition, the amplitude of the wave should be constant and should not decay. Is my setting or understanding incorrect?
begin:constant
laser_angle = 0 # Set angle of laser w.r.t positive x unit vector
laser_fwhm = 8.0e-6 # Size of gaussian profile for laser electric field
laser_wavelength = 1.0e-6
laser_k = 2 * pi / laser_wavelength
dt_snapshot = 5.e-15
end:constant
begin:control
nx = 2000
ny = 1000
Final time of simulation
t_end = 100*dt_snapshot
t_end = 50.e-15
x_min = -10.0e-6
x_max = 10.0e-6
y_min = -10.0e-6
y_max = 10.0e-6
end:control
begin:boundaries
bc_x_min = simple_laser
bc_x_max = simple_outflow
bc_y_min = periodic
bc_y_max = periodic
bc_y_min = simple_outflow
bc_y_max = simple_outflow
end:boundaries
begin:laser
boundary = x_min
intensity_w_cm2 = 1.0e15
profile = gauss(y, 0, laser_fwhm)
profile = 0.1
profile = if(abs(y) gt 0.75, 0, cos(y2.0pi))
t_profile = 1
pol_angle = 0
phase = 0 # -y * laser_k * sin(pol_angle) # Vary wave-front position in space
lambda = 2laser_wavelength # cos(pol_angle) # Space wave-fronts apart correctly along k
t_start = 0.0
t_end = 100*dt_snapshot
end:laser
begin:output
dt_snapshot = 5.e-15
grid = always
ex = always
ey = always
ez = always
bx = always
by = always
bz = always
end:output
If you do the problem in 1d, it will automatically be a plane wave. Giving the laser a transverse size (you have a gaussian profile) will result in focusing/defocusing of the wave.
Hey @tomdg1626003,
I think the formatting has gone a bit weird on your input deck. On GitHub, you can write
```
This stuff
```
to make
This stuff
I'm going to assume your input deck is of the form I give at the end of this message, where some comments have been removed.
@ktangtar is correct - even though you have no temporal profile, the laser pulse itself will change shape as it propagates through your simulation window. To inject a simple plane wave, change profile
in your laser block to match:
profile = 1
I'm going to mark this issue as solved, but feel free to continue messaging if you have any further problems.
Cheers,
Stuart
begin:constant
laser_angle = 0 # Set angle of laser w.r.t positive x unit vector
laser_fwhm = 8.0e-6 # Size of gaussian profile for laser electric field
laser_wavelength = 1.0e-6
laser_k = 2 * pi / laser_wavelength
dt_snapshot = 5.e-15
end:constant
begin:control
nx = 2000
ny = 1000
t_end = 50.e-15
x_min = -10.0e-6
x_max = 10.0e-6
y_min = -10.0e-6
y_max = 10.0e-6
end:control
begin:boundaries
bc_x_min = simple_laser
bc_x_max = simple_outflow
bc_y_min = periodic
bc_y_max = periodic
end:boundaries
begin:laser
boundary = x_min
intensity_w_cm2 = 1.0e15
profile = gauss(y, 0, laser_fwhm)
pol_angle = 0
phase = 0
lambda = 2 * laser_wavelength
t_start = 0.0
t_end = 100*dt_snapshot
end:laser
begin:output
dt_snapshot = 5.e-15
grid = always
ex = always
ey = always
ez = always
bx = always
by = always
bz = always
end:output