Transient acoustic problem with large number of elements

Numerical methods and mathematical models of Elmer
Post Reply
Schwarz2012
Posts: 5
Joined: 09 Nov 2023, 08:43
Antispam: Yes

Transient acoustic problem with large number of elements

Post by Schwarz2012 »

Hi everyone.
I have a task and I don't know how to start.
The general view of the problem: “A large room with a work-unit inside that produces a lot of noise. Frequency up to 3.5 kHz. Need to study the propagation of acoustic waves inside this room”
The main problem is that the computational domain is so large that it can include 200-300 thousand elements.
At the moment, I am studying the possibility of using Open Source packages. Elmer attracted me because there is a good example stationary Helmholtz model using, but there is very little information on transient models.
Can Elmer solve a problem of this size?
Do I understand correctly that for such a task I can use the “Large-amplitude Wave Motion in Air” model?
What boundary conditions does this model have (there is no information in the manual)?
Are there any examples of calculations using transient models in Elmer?
Schwarz2012
Posts: 5
Joined: 09 Nov 2023, 08:43
Antispam: Yes

Re: Transient acoustic problem with large number of elements

Post by Schwarz2012 »

Thanks for the answer.
Schwarz2012
Posts: 5
Joined: 09 Nov 2023, 08:43
Antispam: Yes

Re: Transient acoustic problem with large number of elements

Post by Schwarz2012 »

Now I can formulate more correct.
My main question, what about variables type in Elmer? It's int32 or int64? Because, for example, if problem contain 400 millions of elements and 3-4 billions of DOFs? Can Elmer solve this problem or that is impossible?
kevinarden
Posts: 2317
Joined: 25 Jan 2019, 01:28
Antispam: Yes

Re: Transient acoustic problem with large number of elements

Post by kevinarden »

This is a rather old post
viewtopic.php?t=4326

I suspect your answer is that the limitations are imposed by the machines RAM, disk space, and cores.
raback
Site Admin
Posts: 4832
Joined: 22 Aug 2009, 11:57
Antispam: Yes
Location: Espoo, Finland
Contact:

Re: Transient acoustic problem with large number of elements

Post by raback »

Hi

The largest 32 bit signed integer is 2,147,483,647 so that indeed may set an upper limit. I guess there are not too many places where this should be replaced but this has not been in focus. I think the nodes are given a parallel global numbering. You will probably face other issues before that. Wave equation may require some special techniques for preconditioning (e.g. adding some damping to the preconditioning matrix). Transient version probably scales more easily but you need huge number of timesteps. For sure you need a big computer. This is not something to be run on your PC.

-Peter
Schwarz2012
Posts: 5
Joined: 09 Nov 2023, 08:43
Antispam: Yes

Re: Transient acoustic problem with large number of elements

Post by Schwarz2012 »

raback wrote: 10 Nov 2023, 23:50 Hi

The largest 32 bit signed integer is 2,147,483,647 so that indeed may set an upper limit. I guess there are not too many places where this should be replaced but this has not been in focus. I think the nodes are given a parallel global numbering. You will probably face other issues before that. Wave equation may require some special techniques for preconditioning (e.g. adding some damping to the preconditioning matrix). Transient version probably scales more easily but you need huge number of timesteps. For sure you need a big computer. This is not something to be run on your PC.

-Peter
Thanks for the answer!

Theoretically, if the limit is reached, will it be possible to do something about it? Is it realistic to replace int32 with int64 or is it not even worth trying?
raback
Site Admin
Posts: 4832
Joined: 22 Aug 2009, 11:57
Antispam: Yes
Location: Espoo, Finland
Contact:

Re: Transient acoustic problem with large number of elements

Post by raback »

Hi

I would not do it before really needed. Changing all "integer" in the code "integer(kind=int64)" is probably not a good idea. It will make the code slover and probably there will a lot of places where the API to other libraries will be broken. Most libraries work with int32. Going to int64 would require delicately changing the type just in the right places.

-Peter
Schwarz2012
Posts: 5
Joined: 09 Nov 2023, 08:43
Antispam: Yes

Re: Transient acoustic problem with large number of elements

Post by Schwarz2012 »

raback wrote: 15 Nov 2023, 17:49 Hi

I would not do it before really needed. Changing all "integer" in the code "integer(kind=int64)" is probably not a good idea. It will make the code slover and probably there will a lot of places where the API to other libraries will be broken. Most libraries work with int32. Going to int64 would require delicately changing the type just in the right places.

-Peter
Thank you for discussion! It was really helpful and saved me from wasting time.
Post Reply