Currently, Mecway has a single strain tensor available in the solution. It's definition is:
- Infinitesimal strain for linear analysis types.
- Green-Lagrange strain for nonlinear analysis types.
Green-Lagrange isn't very good because:
- It doesn't agree with OpenRadioss's strain output which is logarithmic strain.
- It's not consistent with the strain used for defining plastic materials (logarithmic strain).
- It's not consistent with equivalent plastic strain (logarithmic strain).
- It's an unusual strain output for FEA software. Maybe there are reasons for this?
I'd like to add the strain output from OpenRadioss but not sure what the best way to organize it is. Some ideas:
A. Deprecate the existing strain and introduce three new solution variables:
- Infinitesimal strain only for linear analysis types.
- Green-Lagrange strain
- Logarithmic strain
B. Deprecate the existing strain and introduce two new solution variables:
- New strain defined as:
- Infinitesimal strain for linear analysis types
- Logarithmic strain for nonlinear analysis types
- Green-Lagrange strain
C. Keep the existing strain and introduce a new solution variable:
Option A would be unambiguous but you'd have to use different solution variables if you change between linear and nonlinear analysis types. There would be similar duplication of related variables like principal strain.
Option B is what I would probably do if starting from scratch. The new strain would be the commonly used one for both linear and nonlinear, is similar to other software like Ansys and Nastran, and is consistent with how stress is defined (engineering/true).
Option C is the least disruptive way to include OpenRadioss's strain but leaves the existing strain with its problems.
Any thoughts welcome.
Comments
I'm not very knowledgeable about how these strain definitions work in 3D and when undergoing large displacements, rotations and strains, which seems to be the reason to choose one over another as far as I can tell from trying to search online a bit.
Perhaps you can elaborate on why Green-Lagrange strain was until now chosen as the strain measure in Mecway?
My current opinion is that Hencky strain should be the default so I can directly compare the strain result to the tensile test data that I used to make the material model. This would be option B, right?
Green-Lagrange strain is only there because it's the output from CalculiX. I don't know why CalculiX does that except that it's what it uses internally.
Yes, option B would make Hencky strain the "default" and Green-Lagrange more of a secondary option, probably only for CCX.
I think it is a very good idea to have a consistent framework for the different solver outputs and I trust your final criteria as always.
Regardless the final selected option that update would also apply to Principal Strains, right?
Additionally I'm now questioning my self about the meaning of Strain Energy. Does anybody know if Strain Energy density value should also be read considering the Stress-Strain measure used to compute it?
Regards
If the CCX and OpenRadioss solvers have each their own strain measure, then this doesn't change what they use, does it? If it doesn't change what those solvers use as a strain measure, then anything related to which measure is the better choice for large deformations is irrelevant to this discussion.
Is the change only related to the strain definition of the results that are shown to the user?
Since the internal Mecway solver is only linear, then this discussion is irrelevant for that solver, right?
I think strain energy density has a single definition but it can be calculated from different work-conjugate stress and strain pairs. CCX probably does it using the 2nd Piola-Kirchoff stress with its Green-Lagrange strain internally.
The issue is primarily about organizing the data provided by the solvers, but that could also enable converting between strain measures which I hope to do too, so that we can have logarithmic strain in a CCX solution. I wouldn't be modifying the external solvers at all.
Which one is better influences which one goes into a default "strain" solution variable that's shared with infinitesimal strain for options B and C.