manifold for multiple circles on 2D plane

23 views
Skip to first unread message

Weixiong Zheng

unread,
Apr 3, 2018, 9:07:20 AM4/3/18
to deal.II User Group
Hi

I dealt with problem in both 2d and 3d that a domain with a lot of circles/cylinders along z-axis.

In 3D, I use CylindricalManifold<3> with axis=2 for the fold type. Yet, I just realize being stuck in 2D that axis=2 is not available for CylindricalManifold<2> ( 0 or 1 cannot give me the z-oriented cylinder ).

Any idea how to deal with 2D case?

Thanks in advance, Weixiong

Daniel Arndt

unread,
Apr 3, 2018, 11:55:47 AM4/3/18
to deal.II User Group
Weixiong,

[...]

In 3D, I use CylindricalManifold<3> with axis=2 for the fold type. Yet, I just realize being stuck in 2D that axis=2 is not available for CylindricalManifold<2> ( 0 or 1 cannot give me the z-oriented cylinder ).
What is it you are trying to achieve? We identify the first space direction with the x-axis and the second one with the y-axis. Since there is no third direction in 2D, there is no z-axis and directio is restricted to be 0 or 1.
How do you define yor 2D-coordinate system?

Best,
Daniel

Weixiong Zheng

unread,
Apr 3, 2018, 12:30:09 PM4/3/18
to deal.II User Group
The initial description might be misleading. What I tried to do is repeatedly set manifolds for circles on X-Y plane. Now I use STL container to contain different pointers of SphericalManifold instance and correspondingly assign distinct manifold ids, it worked out. But it might be a non-smart way. See the attachment for a small demo of the geometry I created based on the idea.

Thanks for you reply.

在 2018年4月3日星期二 UTC-7上午8:55:47,Daniel Arndt写道:
Screenshot 2018-04-03 09.26.23.png

Daniel Arndt

unread,
Apr 3, 2018, 5:37:33 PM4/3/18
to deal.II User Group
Weixiong, 

The initial description might be misleading. What I tried to do is repeatedly set manifolds for circles on X-Y plane. Now I use STL container to contain different pointers of SphericalManifold instance and correspondingly assign distinct manifold ids, it worked out. But it might be a non-smart way. See the attachment for a small demo of the geometry I created based on the idea.
"This function will throw a compile time exception whenever spacedim is not equal to three."
Hence, you are clearly doing the right thing by using SphericalManifold instead.

Best,
Daniel

Weixiong Zheng

unread,
Apr 3, 2018, 7:28:54 PM4/3/18
to deal.II User Group
Daniel,

Thanks for confirming this.

Yep, I read that after getting error. Also, I was wrong that 3D can be done in the way I thought before. Actually the same thing has to be done as 2D for repeated manifolds except we use cylinders along different axes with the same direction.

Best, Weixiong

在 2018年4月3日星期二 UTC-7下午2:37:33,Daniel Arndt写道:
Reply all
Reply to author
Forward
0 new messages