https://www.reddit.com/r/Physics/comments/16hr2ur/can_someone_please_help_me_understand_what_moose/
created by GraphicsMonster on 13/09/2023 at 16:08 UTC
9 upvotes, 5 top-level comments (showing 5)
[removed]
Comment by IvarrDaishin at 13/09/2023 at 16:23 UTC
45 upvotes, 0 direct replies
It's basically a big animal with fur n stuff
Comment by nanoWarhol at 13/09/2023 at 16:34 UTC
9 upvotes, 1 direct replies
https://mooseframework.inl.gov/
does that help?
Comment by opus25no5 at 13/09/2023 at 16:43 UTC
18 upvotes, 2 direct replies
MOOSE is a finite element model, which means it can basically solve any differential equations you can throw at it. Since many physical processes like heat transfer, electricity/light, or fluid flow can be represented with FEM, it's hard to say what specifically you would be modelling.
Finite element means you discretize an object (e.g. triangularization, making a grid) and then only evaluate functions at those points. They usually come with some sort of derivative baked in. The advantage of this framework is that you can choose an arbitrary discretization, choosing a finer mesh for more detailed areas and a coarser mesh for say, the surroundings.
I haven't worked with MOOSE, only with COMSOL, so depending on your prof's expectations you might do something with the way FEM itself is implemented. But it might be more likely that as an undergrad you're just using the software to solve a problem.
Comment by QuantumOfOptics at 13/09/2023 at 16:36 UTC
3 upvotes, 2 direct replies
I don't think it is the perl extension that popped up for me while looking, but rather the finite element solver for c++. Finite element models effectively try to break a problem in some complicated geometry to solving the same problem in a large number of smaller, simpler geometries (think of breaking a complicated object into cubes kind of like how you sum a bunch of rectangles to approximate an integral). Sometimes this is easy like in computer aided design (CAD) where things can be nice and linear across boundaries of the objects.
For example, suppose I put a localized force on a rectangular object and I'm interested if the object will break apart. I can represent the bigger rectangle, with a bunch of smaller rectangles that transmit forces. We then ask if that localized force causes any of the internal forces between different rectangles is larger than the material strength that binds the rectangles together. If it is, then the material will break apart and given some material dependent statistical distributions you could figure out how exactly that object will fail. This is the back bone of many CAD softwares used in mechanical engineering.
Another example, would be light transport through complicated surfaces. Software here break the surface of the shape into smaller chunks so that the surface is well approximated by many planes. Rays of light are then released and contact the different planes. Since Snell's law is easy to calculate for flat planes, it speeds up simulation times compared to trying to calculate the local derivative, which may be expensive computationally.
In this case, it looks like MOOSE is used to compute fluid flows or similar problems which are not linear. This is an extension to the above models since usual finite element analysis software tries to make things appear as linear as possible. There are other softwares on the market that do similar things (COMSOL for example), but may not support the physical application your prof has in mind or maybbe too expensive to justify. If you want to learn more, I would look into what finite element analysis is and how it works. It should clarify how and what MOOSE is doing.
Comment by ggrieves at 13/09/2023 at 17:26 UTC
2 upvotes, 0 direct replies
Don't reinvent the wheel, but a lot of labs have students writing really pretty shitty code ( I know because I was one ), so learning what their implementation does and where it lacks sets you up to do some refactoring that could have a massive positive impact on the software capabilities, and you'd learn about how it all works at the same time.