sandialabs / Albany

Sandia National Laboratories' Albany multiphysics code
Other
282 stars 89 forks source link

Add extruded discretizations that only store a basal mesh #1076

Closed bartgol closed 2 months ago

bartgol commented 2 months ago

This branch does a few things:

The extruded disc is still lacking some functionalities. E.g., it does not support saving the solution to the mesh or to file (it would likely have to save fields layer-by-layer, as N fields, or as a vector field at each basal DOF, depending on layered mesh ordering). The extruded disc is called "NewExtruded", to differentiate from the current "Extruded", which uses the ExtrudedSTKMeshStruct mesh.

I also found a bug in the STKConnManager::getConnectivityMask, which was creating the wrong mask.

I added a test, where I run the same Heat3D problem with either an Extuded disc or a good old STK3D disc. The test is only run as extruded, but there's a yaml file ready to run as monolithic, for debug purposes.

bartgol commented 2 months ago

This looks great! Thanks @bartgol. Thanks also for adding unit tests.

Can we chage the name NewExtruded with something more descriptive? Maybe LogicallyExtruded?

Yes, we can. Ideally, though, I'd like to change the old Extruded into something like STKExtruded, and use Extruded for this disc type.

mperego commented 2 months ago

This looks great! Thanks @bartgol. Thanks also for adding unit tests. Can we chage the name NewExtruded with something more descriptive? Maybe LogicallyExtruded?

Yes, we can. Ideally, though, I'd like to change the old Extruded into something like STKExtruded, and use Extruded for this disc type.

That's fine with me.