Nek5000 / Nek5000

our classic
https://nek5000.mcs.anl.gov/
Other
384 stars 243 forks source link

Exo2Nek Sideset issue #502

Closed yukkiezy closed 5 years ago

yukkiezy commented 6 years ago

The sideset definition of exodus file from ICEM is not recognized in Exo2Nek. Exo2nek will assign sideset number again by itself regardless of the set up in ICEM. I guess it may has something to do with the key word in ICEM for sideset is SDSET which is different from what' defined in Exo2Nek.

stgeke commented 6 years ago

Can you please attach an example file generate with ICEM.

On 7 Jun 2018, at 11:13, yukkiezy <notifications@github.com mailto:notifications@github.com > wrote:

The sideset definition of exodus file from ICEM is not recognized in Exo2Nek. Exo2nek will assign sideset number again by itself regardless of the set up in ICEM. I guess it may has something to do with the key word in ICEM for sideset is SDSET which is different from what' defined in Exo2Nek.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub, or mute the thread.

yukkiezy commented 6 years ago

sidesets.zip I attached a Hex20 exodus mesh file from ICEM for a tube. The sideset number defined in ICEM is 100 200 and 300 for inlet outlet and wall. It become 2 3 4 in Exo2nek. Please let me know if more information is needed.

yhaomin2007 commented 6 years ago

Hi, Yukkeizy,

there is some problem with current exo2nek recognize ICEM exo file sideset ID. exo2nek will assign your sideset to 2,3,4.... according to the time sequence you created sideset in ICEM boundary setting.

but exo2nek could recognize sideset ID correctly if your exo file is exported from CUBIT. There must be some format difference between exo files exported from ICEM and CUBIT.

However, unfortunately we could access to ICEM source code to figure this out.

yukkiezy commented 6 years ago

Kirk, I think you jump to the conclusion on exo2nek will assign your sideset according to the time sequence you created sideset in ICEM too soon. That's not right based on my test. Yiqi

ggiannako commented 6 years ago

Converting your binary sidesets.exo to ascii using ncdump shows that indeed the sideset IDs defined are 2, 3, 4 (see attachment). This suggests that something goes wrong when exporting from ICEM. It is hard to believe that ICEM does not comply with the exodusII standard, are you sure you are performing the sideset definition/export step properly? (just a thought, not an ICEM expert)

sidesets_ascii.tar.gz

stgeke commented 6 years ago

Are the IDs (exported by exonek) totally different or just shifted?

yhaomin2007 commented 6 years ago

exo file exported from ICEM has totally different sideset number. No matter what sideset number (1,2,3,4 or 1,4,3,2 or 4,2,3,1 ) you set in ICEM, cubit/exo2nek cannot read correctly. if you open one of the ICEM files *.fbc, you will see a sequence of all your sidesets you set in ICEM. cubit/exo2nek will assign sideset 2,3,4... according to that sequence.

yukkiezy commented 6 years ago

The IDS is total different. So I think there could be two possibility:

  1. ncdump miss recognize the sideset ID from ICEM exported exodus,too. If that is the case, we still can do something on exo2nek side to solve this.
  2. ICEM exported exodus actually does not contain any ID information assigned in ICEM. If that is the case, we can do nothing but inform ANSYS to fix their mesh output bugs.
ggiannako commented 6 years ago

Again, it is not a matter of the exo2nek conversion, the exodus file itself does not have the sideset IDs specified in ICEM (i.e. it contains IDs 2, 3, 4 instead of 100, 200, 300).

ncdump is part of the netCDF library and has nothing to do with exo2nek, it just converts the binary exodus to ascii.

How can exo2nek know the intended sideset IDs in ICEM if no information is passed to the exodus file?

yhaomin2007 commented 6 years ago

We have a workaround to use exo file exported from ICEM. I think it is not worthwhile to waste more time on this. We could not change the source code of ICEM.

yhaomin2007 commented 6 years ago

However, it is good to add a note to exo2nek page to explain how to use exo2nek for ICEM exported exo file.

stgeke commented 6 years ago

What's the workaround?

-----Original message-----

