CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > Software User Forums > OpenFOAM > OpenFOAM Running, Solving & CFD

simpleFoam sailboat aerodynamic simulations

Register Blogs Members List Search Today's Posts Mark Forums Read

Like Tree6Likes
  • 5 Post By james.conger
  • 1 Post By james.conger

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   October 24, 2014, 12:20
Default simpleFoam sailboat aerodynamic simulations
  #1
New Member
 
Jim Conger
Join Date: Jan 2014
Location: California, USA
Posts: 21
Rep Power: 11
james.conger is on a distinguished road
I have been using simpleFoam to simulate airflow over sailboat sails/hull for the last 18 months. In general, this works very well. Here are a few tips for others who might be interested in doing this.

1) You can get useful results with 2D models as long as the sail configuration is not fully stalled. After that, 3D models are required as the airflow is intrinsically 3D. One of the attached images shows an extreme example of this with airflow streamlines in a downwind sailing configuration. In general, I have found the 3D models to be much better behaved than the 2D models, independent of the grid resolution.

2) SnappyHexMesh is a wonderful tool for creating the mesh around your model, but it has its own likes and dislikes. It is important to create a starting mesh where the grid cells are nearly rectangular. I use blockMesh with a uniform grid expansion from the center point to the edges to create the starting grid with a fine mesh near the center (where the model lies), uniformly expanding to a course grid at the edges.

3) For boundary conditions I fix the velocity and pressure at two 'inlet' sides and use zeroGradient on the two 'outlet' sides of the mesh cube. It is convenient to parameterize the velocity vectors so that it is easy to change conditions between runs. You can embed variables in your velocity (U) file using data from an include file. Something like:

#include "velocityValues"
internalField uniform ($XvelMPS 0 $ZvelMPS);
...
inlet1
{
type fixedValue;
value uniform ($XvelMPS 0 $ZvelMPS);
}

4) Unlike most aircraft wings, sails are flexible. You are inevitably going to want to change the shape and position of the sails many times in fine increments. I found it was easier to create the STL model of the sails directly in Python code than to use a 3D modeling tool like Blender. I combine a fixed model of the hull/mast with a dynamically generated model of the sails and boom as separate inputs into snappyHexMesh.

5) Like all other CFD models, a firm connection to reality is a requirement to have a model that you can trust. In my case I tested the model against the actual performance of a sailboat, using the boat speed and boat heel as the basis for comparison. This quickly pointed out some (stupid) errors in the model which were easy to fix. Once calibrated, the CFD model appears to predict the performance of the boat very well under all wind conditions, although I am only simulating situations with 'flat' seas.

You can see further details at this link:

https://sites.google.com/site/sailcfd/
Attached Images
File Type: jpg streamlines.jpg (60.5 KB, 63 views)
File Type: jpg wire frame.jpg (97.1 KB, 58 views)
paka, joegi.geo, jherb and 2 others like this.
james.conger is offline   Reply With Quote

Old   October 24, 2014, 13:26
Default
  #2
Member
 
joegi
Join Date: Nov 2009
Location: genoa
Posts: 97
Rep Power: 15
joegi.geo is on a distinguished road
Hi,

Interesting work. I see you are doing some optimization as well, maybe you can contribute to the numerical optimization user group

http://openfoamwiki.net/index.php/Si...l_Optimization

Every entry is useful, and if you can share your python scripts for shape morphing it will be great.


jg
joegi.geo is offline   Reply With Quote

Old   October 24, 2014, 18:13
Default
  #3
Senior Member
 
Yuehan
Join Date: Nov 2012
Posts: 142
Rep Power: 12
wc34071209 is on a distinguished road
It will be great if you could share one of your calculation cases.
wc34071209 is offline   Reply With Quote

Old   October 24, 2014, 18:13
Default Thanks
  #4
New Member
 
Jim Conger
Join Date: Jan 2014
Location: California, USA
Posts: 21
Rep Power: 11
james.conger is on a distinguished road
JG,

I will take a look. I'll find a way to post the fundamental Python script which creates 3D shapes where the sides are all splines.

Jim C.
james.conger is offline   Reply With Quote

Old   October 24, 2014, 18:16
Default Example case available
  #5
New Member
 
Jim Conger
Join Date: Jan 2014
Location: California, USA
Posts: 21
Rep Power: 11
james.conger is on a distinguished road
Note that there is an example OpenFOAM case posted at the bottom of this page:

https://sites.google.com/site/sailcf...openfoam-notes

I posted the simplest example, which is a 2D case with two sails with relatively low angles of attack.

I have also posted at the very bottom of the page is Python code that generates 3D STL surfaces. This is the core logic that I use to generate sail shapes, hulls, etc. You can make just about anything using the ribbon, 3 sided and 4 sided surfaces. Meshlab is a nice open source program for viewing the results.
jherb likes this.

Last edited by james.conger; October 26, 2014 at 18:55.
james.conger is offline   Reply With Quote

Old   December 11, 2014, 10:00
Default
  #6
New Member
 
Giulio Castellano
Join Date: Nov 2014
Posts: 3
Rep Power: 10
Giulio_cst is on a distinguished road
Hi all,

I'm really interested in what this topic is about but unfortunately i can't see the links you have posted. My master thesis is about the study on the interaction between two ( or more ) sailboats and i'm having lots of problem doing my first 3D mesh. Is it my fault or, for some reason, these links are really no more valid?

Best Regards
G.
Giulio_cst is offline   Reply With Quote

Old   December 11, 2014, 11:46
Default Took down site
  #7
New Member
 
Jim Conger
Join Date: Jan 2014
Location: California, USA
Posts: 21
Rep Power: 11
james.conger is on a distinguished road
Sorry, but I have taken down that site, so the links are not valid. Let me know what problems you are having with your mesh generation and I can try to help. Here are a few pointers from my experience:

The MeshLab application is very useful in fixing problems with your initial STL model. I had little gaps between surfaces that had to be fixed before I could get a decent mesh.

I found that simple starting meshes created with blockMesh were the best behaved. I just used a linear expansion in all three dimensions to get a mesh with the most resolution near the center (boat), and with relatively square elements. This gives snappyHexMesh a good starting point.
james.conger is offline   Reply With Quote

Old   December 16, 2014, 14:57
Default
  #8
New Member
 
Giulio Castellano
Join Date: Nov 2014
Posts: 3
Rep Power: 10
Giulio_cst is on a distinguished road
Hi James,

Thanks for the reply. I'm having problem with the layer addition. Did you put any layer into your case?

G.
Giulio_cst is offline   Reply With Quote

Old   December 16, 2014, 20:52
Default did not use layers
  #9
New Member
 
Jim Conger
Join Date: Jan 2014
Location: California, USA
Posts: 21
Rep Power: 11
james.conger is on a distinguished road
Sorry - perhaps someone else can help.
james.conger is offline   Reply With Quote

Reply

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
interFoam vs. simpleFoam channel flow comparison DanM OpenFOAM Running, Solving & CFD 12 January 31, 2020 16:26
simpleFoam parallel solver & Fluent polyhedral mesh Zlatko OpenFOAM Running, Solving & CFD 3 September 26, 2014 07:53
Laminar simpleFoam and inviscid simpleFoam herenger OpenFOAM Running, Solving & CFD 7 July 11, 2013 07:27
Trying to run a benchmark case with simpleFoam spsb OpenFOAM 3 February 24, 2012 10:07
Hardware selection for steady/unsteady incompressible, turbulent and cht simulations maddalena OpenFOAM 2 July 13, 2011 09:55


All times are GMT -4. The time now is 21:23.