|
[Sponsors] |
October 24, 2014, 12:20 |
simpleFoam sailboat aerodynamic simulations
|
#1 |
New Member
Jim Conger
Join Date: Jan 2014
Location: California, USA
Posts: 21
Rep Power: 12 |
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/ |
|
October 24, 2014, 13:26 |
|
#2 |
Senior Member
joegi
Join Date: Nov 2009
Location: genoa
Posts: 104
Rep Power: 17 |
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 |
|
October 24, 2014, 18:13 |
|
#3 |
Senior Member
Yuehan
Join Date: Nov 2012
Posts: 142
Rep Power: 14 |
It will be great if you could share one of your calculation cases.
|
|
October 24, 2014, 18:13 |
Thanks
|
#4 |
New Member
Jim Conger
Join Date: Jan 2014
Location: California, USA
Posts: 21
Rep Power: 12 |
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. |
|
October 24, 2014, 18:16 |
Example case available
|
#5 |
New Member
Jim Conger
Join Date: Jan 2014
Location: California, USA
Posts: 21
Rep Power: 12 |
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. Last edited by james.conger; October 26, 2014 at 18:55. |
|
December 11, 2014, 10:00 |
|
#6 |
New Member
Giulio Castellano
Join Date: Nov 2014
Posts: 3
Rep Power: 12 |
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. |
|
December 11, 2014, 11:46 |
Took down site
|
#7 |
New Member
Jim Conger
Join Date: Jan 2014
Location: California, USA
Posts: 21
Rep Power: 12 |
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. |
|
December 16, 2014, 14:57 |
|
#8 |
New Member
Giulio Castellano
Join Date: Nov 2014
Posts: 3
Rep Power: 12 |
Hi James,
Thanks for the reply. I'm having problem with the layer addition. Did you put any layer into your case? G. |
|
December 16, 2014, 20:52 |
did not use layers
|
#9 |
New Member
Jim Conger
Join Date: Jan 2014
Location: California, USA
Posts: 21
Rep Power: 12 |
Sorry - perhaps someone else can help.
|
|
|
|
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 |