Cylindrical Coordinate System

How to use openEMS. Discussion on examples, tutorials etc

Moderator: thorsten

Post Reply
panama007
Posts: 1
Joined: Sat 18 Mar 2017, 03:38

Cylindrical Coordinate System

Post by panama007 » Mon 20 Mar 2017, 22:48

Hi all, I've been using openEMS for about a month now to simulate circular patch antennas, and it's been going pretty well. I've been using a Cartesian coordinate system with a symmetric X/Y mesh. In the process of fine tuning, I noticed a very small change in my patch radius (~0.1%) caused a rather large change in my S11 (frequency peak moved ~5%). I figured this had to do possibly with the radius crossing a mesh boundary. This made me decide to move to cylindrical coordinates, especially since my patch, ground plane, and PCB were all cylinders, allowing me to place mesh lines at the radii of each. I tried changing my antenna from Cartesian to cylindrical, but my results aren't matching.

Are there any known issues with the cylindrical coordinate system in openEMS? Can I still use lumped ports/elements? I noticed neither of the tutorials dealing with cylindrical coordinates used them. Does AddCylinder still make cylinders, or is it now some weird transformed shape? Do you guys have any suggestions for the mesh? When using Cartesian I was using a lumped port with non-zero thickness (7mm x 7mm x height), and had X/Y mesh lines going through the middle, and Z mesh lines at the top and bottom. I'm wondering if I should continue doing the same in cylindrical coordinates.

Thanks!

thorsten
Posts: 1438
Joined: Mon 27 Jun 2011, 12:26

Re: Cylindrical Coordinate System

Post by thorsten » Tue 21 Mar 2017, 07:56

Using the cylindrical mesh is fine. But it is more difficult than the Cartesian mesh. I highly recommend to read my paper on this topic.
Especially regarding the special mesh situations (like the full cylindrical grid) and why you may need subgrids.

Everything has to be defined in cylindrical coordinates of course. But the only primitive that changes its shape is the box, it will become of cylindrical shape too, e.g. like a part of a cylinder mantel.

I recommend you study the bent patch antenna tutorial: http://openems.de/index.php/Tutorial:_B ... ch_Antenna

regards
Thorsten

Philipp
Posts: 1
Joined: Mon 03 Jul 2017, 16:14

Re: Cylindrical Coordinate System

Post by Philipp » Mon 03 Jul 2017, 17:44

Dear Thorsten,

could you please comment a bit more on the cylinder coordinates e.g.:
- should primitives be defined in the [-pi;pi] or [0 2pi] range or does it wrap around?
- PML and MUR seem to be limited with cylinder coordinates (your examples only use PML for r_max and PEC elsewhere)
- is the (must give) boundary condition automatically turned off for 2*pi problem definitions (what's the threshold?)
- subgrids only seem reasonable when going to the radial singularity 0 right?

Thanks
Philipp

thorsten
Posts: 1438
Joined: Mon 27 Jun 2011, 12:26

Re: Cylindrical Coordinate System

Post by thorsten » Mon 03 Jul 2017, 18:40

- should primitives be defined in the [-pi;pi] or [0 2pi] range or does it wrap around?
It should not matter at all. You could even go from 4*pi to 6*pi or anything else.
- PML and MUR seem to be limited with cylinder coordinates (your examples only use PML for r_max and PEC elsewhere)
No, all BC work in all directions. But you should not / cannot use any BC other then PEC for r_min if you include r==0 and/or a for a_min, a_max for a closed mesh (alpha/phi spanning over full 2*pi).
E.g. this tutorial uses MUR in all directions: Bent_Patch_Antenna
- is the (must give) boundary condition automatically turned off for 2*pi problem definitions (what's the threshold?)
Just use PEC in a_min/a_max if you use a closed mesh (alpha/phi spanning over full 2*pi) otherwise you will get a warning. I'm not sure what the threshold is but that should not be an issue?
Just make sure that mesh.a[end] = mesh.a[1]+2*pi
- subgrids only seem reasonable when going to the radial singularity 0 right?
They make the most sense for this cases yes. But if your mesh is very large in radial direction it may make sense sooner...

regards
Thorsten

frankst
Posts: 32
Joined: Thu 21 Jul 2016, 11:36

Re: Cylindrical Coordinate System

Post by frankst » Tue 04 Jul 2017, 09:00

Hi all,
- should primitives be defined in the [-pi;pi] or [0 2pi] range or does it wrap around?

It should not matter at all. You could even go from 4*pi to 6*pi or anything else.
Using Cartesian coordinates, I have seen cases where this did matter.
Adding elements with AddRotPoly or AddBox (with "CoordSystem",1) and using [-pi pi] would almost but not fully close the element, whereas [0 2*pi] did.
Since I did not find time to investigate, I ended up using [0 2.01*pi].

Cheers
Frank

Post Reply