stanfordnqp / spins-b

Photonic optimization library
GNU General Public License v3.0
281 stars 111 forks source link

Multiple wavelength simulation #78

Open adikrao opened 1 year ago

adikrao commented 1 year ago

I am using goos library. How do I run simulation for multiple wavelengths on the same simulation space. I tried to create two variable sim1 and sim2, gave both of them same sim_space and epsilon. Defined independent objectives for each wavelength and then added them. On running the code, the simulation space is initiated but the Optimization process doesn't start. Any help how to resolve this? Also is there a detailed documentation of spins-b available anywhere?

ludi1001 commented 1 year ago

What you described should work. What do you mean by the Optimization process doesn't start? Are you able to successfully run with just one wavelength?

Documentation-wise we have https://spins-b.readthedocs.io/en/latest/ as well as the examples you've probably seen under spins-b/examples/goos

LumiereWuChu commented 1 year ago

Did you solve your problem please? I have a similar question: how to set up multiple light sources incident in spins at the same time.

ludi1001 commented 1 year ago

The details depend on the simulator you want to use, but let's suppose you're using maxwell.fdfd_simulation. If you want multiple sources at the same wavelength, you can just list multiple sources in the sources field. If you want multiple sources at different wavelengths, you can construct two different maxwell.fdfd_simulation objects with two different wavelengths.

LumiereWuChu commented 1 year ago

Thank you very much for your reply. I am trying to add two light sources of the same wavelength incident at different locations using the invdes library (e.g. based on the wdm.py routine) but optplan.fdfdsimulation does not seem to support input as list?

图片1 image