Hi Guglielmo, Yaguang,
This could very well be the case.
The one time I was generating meshes with periodically rotated
boundary conditions I observed that the way it is implemented (at
least at the time) in NekMesh was to manipulate vertex coordinates
with trigonometric functions. For anything but zero rotation I was
unable to get the peralign to work. That is vertex positions when
rotated would never mach exactly, so tolerance was my blessing. I
am not exactly sure how it is handled by NekMesh nowadays. I
understand that the information on periodicity is somehow
interpreted by NekMesh?
Hi Yaguang and Stanisław,
I think the reason why you are getting no errors when you set the tolerance is probably becausein the geo file Yaguang is using the same transfinite nodal distribution on each side so thenodes have a degree of matching but not the exact matching you would get by enforcingperiodicity. If you enforce periodicity in GMSH you will probably not need to enforce anytolerances.
Best regards,
Guglielmo
From: nektar-users-bounces@imperial.ac.uk <nektar-users-bounces@imperial.ac.uk> on behalf of Stanisław Gepner <stanislaw.gepner@pw.edu.pl>
Sent: 16 April 2024 11:04
To: 谢亚广 <xieyaguang@iet.cn>; nektar-users <nektar-users@imperial.ac.uk>
Subject: Re: [Nektar-users] Questions about the plane of rotational periodic symmetryHi Yaguang,
I have just tried with the gmsh code you provided in one of your earlier messages. I did nothing special, just put it in a .geo file and run gmsh on it, than NekMesh. Here is the resulting files and output I have been shown by NekMesh.
So at least the peralign process was run and did not complain. Just a note, without the abstol option I got the usual: [ProcessPerAlign] WARNING: Could not find matching edge for surface element 0. Skipping periodic alignment.
So I am not sure what could be the issue.
Best regards,
Stanisław Gepner, Ph.D.
Faculty of Power and Aeronautical Engineering
Nowowiejska 21/25 Str.
00-665 Warsaw, Poland
phone +48 (22) 234 51 70
On 16.04.2024 03:50, 谢亚广 wrote:
Hi Stanisław,
Thank you for your help. I have tried adding abstol=1e-8 to the command, but it seems there was no change, which may indicate a problem with how I am creating the rotational periodic mesh in Gmsh.
If you have successfully used a rotational periodic mesh and have example files like .geo, .msh, and the mesh's .xml files, could you please share them? This would help me quickly identify and resolve the issues.
Thank you once again.
Yaguang.
-----原始邮件-----
发件人:"Stanisław Gepner" <stanislaw.gepner@pw.edu.pl>
发送时间:2024-04-15 15:11:26 (星期一)
收件人: "谢亚广" <xieyaguang@iet.cn>
抄送:
主题: Re: [Nektar-users] Questions about the plane of rotational periodic symmetry
Hi Yaguang,
Try with the abstol=1e-8 parameter for the paralign module:
-m peralign:surf1=2:surf2=3:rot=PI:dir=z:abstol=1e-8
For me this makes the difference:
![]()
You can find about the options for the module by running it with -p proc:<module name>. In the case of paralign:
NekMesh -p proc:peralign
I am not sure it is listed in the user guide?
Best regards,
Stanisław Gepner, Ph.D.
Faculty of Power and Aeronautical Engineering
Nowowiejska 21/25 Str.
00-665 Warsaw, Poland
phone +48 (22) 234 51 70
On 14.04.2024 13:54, 谢亚广 wrote:
Hello Kaloyan Kirilov,
I want to start by using GMSH to NEKTAR, and then use the peralign module in Nekmesh to align p1 and p2 for rotational periodicity. To pinpoint the problem, I have simplified the mesh to its most basic test state. However, no matter what I try, I am unable to achieve the aforementioned requirements using NekMesh -m peralign; it always results in errors.
Assuming thi .geo file corresponds to a 2D mesh named test.msh, my operations are as follows:
NekMesh test.msh test.xml:xml:uncompress
NekMesh -m peralign:surf1=5:surf2=6:dir=z:rot=PI/6 test.xml test_p.xml
Subsequently, an error occurs:
[ProcessPerAlign] WARNING: Could not find matching edge for surface element 3. Skipping periodic alignment.
I hope I have made myself clear.
Thank you for your assistance.
Best regards,
Yaguang.
-----原始邮件-----
发件人:"Vivarelli, Guglielmo A" <guglielmo.vivarelli12@imperial.ac.uk>
发送时间:2024-04-14 19:30:07 (星期日)
收件人: "谢亚广" <xieyaguang@iet.cn>, nektar-users <nektar-users@imperial.ac.uk>
抄送:
主题: Re: [Nektar-users] Questions about the plane of rotational periodic symmetry
Hi Yaguang,
I am not too sure of what you are trying to do, do you just want the two curves to match periodically and then convert the mesh from GMSH to Nektar?If you give me a little more info I may be able to help you.
All the best,
Guglielmo
From: nektar-users-bounces@imperial.ac.uk <nektar-users-bounces@imperial.ac.uk> on behalf of 谢亚广 <xieyaguang@iet.cn>
Sent: 13 April 2024 05:00
To: nektar-users <nektar-users@imperial.ac.uk>
Subject: [Nektar-users] Questions about the plane of rotational periodic symmetry
This email from xieyaguang@iet.cn originates from outside Imperial. Do not click on links and attachments unless you recognise the sender. If you trust the sender, add them to your safe senders list to disable email stamping for this address.
Hello Kaloyan Kirilov,
Thank you very much for providing those solutions. Unfortunately, I am still encountering the same error. I generated the mesh using gmsh, and for testing purposes, I simplified the mesh to the most basic case. Here is the content of the .geo file:
SetFactory("OpenCASCADE");
Circle(1) = {0, 0, 0, 4, 0, Pi/6};
Circle(2) = {0, 0, 0, 14, 0, Pi/6};
Line(3) = {2, 4};
Line(4) = {1, 3};
Curve Loop(1) = {3, -2, -4, 1};
Plane Surface(1) = {1};
Transfinite Curve {3, 4} = 3 Using Progression 1.1;
Transfinite Curve {1, 2} = 3 Using Progression 1;
Transfinite Surface {1};
Recombine Surface {1};//+
Physical Curve("p1", 5) = {3};
Physical Curve("p2", 6) = {4};
Physical Curve("up", 7) = {1};
Physical Curve("up2", 8) = {2};
Physical Surface("plane", 9) = {1};In this file, I want "p1" and "p2" to represent the periodic boundaries for rotation.
Thank you once again for your guidance.
Best regards,
Yaguang.
_______________________________________________ Nektar-users mailing list Nektar-users@imperial.ac.uk https://mailman.ic.ac.uk/mailman/listinfo/nektar-users