Transcript Hallo

A Modular and Efficient
Simulation Environment
for Fluid-Structure Interactions
Miriam Mehl
Bernhard Gatzhammer
Department of Computer Science, TU München
ECT2008, Athens, 9/4/2008, Miriam Mehl, Bernhard Gatzhammer
Outline
 no fluid solver details
 FSIce
 motivation
 application programming interface
 modules
 data transfer
 coupling strategies
 numerical results
ECT2008, Athens, 9/4/2008, Miriam Mehl, Bernhard Gatzhammer
Plug-and-Play for FSI
MpCCI
Data Mapping
Coupling Strategy
Fluid
Solver
ECT2008, Athens, 9/4/2008, Miriam Mehl, Bernhard Gatzhammer
Structure
Solver
Plug-and-Play for FSI
MpCCI
Fluid
Solver
ECT2008, Athens, 9/4/2008, Miriam Mehl, Bernhard Gatzhammer
Structure
Solver
Plug-and-Play for FSI
Coupling Strategy
Central Surface Mesh
FSIce
Fluid
Solver
ECT2008, Athens, 9/4/2008, Miriam Mehl, Bernhard Gatzhammer
Structure
Solver
FSIce – Application Programming
Interface
FSI_Init ()
FSI_Data_exchange ()
FSI_Finalize ()
FSI_Is_running ()
Fluid
Solver
FSI_Is_new_interface_values ()
FSI_Is_implicit_converged ()
ECT2008, Athens, 9/4/2008, Miriam Mehl, Bernhard Gatzhammer
FSIce – Application Programming
Interface
while (more time steps)
Set time step length
Compute values of next time step
Store values of next time step
end while
Fluid
Solver
ECT2008, Athens, 9/4/2008, Miriam Mehl, Bernhard Gatzhammer
FSIce – Application Programing
Interface
Fluid
Solver
while (more time steps)
Read coupling data from com.mesh
Set time step length
Compute values of next time step
Write coupling data to com.mesh
Store values of next time step
end while
ECT2008, Athens, 9/4/2008, Miriam Mehl, Bernhard Gatzhammer
FSIce – Application Programing
Interface
Fluid
Solver
FSI_Init ()
while (more time steps)
Read coupling data from com.mesh
Set time step length
Compute values of next time step
Write coupling data to com.mesh
FSI_Data_exchange ()
Store values of next time step
end while
FSI_Finalize ()
ECT2008, Athens, 9/4/2008, Miriam Mehl, Bernhard Gatzhammer
FSIce – Application Programing
Interface
Fluid
Solver
FSI_Init ()
while (FSI_Is_running())
if (FSI_Is_new_interface_values())
Read coupling data from com.mesh
Set time step length
Compute values of next time step
Write coupling data to com. mesh
FSI_Data_exchange ()
if (FSI_Is_implicit_converged())
Store values of next time step
end while
FSI_Finalize ()
ECT2008, Athens, 9/4/2008, Miriam Mehl, Bernhard Gatzhammer
FSIce – Modules
ECT2008, Athens, 9/4/2008, Miriam Mehl, Bernhard Gatzhammer
FSIce – Data Transfer
How to map data from solver mesh to coupling mesh ?
 Octree for efficient neighbour search
 Some projection / interpolation included
 Custom interpolations possible
 Provided to user in package FSItools
ECT2008, Athens, 9/4/2008, Miriam Mehl, Bernhard Gatzhammer
FSIce – Coupling Strategies
 Explicit (weak)
 Implicit (strong)
 Subcycling
 Pre-computations
 Many others possible:
just extend supervisor
ECT2008, Athens, 9/4/2008, Miriam Mehl, Bernhard Gatzhammer
Numerical Results – Implicit vs. Explicit
ECT2008, Athens, 9/4/2008, Miriam Mehl, Bernhard Gatzhammer
Numerical Results
ECT2008, Athens, 9/4/2008, Miriam Mehl, Bernhard Gatzhammer
Numerical Results – Data Mapping
Cart.res.
# triang.
runtime
256
8,000
2.6 sec
512
8,000 10.1 sec
512
32,000 14.3 sec
512
128,000 17.4 sec
neighbourhood search measured on a Pentium
M 1.6 GHz processor with 2048 kB cache
ECT2008, Athens, 9/4/2008, Miriam Mehl, Bernhard Gatzhammer
Conclusion
 enhancements of FSI*ce
 modular structure  extendability, flexibility
 integration of various components
 first examples computed
 future: more solvers, more coupling strategies
ECT2008, Athens, 9/4/2008, Miriam Mehl, Bernhard Gatzhammer
Thank you for your attention!
ECT2008, Athens, 9/4/2008, Miriam Mehl, Bernhard Gatzhammer
FSIce – Application Programing
Interface
Future goal:
Multigrid
 Multilevel coupling mesh
 Multigrid scheme controlled from
coupling supervisor
Fluid
Solver
 Allows V, W, ... schemes without
modifying solvers
ECT2008, Athens, 9/4/2008, Miriam Mehl, Bernhard Gatzhammer