FoamedOver: A Dynamic Overset Grid Implementation...
Transcript of FoamedOver: A Dynamic Overset Grid Implementation...
FoamedOver: A Dynamic Overset GridImplementation in OpenFOAM
David Boger Eric Paterson Ralph Noack
Penn State University, Applied Research LabState College, PA USA
10th Symposium on Overset Composite Gridsand Solution Technology
20 - 23 September 2010NASA Ames Research CenterMoffet Field, California USA
DISTRIBUTION STATEMENT A. Approved for public release; distribution is unlimited.
Boger, Paterson, and Noack (PSU/ARL) DISTRIBUTION STATEMENT A 10th Overset Symposium 1 / 32
Acknowledgements
Development of foamedOver has been sponsored by:CREATE-Ships, Myles Hurwitz, Project ManagerSupercomputing resources have been provided by: DODHigh–Performance Computing Modernization Program (HPCMP)and the Army Research Laboratory (ARL) DOD SupercomputingResource Center (DSRC)
Boger, Paterson, and Noack (PSU/ARL) DISTRIBUTION STATEMENT A 10th Overset Symposium 2 / 32
Outline
1 Objectives
2 BackgroundOpenFOAMSuggar++DiRTlib
3 foamedOver
4 Code Verification and Example ApplicationsStatic MeshesDynamic Meshes
5 Validation
6 Summary
Boger, Paterson, and Noack (PSU/ARL) DISTRIBUTION STATEMENT A 10th Overset Symposium 3 / 32
Objectives
Develop a library that provides dynamic–overset mesh capabilityfor NavyFOAM (and other naval applications/solvers).
I NavyFOAM is an OpenFOAM–based incompressible, multiphase,free–surface hydrodynamics solver.
Adhere to OOP standards of OpenFOAMLibrary design goals:
I Build on top of Suggar++ and DiRTlib.I Instrumentation of solvers with overset capability should be simple.I Dynamic–mesh capability for a variety of motion types: table
look–up; analytical functions; 6DOF equations of motion.I Utilization of the run–time selection mechanism for motion type and
algebraic solvers.I Simulation control through dictionaries.
Boger, Paterson, and Noack (PSU/ARL) DISTRIBUTION STATEMENT A 10th Overset Symposium 4 / 32
ObjectivesIntended Use
Intended use is naval hydrodynamics: surface ships; submarines;weapons systems.CREATE-Ships: Develop CFD tools which can impact design andacquisition
I Rapid Design Capability: Automation of CFD ProcessI Hull–form optimization and ship motions in ocean waves
Boger, Paterson, and Noack (PSU/ARL) DISTRIBUTION STATEMENT A 10th Overset Symposium 5 / 32
OpenFOAM: Executive SummaryOverview
OpenFOAM is a free-to-use Open Source numerical simulationsoftware with extensive CFD and multi-physics capabilities.Free-to-use means using the software without paying for licenseand support, including massively parallel computers.Software under active development, capabilities mirror those ofcommercial CFDSubstantial user base in industry, research labs, and universitiesPossibility of extension to non-traditional, complex or coupledphysicsPhysics model implementation through equation mimicking
Boger, Paterson, and Noack (PSU/ARL) DISTRIBUTION STATEMENT A 10th Overset Symposium 6 / 32
OpenFOAM: Executive SummaryMain components
Discretization: General-polyhedral finite–volume method.Numerous schemes are available.Lagrangian particle tracking.Finite Area Method: 2-D FVM on curved surface in 3-DLibraries for turblence modeling (RANS, DES, LES);thermophysical properties; combustion; . . .Automatic mesh motion, support for topological changesParallelism via domain decomposition. Methods include metis,scotch, simple, and hierarchial
Boger, Paterson, and Noack (PSU/ARL) DISTRIBUTION STATEMENT A 10th Overset Symposium 7 / 32
OpenFOAM: Executive SummaryEquation Mimicking
Flexible handling of arbitrary equations setsNatural language of continuum mechanics: partial differentialequationsExample: turbulence kinetic energy equation
∂k∂t
+∇ · (Uk)−∇ · [(ν + νt)∇k ] = νt
[12
(∇U +∇UT
)]2
− ε0k0
k
I Objective: Represent differential equations in their natural languagesolve(
fvm::ddt(k)+ fvm::div(phi, k)- fvm::laplacian(nu()+nut(), k)
== nut*magSqr(symm(fvc::grad(U)))- fvm::Sp(epsilon/k, k)
);
I Correspondence between implementation and the originalequation is clear
Boger, Paterson, and Noack (PSU/ARL) DISTRIBUTION STATEMENT A 10th Overset Symposium 8 / 32
OpenFOAM: Executive SummaryTop–Level Applications and Utilities
ApplicationsI Libraries encapsulate interchangeable models with run-time
selectionI New models provide functionality by adhering to a common
interfaceI Custom top-level solvers written for a class of physics, e.g.
compressible combusting LES or VOF free-surface flowI Code clarity is paramount: existing solvers act as examples for
further development or customization
Boger, Paterson, and Noack (PSU/ARL) DISTRIBUTION STATEMENT A 10th Overset Symposium 9 / 32
OpenFOAM: Executive SummaryTop–Level Applications and Utilities, Cont.
UtilitiesI Pre-processing, data manipulation, mesh-to-mesh mapping etc.I Mesh import and export, mesh generation and manipulationI Parallel processing tools: decomposition and reconstructionI Post processor hook-up (Paraview) and data export (EnSight,
Tecplot, Fieldview)I Solution analysis, PyFoam
Customized Data Extraction and AnalysisI User-defined on-the-fly data extraction: function objects
This is just a “standard set”: Users write their own applicationsusing the library
Boger, Paterson, and Noack (PSU/ARL) DISTRIBUTION STATEMENT A 10th Overset Symposium 10 / 32
OpenFOAM at Penn State
PSU OpenFOAM communityhas significantly grown toinclude faculty and studentsfrom:
I Applied ResearchLaboratory
I Mechanical EngineeringI BioengineeringI Nuclear EngineeringI Aerospace EngineeringI Research Computing and
Cyberinfrastructure
Application areas include:I Naval hydrodynamicsI Fluid–structure interactionI Wind– and hydro–turbinesI Atmospheric turbulence and
LESI Explosives detectionI Cardio–vascular
hemodynamics and bloodpumps
I Electron beam-physicalvapor deposition
I Nuclear–reactor dynamicsI Rotorcraft icingI CFD education
Boger, Paterson, and Noack (PSU/ARL) DISTRIBUTION STATEMENT A 10th Overset Symposium 11 / 32
Suggar++1
Overset grid assembly softwarePerforms hole-cutting, donor search,overlap minimizationStatic or dynamic (moving body)assembliesStructured and unstructured gridsNode-centered and cell-centeredflow solversStand-alone executable (static) orlibrary calls for dynamic grids(libsuggar.so)
1Ralph W. Noack, David A. Boger, Robert F. Kunz, and Pablo M. Carrica, "Suggar++: An Improved General Overset Grid
Assembly Capability," AIAA Paper 2009-3992
Boger, Paterson, and Noack (PSU/ARL) DISTRIBUTION STATEMENT A 10th Overset Symposium 12 / 32
DiRTlib2
DiRTlib is a solver-neutral library that simplifies the addition of anoverset capability to a flow solver by encapsulating the requiredoperations
Acquire interpolation stencils via fileI/O or direct communication withlibSuggar++
Provides higher-level methods totransfer field data from donors toreceptors and interpolate
Provides lower-level access to donormember indices and weights to helpbuild implicit global matrix
drt_get_dci()
drt_generate_transmit_apply()
drt_get_donor_members_donor_weights()
2Ralph W. Noack, “DiRTlib: A Library to Add an Overset Capability to Your Flow Solver” AIAA 2005-5116
Boger, Paterson, and Noack (PSU/ARL) DISTRIBUTION STATEMENT A 10th Overset Symposium 13 / 32
foamedOver
FoamedOver is an interface between OpenFOAM and otherspecialized libraries
DiRTlib – Library to facilitatethe addition of oversetcapability to any flow solverSuggar++ – Overset gridassembly softwarePETSc – Library of datastructures and routines for theparallel solution of largesystems of linear andnon-linear equations
Boger, Paterson, and Noack (PSU/ARL) DISTRIBUTION STATEMENT A 10th Overset Symposium 14 / 32
foamedOver
FoamedOver is a collection of custom classes, solvers, andapplications.
Boger, Paterson, and Noack (PSU/ARL) DISTRIBUTION STATEMENT A 10th Overset Symposium 15 / 32
foamedOver
FoamedOver is a stand-alone library that provides a dynamic oversetgrid capability to any OpenFOAM solver
No changes are required tothe OpenFOAM library itselfAny OpenFOAM solver ismade overset-capable by theinsertion of a half-dozen linesof code . . .. . . and the use of customrun-time selectable objects
# include “oversetObject.H”# include “createOverset.H”
U *= cellMask;overset.updateFringeValues(U);
dynamicFvMesh oversetFvMesh;
mesh.update()
Boger, Paterson, and Noack (PSU/ARL) DISTRIBUTION STATEMENT A 10th Overset Symposium 16 / 32
Run–Time Selectable Objects
Boger, Paterson, and Noack (PSU/ARL) DISTRIBUTION STATEMENT A 10th Overset Symposium 17 / 32
Code verification on static meshesPotential Foam
cylindersteadypotential flow
Boger, Paterson, and Noack (PSU/ARL) DISTRIBUTION STATEMENT A 10th Overset Symposium 18 / 32
Overset dictionary for static meshesconstant/oversetDict
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
isOverset yes;readFromDisk yes;isDynamicOverset no;dciFileName ‘‘SUGGAR/output++.dci’’;clipInterpolation yes;
bodies ();
// ************************************************************************* //
Boger, Paterson, and Noack (PSU/ARL) DISTRIBUTION STATEMENT A 10th Overset Symposium 19 / 32
Code verification on static meshesinterFoam
submerged hydrofoila
steadyincompressible multiphase
aJ. Duncan, "The Breaking and Non-Breaking Wave
Resistance of a Two-Dimensional Hydrofoil," J. Fluid Mech,126:507–520, 1983.
Boger, Paterson, and Noack (PSU/ARL) DISTRIBUTION STATEMENT A 10th Overset Symposium 20 / 32
Code verification on static meshesinterFoam
extension of damBreak tutorialunsteadyincompressible multiphase
figures/damBreak.avi
Boger, Paterson, and Noack (PSU/ARL) DISTRIBUTION STATEMENT A 10th Overset Symposium 21 / 32
Code verification on static meshescompressibleInterFoam
extension of depthChargetutorialunsteadycompressible multiphase
Boger, Paterson, and Noack (PSU/ARL) DISTRIBUTION STATEMENT A 10th Overset Symposium 22 / 32
Code verification on dynamic meshesUnsteady potential flow
cylinderprescribed mesh motionunsteadyunsteady potentail flow is aseries of steady solutions
figures/plungingCylinder-p.avi
Boger, Paterson, and Noack (PSU/ARL) DISTRIBUTION STATEMENT A 10th Overset Symposium 23 / 32
Dictionaries for dynamic mesh motionconstant/dynamicMeshDict and constant/oversetDict
%-----------------------------------------------------------------// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
dynamicFvMesh oversetFvMesh;
// ************************************************************************* //
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //isOverset yes;readFromDisk no;isDynamicOverset yes;useLibSuggar yes;motionType multibody;
bodies(projectile{
oversetMotion specifiedTrajectoryOversetMotion;translationTable "constant/translations";rotationTable "constant/rotations";
});// ************************************************************************* //
Boger, Paterson, and Noack (PSU/ARL) DISTRIBUTION STATEMENT A 10th Overset Symposium 24 / 32
Code verification on dynamic meshesicoDyMFoam
figures/animatePitchingFoil.avi
pitching foilprescribed mesh motionincompressible, laminar,mulitphase flow
Boger, Paterson, and Noack (PSU/ARL) DISTRIBUTION STATEMENT A 10th Overset Symposium 25 / 32
Code verification on dynamic meshesinterDyMFoam with 6DOF
falling cylinder6DOF mesh motionincompressible, multiphase,laminar flowCompare to simplifiedanalytical solution forfree-falling body with constantCD
figures/6dof_sphere_vy_mesh.avi
Boger, Paterson, and Noack (PSU/ARL) DISTRIBUTION STATEMENT A 10th Overset Symposium 26 / 32
Overset dictionary for dynamic meshes with 6DOFmotionconstant/oversetDict
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
isOverset yes;readFromDisk no;isDynamicOverset yes;useLibSuggar yes;motionType multibody;
bodies(ship{
oversetMotion sixDofOversetMotion;}
);
// ************************************************************************* //
Boger, Paterson, and Noack (PSU/ARL) DISTRIBUTION STATEMENT A 10th Overset Symposium 27 / 32
Body dictionary for sixDofOversetMotion0/ship
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
mass m [1 0 0 0 0 0 0] 0.500;momentOfInertia J [1 2 0 0 0 0 0] (10 10 10);
equilibriumPosition x [0 1 0 0 0 0 0] (0 0.1144 0);linearSpring k [1 0 -2 0 0 0 0] (0 0 0);linearDamping d [1 0 -1 0 0 0 0] (0 0 0);
// Xabs = Xeq + XrelXrel Xrel [0 1 0 0 0 0 0] (0 0 0);U U [0 1 -1 0 0 0 0] (0 0 0);Uold Uold [0 1 -1 0 0 0 0] (0 0 0);
rotationVector (0 0 1);rotationAngle rotationAngle [0 0 0 0 0 0 0] 0;omega rotUrel [0 0 -1 0 0 0 0] (0 0 0);
force f [1 1 -2 0 0 0 0] (0 0 0);moment m [1 2 -2 0 0 0 0] (0 0 0);
forceRelative fRel [1 1 -2 0 0 0 0] (0 0 0);momentRelative mRel [1 2 -2 0 0 0 0] (0 0 0);
// ************************************************************************* //
Boger, Paterson, and Noack (PSU/ARL) DISTRIBUTION STATEMENT A 10th Overset Symposium 28 / 32
Code verification on dynamic meshesComplex mesh motion: interlacing paddles
figures/twoPaddles.avi
interlacing rotating paddlesmotion would be very difficultto resolve with GGI, RBF, orLaplacian dynamicFvMeshmethods.
Boger, Paterson, and Noack (PSU/ARL) DISTRIBUTION STATEMENT A 10th Overset Symposium 29 / 32
Code verification on dynamic meshesWater entry of projectiles
figures/waterEntryAlpha.mp4
Boger, Paterson, and Noack (PSU/ARL) DISTRIBUTION STATEMENT A 10th Overset Symposium 30 / 32
Validation for intended–use applicationsModel 5415: an international benchmark for a naval surface combatant
Gothenburg 2010 A Workshopon CFD in ShipHydrodynamics, Dec 8-10,201049th AIAA AerospaceSciences Meeting, 4-7January 2011
I Steady resistanceI Dynamic sinkage and trim
(2DOF)I Ships in waves (diffraction
problem)I Roll damping with bilge
keels(1DOF)
Steady wave field at Fr = 0.28
Boger, Paterson, and Noack (PSU/ARL) DISTRIBUTION STATEMENT A 10th Overset Symposium 31 / 32
Validation for intended–use applicationsModel 5415: an international benchmark for a naval surface combatant
Gothenburg 2010 A Workshopon CFD in ShipHydrodynamics, Dec 8-10,201049th AIAA AerospaceSciences Meeting, 4-7January 2011
I Steady resistanceI Dynamic sinkage and trim
(2DOF)I Ships in waves (diffraction
problem)I Roll damping with bilge
keels(1DOF)
Comparison to experiment: dynamic sinkage and trim vs. speed-0.001
0
0.001
0.002
0.003
0.004
0.005
0.006 0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45
sin
kage/L
Froude number
INSEANNavyFOAM
-0.2
0
0.2
0.4
0.6
0.8
1
1.2
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45
trim
(deg)
Froude number
INSEANNavyFOAM
Boger, Paterson, and Noack (PSU/ARL) DISTRIBUTION STATEMENT A 10th Overset Symposium 31 / 32
Validation for intended–use applicationsModel 5415: an international benchmark for a naval surface combatant
Gothenburg 2010 A Workshopon CFD in ShipHydrodynamics, Dec 8-10,201049th AIAA AerospaceSciences Meeting, 4-7January 2011
I Steady resistanceI Dynamic sinkage and trim
(2DOF)I Ships in waves (diffraction
problem)I Roll damping with bilge
keels(1DOF)
Background mesh with ambient waves
Boger, Paterson, and Noack (PSU/ARL) DISTRIBUTION STATEMENT A 10th Overset Symposium 31 / 32
Validation for intended–use applicationsModel 5415: an international benchmark for a naval surface combatant
Gothenburg 2010 A Workshopon CFD in ShipHydrodynamics, Dec 8-10,201049th AIAA AerospaceSciences Meeting, 4-7January 2011
I Steady resistanceI Dynamic sinkage and trim
(2DOF)I Ships in waves (diffraction
problem)I Roll damping with bilge
keels(1DOF)
Overset mesh for roll damping simulations
Boger, Paterson, and Noack (PSU/ARL) DISTRIBUTION STATEMENT A 10th Overset Symposium 31 / 32
Summary
foamedOver is a collection of custom classes, solvers, andapplications which adhere to OpenFOAM object–orientedprogramming practices, and which utilizes the existing toolsSuggar++, DiRTlib, and PETSc.It is a stand-alone library that provides a dynamic overset gridcapability to any OpenFOAM solver.motionObjects have been developed which permit table-lookup,analytical, and 6DOF motions.
Boger, Paterson, and Noack (PSU/ARL) DISTRIBUTION STATEMENT A 10th Overset Symposium 32 / 32