Discussion Closed This discussion was created more than 6 months ago and has been closed. To start a new discussion with a link back to this one, click here.

Mode coupling using boundary integrals

Please login with a confirmed email address before reporting spam

Hi,

as a minimalistic example, suppose I have the longitudinal section of a waveguide represented as a rectangle. The left side border (in blue) is the input port, exciting a fundamental TE mode and the right side border is the output mode as shown in the following image:

https://i.postimg.cc/Hkw0hS80/waveguide.png

After making the Boundary Mode Analysis of each mode, I'm able to propagate and obtain this result, https://i.postimg.cc/kg5yHN9B/waveguide2.png

Now my problem is that I want to make an overlap integral between the modes of both ports (1 and 2). I have followed these steps without success:

In the Definitions toolbar, under Component Couplings, I chose Integration (intop1) and selected just the left and right boundaries. Also on Definitions > Variables 1, I defined the variable ovInt as:

intop1(ewfd.tEmodez_1*conj(ewfd.tEmodez_2))

(I know I need to normalize the fields first, but this is just to illustrate the problem)

After running the model and using Global Evaluations to try to obtain the value of the overlap integral (ovInt), I get an error message saying what I believe is an error due to the fact that the variable comp1.ewfd.tEmodez_2 doesn't exists on the left border. This I used to solve using a Join database operator. But this solution doesn't works when you are using two edges of the same database.

This is the complete error message:

Undefined variable. - Variable: comp1.ewfd.tEmodez_2 - Geometry: geom1 - Boundary: 1 Failed to evaluate expression. - Expression: conj(comp1.ewfd.tEmodez_2) Failed to evaluate expression. - Expression: conj(comp1.ewfd.tEmodez_2)comp1.ewfd.tEmodez_1 Failed to evaluate expression. - Expression: comp1.intop1(conj(comp1.ewfd.tEmodez_2)comp1.ewfd.tEmodez_1) Failed to evaluate variable. - Variable: comp1.ovInt - Defined as: comp1.intop1(conj(comp1.ewfd.tEmodez_2)*comp1.ewfd.tEmodez_1) Failed to evaluate expression. - Expression: comp1.ovInt

Thanks in advance.

-------------------
Felipe Beltran-Mejia

0 Replies Last Post 12 avr. 2021, 09:41 UTC−4
COMSOL Moderator

Hello Felipe Beltran-Mejia

Your Discussion has gone 30 days without a reply. If you still need help with COMSOL and have an on-subscription license, please visit our Support Center for help.

If you do not hold an on-subscription license, you may find an answer in another Discussion or in the Knowledge Base.

Note that while COMSOL employees may participate in the discussion forum, COMSOL® software users who are on-subscription should submit their questions via the Support Center for a more comprehensive response from the Technical Support team.