Skip to content

Add lamination parameter class#387

Draft
eirikurj wants to merge 30 commits intosmdogroup:masterfrom
mdolab:addLpStiffConstMain
Draft

Add lamination parameter class#387
eirikurj wants to merge 30 commits intosmdogroup:masterfrom
mdolab:addLpStiffConstMain

Conversation

@eirikurj
Copy link
Contributor

Description

This PR add a lamination parameter constitutive class TACSLamParamAllShellConstitutive. This implementation is based on an implementation from the original TACS.

In this class there are 7 design variables, 6 lamination parameters plus thickness, which differs from the existing implementation TACSLamParamShellConstitutive that has 6 DVs (2 lamination parameters + 3 laminate fractions + thickness).

Added basic tests for both classes since I noticed that TACSLamParamShellConstitutive did not have any.

Regarding the class name, TACSLamParamAllShellConstitutive I am not quite happy with it and open to suggestions or strategies that we can use when naming similar classes. The new one has All in the name to indicate that all LPs (given the approximations) are parametrized. Thought about renaming the existing one to include Frac in the name, but that will break backwards compatibility.

@eirikurj
Copy link
Contributor Author

eirikurj commented Oct 3, 2025

Just for the record, since this was mentioned offline, I plan to add an integration test as well.

@timryanb
Copy link
Collaborator

@eirikurj I would suggest: TACSLamParamSmearedShellConstitutive and TACSLamParamFullShellConstitutive for naming conventions. We can always modify the cython layer to use the original LamParamShellConstitutive class as an alias to prevent backwards incompatibility and raise a deprecation warning.

@eirikurj
Copy link
Contributor Author

I have renamed the classes as suggested and added a deprecation warning for the previous name. Working on adding constraint.

@timryanb timryanb marked this pull request as draft October 31, 2025 15:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants