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.

Why is the gradient of the voltage potential field not equal to the electric field?

Kristian Lindberg-Poulsen

Please login with a confirmed email address before reporting spam

Hi,

I have been working on a 3D model of a resistive current sensor, and I am trying to verify the high frequency (50-500Mhz) response. Essentially, i want to make sure that at a fixed current excitation of 1A, I measure as close as possible to 0.1V, corresponding to a resistance of 0.1Ohm. The challenge is to avoid coupling the measurement loop to the rapidly changing magnetic flux.

I initially used boundary probes to measure the average voltage potentials at the two boundaries corresponding to the sensor output, but this gave erroneous result. I then tried to do a line integral of the electric field between the two sensor outputs, and I was surprised to find the expected voltage of 0.1V. After further investigation, I have discovered that the electric field in general corresponds well with my expectations, in that the electric field is strong across the resistive elements, and weak at the copper. The voltage potential field does not make much sense in this regard - the total voltage between the terminal and ground is close to the expected 0.1V, but by plotting the 3D voltage potential field over the model, it seems that the entire voltage drop appears in an area very near the terminal, with apparently nearly zero voltage drop over the resistive elements.

I have attached screenshots of d(V,y), and Y component of E field, respectively, plotted in the same plane. From my understanding, these should be equal, which is clearly not the case in my simulation.

Is the V field somehow calculated based on the bulk impedance seen at the terminals, ignoring the geometry? This is the only explanation I can come up with...

I would be grateful if you would help me solving this discrepancy. I have attached the model file with all cleared as the uncleared file is too big, but I would not expect anyone to run the simulation themselves as it took about an hour to run for me with a modern workstation. Let me know if you want me to upload a screenshot of a plot of anything.

Best regards,
Kristian


18 Replies Last Post 2013年5月7日 GMT-4 10:00
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 2013年5月3日 GMT-4 01:41
Hi

first a few tricks:

when you add a view with "hide" make several view, one standard, one perhaps with Geometry Objects hidden (for easier geometry creation this can often also be made by sorting the geometry object nodes up and down) and one with FEM entities hidden. Often I make a special selection list Hidden1 that I refer to in the "hide entities" list and then its easier to make parts appear and disappear. You might want to add several Hide entities, to distinguish domains from boundaries ...

Now when you measure fields, do not use the details of a sharp edge, what is the derivative of of the field along an edge ? tangentially it's possible to derive something, but perpendicular to the edge ?

Normally you should not really trust results , of derivative type, from anything else than domains and at best boundaries, provided your mesh is resolving correctly the gradients normal to the boundary.

My rule monitor only the 2 highest level of FEM entities (domains and boundaries) consider with great care any thing lower (edges points)


Edges heritage their values from the adjacent boundaries, as boundaries gets their values from local boundary physics and from the up/down domains etc (points from the intersecting edges, but what about the other directions ?)

--
Good luck
Ivar
Hi first a few tricks: when you add a view with "hide" make several view, one standard, one perhaps with Geometry Objects hidden (for easier geometry creation this can often also be made by sorting the geometry object nodes up and down) and one with FEM entities hidden. Often I make a special selection list Hidden1 that I refer to in the "hide entities" list and then its easier to make parts appear and disappear. You might want to add several Hide entities, to distinguish domains from boundaries ... Now when you measure fields, do not use the details of a sharp edge, what is the derivative of of the field along an edge ? tangentially it's possible to derive something, but perpendicular to the edge ? Normally you should not really trust results , of derivative type, from anything else than domains and at best boundaries, provided your mesh is resolving correctly the gradients normal to the boundary. My rule monitor only the 2 highest level of FEM entities (domains and boundaries) consider with great care any thing lower (edges points) Edges heritage their values from the adjacent boundaries, as boundaries gets their values from local boundary physics and from the up/down domains etc (points from the intersecting edges, but what about the other directions ?) -- Good luck Ivar

Kristian Lindberg-Poulsen

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago 2013年5月3日 GMT-4 06:53
Hi Ivar,

I'm glad i caught your attention. :) Thanks for the view tips. With regards to measuring the derivative of fields, I think I get your point. Instead, let us just compare the voltage potential field with the electric field. Regions with a high electric field should then correspond to a changing voltage potential field. The attached pdf. should make the issue very clear.

