Questions about the plane of rotational periodic symmetry
******************* This email 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 https://spam.ic.ac.uk/SpamConsole/Senders.aspx 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.
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<https://spam.ic.ac.uk/SpamConsole/Senders.aspx> 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.
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.
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 <https://www.pw.edu.pl/engpw> 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 <https://spam.ic.ac.uk/SpamConsole/Senders.aspx> 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
Hi Yaguang, The issue is quite specific to the exact mesh you create, not only the geometry. 1. Did you manage to create a periodic mesh in Gmsh as Guglielmo suggested? Tests you can check that: * N-elements of surf1 and surf2 composites are the same * [xyz] location of centroids/vertices should be the same if you try to transform the x,y,z coordinate system to x1,y1,z1 with the PI rotation. (This is important!) 1. What types of elements do you use in the mesh? 2. Once you make sure the previous conditions are passed, does PerAlign still gives you the issue with abstol and orient flags on? If this is still the case, we can try to arrange a short chat at some point in the next week. Kind Regards, Kaloyan PS: I am copying the email from the previous thread, so everyone is up to date as well. ---------------------------------Previous Thread - -------------------- Hi Yaguang, Thank you for getting in touch. Unfortunately, I cannot open the files due to an email firewall, but I should be able to help. There are several possible reasons you might be experiencing this issue: 1. Surfaces/Composites - 5,6 need to be the matching exactly - number of faces, location [x,y,z] of the vertices and centroids of the faces. - This is related to the way you generate your mesh and the periodicity usually needs to be specifically enforced. 2. Machine precision tolerances in some of the elements in the original : - Recommend adding abstol=tolValue NekMesh -m peralign:surf1=5:surf2=6:dir=z:rot=PI/6:abstol=1e-6 test.xml test_align.xml 3. Type of elements used - if you have prisms or tets in the mesh: - Need to add the orient flag NekMesh -m peralign:surf1=5:surf2=6:dir=z:rot=PI/6:abstol=1e-6:orient test.xml test_align.xml I think this should help. If it does not, could you please let us a bit more details about how you generated the mesh, type of elements, etc? Kind Regards, Kaloyan Kirilov  KS ________________________________ 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: Monday, April 15, 2024 12:38 PM To: nektar-users <nektar-users@imperial.ac.uk> Subject: 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: [cid:part1.UTeJxIRp.1lO0oLxo@pw.edu.pl] 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 [cid:part2.IxZynoZi.gVDTpc5E@pw.edu.pl]<https://www.pw.edu.pl/engpw> 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><mailto:guglielmo.vivarelli12@imperial.ac.uk> 发送时间:2024-04-14 19:30:07 (星期日) 收件人: "谢亚广" <xieyaguang@iet.cn><mailto:xieyaguang@iet.cn>, nektar-users <nektar-users@imperial.ac.uk><mailto: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<mailto:nektar-users-bounces@imperial.ac.uk> <nektar-users-bounces@imperial.ac.uk><mailto:nektar-users-bounces@imperial.ac.uk> on behalf of 谢亚广 <xieyaguang@iet.cn><mailto:xieyaguang@iet.cn> Sent: 13 April 2024 05:00 To: nektar-users <nektar-users@imperial.ac.uk><mailto:nektar-users@imperial.ac.uk> Subject: [Nektar-users] Questions about the plane of rotational periodic symmetry This email from xieyaguang@iet.cn<mailto: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<https://spam.ic.ac.uk/SpamConsole/Senders.aspx> 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<mailto:Nektar-users@imperial.ac.uk> https://mailman.ic.ac.uk/mailman/listinfo/nektar-users
Hi kaloyan and guglielmo, Thank you very much for your guidance. Previously, I was unaware that defining periodicity explicitly in Gmsh was necessary. My approach was limited to ensuring symmetry by merely aligning the mesh nodes of corresponding parts or utilizing commands for rotational extrusion. Moving forward, I plan to attempt the creation of a periodic mesh in Gmsh as Guglielmo suggested. Should there be any significant developments or results, I will inform you promptly. Thank you for your attention and support. Best regards, Yaguang. -----原始邮件----- 发件人:"Kirilov, Kaloyan S" <kaloyan.kirilov19@imperial.ac.uk> 发送时间:2024-04-15 19:17:42 (星期一) 收件人: "Stanisław Gepner" <stanislaw.gepner@pw.edu.pl>, nektar-users <nektar-users@imperial.ac.uk> 抄送: 主题: Re: [Nektar-users] Questions about the plane of rotational periodic symmetry Hi Yaguang, The issue is quite specific to the exact mesh you create, not only the geometry. Did you manage to create a periodic mesh in Gmsh as Guglielmo suggested? Tests you can check that: N-elements of surf1 and surf2 composites are the same [xyz] location of centroids/vertices should be the same if you try to transform the x,y,z coordinate system to x1,y1,z1 with the PI rotation. (This is important!) What types of elements do you use in the mesh? Once you make sure the previous conditions are passed, does PerAlign still gives you the issue with abstol and orient flags on? If this is still the case, we can try to arrange a short chat at some point in the next week. Kind Regards, Kaloyan PS: I am copying the email from the previous thread, so everyone is up to date as well. ---------------------------------Previous Thread - -------------------- Hi Yaguang, Thank you for getting in touch. Unfortunately, I cannot open the files due to an email firewall, but I should be able to help. There are several possible reasons you might be experiencing this issue: Surfaces/Composites - 5,6 need to be the matching exactly - number of faces, location [x,y,z] of the vertices and centroids of the faces. - This is related to the way you generate your mesh and the periodicity usually needs to be specifically enforced. Machine precision tolerances in some of the elements in the original : - Recommend adding abstol=tolValue NekMesh -m peralign:surf1=5:surf2=6:dir=z:rot=PI/6:abstol=1e-6 test.xml test_align.xml Type of elements used - if you have prisms or tets in the mesh: - Need to add the orient flag NekMesh -m peralign:surf1=5:surf2=6:dir=z:rot=PI/6:abstol=1e-6:orient test.xml test_align.xml I think this should help. If it does not, could you please let us a bit more details about how you generated the mesh, type of elements, etc? Kind Regards, Kaloyan Kirilov  KS 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: Monday, April 15, 2024 12:38 PM To: nektar-users <nektar-users@imperial.ac.uk> Subject: 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.ukhttps://mailman.ic.ac.uk/mailman/listinfo/nektar-users
participants (4)
- 
                
                Kirilov, Kaloyan S
- 
                
                Stanisław Gepner
- 
                
                Vivarelli, Guglielmo A
- 
                
                谢亚广