Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Enforce Use of Section Properties #218

Merged
merged 6 commits into from
Nov 12, 2024

Conversation

bjhowie
Copy link
Contributor

@bjhowie bjhowie commented Sep 24, 2024

Following on from the discussion here #202 and working towards a v1.0.0 release, this pull request enforces the use of section properties when defining Member3D elements. This simplifies the processes of creating Member3D objects, by effectively grouping parameters to be passed to the __init__ method. It also ensures consistency in the way that section properties are stored within the FEA model, which is critical as the package matures.

This pull request also alters the Member3D class logic slightly, so that the section and material properties are not extracted in the Member3D __init__ method, but instead accessed directly from the appropriate section or material instances during analysis. This enables simple alteration of section or material properties between analysis runs, with the confidence that any changes are propogated through to all members referencin gthe given section or material.

The same approach could be taken for Quad & Plate elements, but can be covered in a different pull request.

These changes will break most user's code.

@KwentiN-ui
Copy link

I am not sure where exactly, but it seems the docstrings got lost for the section and material classes regarding this pull request 🤔

@bjhowie
Copy link
Contributor Author

bjhowie commented Nov 6, 2024

I am not sure where exactly, but it seems the docstrings got lost for the section and material classes regarding this pull request 🤔

I'm not sure if the Section or Material ever had docstrings to begin with. I added basic docstrings to both classes as part of this pull request.

@JWock82 JWock82 merged commit e49bff2 into JWock82:main Nov 12, 2024
4 checks passed
@JWock82
Copy link
Owner

JWock82 commented Nov 12, 2024

Great work @bjhowie! I merged this pull request. This is going to force some longtime users (including myself) to adapt, but I think it's the direction Pynite needs to move. A very useful pull request!

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.

3 participants