Currently, the pml or any other boundary is part of the simulation volume. This makes specification a bit complicated. Instead a user should just define the simulation volume (maybe just as part of the simulation config, similar to tidy3d: sim_size=(...), ), which does not include boundaries. Afterwards, depending on the boundary type (pml, bloch, etc), the final simulation volume is computed.
Currently, the pml or any other boundary is part of the simulation volume. This makes specification a bit complicated. Instead a user should just define the simulation volume (maybe just as part of the simulation config, similar to tidy3d: sim_size=(...), ), which does not include boundaries. Afterwards, depending on the boundary type (pml, bloch, etc), the final simulation volume is computed.