Skip to content

New feature: ring Cosserat rods#229

Merged
armantekinalp merged 40 commits into
GazzolaLab:update-0.3.1from
armantekinalp:dev_ring_rods
Apr 7, 2023
Merged

New feature: ring Cosserat rods#229
armantekinalp merged 40 commits into
GazzolaLab:update-0.3.1from
armantekinalp:dev_ring_rods

Conversation

@armantekinalp
Copy link
Copy Markdown
Contributor

Ring Cosserat rods will be added with this PR. Ring rods requires a periodic boundary condition at their ends to simulate the effect of closed loop. In order to implement this periodic boundary condition, in backend we modified the memory block and included two additional nodes, elements and voronoi. Position, directors, velocity and omega of these boundary nodes are synched after every kinematic update.

@armantekinalp armantekinalp added enhancement New feature or request prio:high Priority level: high labels Feb 22, 2023
@armantekinalp armantekinalp self-assigned this Feb 22, 2023
@armantekinalp armantekinalp marked this pull request as draft February 22, 2023 22:44
@codecov-commenter
Copy link
Copy Markdown

codecov-commenter commented Feb 22, 2023

Codecov Report

Patch coverage: 93.75% and project coverage change: +0.48 🎉

Comparison is base (0ff189f) 87.45% compared to head (e785ab9) 87.93%.

📣 This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more

Additional details and impacted files
@@               Coverage Diff                @@
##           update-0.3.1     #229      +/-   ##
================================================
+ Coverage         87.45%   87.93%   +0.48%     
================================================
  Files                41       43       +2     
  Lines              2798     3067     +269     
  Branches            320      354      +34     
================================================
+ Hits               2447     2697     +250     
- Misses              330      341      +11     
- Partials             21       29       +8     
Impacted Files Coverage Δ
elastica/modules/base_system.py 94.11% <40.00%> (-4.30%) ⬇️
elastica/rod/cosserat_rod.py 97.95% <69.23%> (-2.05%) ⬇️
elastica/memory_block/memory_block_rod.py 97.80% <92.72%> (-2.20%) ⬇️
elastica/dissipation.py 94.28% <93.93%> (-1.17%) ⬇️
elastica/rod/factory_function.py 96.31% <94.78%> (-1.37%) ⬇️
elastica/_synchronize_periodic_boundary.py 100.00% <100.00%> (ø)
elastica/memory_block/memory_block_rigid_body.py 100.00% <100.00%> (ø)
elastica/memory_block/memory_block_rod_base.py 100.00% <100.00%> (ø)
elastica/modules/memory_block.py 100.00% <100.00%> (ø)

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

☔ View full report in Codecov by Sentry.
📢 Do you have feedback about the report comment? Let us know in this issue.

@armantekinalp
Copy link
Copy Markdown
Contributor Author

@ilianasiriziba Can you put the videos of ring rod under gravity simulation here.

@ilianasiriziba
Copy link
Copy Markdown
Contributor

2D_xy_ring_rod.mp4
2D_xz_ring_rod.mp4
2D_zy_ring_rod.mp4

@skim0119
Copy link
Copy Markdown
Collaborator

skim0119 commented Mar 9, 2023

I'll start the review.

@bhosale2 bhosale2 added this to the Version 0.3.1 milestone Mar 9, 2023
Comment thread elastica/dissipation.py Outdated
Comment thread elastica/dissipation.py Outdated
Comment thread elastica/memory_block/memory_block_rod.py Outdated
Comment thread elastica/rod/cosserat_rod.py
@armantekinalp
Copy link
Copy Markdown
Contributor Author

@bhosale2 please start reviewing.

Copy link
Copy Markdown
Collaborator

@bhosale2 bhosale2 left a comment

Choose a reason for hiding this comment

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

Some work and doubts @armantekinalp. @ilianasiriziba can help out here.

Comment thread elastica/dissipation.py Outdated
Comment thread elastica/dissipation.py Outdated
Comment thread elastica/memory_block/memory_block_rigid_body.py Outdated
Comment thread elastica/memory_block/memory_block_rod.py
Comment thread elastica/memory_block/memory_block_rod.py
Comment thread examples/RingRodCase/ring_rod_post_processing.py
Comment thread examples/RingRodCase/ring_rod_post_processing.py Outdated
Comment thread examples/RingRodCase/ring_rod.py Outdated
Comment thread tests/test_ring_rod_initialisation.py Outdated
Comment thread tests/test_synchronize_periodic_boundary.py Outdated
@armantekinalp
Copy link
Copy Markdown
Contributor Author

@bhosale2 I have updated documentation please check and see if it make sense.

@bhosale2 bhosale2 self-requested a review April 7, 2023 01:44
Copy link
Copy Markdown
Collaborator

@bhosale2 bhosale2 left a comment

Choose a reason for hiding this comment

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

LGTM. @armantekinalp and @ilianasiriziba thanks for all the clarifications and adding this new feature.

@armantekinalp armantekinalp merged commit e995c98 into GazzolaLab:update-0.3.1 Apr 7, 2023
@armantekinalp armantekinalp deleted the dev_ring_rods branch April 7, 2023 18:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request prio:high Priority level: high

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants