Hi everyone!
Maybe it’s naive, but I don’t have much experience in OpenSource CAE.
Can Fenics solve problem with 500 million elements (CFD + acoustics)? The number of DOFs can reach 7-8 billion.
Why do I ask? Because I see C++ in the description and immediately start to worry about the type of variables that may simply not accommodate numbers of this size.
FEniCS can be used for large problems by employing MPI, Which then partitions the mesh, degrees of freedom and the matrix over the set of available processes.
And example of scalable computations can be found at https://www.sciencedirect.com/science/article/abs/pii/S0168874X18303597
where the authors have up to 3.3 billion dofs.
Are you here referring to the usage std::int32_t?
Each process has ownership of data bounded by the int32 limit, But the total number of mesh entities/dofs in a problem is current limited by the limit of std::int64_t.
That being said, solving such large systems require a super-computer, and preferrably experience with discretizing (creating a stable variational form) and choosing a suitable solver.
FEniCS is a general purpose Finite element package, so it is up to the user to set up stable/well defined problems.
Yes, you understand correct.
Thanks for answer!