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

Multiaxial vibration fatigue #20

Merged
merged 29 commits into from
Feb 28, 2025
Merged

Multiaxial vibration fatigue #20

merged 29 commits into from
Feb 28, 2025

Conversation

jasasonc
Copy link
Collaborator

This pull request includes several changes to the FLife package, including new modules for multiaxial vibration fatigue, multi-point models and visualization. Change of the input type for SpectralData object from tuple to dictionary.

New modules:

  • EquivalentStress class for calculating uniaxial equivalent stress from multiaxial stress states. Also supports the calculation for the whole FEM model and critical point selection. The following multiaxial criteria are currently available:

    • Maximum normal stress on critical plane
    • Maximum shear stress on critical plane
    • Maximum normal and shear stress on critical plane
    • EVMS: Equivalent von Misses stress
    • Carpinteri-Spagnoli criterion
    • Frequency-based multiaxial rainflow criterion
    • Thermoelasticity-based criterion
    • EVMS adaptation for out-of-phase components
    • Nieslony criterion, combining von Mises and hydrostatic stresses
    • Equivalent Lemaitre stress
    • LiWI approach
    • COIN-LiWI method
  • visualize for visualizing FEM models and interactively displaying equivalent stresses and critical point selection

Input type change:

  • SpectralData object is now created by passing a dictionary input instead of tuple. Type of input signal (PSD or time history) is defined with correct keys. This improves clarity and allows for future upgrades. Backward compatibility is handled.

Multiaxial criteria for vibration fatigue
This reverts commit b865114.
Multiaxial README + numpy compatibility fix
@jankoslavic
Copy link
Contributor

@jasasonc thank you! This is a great PR. I have invited @azorman to review this PR and give suggestions. Let's wait some time.

@azorman
Copy link
Collaborator

azorman commented Feb 20, 2025

It looks to me you did a great job. I would just check the FLife.rst and code.rst files in docs/source folder, which are used for generating the documentation.

@jankoslavic
Copy link
Contributor

@azorman, @jasasonc Thank you! Any more suggestions?

Copy link
Contributor

@jankoslavic jankoslavic left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks ok to me

@jankoslavic
Copy link
Contributor

@jasasonc please add your name to the authors (second place); add also the MSSP thermoelasticity as multiaxial criteria article (which was the reason for this code) to the references in readme. Please also change the version to 2.0.0; this is a big step!

@jasasonc
Copy link
Collaborator Author

@jankoslavic done. I think we are ready to merge.

@jankoslavic jankoslavic merged commit 75a1bc9 into main Feb 28, 2025
3 checks passed
@jankoslavic
Copy link
Contributor

@jasasonc great PR. Thank you!

@jankoslavic jankoslavic deleted the multiaxial branch February 28, 2025 13:12
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