Using Blender to create solids for Gerris

From Gerris

(Difference between revisions)
Jump to: navigation, search
Revision as of 14:10, 15 March 2008
Prhlava (Talk | contribs)

← Previous diff
Revision as of 15:43, 15 March 2008
Prhlava (Talk | contribs)

Next diff →
Line 111: Line 111:
=== Example simulation === === Example simulation ===
-(use "right click" + "save as" to download)+The simulation file (download links below):
 + 
 +<pre>
 +4 3 GfsSimulation GfsBox GfsGEdge {} {
 + Time { end = 100 }
 + Solid blender_1.gts
 + Refine 6
 + RefineSolid 8
 + Init {} { U = 1 }
 + OutputTime { istep = 10 } stderr
 + 
 + OutputSimulation { istep = 4 } stdout
 + 
 +# EventScript { istep = 4 } { echo "Save stdout { width = 1024 height = 768 }" }
 + 
 +}
 +GfsBox { left = BoundaryInflowConstant 1 top = BoundaryOutflow bottom = BoundaryOutflow }
 +GfsBox { top = BoundaryOutflow bottom = BoundaryOutflow }
 +GfsBox { top = BoundaryOutflow bottom = BoundaryOutflow }
 +GfsBox { right = BoundaryOutflow top = BoundaryOutflow bottom = BoundaryOutflow }
 +1 2 right
 +2 3 right
 +3 4 right
 +</pre>
 + 
 +Simulation files (use "right click" + "save as" to download):
[http://www.dearm.co.uk/blender/blender_1.gfs gfs] [http://www.dearm.co.uk/blender/blender_1.gfs gfs]

Revision as of 15:43, 15 March 2008

This is a short introduction to using Blender for creation of solid bodies for inclusion in Gerris simulation.

Contents

How to create a wing

Start with an empty scene (camera and light is OK)

Start

Add Bezier curve

<space> -> add -> curve -> bezier curve

Image:blender_1_002.jpeg

Close the curve

<TAB>
<C>

Image:blender_1_003.jpeg

Subdivide it

(curve) -> segments -> subdivide

Image:blender_1_004.jpeg

Disable the Back and Front for the curve

De-select "Back" and "Front" (this is done in bottom window in blender)

Extrude the curve

Set the extrude level to 1

Convert the curve to mesh

<TAB> - Switch to object mode

(object) -> convert object type: Mesh

Image:blender_1_005.jpeg

Image:blender_1_006.jpeg

Close the top and bottom parts of the mesh

numpad<3> - switch to the side view
<Tab>
<B> - border select (select the top nodes)

(mesh) -> faces -> fill

Image:blender_1_007.jpeg

<A>
<B> - border select (select the bottom nodes)

(mesh) -> faces -> fill

Image:blender_1_008.jpeg

Recalculate normals

<A>
<A>

Now you should have all mesh nodes selected.

(mesh) -> normals -> recalculate inside

The result

Export the mesh in STL format

<TAB> - go to object mode

Select the wing...

(File) -> Export -> STL

Save the file as wing.stl

STL to GTS

Convert from .stl to .gts

stl2gts < wing.stl > wing.gts

Transform the wing.gts

transform -o < wing.gts | transform -t 1 > blender_1.gts 

The first transform normalizes the wing, the 2nd one moves it to 2nd cell along X axis. The resulting file "blender_1.gts" is ready for use in Gerris simulation.

Example simulation

The simulation file (download links below):

4 3 GfsSimulation GfsBox GfsGEdge {} {
  Time { end = 100 }
  Solid blender_1.gts
  Refine 6
  RefineSolid 8
  Init {} { U = 1 }
  OutputTime { istep = 10 } stderr

  OutputSimulation { istep = 4 } stdout

#  EventScript { istep = 4 } { echo "Save stdout { width = 1024 height = 768 }" }

}
GfsBox { left = BoundaryInflowConstant 1 top = BoundaryOutflow bottom = BoundaryOutflow }
GfsBox { top = BoundaryOutflow bottom = BoundaryOutflow }
GfsBox {  top = BoundaryOutflow bottom = BoundaryOutflow }
GfsBox { right = BoundaryOutflow  top = BoundaryOutflow bottom = BoundaryOutflow }
1 2 right
2 3 right
3 4 right

Simulation files (use "right click" + "save as" to download):

gfs gfv gts

To run the simulation:

gerris2D blender_1.gfs | gfsview2D blender_1.gfv
The result
The result
Personal tools
communication