I have noted your rule of thumb about only believing results from domains and boundaries. The way I measure voltage drop output of my sensor is by integrating the electric field over a polyline (called Polyline 1 in the model) that I have placed across my sensor output within the air domain. When I calculated the integral of the electric field over this line (using edge probe - integral) I get the expected voltage drop of 0.1V as mentioned.

Best regards,
Kristian
Hi Ivar, I'm glad i caught your attention. :) Thanks for the view tips. With regards to measuring the derivative of fields, I think I get your point. Instead, let us just compare the voltage potential field with the electric field. Regions with a high electric field should then correspond to a changing voltage potential field. The attached pdf. should make the issue very clear. I have noted your rule of thumb about only believing results from domains and boundaries. The way I measure voltage drop output of my sensor is by integrating the electric field over a polyline (called Polyline 1 in the model) that I have placed across my sensor output within the air domain. When I calculated the integral of the electric field over this line (using edge probe - integral) I get the expected voltage drop of 0.1V as mentioned. Best regards, Kristian


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 2013年5月3日 GMT-4 11:09
Hi

what about integrating the average voltage on both ends (=boundaries) of your resistances, and taking the difference ?

--
Good luck
Ivar
Hi what about integrating the average voltage on both ends (=boundaries) of your resistances, and taking the difference ? -- Good luck Ivar

Kristian Lindberg-Poulsen

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago 2013年5月3日 GMT-4 14:16
I have now run simulations at 1kHz and 10Mhz with boundary probes measuring average voltage on each end of a resistor. At 1kHz the difference is 0.83V, and at 10Mhz, it is -0.024V... Meanwhile, integrating the electric field over the length of the resistor gives 0.1V at both 1kHz and 10Mhz. So this confirms the slice plots in the PDF I attached earlier.
I have marked the boundaries that i probed for the voltage measurement in the attached image.

Strange! And even if I made some mistake in the model, I don't see how that could make E field and V field not correspond... And to make things even weirder, the correct V field is actually appearing between terminal and ground, it just isn't dropping over the resistors!


I have now run simulations at 1kHz and 10Mhz with boundary probes measuring average voltage on each end of a resistor. At 1kHz the difference is 0.83V, and at 10Mhz, it is -0.024V... Meanwhile, integrating the electric field over the length of the resistor gives 0.1V at both 1kHz and 10Mhz. So this confirms the slice plots in the PDF I attached earlier. I have marked the boundaries that i probed for the voltage measurement in the attached image. Strange! And even if I made some mistake in the model, I don't see how that could make E field and V field not correspond... And to make things even weirder, the correct V field is actually appearing between terminal and ground, it just isn't dropping over the resistors!


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 2013年5月3日 GMT-4 15:38
Hi

but have you noticed, your voltages are complex values. So I'm not t all astonished that you get variable results. with MEF at 10 or 200 MHz you have excessive capacitative coupling, not to say resonators formed, so the voltage, current and phys information is not the one you obtain by simple current flow analysis.

Now any plot in COMSOL is only the real value of any complex variable, so you need to make several plots, with real() imag() or abs() and arg() operators to get the full image

--
Good luck
Ivar
Hi but have you noticed, your voltages are complex values. So I'm not t all astonished that you get variable results. with MEF at 10 or 200 MHz you have excessive capacitative coupling, not to say resonators formed, so the voltage, current and phys information is not the one you obtain by simple current flow analysis. Now any plot in COMSOL is only the real value of any complex variable, so you need to make several plots, with real() imag() or abs() and arg() operators to get the full image -- Good luck Ivar

Kristian Lindberg-Poulsen

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago 2013年5月3日 GMT-4 16:34
I have verified that the imaginary part of the fields is negligible, and the capacitive coupling is even moreso.

I have calculated a rough value for the capacitance using the parallel plate capacitor formula:


Even at 1GHz, this would give an impedance of 500 Ohm, ie. most of the current would still flow through the 10 parallel 1 Ohm resistors.

