awslabs / palace

3D finite element solver for computational electromagnetics
https://awslabs.github.io/palace/dev
Apache License 2.0
236 stars 49 forks source link

Select both sides of a boundary for dielectric postprocessing #280

Open awollack opened 1 month ago

awollack commented 1 month ago

The documentation describes how to select dielectric interfaces for postprocessing boundaries. However, there isn't an option to select both sides of an internal boundary using "Side" (i.e., what happens when the dielectric constants are equal?).

A simple example is a suspended piece of metal in air. There are metal-air interfaces ("MA") on both sides of the metal, but "Side" only allows selecting the "SmallerRefractiveIndex" or "LargerRefractiveIndex". Also in the general case, there is no guarantee that the loss tangents on either side will be the same, so simply summing the contributions from both sides might be insufficient for all users.

The code to for side selection for the internal dielectric interface is here.

hughcars commented 1 month ago

Hi @awollack,

This is an edge case that wasn't considered in the original design of the "smaller" "larger" interface, but which I believe is effectively addressed by https://github.com/awslabs/palace/pull/261/files#diff-61260285bc97ffe5f44411fffe5a4829fb1cb44a943e11099356cdff3d81c5d7R311 which will approach the boundaries on both sides. The case of different loss tangent on either side I'll have to think about a little more, as I'm not sure I know what that would even mean for such a truly 2-sided metal.