From:hyuan notifications@github.com Sent: Wednesday 13th June 2018 17:43 To: Nek5000/Nek5000 Nek5000@noreply.github.com Cc: Stefan K. stgeke@gmail.com; Comment comment@noreply.github.com Subject: Re: [Nek5000/Nek5000] Exo2Nek Sideset issue (#502)

We have a workaround to use exo file exported from ICEM. I think it is not worthwhile to waste more time on this. We could not change the source code of ICEM. — You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/Nek5000/Nek5000/issues/502#issuecomment-396985318, or mute the thread https://github.com/notifications/unsubscribe-auth/ARumf0SLs7Jrn9eWOOrbE7t46nr0KaiFks5t8TMqgaJpZM4Uetgw.

yhaomin2007 commented 6 years ago

if you open one of the ICEM files *.fbc, you will see a sequence of all your sidesets you set in ICEM. cubit/exo2nek will assign sideset 2,3,4... according to that sequence.

yukkiezy commented 6 years ago

I think we are done with this issue for now. Just put some instruction on ICEM mesh exporting will work for release. .I will submit another issue on slow conversion with exo2nek for larger case as soon as I finished some test myself.

stgeke commented 6 years ago

Can we detect somehow that the exo file was exported from ICEM and read the fbc file. Just want to make it eady for the user. Other ideas are welcome!

stgeke commented 5 years ago

Prefered way for ICEM is to use the new cgns2nek converter.

sethjdana commented 1 year ago

How do we use cgns2nek converter?

Zhonglu commented 4 months ago

So I was using Ansys 2021 R1, ICEM, to do the exodus mesh. I guess I found a new bug that when I was having linear hybrid tetra + wedge mesh, the sideset ID starts to count from 3, 4, 5 ... rather than from 2, 3, 4 for the pure tetra mesh. I checked the source code that it is not an issue from exo2nek, but probably a matter of ICEM, since the official library of exodus is unlikely to be wrong. Again, I just feel strange. Will anyone recommend CUBIT above ICEM??

Zhonglu commented 4 months ago

Also, it seems ICEM cannot handle quadratic tetra10 + wedge15 mesh, causing an output error: a7d746a72c559c32b88315faaff9cdd

Wondering if there is any solution for that?

yukkiezy commented 4 months ago

I think your observation may be right. There exists a bunch of bugs in ICEM. I would recommend to use. Fluent mesh tool over ICEM. For case that is simple, I would recommend cubit to make a script.

Get Outlook for iOShttps://aka.ms/o0ukef


From: ZL @.> Sent: Friday, June 21, 2024 12:28:22 PM To: Nek5000/Nek5000 @.> Cc: Yu, Yiqi @.>; Author @.> Subject: Re: [Nek5000/Nek5000] Exo2Nek Sideset issue (#502)

Also, it seems ICEM cannot handle quadratic tetra10 + wedge15 mesh, causing an output error: a7d746a72c559c32b88315faaff9cdd. png (view on web) Wondering if there is any solution for that? — Reply to this email directly, view it on GitHub, ZjQcmQRYFpfptBannerStart This Message Is From an External Sender This message came from outside your organization.

ZjQcmQRYFpfptBannerEnd

Also, it seems ICEM cannot handle quadratic tetra10 + wedge15 mesh, causing an output error: a7d746a72c559c32b88315faaff9cdd.png (view on web)https://urldefense.us/v3/__https://github.com/Nek5000/Nek5000/assets/19511356/ae776ceb-7cba-45a8-a463-ef3c000d43a2__;!!G_uCfscf7eWS!dmDtxCuJNkEY5Ob2Ggn1zV2jR2Ycpb0HnhNTn9ASaVgU5d5Jh5tSNQe20q5ltwSvjHQLSUfyK5t_uGjiWzXvNQ$

Wondering if there is any solution for that?

— Reply to this email directly, view it on GitHubhttps://urldefense.us/v3/__https://github.com/Nek5000/Nek5000/issues/502*issuecomment-2183156132__;Iw!!G_uCfscf7eWS!dmDtxCuJNkEY5Ob2Ggn1zV2jR2Ycpb0HnhNTn9ASaVgU5d5Jh5tSNQe20q5ltwSvjHQLSUfyK5t_uGgYFxeYTA$, or unsubscribehttps://urldefense.us/v3/__https://github.com/notifications/unsubscribe-auth/AJROJSCOWK5NVJXJVJICDVTZIRPDNAVCNFSM6AAAAABJWNZ7L6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCOBTGE2TMMJTGI__;!!G_uCfscf7eWS!dmDtxCuJNkEY5Ob2Ggn1zV2jR2Ycpb0HnhNTn9ASaVgU5d5Jh5tSNQe20q5ltwSvjHQLSUfyK5t_uGjL2WcjnQ$. You are receiving this because you authored the thread.Message ID: @.***>

yhaomin2007 commented 4 months ago

In ICEM you cannot assign sidesets number directly. But you can trace the order of sideset from the .fbc file.

yhaomin2007 commented 4 months ago

Also, it seems ICEM cannot handle quadratic tetra10 + wedge15 mesh, causing an output error: a7d746a72c559c32b88315faaff9cdd

Wondering if there is any solution for that? My ICEM (2021 R1) works fine with tet10 and wed15 meshes. But ICEM does have errors for exodus exporting if you do mirror operation on an existing tet10 and wed15 hybrid meshes.

Zhonglu commented 4 months ago

Also, it seems ICEM cannot handle quadratic tetra10 + wedge15 mesh, causing an output error: a7d746a72c559c32b88315faaff9cdd

Wondering if there is any solution for that?

Update: for this quadratic hybrid issue, I updated from ICEM 2021R1 to 2024R1, and this export error is no longer found, though I have not tested it further in nek. So it was a bug XD

Zhonglu commented 4 months ago

I think your observation may be right. There exists a bunch of bugs in ICEM. I would recommend to use. Fluent mesh tool over ICEM. For case that is simple, I would recommend cubit to make a script.

thx. I will probably try both fluent mesh and cubit. I also see some people got unstruct mesh by Ansys Mesh, being a bit confused which one to use.