This is also confirmed by checking current flow in the resistors, and checking that negligible current, real or imaginary, flows through the air between terminal and ground.

And even still, if there was some capacitive or other effect that I didn't account for, that still wouldn't explain why the electric field does not agree with the voltage potential field, real or imaginary.

Thanks for your continued assistance in solving this mystery!

-Kristian
I have verified that the imaginary part of the fields is negligible, and the capacitive coupling is even moreso. I have calculated a rough value for the capacitance using the parallel plate capacitor formula: [math]C=\frac{\epsilon A}{d} \leftrightarrow C=\frac{\epsilon_0 (5.45mm \cdot 2.42mm)}{0.36mm} = 0.3 pF[/math] Even at 1GHz, this would give an impedance of 500 Ohm, ie. most of the current would still flow through the 10 parallel 1 Ohm resistors. This is also confirmed by checking current flow in the resistors, and checking that negligible current, real or imaginary, flows through the air between terminal and ground. And even still, [i] if [/i]there was some capacitive or other effect that I didn't account for, that still wouldn't explain why the electric field does not agree with the voltage potential field, real or imaginary. Thanks for your continued assistance in solving this mystery! -Kristian

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 2013年5月4日 GMT-4 03:13
Hi

I didnt check, but what C did your terminal calculations give?
The lumped port/terminals have default global variables attached to them such as capacitance, resistance, voltage current, admittance ...or any unique combination thereof (depends on physics)

Yesterday during my quick look at your model, it gave me the impression the comlex parts where larger (at 200MHz was it ?)

--
Good luck
Ivar
Hi I didnt check, but what C did your terminal calculations give? The lumped port/terminals have default global variables attached to them such as capacitance, resistance, voltage current, admittance ...or any unique combination thereof (depends on physics) Yesterday during my quick look at your model, it gave me the impression the comlex parts where larger (at 200MHz was it ?) -- Good luck Ivar

Kristian Lindberg-Poulsen

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago 2013年5月4日 GMT-4 05:14
As far as I know, mef only gives acces to the terminal complex impedance - see attached screenshot.
At 200MHz, i get Ω = 0.10303+0.21212i, suggesting that the circuit is predominantly inductive.

Rough inductance calculation based on simple vertically spaced tracks formula:



At 200Mhz, this gives:



Which corresponds well with the lumped port impedance from comsol.

(Edit: When I earlier mentioned that the imaginary component of the fields was negligible, I was referring to the results at 1MHz and 10Mhz, which still show the spurious V field as shown in the pdf.)
As far as I know, mef only gives acces to the terminal complex impedance - see attached screenshot. At 200MHz, i get Ω = 0.10303+0.21212i, suggesting that the circuit is predominantly inductive. Rough inductance calculation based on simple vertically spaced tracks formula: [math]L=\frac{\mu l h}{w} \leftrightarrow L=\frac{\mu_0 (2mm \cdot 0.36mm)}{5.45mm} = 166 pH[/math] At 200Mhz, this gives: [math] \Omega = 2 \pi f L i = 0.208i \Omega [/math] Which corresponds well with the lumped port impedance from comsol. (Edit: When I earlier mentioned that the imaginary component of the fields was negligible, I was referring to the results at 1MHz and 10Mhz, which still show the spurious V field as shown in the pdf.)


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 2013年5月4日 GMT-4 06:19
Hei

I suspected that you were referring to the lower frequencies, not sure what elso to add, mostly COMSOL results are as expected, but often its easier to check on rather simple models, and yours is already quite complex ,at least to trigger sufficient question that one might doubt if there is not another point one forget ;)

Thanks for the tip
--
Have fun COMSOLing
Ivar
Hei I suspected that you were referring to the lower frequencies, not sure what elso to add, mostly COMSOL results are as expected, but often its easier to check on rather simple models, and yours is already quite complex ,at least to trigger sufficient question that one might doubt if there is not another point one forget ;) Thanks for the tip -- Have fun COMSOLing Ivar

Kristian Lindberg-Poulsen

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago 2013年5月4日 GMT-4 06:22
Hej,

You are right, I should try to reproduce the discrepancy between V and E fields with a simpler model.. We will see, thanks for the help :)
Hej, You are right, I should try to reproduce the discrepancy between V and E fields with a simpler model.. We will see, thanks for the help :)

