Engine Simulation With Piston and Valve Action in Openfoam
Engine Simulation With Piston and Valve Action in Openfoam
Engine Simulation With Piston and Valve Action in Openfoam
T. Lucchini
Department of Energetics, Politecnico di Milano, Italy
[email protected]
TOPICS
• MESH MOTION WITH TOPOLOGICAL CHANGES
• engineTopoChangerMesh
• CASE SETUP
Mesh generation;
Setting the motion boundary conditions;
Dictionaries;
Definition of the face zones;
Definition of the mesh modifiers;
Moving the mesh from -180 to 180 CAD;
• RUNNING THE CASE
Initial conditions;
Control parameters;
Dictionaries;
engineDyMFoam
• POSTPROCESSING THE CASE
MESH MOTION WITH TOPOLOGICAL CHANGES
NO PRE-PROCESSING
layerAR: compression-combustion (diesel or SI);
twoStroke: two stroke engines with scavenging ports;
verticalValves: four stroke engines with vertical valves;
• cylinderHead
• liner
• valveWalls
• valveStem
• intakePort
ENGINE TUTORIAL CASE – BOUNDARY (MOVING)
• piston
• valveTopIn
• valveBottomIn
ENGINE TUTORIAL CASE – BOUNDARY (slidingInterface)
• valveCurtainCylIn
• valveCurtainPortIn
ENGINE TUTORIAL CASE – BOUNDARY (attachDetach)
empty boundaries
• valveDetachInPort
• valveCurtainPortIn
SETTING THE engineGeometry FILE
• constant/engineGeometry
• specify engine geometry data
engineTopoChangerMesh verticalValves;
SETTING THE engineGeometry FILE
• specify details about the piston
piston
{
patch piston;
coordinateSystem
{
type Cartesian;
origin (0 0 0);
axis (0 0 1);
direction (0 1 0);
}
minLayer 0.0005;
maxLayer 0.002;
delta 0.5e-3;
offSet 0.002;
SETTING THE engineGeometry FILE
• delta and offset are used to identify the faces for dynamic
layering:
• typical values:
delta
offset 2-6 mm
delta 0.1 – 2 mm
offset
SETTING THE engineGeometry FILE
• list of valves:
verticalValves
(
valve1
{
// subdictionary (let’s have a look....)
}
valve2
{
.....
}
.....
);
// valveTopTol:
// when the valve lift is lower than 1e-3; the
poppet layering is disabled
valveTopTol 1e-3;
bottomValveTol 5e-5;
poppetValveTol 5e-5;
checkMesh on;
boundaryField
{
// moving boundaries
// fixed boundaries
}
• piston: componentMixed;
• poppet and bottom of the valves: fixedValue;
• fixed boundaries except liner: fixedValue (0 0 0);
• liner: componentMixed;
• slidingInterface boundaries: componentMixed;
MOVING THE MESH
• Then run:
moveEngineTopoMesh . 2dTutorial
CASE SETUP
• 2dTutorialCase;
• Copy the 0/motionU file from the moving mesh case in the 0/
directory;
• Simulation of SI engines;
engineDyMFoam . 2dTutorialCase
ACKNOWLEDGMENTS