A CST EMS error when calculating the self and mutual inductance
Just for an experiment, I decided to test CST EM Studio (P/O Studio Suite) in calculating the self and mutual inductance of two concentric current loops.
Both coils were one turn, with a wire radius of 1 mm, and the radii are 15 cm and 14 cm, for coils 1 and 2, respectively. (The simulation DC current was 1 amp, but that shouldn't matter since there are no magnetic materials involved).
The resultant "Inductance Matix" [sic] was:
coil1 coil2
coil1 7.636746e-007 H -4.683707e-007 H
coil2 -4.683707e-007 H 7.081798e-007 H
The inductances seem too high (compared to the results of established empirical formulas) and the mutual inductance is a negative value.
I'm wondering, has anyone else ever experimented with a problem like this in EMS, and if so, did your results seem reasonable?
Hi jpsmith123,
I believe the negative value is O.K. It gives you information on the direction of the induced voltage and currents with respect to the defined direction. If you define a coil, you see some arrows. THis is the defined direction. If you rotate your coil by 180 deg, the inductance value will become positive. Concerning the accuracy: How large is you calculation domain and and what are the boundary conditions? Maybe you can post your structure here?
F.
Hello RFSimulator,
You're right that rotating one of the coils 180 degrees changed the sign of the mutual inductance. (I tried changing the current in one of the coils from 1A to -1A, and although the sign of the mutual inductance didn't change, the magnitude of both self and mutual inductance did).
Then I rotated one of the coils, and the new "inductance matrix" is:
coil1 coil2
coil1 8.531772e-007 H 4.550068e-007 H
coil2 4.550068e-007 H 7.889194e-007 H
Note that the mutual inductance is now represented as "positive" and the magnitudes of both self and mutual inductance have changed. (BTW, this is with "normal" background material, Ur = 1, open boundary conditions, and 10 cm added space all around).
Hi jpsmith123,
can you just posted the model here (ems + par file) along with the "theoretical" values? I guess i't a questionn of bioundary distance and mesh density...
F.
Hello RFSimulator,
In my first post, I mis-spoke. The CST calculated loop inductances were too low, rather than too high, compared with the values apparently calculated by way of "Grover's" formulas.
Physically, it's a very simple situation: There are two coplanar, coaxial, single turn current loops, an outer one, with a radius of 15 cm, and an inner one, with a radius of 14 cm. The radius of each wire is 0.1 cm. The background material is set to "normal" and there is 15 cm of space all around. The boundaries are set to "open".
Attached is the ems file.
According to the online calculator at http://emcsun.ece.umr.edu/new-induct/circular.html, the outer loop will have an inductance of 0.959 uH and the inner one will be 0.883 uH.
The formula I see in Grover's book "Inductance Calculations: Working Formulas and Tables", page 143, is apparently slightly different than the one used in the online calculator, and gives inductances of 1.00 and 0.927 uH for the outer and inner loop, respectively.
I couldn't find any online calculator for the mutual inductance in this case, but going by formulas on pages 77 and 81 of Grover's book, I calculate a mutual inductance of about 0.485 uH.
The closest I got to the numbers from the online calculator was:
coil1 coil2
coil1 9.552343e-007 H -4.772130e-007 H
coil2 -4.772130e-007 H 8.893302e-007 H
And this was using adaptive mesh refinement set for 8 passes (which maxed out) ending up with an extremely fine mesh and a I think over an hour of calculation time.
Also it seems that sometimes when using adaptive mesh refinement, the current, and the current "sense", affect the magnitudes of the inductances.
Hi jpsmith123,
I did a small study on this. First a change the distance to the boundaries. I noticed that the inductance changes by a few percent if you are two close with the boundary. Above a distance of 60 cm (slightly more then 1 coil diameter) the change is less then 1%.
Naturally, you also need a dense mesh around the coil. You either can use a adaptive mesh refinements or you can specify a dense mesh for the coils directly by selecting the coil-> right click -> mesh properties.
If final results I got looks something like this:
--------------------------------------------------
coil1 coil2
coil1 9.961911e-007 H 4.998664e-007 H
coil2 4.998664e-007 H 9.181479e-007 H
--------------------------------------------------
F.
Thanks for your efforts, RFSimulator. Would you mind uploading your .ems file here?
Regards,
jpsmith123
Sure,
can you open 2006B?
F,
I don't know, as I've never tried it before. Are you certain the files are incompatable? Maybe upload it and I'll try it? Thanks.
Regards,
jpsmith123
Hi!
I'm sure that this will not work. To open 2006B files, you need 2006B.. However, I guess it should be easy to do the changes in your model as well. Just add some space and refine the coil mesh...
You still can perform a mesh adaptation on the refined mesh. By using the template based post processing and extracting the mutual and self inductance (0D Results Template) you can see how the inductance changes with passes.
F.
Try changing the sense of one of the coils (rotate around axis by 180 degrees) and change the current in a coil and see what happens. When I do either I get a change in the values. Why should that happen?
For example here are the results of two runs (using energy based adaptive meshing) where the only difference was the sense of coil1 was reversed:
coil1 coil2
coil1 9.196908e-007 H 4.735007e-007 H
coil2 4.735007e-007 H 8.601034e-007 H
--------------------------------------------------
coil1 coil2
coil1 8.133470e-007 H -4.817907e-007 H
coil2 -4.817907e-007 H 7.605115e-007 H
Also in run#2, unlike the first run, I got a warning that the meshing had maxed out...6 passes were not enough after rotating the coil.
Regards,
jpsmith123
Hi..
maybe you rotate it slightly off center? Which version do you use...?
By the way: I also used symmetry planes. The strcture has 3 symmetry planes. This allows you to cut your number of mesh cells by a factor of 8!
F.
No, I did not move coil1 off-center, I merely rotated it 180 degrees about its axis. Did you try it yourself? Please do, if you haven't already.
Also, did you try changing the current in one or both of the coils?
The most drastic case is when I set the current at 0 amps for both coils; the inductance matrix thereupon changes from this:
--------------------------------------------------
coil1 coil2
coil1 9.123984e-007 H 4.728639e-007 H
coil2 4.728639e-007 H 8.595373e-007 H
--------------------------------------------------
to this:
--------------------------------------------------
coil1 coil2
coil1 7.283716e-007 H 4.857361e-007 H
coil2 4.857361e-007 H 6.559887e-007 H
--------------------------------------------------
I don't quite understand what's going on here. Are there any constraints on the current value used in order to calculate the inductance matrix? (I got no warnings or error messages of any kind).
In any case, so far I've experimented with two different magnetostatic simulations, and, as far as I'm concerned, the software has botched both.
(BTW I'm using SP7).
Hi,
I started your project again in 2006 SP7. Attached please find some models and some results. I changed your initial model accordingly to my previous suggestions.
In first picture shows the self inductance of coil1 over some passes. As you can see, my basic mesh - I used some mesh refinement of the coil - gives already good results. Your initial mesh was extremely coarse! With your settings both coils have been in single mesh line! In this settings, you wold indeed need many adaptive passes. to get better results. You should always have a quick look a the mesh before you run a simulation to check if the mesh look somewhat reasonable.
I did run a adaptive mesh refinement on my start mesh - I forced three passes- and I see a slight change in the inductance.
The second plot shows the inductance vs. the excitation current. In this case, I did not use any adaptive mesh refinement but I just used my basic mesh. The inductance value is const. as expected.
Since you have 2006 I guess you should be able to contact CST support. I'm sure they can help you to improve your basic settings of your models
F.
Thanks for your thoughts, RFSimulator.
Before I even posted here, I tried different several different mesh densities and adaptive meshing. I tried adding different amounts of space, I tried using symmetry planes, and, as far as I was concerned, nothing I tried gave me satisfactory results.
Thus when I posted the ems file here (with default mesh, I think), it was mainly for your convenience of not having to draw the geometry, not because I was suggesting a coarse mesh.
Anyway, I'm running your model now and it looks like it may literally take all day to run. Your mesh is incredibly dense. I can say I would never have let it get that crazy.
Can I ask you, did you try rotating a coil or using zero amps?
Regards,
jpsmith123
Hi,
yes, I did use 0 Amps one of the coils-- The resutls did not change when I used my initial mesh. Maybe this is the reason. The Mesh adaptation is "energy based". If you have 0 excitation there in no reason for the program to refine the mesh′in this region.
For the first adaptive pass with my basic mesh (1 000 000 cells), the calculation time is somewhat like 10 min on my computer (see log file bellow). My computer is about 1 year old and NOT the latest generation. Using one of the modern computers (Core Duo) the calculation time should even go down?!
F.
--------------------------------------------------------------------------------
Solver Statistics:
Number of meshcells: 1015591
Mesh generation time: 119 s
Solver time: 486 s
------------
Total time: 605 s
----------------------------------------------------------------------------
Peak memory used (kB) Free physical memory (kB)
Physical Virtual At begin Minimum
----------------------------------------------------------------------------
Matrices calc. 187148 181624 1887456 1728608
Solver run total 4524 1688 2281552 2281552
----------------------------------------------------------------------------
--------------------------------------------------------------------------------
PS:
Hi
Parameter "Rotate"...
I rotated the outer coil by 0,45,90,135,180 deg.. I used a somewhat coarse mesh but no mesh adaptation. Below see the mutual inductance...
As expected, the values exactly are symmetric and the mutual inductance is 0 if the coils are perpendicular to each other..
F.