Kristian Lindberg-Poulsen

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago 2013年5月4日 GMT-4 19:33
And here we go!

I made a simplified geometry, and the discrepancy between V and E persists!

Check it out, the attached screenshot shows a comparison of the V field and E field at 500kHz, made by applying complementary filters to the slice plots of V and E.

Also attached is the cleared model, it took 5 mins to sweep four frequencies on my workstation, but that is because I made the mesh quite fine in order to accurately resolve the skin depth (I wanted to rule this out as a possible cause). You can just change to a fine physics derived mesh and it will run much quicker, with not much different results.

Looking forward to hearing what you think :)
And here we go! I made a simplified geometry, and the discrepancy between V and E persists! Check it out, the attached screenshot shows a comparison of the V field and E field at 500kHz, made by applying complementary filters to the slice plots of V and E. Also attached is the cleared model, it took 5 mins to sweep four frequencies on my workstation, but that is because I made the mesh quite fine in order to accurately resolve the skin depth (I wanted to rule this out as a possible cause). You can just change to a fine physics derived mesh and it will run much quicker, with not much different results. Looking forward to hearing what you think :)


Please login with a confirmed email address before reporting spam

Posted: 1 decade ago 2013年5月6日 GMT-4 05:38
Hello!

You should add "gauge fixing for A-field" to your Ampere's Law; only this will give you a correct potential calculation.
The E-field is already ok.

Ralf
Hello! You should add "gauge fixing for A-field" to your Ampere's Law; only this will give you a correct potential calculation. The E-field is already ok. Ralf


Kristian Lindberg-Poulsen

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago 2013年5月6日 GMT-4 07:28

Hello!

You should add "gauge fixing for A-field" to your Ampere's Law; only this will give you a correct potential calculation.
The E-field is already ok.

Ralf


Aha! That indeed seems to fix the issue! The simple model gives the correct result now, but when I add gauge fixing for A-field to my complex model, I get zero on diagonal convergence error... Are there any additional BC I need to add when using gauge fixing for A-field, or do you have any other idea how to get rid of the error? Finer mesh maybe? The model in question is attached.

Thanks,
Kristian
[QUOTE] Hello! You should add "gauge fixing for A-field" to your Ampere's Law; only this will give you a correct potential calculation. The E-field is already ok. Ralf [/QUOTE] Aha! That indeed seems to fix the issue! The simple model gives the correct result now, but when I add gauge fixing for A-field to my complex model, I get zero on diagonal convergence error... Are there any additional BC I need to add when using gauge fixing for A-field, or do you have any other idea how to get rid of the error? Finer mesh maybe? The model in question is attached. Thanks, Kristian


Please login with a confirmed email address before reporting spam

Posted: 1 decade ago 2013年5月6日 GMT-4 08:41
Hello!

Your problem is the polygon probe; if deactivated in Geometry, the simulation will run.
It is not well defined. You can use an existing boundary for probe...

Ralf
Hello! Your problem is the polygon probe; if deactivated in Geometry, the simulation will run. It is not well defined. You can use an existing boundary for probe... Ralf

Kristian Lindberg-Poulsen

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago 2013年5月6日 GMT-4 09:18
Awesome, many thanks Ralf!
Awesome, many thanks Ralf!

Kristian Lindberg-Poulsen

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago 2013年5月6日 GMT-4 09:36
It seems I was premature.. I still get the error after removing disabling the polygon.. Did you actually get it to start FGMRES iterative solver? I get the zero on diagonal crash before the iterative solver starts.
It seems I was premature.. I still get the error after removing disabling the polygon.. Did you actually get it to start FGMRES iterative solver? I get the zero on diagonal crash before the iterative solver starts.

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago 2013年5月7日 GMT-4 02:08
Hello!

I removed all solver configs and start with initial settings...

Ralf
Hello! I removed all solver configs and start with initial settings... Ralf


Kristian Lindberg-Poulsen

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago 2013年5月7日 GMT-4 10:00
Thank you, now it really works :)
Thank you, now it really works :)

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.