Este es el manual, del manual…, vamos a analizar lo que viene en https://meep.readthedocs.io/en/master/Python_Tutorials/Basics/
# From the Meep tutorial: plotting permittivity and fields of a bent waveguide
import meep as mp
cell = mp.Vector3(16, 16, 0)
geometry = [
mp.Block(
mp.Vector3(12, 1, mp.inf),
center=mp.Vector3(-2.5, -3.5),
material=mp.Medium(epsilon=12),
),
mp.Block(
mp.Vector3(1, 12, mp.inf),
center=mp.Vector3(3.5, 2),
material=mp.Medium(epsilon=12),
),
]
pml_layers = [mp.PML(1.0)]
resolution = 10
sources = [
mp.Source(
mp.ContinuousSource(wavelength=2 * (11**0.5), width=20),
component=mp.Ez,
center=mp.Vector3(-7, -3.5),
size=mp.Vector3(0, 1),
)
]
sim = mp.Simulation(
cell_size=cell,
boundary_layers=pml_layers,
geometry=geometry,
sources=sources,
resolution=resolution,
)
sim.run(
mp.at_beginning(mp.output_epsilon),
mp.to_appended("ez", mp.at_every(0.6, mp.output_efield_z)),
until=200,
)
en este ejemplo modificamos la fuente
# From the Meep tutorial: plotting permittivity and fields of a bent waveguide
import meep as mp
cell = mp.Vector3(16, 16, 0)
geometry = [
mp.Block(
mp.Vector3(12, 1, mp.inf),
center=mp.Vector3(-2.5, -3.5),
material=mp.Medium(epsilon=12),
),
mp.Block(
mp.Vector3(1, 12, mp.inf),
center=mp.Vector3(3.5, 2),
material=mp.Medium(epsilon=12),
),
]
pml_layers = [mp.PML(1.0)]
resolution = 10
fcen = 0.15 # pulse center frequency
df = 0.1 # pulse width (in frequency)
sources = [mp.Source(mp.GaussianSource(fcen,fwidth=df),
component=mp.Ez,
center=mp.Vector3(-7, -3.5),
size=mp.Vector3(0, 1),
)
]
sim = mp.Simulation(
cell_size=cell,
boundary_layers=pml_layers,
geometry=geometry,
sources=sources,
resolution=resolution,
)
sim.run(
mp.at_beginning(mp.output_epsilon),
mp.to_appended("ez", mp.at_every(0.6, mp.output_efield_z)),
until=200,
)
se crearon archivos h5, esa fue el output, podemos checar cuales son los archivos con la instrcccion
ls *h5
la cual es valida para cuando esta en el notebook jupyter o cuando estas en el promt en linux, los archivos son dos h5, en el proximo post vamos a ver como se pueden leer en python
eps-000000.00.h5 ez.h5