serac icon indicating copy to clipboard operation
serac copied to clipboard

Help users avoid accidentally specifying negative Poisson's ratio in Solid Mechanics module

Open samuelpmishLLNL opened this issue 2 years ago • 2 comments

see https://github.com/LLNL/serac/issues/586

Problem: right now, it's not obvious that some choices of {mu, K} result in a negative Poisson's ratio.

Some potential solutions:

  1. Calculate Poisson's ratio from the user-specified elasticity parameters and ensure that its value satisfies 0 < nu <= 0.5, or else issue a warning.

  2. Change the Solid module interface to specify a different set of elasticity parameters (e.g. Young's modulus and Poisson's ratio) where Poisson's ratio appears explicitly.

  3. Provide a few simple materials to choose from (e.g. ["copper": {"E" : 110, "nu": 0.33}, "aluminum": {"E": 68, "nu": 0.32}, ...], so users have the option to avoid manually inputting values.

samuelpmishLLNL avatar Oct 29 '21 15:10 samuelpmishLLNL

following our discussion in yesterday's meeting, we might also consider expanding our checking of mesh and material properties to include (this list is not exhaustive):

  • positive Jacobian determinants at the quadrature point level (does mfem already do this when calling GetGeometricFactors?)
  • checking validity of the "canned" material options we provide (e.g. density > 0, positive-definite conductivity tensor, ...)
  • potentially adding a "diagnostic q-function" option in serac::Functional that would let the user write a custom expression to be evaluated at each quadrature point, to ensure that certain assumptions are satisfied.

samuelpmishLLNL avatar Nov 19 '21 16:11 samuelpmishLLNL

nit: Permissible values of Poisson's ratio are -1 < nu < 0.5 for isotropic materials. Negative values are exotic, but can sometimes be a useful behavior.

btalamini avatar Jun 01 '22 05:06 btalamini