Oblique Incidence (2D case)
How to model oblique incidence?
The first that can occur to beginner is to make model similar to PORT BOUNDARY CONDITION PAGE, where there are 2 components of k-vector as well as two components of E vector. The problem is what to do with side boundaries. What BC condition should be set? PEC and PMC are out of question. What if we just try to enclose model with PMLs, then we don´t care much about side boundaries. If we do that, solution is depicted in the Figure 1.
The first that can occur to beginner is to make model similar to PORT BOUNDARY CONDITION PAGE, where there are 2 components of k-vector as well as two components of E vector. The problem is what to do with side boundaries. What BC condition should be set? PEC and PMC are out of question. What if we just try to enclose model with PMLs, then we don´t care much about side boundaries. If we do that, solution is depicted in the Figure 1.
It is obvious that it does not work. If angle of incidence is kept to 0 it works. With its increase, situation is worse.
However, other BCs are adopted for this. It is a class of PERIODIC BOUNDARY CONDITIONS called FLOQUET CONDITIONS, and they are very simple. Equation for Floquet periodicity is Hdst=Hsrc*exp(-j*k*(rdst-rsrc)), where indices dst and src represent destination and source boundaries.It is clear that this work only for plane waves, and that source and destination boundaries need to have same Periodic Pair Index. The only parameters you need to specify are k vector components. In the following example they are defined as k0_rfwh*cos(alpharad) and k0_rfwh*sin(alpharad), for kx and ky respectively (Figure 2). When using Floquet BC, it is important to check (select) "Use Hermitian transpose of constraint matrix and in symmetry detection" in Solve/Solver parameters/Advanced. This will increase significantly solving time, thus if u work with huge 3D models, and if u use Floquet BCs with incident angle for parametric sweep, maybe it is better not to use Floquet BCs if u are only interested for normal incidence (angle equal to 0). Use PEC and PMCs if possible.
However, other BCs are adopted for this. It is a class of PERIODIC BOUNDARY CONDITIONS called FLOQUET CONDITIONS, and they are very simple. Equation for Floquet periodicity is Hdst=Hsrc*exp(-j*k*(rdst-rsrc)), where indices dst and src represent destination and source boundaries.It is clear that this work only for plane waves, and that source and destination boundaries need to have same Periodic Pair Index. The only parameters you need to specify are k vector components. In the following example they are defined as k0_rfwh*cos(alpharad) and k0_rfwh*sin(alpharad), for kx and ky respectively (Figure 2). When using Floquet BC, it is important to check (select) "Use Hermitian transpose of constraint matrix and in symmetry detection" in Solve/Solver parameters/Advanced. This will increase significantly solving time, thus if u work with huge 3D models, and if u use Floquet BCs with incident angle for parametric sweep, maybe it is better not to use Floquet BCs if u are only interested for normal incidence (angle equal to 0). Use PEC and PMCs if possible.
Now it is time to cover the most relevant case of oblique propagation of plane wave through dielectric interface or multilayer films.
Figure 3. is solution of the model that consists of 3 subdomains, glass (n=1.52), air domain, and PML. (In this simple model, we can remove PML and just adjust PORT BCs on the right). Port BC is on the left, where excitation was defined under incident angle of 20 degrees. Floquet BC pairs indices are 1 and 2. It is important to separate boundaries with different refractive indices. Actually, YOU NEED TO CALCULATE MANUALLY K VECTOR COMPONENTS FOR EVERY DOMAIN USING SNELL'S LAW! Don`t forget to do that. There is a question what to do with boundaries next to PML. You can use Scattering BC, but I would suggest u to use same Floquet BCs as adjoining boundaries. In this case it doesn´t matter. However, once I realized that not defining PERIODIC BCs on PMLs` sides in periodic model, produced wrong result. Another interesting point is related to back-reflection from the interface, and ability of PORT BC to deal with it. In this case PORT BC will works fine, because reflected wave has same propagation constant with changed direction. PORT BC can absorb waves with same propagation constant as one that is emitting.Remember that propagation constant is k vector component that is norma to the boundary, and upon reflection is not changes since incident and reflected angle are same. But imagine situation where we have scattering object, and that scattering is very intense. Scattered light with different k vectors (different Betas) will hit PORT BC, and PORT BC will not be able to deal with it, and there will be some serious reflections that will compromise your model. Solution is to enclose model with PML on the left side. If we do that we end up with the situation depicted on the page Total field-substrate case Figure 1. (b). It will give you decent results, but wave will be extremely dampened.(COMSOL support technitian once told me not to do that).PML on the right side can be removed by PORT BC but propagation constant has to be calculated according to Snell´s law.
Solution to problem of scatterer and PORT BC with PMLs lays in the use of Identity Pairs and Assemblies.
NOTE: Solve same model in Figure 3. for incident angle of 41 degrees.
Solution to problem of scatterer and PORT BC with PMLs lays in the use of Identity Pairs and Assemblies.
NOTE: Solve same model in Figure 3. for incident angle of 41 degrees.