Replies: 1 comment 5 replies
-
Beta Was this translation helpful? Give feedback.
5 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Hello,
currently I am trying to implement the wideband Djordjevic-Sarkar model for openEMS. The my chosen workflow is:
The fit to the Debye equation in Step 2) is necessary because the coefficents can be calulated from measured data (or the result of the Djordjevic-Sarkar) model easily. Debye model fits are quite common in commercial solvers
The Debye model is a a simplification of the more general Lorentz model. However, it is not possible to calculate the Lorentz model prameters from the Debye ones directly beause of the f^2 term in the demoninator if the Lorentz model.
I therefore made an approximation by choosing:
In principle this seems to work well. For a tand=0.02 and Er=4.3 result of the fit looks promising:
The curves of the Debye and openEMS Lorentz model are on top of each other. I have created a second function which creates the multi term material based on the calculated poles.
I am currently testing the models in openEMS and this is where I am facing thre first problems. The numbers for fp are very big. The values for taup are very small. The higher the upper operating frequency is chosen the higher and lower these numbers become. If, in openEMS fp/taup is calculated the number will explode :)
In the equation these numbers are squared what makes the problem even worse. For corner frequencies >200GHz (a typical value) the openEMS simulation does not converge.The energy in the model goes up to infinity.
I suppose that in openEMS a floating point overlow occures which results in corrupted model paramers. When choosing a less good approximation I can scale the numbers down by one or two number of magnitudes. This can be adjusted choosing another value for kLor in line 166 of "calcDjordjevicSarkarApprox.m."
The Lorentz parameters are in this case:
The simulation runs just fine in this case and the simulation converges. The results are also correct. Here is an example of a microstrip line.
I don´t know if this should be considered a "bug" in openEMS or it is problem with my "approximation" of the Lorentz models. The numbers for the poles fit well into the frame of realMin=22.2507e-309, realMax = 179.7693e+306. On their own I would not consider them to be too big.
The cleanest way would be to implement the Debye model equation in openEMS. The debye model can also be fitted to measured data very easily. This is not the case for the Lorentz model. However I suspect that this is a signifcant effort.
The usage of my proposed function is very easy. The wideband material can be created with a single line:
Maybe I am completly wrong here and somethig else is causing the simulation instablity. However the magnitudes of the numbers is the only differnce I can spot here...
Regards
Tobias
permitttivity_model.zip
Beta Was this translation helpful? Give feedback.
All reactions