Rudder model

79 views
Skip to first unread message

Tim Swait

unread,
Apr 19, 2022, 5:22:13 PM4/19/22
to sparselizardforum
I'd like to simulate the flow through a Kitchen Rudder (https://en.wikipedia.org/wiki/Kitchen_rudder). Since this is my first usage of Sparselizard (and one of my first uses of any CFD), I'm starting simple with a plan view 2D slice. I want to start by modelling the propeller, then add the rudder shells, then the stern of the boat. I've used the nonlinear-vonkarman-vortex-2d as a starting point, modified the geometry to remove the cylinder and added a box for the propeller. However I can't work out how to make the propeller move the water. I started with the section through the prop disc as a line and tried setting a velocity on it, but that didn't solve. Then I tried putting a positive pressure on the line, that did solve but it was pushing water out both sides, not doing what I wanted. So then I tried modelling the propeller as a thin box, I again tried both velocity and pressure constraints on both front and back faces of the prop but it won't solve at all with any of them. I think I probably should be putting some form of constraint on the edges of the prop to stop water flowing in or out of it (so v is constrained in y but not in x on the propTop and PropBot lines) but I don't know how to do that and don't know if it would help.

I've attached the geometry and main.cpp files (versions with velocity and pressure constraints on the prop), please could someone tell me where I'm going wrong and how to get this prop moving water?

Thank you,
Tim
krudder.geo
main-p.cpp
main-v.cpp

Tim Swait

unread,
Apr 28, 2022, 6:26:19 AM4/28/22
to sparselizardforum
Can anyone give any tips on how I can do this?
Thanks

Tim Swait

unread,
May 3, 2022, 1:12:19 PM5/3/22
to sparselizardforum
Please, can anyone give me some pointers how to set these constraints? I'm due to take the boat out the water next month and I need to get parts made by then then so I really could do with getting this modelling done to help design them!

Tim Swait

unread,
May 4, 2022, 5:01:26 PM5/4/22
to sparselizardforum
I've been trying more things with this but I can't really get anything that works. I have tried setting two lines to represent the front and back faces of the prop disc. If I set a high pressure on the back face then it does actually solve for the @1s increment, but then won't solve for further time steps. If I put a lower pressure on the front face then it just doesn't solve at all. For the @1s the results I get for pressure look like I'd expect:
 Pressure.png
However the velocity is very high at the ends of the line and nowhere else, so I guess this concentration is what's causing the problem:
V.png
 Maybe if I set the velocity or pressure along the line to vary as a function of y so as to be zero at the ends that would work? I don't know how to do that though. Does anyone have any other ideas?

Tim Swait

unread,
May 4, 2022, 5:03:15 PM5/4/22
to sparselizardforum

These are my files at present.
krudder.geo
main.cpp

Tim Swait

unread,
May 15, 2022, 6:00:01 PM5/15/22
to sparselizardforum
I'm still trying, here's using a parabolic pressure distribution on the front and back faces of the prop. At least it solves, but it still doesn't do what I want as the water isn't actually passing through the disk. Parabolic velocity constraints simply don't solve. I'm really poking in the dark here, if anyone could give me any suggestions it would really help!
Screenshot from 2022-05-15 22-57-16.png

Tim Swait

unread,
May 16, 2022, 2:51:27 PM5/16/22
to sparselizardforum
I'm now getting to something that at least looks halfway realistic. I'm still using the parabolic pressure distribution on the prop, with a negative value on the left and an equal and opposite positive value on the right. I think the amount of water being recirculated is probably excessive, I think it probably should be a sharper edged pressure distribution than parabolic. My other concern is that the water going in the left face of the prop is effectively disappearing and then water is appearing from the right face. Although the pressures are equal and opposite, I don't know if that also means that the mass flow into the prop is equal to the mass flow out. Obviously in real life, no water is gained or lost as it passes through the prop! Can anyone offer any tips on how to make this more realistic. At least now I have something that's starting to work.
Screenshot from 2022-05-16 19-42-50.png
main.cpp
krudder.geo

alexandr...@gmail.com

unread,
May 27, 2022, 5:35:35 AM5/27/22
to sparselizardforum
Hi Tim,

Nice work! I am really sorry I couldn't help, it has been an extremely busy month!

Good news is we are going to release a pay-by-cpu-hour browser-based GUI product in fall, which I hope will make simulations easier to set up for e.g. you, while being as affordable as it can be on the cloud (https://quanscient.com/).

I will also try to find more time to answer whenever possible!

Alex

Tim Swait

unread,
Jun 2, 2022, 3:14:00 PM6/2/22
to sparselizardforum
Thanks, I'd be interested in that, although I think all my problems are with the model set up, I'm not attempting anything which requires particularly heavy processor firepower.

Well I thought I was getting somewhere, but now I'm not sure :-(
I've made a Jupyter notebook that will generate a mesh file for the rudder at various positions of steering and opening and closing. Eventually my plan is for it to run a sweep though different positions, working out the control force applied and the steering or reversing thrust generated and tweak design parameters (such as the length and shape of the rudder elements to) using an optimisation algorithm.

The problem is, none of the simulations really look at all realistic! Shown below you can see on the left with the steering in the straight ahead position and the rudder fully open (top), 50% closed (middle) and fully closed (bottom). On the top right it shows it fully open but steering over at 30 degrees. However the water coming out of what should effectively be a nozzle is not shooting out in that direction, it's turning and going the wrong way! Bottom right is a version with a really long nozzle and even there it's doing the same thing. The amount of recirculation through the prop is also utterly unrealistic. Also I can only get it to solve at all if I use a stupidly low pressure gradient across the prop, so the velocities are only tiny fractions of a m/s. If I try to raise the pressure gradient to drive more sensible velocities (my prop should throw the water backwards at about 5 m/s in real life) then it just doesn't solve at all.

I think my big problem is still how to model the prop. This pressure gradient approach just doesn't work. I need to model it as an actuation disk like this: https://www.openfoam.com/documentation/guides/latest/doc/guide-fvoptions-sources-actuation-disk.html This basically monitors the incoming velocity and modifies (accelerates) it according to the Froude equation. It feels like this ought to be possible to do in Sparselizard in a few lines of code, but I just can't get my head around how! Please can you give me some clues for how I might at least start to tackle writing an actuator disc (or the 2D version of it anyway) in Sparselizard?
Thank you

Rudder tries.png

alexandr...@gmail.com

unread,
Jun 12, 2022, 12:44:36 PM6/12/22
to sparselizardforum
5 m/s! That sounds more like a turbulent flow model would be needed, not the predefine navier stokes equations (well they also solve turbulent flow but you probably don't want to do DNS).

Alex

Tim Swait

unread,
Jun 20, 2022, 12:43:21 PM6/20/22
to sparselizardforum
Yes, I think that was the problem. I'm currently trying to do it using OpenFOAM instead as it has the actuator disk model and turbulence models available.
Reply all
Reply to author
Forward
0 new messages