NanoComp / meep

free finite-difference time-domain (FDTD) software for electromagnetic simulations
GNU General Public License v2.0
1.2k stars 613 forks source link

Harminv adjoint methods #1254

Open smartalecH opened 4 years ago

smartalecH commented 4 years ago

The LDOS is a good way to design around the Q of a resonator. As discussed in the meep tutorial, however, the LDOS can take a long time to simulate for highly resonant structures (since the DFT needs to converge).

Is there a clever way to incorporate Harminv results into our adjoint solver? I realize Harminv isn't an explicit frequency method and consequently probably won't be able to leverage our current machinery... but maybe we can get creative with our hybrid time-domain frequency-domain adjoint?

stevengj commented 4 years ago

Basically you would treat harminv as computing an approximate eigenvalue, and use adjoint methods for eigenvalues. But to do that you need the eigenvector too, so a harminv solves.

stevengj commented 4 years ago

Alternatively, we could try to apply the time-domain adjoint method to Harminv's analysis… it's not necessarily impractical because Harminv only uses one field component at one point, so it only needs to store that value as a function of time.

stevengj commented 4 years ago

It will still be challenging to do optimization with harminv because of the difficulty in consistently tracking the eigenvalue that it returns (out of the several resonances it typically finds).