Note: This discussion is about an older version of the COMSOL Multiphysics® software. The information provided may be out of date.

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.

How to define a dispersive material as a function of COMSOL predefined frequency in emw interface?

Please login with a confirmed email address before reporting spam

Hi:

I defined a dispersive material function (frequency dependent relative permittivity) in Global Definition.

Function name: LD_real
Expression: ff E-14+0.6
Argument: ff
Argument unit: Hz
Function unit: 1

Then I assigned Relative Permittivity (real part) to a material defined in the Material tab with this value: LD_real(emw.freq)

However, when I started to compute the system error message said "Undefined value found¨.
I specified the relative permittivity with LD_real(1.2 E14), there is no error message appeared.
Sso obviously the solver cannot recognize emw.freq, why??
emw.freq is COMSOL predefined variable, why the system cannot take it?

I was using eigenvalue solver for eigen frequency study.
Because the material is frequency dependent, the solver must be able to change the material value automatically every time when finding another eigen frequency.
so how can I solve this problem?

6 Replies Last Post 17.11.2012, 00:42 GMT-5
Ivar KJELBERG COMSOL Multiphysics(r) fan, retired, former "Senior Expert" at CSEM SA (CH)

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago 26.10.2012, 01:35 GMT-4
Hi

I cannot understand your "Expression" there
or something is not showing up on my screen correctly, bad character mapping in the browser ?

--
Good luck
Ivar
Hi I cannot understand your "Expression" there or something is not showing up on my screen correctly, bad character mapping in the browser ? -- Good luck Ivar

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago 26.10.2012, 13:28 GMT-4
Hi:

Thank you for replying.

¨Expression¨ means the expression of the function in the analytical function setting tab.


Best Regard
Liu
Hi: Thank you for replying. ¨Expression¨ means the expression of the function in the analytical function setting tab. Best Regard Liu

Ivar KJELBERG COMSOL Multiphysics(r) fan, retired, former "Senior Expert" at CSEM SA (CH)

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago 26.10.2012, 13:45 GMT-4
Hi

that I understood, ;) but I read

Expression: ff E-14+0.6

and I do not undertand that expression 1E-14 yes, but E-14 alone no
--
Good luck
Ivar
Hi that I understood, ;) but I read Expression: ff E-14+0.6 and I do not undertand that expression 1E-14 yes, but E-14 alone no -- Good luck Ivar

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago 26.10.2012, 18:20 GMT-4
yes
actually E14 and 1E14 do the same thing....
yes actually E14 and 1E14 do the same thing....

Ivar KJELBERG COMSOL Multiphysics(r) fan, retired, former "Senior Expert" at CSEM SA (CH)

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago 27.10.2012, 15:17 GMT-4
Hi

actually not for me in my version,
so obviously there is many thing I do not understand here ,sorry cannot help much then ;)

--
Good luck
Ivar
Hi actually not for me in my version, so obviously there is many thing I do not understand here ,sorry cannot help much then ;) -- Good luck Ivar

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago 17.11.2012, 00:42 GMT-5
Hi everyone,

I have exactly the same problem:

I'm solving for the eigenvalues of a sysmtem in which one of the materials has a Drude-like response: epsilon(omega)=epsilon0*(1-omega0^2/omega^2). For example omega0=2*pi*6e14 rad/s

So the material depends (nonlinearly) on the eigenvalue(omega) itself. One way to solve the eigenvalue problem would be to do iteratations in MATLAB using some seed for the eigenvalue and do as many iterations until the eigenvalue converges.
But I was wondering if there is any way to do it entirely in COMSOL. I tried to define a DAE global equation like: freq_old-freq=0 with the initial value of freq_old being the seed I used in MATLAB. Then I used freq_old in the RF multiphysics to find the epsilon. Basically I wanted to couple two multiphysics to make COMSOL do iterations. But COMSOL gave me some ugly answers. Most strangely was that freq_old was not equal to the eigenvalue.

Thanks for any help.
Best,
Hossein
Hi everyone, I have exactly the same problem: I'm solving for the eigenvalues of a sysmtem in which one of the materials has a Drude-like response: epsilon(omega)=epsilon0*(1-omega0^2/omega^2). For example omega0=2*pi*6e14 rad/s So the material depends (nonlinearly) on the eigenvalue(omega) itself. One way to solve the eigenvalue problem would be to do iteratations in MATLAB using some seed for the eigenvalue and do as many iterations until the eigenvalue converges. But I was wondering if there is any way to do it entirely in COMSOL. I tried to define a DAE global equation like: freq_old-freq=0 with the initial value of freq_old being the seed I used in MATLAB. Then I used freq_old in the RF multiphysics to find the epsilon. Basically I wanted to couple two multiphysics to make COMSOL do iterations. But COMSOL gave me some ugly answers. Most strangely was that freq_old was not equal to the eigenvalue. Thanks for any help. Best, Hossein

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.