Info Request: Nonlinear Processes using the adjoint solver #2094
-
I'd like to use meep's adjoint solver to optimize a nonlinear process. Does the adjoint solver's current implementation support using nonlinear materials in the design region? I've tried to run an optimization where one of the materials in the design region had nonlinearities, but the gradient calculation seemed to stall for several hours, I assumed because it was taking too long to take the gradients. My figure of merit function was a simple surface flux at a different wavelength. Do you know if this was caused by nonlinearities not being implemented in the adjoint solver's gradient calculations, or is something else causing it? |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment
-
Gradients for nonlinear problems are not currently supported (out of the box). That would require a different adjoint-variable formulation. The problem is further complicated by the fact we implement a hybrid time-/frequency-domain adjoint formulation (although some nonlinear processes, like second harmonic generation, could still be modeled with the existing framework eg using coupled linear solves). Our recent paper discusses these nuances in detail (see the conclusion). |
Beta Was this translation helpful? Give feedback.
Gradients for nonlinear problems are not currently supported (out of the box). That would require a different adjoint-variable formulation. The problem is further complicated by the fact we implement a hybrid time-/frequency-domain adjoint formulation (although some nonlinear processes, like second harmonic generation, could still be modeled with the existing framework eg using coupled linear solves).
Our recent paper discusses these nuances in detail (see the conclusion).