-
Notifications
You must be signed in to change notification settings - Fork 24
Add a Mode-Superposition Transient Analysis example #1256
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
base: main
Are you sure you want to change the base?
Conversation
|
@rajesh1359 FYI |
❌ 1 Tests Failed:
View the top 1 failed test(s) by shortest run time
To view more test analytics, go to the Test Analytics Dashboard |
| mode_scoping = dpf.Scoping(ids=list(range(1, 3))) # Modes of interest | ||
| displacement_fc = dpf.operators.scoping.rescope_fc( | ||
| fields_container=displacement_fc, | ||
| mesh_scoping=mode_scoping, # Input here the modes of interest |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If you input this to the mesh_scoping, it is understood as a Nodal scoping. Is this what you mean?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@rafacanton no, interestingly enough, this displacement_fc contains fields located at Modal, which is unexpected but actually logical when using an rdsp file as input, hence the rescope on a generic Scoping (tried instantiating a Scoping as Modal but it does not work):
DPF Fields Container
with 21 field(s)
defined on labels: time
with:
- field 0 {time: 1} with Modal location, 1 components and 6 entities.
- field 1 {time: 2} with Modal location, 1 components and 6 entities.
- field 2 {time: 3} with Modal location, 1 components and 6 entities.
- field 3 {time: 4} with Modal location, 1 components and 6 entities.
- field 4 {time: 5} with Modal location, 1 components and 6 entities.
- field 5 {time: 6} with Modal location, 1 components and 6 entities.
- field 6 {time: 7} with Modal location, 1 components and 6 entities.
- field 7 {time: 8} with Modal location, 1 components and 6 entities.
- field 8 {time: 9} with Modal location, 1 components and 6 entities.
- field 9 {time: 10} with Modal location, 1 components and 6 entities.
- field 10 {time: 11} with Modal location, 1 components and 6 entities.
- field 11 {time: 12} with Modal location, 1 components and 6 entities.
- field 12 {time: 13} with Modal location, 1 components and 6 entities.
- field 13 {time: 14} with Modal location, 1 components and 6 entities.
- field 14 {time: 15} with Modal location, 1 components and 6 entities.
- field 15 {time: 16} with Modal location, 1 components and 6 entities.
- field 16 {time: 17} with Modal location, 1 components and 6 entities.
- field 17 {time: 18} with Modal location, 1 components and 6 entities.
- field 18 {time: 19} with Modal location, 1 components and 6 entities.
- field 19 {time: 20} with Modal location, 1 components and 6 entities.
- field 20 {time: 21} with Modal location, 1 components and 6 entities.
While trying out different combinations, I realized that this is really not straightforward with the API currently in place. For example, the Modal scoping seems to exist server-side but is impossible to build client-side.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Conclusion: this example is useful to showcase how to do this, but really we lack helpers regarding mode manipulation.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, it's a bit confusing, I think it's worth adding a comment to explain
examples/01-transient_analyses/03-mode_superposition_transient.py
Outdated
Show resolved
Hide resolved
examples/01-transient_analyses/03-mode_superposition_transient.py
Outdated
Show resolved
Hide resolved
| mode_scoping = dpf.Scoping(ids=list(range(1, 3))) # Modes of interest | ||
| displacement_fc = dpf.operators.scoping.rescope_fc( | ||
| fields_container=displacement_fc, | ||
| mesh_scoping=mode_scoping, # Input here the modes of interest |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, it's a bit confusing, I think it's worth adding a comment to explain
|
Hello @PProfizi! If this issue needs to remain open, please comment below with If you want this repository to be excluded from this automated maintenance process, please let us know by filling in the opt-out request form. |
Closes #1255
Working locally, apart from the mesh_scoping section commented-out
TODO: