Question on Jellyfish Self-Propulsion Simulation

38 views
Skip to first unread message

LIMING CHAO

unread,
Jan 31, 2026, 8:07:25 AMJan 31
to IBAMR Users
Dear all, 

I hope you are doing well.

I am currently working on a two-dimensional jellyfish self-propulsion simulation using the IBFE-based swimming framework in IBAMR. 

However, I have encountered an issue in my simulations: vortices appear to enter the interior region of the jellyfish body even the gravity has been added (as shown in the attached figure), and the jellyfish does not generate forward propulsion or net swimming motion. 

In addition, I have noticed that in some cases the jellyfish body becomes slightly asymmetric during the motion, even though the imposed kinematics are fully symmetric. I suspect that this asymmetry may be caused by the internal vortices and the resulting unbalanced fluid forces.  

I am wondering whether this behavior could be related to:

  • the immersed boundary configuration or mesh setup,

  • the treatment of gravity or buoyancy forces,

  • or boundary conditions that may allow vortex penetration into the body interior.

I would greatly appreciate any suggestions or insights from the community on how to prevent vortices from entering the body and achieve stable forward swimming.

I have attached my simulation code and input files for reference.

Thank you very much for your time and help.

Best,

Li-Ming

input2d
main.C
jellyfish_hoover_fine.e
1.png
2.png

Boyce Griffith

unread,
Feb 1, 2026, 5:10:32 PMFeb 1
to IBAMR Users
A few things to try:

- Switch the convective operator type from PPM to CUI

- Switch the IB kernel function to BSPLINE_3, BSPLINE_4, or COMPOSITE_BSPLINE_43.

- Ensure the node spacing on the mesh is comparable to the background grid spacing. (Note that if you are using a second-order FE mesh, the node spacing is twice as fine as the element edge length.)

Finally, we have found that IBFEMethod works well if you use a simpler nodal coupling scheme:

IBFEMethod {
   use_consistent_mass_matrix = FALSE
   IB_use_nodal_quadrature    = TRUE
   // …
}

— Boyce

--
You received this message because you are subscribed to the Google Groups "IBAMR Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ibamr-users...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/ibamr-users/117b3d2b-ddfa-4aa2-8c04-ce36d495b4c8n%40googlegroups.com.
<input2d><main.C><jellyfish_hoover_fine.e><1.png><2.png>

LIMING CHAO

unread,
Feb 2, 2026, 4:28:04 AMFeb 2
to IBAMR Users

Thanks a lot for your detailed suggestions, Boyce. I really appreciate your help.

I will run additional simulations based on your recommendations and will get back to you with updates asap.

Best,

Li-Ming

LIMING CHAO

unread,
Feb 2, 2026, 8:41:13 AMFeb 2
to IBAMR Users

Hi Boyce,

I hope you are doing well.

I followed your four suggestions and updated my code accordingly. After running new simulations, I found that using the BSPLINE_3 kernel function seems to improve the results compared to my previous setup.

Now the jellyfish is able to generate some self-propulsion. However, as shown in the attached figure, the flow field inside and around the jellyfish body still appears quite chaotic, with strong vortical structures persisting in the interior region.

I am not sure whether this behavior is expected or if it might indicate that some part of my implementation is still not fully correct.

If you happen to have time, would you be willing to take a quick look at my updated code or setup and see if anything stands out as potentially inappropriate?

Of course, I completely understand if you are busy — any brief feedback would already be greatly appreciated.

Thank you again very much for your help.

Best regards,
Li-Ming

jellyfish_hoover_fine.e
BSPLINE_3.png
input2d
main.C

Boyce Griffith

unread,
Feb 2, 2026, 9:08:55 AMFeb 2
to IBAMR Users
Please check the mesh densities and try using CUI instead of PPM.

— Boyce

To view this discussion visit https://groups.google.com/d/msgid/ibamr-users/57b43c65-9115-486f-8588-c6d97119bd6an%40googlegroups.com.
<jellyfish_hoover_fine.e><BSPLINE_3.png><input2d><main.C>

LIMING CHAO

unread,
Feb 3, 2026, 6:54:23 AMFeb 3
to IBAMR Users

Hi Boyce,

Thank you again for your helpful suggestions.

Based on your recommendations, I further refined the grid in my simulation. Currently, the finest Eulerian grid spacing is the same as the FE mesh size (1:1 ratio), and I am using first-order finite elements generated by Cubit.

In addition, I changed the convection discretization method from PPM to CUI. However, I still observe a rather chaotic flow field inside and around the jellyfish body (as shown in attachment).

I am wondering whether this issue could be related to the type of finite element mesh I am using. At the moment, I am using a TRI3 mesh. Do you think it would be necessary or beneficial to switch to a QUAD4 instead?

Any advice would be greatly appreciated.

Best regards,
Li-Ming

1.png
2.png

Boyce Griffith

unread,
Feb 3, 2026, 7:57:20 AMFeb 3
to IBAMR Users
If the flow structures are similar under grid refinement, changing advective discretizations, and changing IB kernel functions, it suggests to me that they might be “real” and not purely numerical artifacts. Is the structure motion as expected? It looks like it is buckling?

It looks like your vorticity magnitude is on the order of 1000 but you are plotting values only up to order 10. If you expand the range to 100 or 250, what structures remain? In general there will be vorticity generation along fluid-structure interfaces, and so the presence of small scale vortical flow in the interior of the bell is not obviously unphysical.

Is this a model that you got from Alex Hoover, or are you trying to reproduce results from a paper?

— Boyce

LIMING CHAO

unread,
Feb 3, 2026, 8:55:17 AMFeb 3
to IBAMR Users

Hi Boyce,

Thank you very much for your response and questions.

Regarding your comment:

“If the flow structures are similar under grid refinement, changing advective discretizations, and changing IB kernel functions…”

My understanding is that you suggest we should first establish a sufficiently refined baseline mesh, and then systematically test the effects of changing the advective discretization schemes and IB kernel functions one at a time, to check whether the chaotic flow structures persist. Please let me know if I interpreted this correctly.


You also asked:

“Is the structure motion as expected? It looks like it is buckling?”

Yes, I have noticed that the jellyfish bell sometimes becomes slightly asymmetric during the motion, possibly due to vortex penetration and unbalanced fluid forces. However, based on Hoover’s paper, the jellyfish bell motion appears to remain symmetric throughout the swimming cycle, without the structural asymmetry that I observe in my current simulations (see the attached example).


For the vorticity figure, we found that the vortex structure is still chaotic when the thereshold is larger, as shown in attachment.

Finally, you asked whether this model was obtained from Alex Hoover or if we are trying to reproduce results from a paper. Yes, our goal is to reproduce the results from Hoover’s work: A numerical study of the benefits of driving jellyfish bells at their natural frequency. The main difference is that Hoover used a spring-based structural model in the paper, whereas we are implementing the jellyfish bell using a finite element (FE) mesh.


Best,

Li-Ming

hoover paper.png
3.png

Boyce Griffith

unread,
Feb 3, 2026, 9:22:40 AMFeb 3
to IBAMR Users
I wonder if what you are seeing are the results of mechanical instabilities in the structural model. How are you generating the motion of the bell? Are you trying to set the mechanical properties to match the spring-and-beam model? The kinds of vortices that you are seeing near the structure suggest to me that the structure may be stiffer than you intend it to be.

Also, is your goal to build 2D models, or is this a step towards a fully 3D model? If you are planning on doing this in 3D eventually, I would suggest that you consider skipping the 2D model.

— Boyce

hoover.a...@gmail.com

unread,
Feb 3, 2026, 1:10:43 PMFeb 3
to IBAMR Users
I would also recommend 
+ varying the thickness of the model (rather than matching the profile of Hoover et al 2015)
+ the stiffness ranges (E_STEM=1e7 is quite high for IBFE)
+ the size of your system to match dimensional quantities (a 1m diameter bell is quite big)

LIMING CHAO

unread,
Feb 4, 2026, 6:30:20 AMFeb 4
to IBAMR Users

Hi Boyce and Alex,

Thank you very much for your helpful suggestions — they have been very effective.

Yes, my plan is to perform the two-dimensional simulations purely within the IBFE framework. Based on your recommendations, I will first systematically adjust the relevant parameters and continue testing the setup.

I will keep you updated and share any new results with you as soon as possible.

Best regards,
Li-Ming

LIMING CHAO

unread,
Feb 5, 2026, 6:42:46 AMFeb 5
to IBAMR Users

Hi Boyce and Alex,

Thank you again for your helpful suggestions. I have just run a new set of simulations following your recommendations. In the current setup, I use E = 10e4 and kappa = 10e6 in the structural model. For the actuation, I apply a sinusoidal motion forcing in the same region where forces are applied in Hoover’s paper, since the exact force magnitude is not specified there.  

As shown in the attached figure, for different values of the bell thickness, the bell motion remains symmetric throughout the cycle and no structural asymmetry is observed. However, the jellyfish still has difficulty generating forward propulsion (even without gravity applied at this stage).

Any insight or suggestions would be greatly appreciated.

Best regards,
Li-Ming


input2d
main.C
jellyfish_hoover_01_3.e
2.png
Reply all
Reply to author
Forward
0 new messages