TUT: multiphase: replace boatAndPropeller with rigidBodyHull
This commit is contained in:
parent
7d42501107
commit
57304aeaf6
@ -1,76 +0,0 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2012 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class volScalarField;
|
||||
object epsilon;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
dimensions [0 2 -3 0 0 0 0];
|
||||
|
||||
internalField uniform 0.1;
|
||||
|
||||
boundaryField
|
||||
{
|
||||
#includeEtc "caseDicts/setConstraintTypes"
|
||||
|
||||
"overset.*"
|
||||
{
|
||||
type overset;
|
||||
value uniform 1;
|
||||
}
|
||||
|
||||
hullWall
|
||||
{
|
||||
type epsilonWallFunction;
|
||||
Cmu 0.09;
|
||||
kappa 0.41;
|
||||
E 9.8;
|
||||
value uniform 0.1;
|
||||
}
|
||||
|
||||
propellerWall
|
||||
{
|
||||
type epsilonWallFunction;
|
||||
Cmu 0.09;
|
||||
kappa 0.41;
|
||||
E 9.8;
|
||||
value uniform 0.1;
|
||||
}
|
||||
|
||||
rudderWall
|
||||
{
|
||||
type epsilonWallFunction;
|
||||
Cmu 0.09;
|
||||
kappa 0.41;
|
||||
E 9.8;
|
||||
value uniform 0.1;
|
||||
}
|
||||
|
||||
atmosphere
|
||||
{
|
||||
type inletOutlet;
|
||||
inletValue uniform 0.1;
|
||||
value uniform 0.1;
|
||||
}
|
||||
|
||||
defaultFaces
|
||||
{
|
||||
type epsilonWallFunction;
|
||||
Cmu 0.09;
|
||||
kappa 0.41;
|
||||
E 9.8;
|
||||
value uniform 0.1;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -1,75 +0,0 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2012 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class volScalarField;
|
||||
object nut;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
dimensions [0 2 -1 0 0 0 0];
|
||||
|
||||
internalField uniform 0;
|
||||
|
||||
boundaryField
|
||||
{
|
||||
#includeEtc "caseDicts/setConstraintTypes"
|
||||
|
||||
"overset.*"
|
||||
{
|
||||
type overset;
|
||||
value uniform 1;
|
||||
}
|
||||
|
||||
hullWall
|
||||
{
|
||||
type nutkWallFunction;
|
||||
Cmu 0.09;
|
||||
kappa 0.41;
|
||||
E 9.8;
|
||||
value uniform 0;
|
||||
}
|
||||
|
||||
propellerWall
|
||||
{
|
||||
type nutkWallFunction;
|
||||
Cmu 0.09;
|
||||
kappa 0.41;
|
||||
E 9.8;
|
||||
value uniform 0;
|
||||
}
|
||||
|
||||
rudderWall
|
||||
{
|
||||
type nutkWallFunction;
|
||||
Cmu 0.09;
|
||||
kappa 0.41;
|
||||
E 9.8;
|
||||
value uniform 0;
|
||||
}
|
||||
|
||||
atmosphere
|
||||
{
|
||||
type calculated;
|
||||
value uniform 0;
|
||||
}
|
||||
|
||||
defaultFaces
|
||||
{
|
||||
type nutkWallFunction;
|
||||
Cmu 0.09;
|
||||
kappa 0.41;
|
||||
E 9.8;
|
||||
value uniform 0;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -1,42 +0,0 @@
|
||||
#!/bin/sh
|
||||
cd "${0%/*}" || exit # Run from this directory
|
||||
. ${WM_PROJECT_DIR:?}/bin/tools/RunFunctions # Tutorial run functions
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
runApplication blockMesh
|
||||
|
||||
#runApplication -s 1 topoSet -dict system/topoSetDictRefine
|
||||
#runApplication -s 1 refineMesh -overwrite -dict system/refineMeshDict
|
||||
runApplication -s 1 topoSet -dict system/topoSetDictRefine
|
||||
runApplication -s 1 refineMesh -overwrite -dict system/refineMeshDict.2
|
||||
|
||||
runApplication -s 2 topoSet -dict system/topoSetDictRefine
|
||||
runApplication -s 2 refineMesh -overwrite -dict system/refineMeshDict.2
|
||||
|
||||
runApplication -s 7 topoSet -dict system/topoSetDictRefine.3
|
||||
runApplication -s 7 refineMesh -overwrite -dict system/refineMeshDict.2
|
||||
|
||||
runApplication -s 8 topoSet -dict system/topoSetDictRefine.4
|
||||
runApplication -s 8 refineMesh -overwrite -dict system/refineMeshDict.2
|
||||
|
||||
# Select cellSets
|
||||
runApplication -s hull topoSet -dict system/topoSetDictHull
|
||||
runApplication -s hull subsetMesh keepBox -patch hullWall -overwrite
|
||||
|
||||
# Select cellSets
|
||||
runApplication -s propeller topoSet -dict system/topoSetDictPropeller
|
||||
runApplication -s propeller subsetMesh keepBox -patch propellerWall -overwrite
|
||||
|
||||
# Select cellSets
|
||||
runApplication -s rudder topoSet -dict system/topoSetDictRudder
|
||||
runApplication -s rudder subsetMesh keepBox -patch rudderWall -overwrite
|
||||
|
||||
restore0Dir
|
||||
|
||||
# Use cellSets to write zoneID
|
||||
runApplication -s 1 setFields -dict system/setFieldsDict
|
||||
runApplication -s 2 setFields -dict system/setFieldsDictWaterLevel
|
||||
|
||||
touch boatAndPropeller.foam
|
||||
|
||||
#------------------------------------------------------------------------------
|
@ -1,161 +0,0 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2012 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object dynamicMeshDict;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
motionSolverLibs (rigidBodyMeshMotion);
|
||||
|
||||
dynamicFvMesh dynamicOversetFvMesh;
|
||||
|
||||
motionSolver rigidBodyMotion;
|
||||
|
||||
report on;
|
||||
|
||||
solver
|
||||
{
|
||||
type Newmark;
|
||||
//gamma 0.1; // Velocity integration coefficient
|
||||
//beta 0.1; // Position integration coefficient
|
||||
}
|
||||
|
||||
accelerationRelaxation 0.4;
|
||||
|
||||
// prescribedRotation requires some sub-iterations to converge faster
|
||||
// to desired value of omega.
|
||||
nIter 3;
|
||||
|
||||
bodies
|
||||
{
|
||||
hull
|
||||
{
|
||||
type rigidBody;
|
||||
parent root;
|
||||
|
||||
// To get Tensor of Inertia (symmetrical) use surfaceInertia
|
||||
// here hull is empty shell
|
||||
|
||||
mass 0.552;
|
||||
inertia (0.0033 0 0 0.01 0 0.0095);
|
||||
centreOfMass (0.2857 -0.07 0); // relative to the centreOfMass
|
||||
// of parent body
|
||||
// (here root = global coord system)
|
||||
|
||||
// Transformation tensor and centre of rotation (CoR)
|
||||
transform (1 0 0 0 1 0 0 0 1) (0.2857 -0.07 0);
|
||||
|
||||
joint
|
||||
{
|
||||
// These constrains are applied only to body hull,
|
||||
// other bodies need to have their own set
|
||||
// Constraints used for faster run
|
||||
|
||||
type composite;
|
||||
joints
|
||||
(
|
||||
{
|
||||
type Px; // Allow translation in X -
|
||||
}
|
||||
{
|
||||
type Ry; // Allow rotation along Y axis
|
||||
// (local - body CS)
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
patches (hullWall);
|
||||
innerDistance 100; // With overset we want to avoid the mesh
|
||||
// deformation so have large innerDistance
|
||||
outerDistance 200;
|
||||
}
|
||||
|
||||
propeller
|
||||
{
|
||||
|
||||
type rigidBody;
|
||||
parent hull;
|
||||
|
||||
centreOfMass (-0.2847 0.03 0); // Relative to parent CoM
|
||||
mass 0.0288;
|
||||
inertia (7.6e-6 0 0 4.2e-6 0 4.2e-6);
|
||||
// transform and CoR - relative to parent CoR
|
||||
transform (1 0 0 0 1 0 0 0 1) (-0.2757 0.03 0);
|
||||
patches (propellerWall);
|
||||
innerDistance 100;
|
||||
outerDistance 200;
|
||||
joint
|
||||
{
|
||||
type Rx;
|
||||
}
|
||||
}
|
||||
|
||||
rudder
|
||||
{
|
||||
type rigidBody;
|
||||
parent hull;
|
||||
centreOfMass (-0.3602 -0.0055 0);
|
||||
mass 0.0746;
|
||||
inertia (3.3e-5 0 0 4.7e-6 0 3.4e-5);
|
||||
// transform and CoR - relative to parent CoR
|
||||
transform (1 0 0 0 1 0 0 0 1) (-0.3487 -0.04 0);
|
||||
patches (rudderWall);
|
||||
innerDistance 100;
|
||||
outerDistance 200;
|
||||
joint
|
||||
{
|
||||
type Ry;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
restraints
|
||||
{
|
||||
rudderRotation
|
||||
{
|
||||
type prescribedRotation;
|
||||
body rudder;
|
||||
referenceOrientation (1 0 0 0 1 0 0 0 1);
|
||||
axis (0 1 0); // Axis of rotation
|
||||
relax 0.5;
|
||||
p 0.5;
|
||||
i 0.5;
|
||||
d 0.5;
|
||||
omega sine; // Function1 entry
|
||||
omegaCoeffs
|
||||
{
|
||||
frequency 4;
|
||||
amplitude 0.2;
|
||||
scale (0 1 0);
|
||||
level (0 1 0);
|
||||
}
|
||||
}
|
||||
propellerRotation
|
||||
{
|
||||
type prescribedRotation;
|
||||
body propeller;
|
||||
referenceOrientation (1 0 0 0 1 0 0 0 1);
|
||||
axis (1 0 0);
|
||||
relax 0.5;
|
||||
p 0.5;
|
||||
i 0.5;
|
||||
d 0.5;
|
||||
omega table
|
||||
(
|
||||
(0 (0 0 0))
|
||||
(1 (16 0 0))
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -1,152 +0,0 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2012 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object blockMeshDict;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
scale 1;
|
||||
|
||||
vertices
|
||||
(
|
||||
// backgroundMesh
|
||||
( -0.50 -0.5 -0.7) // 0
|
||||
( 1.00 -0.5 -0.7)
|
||||
( 1.00 0.5 -0.7)
|
||||
( -0.50 0.5 -0.7)
|
||||
( -0.50 -0.5 0.7) // 4
|
||||
( 1.00 -0.5 0.7)
|
||||
( 1.00 0.5 0.7)
|
||||
( -0.50 0.5 0.7)
|
||||
|
||||
// hullBox
|
||||
( 0.045 -0.14 -0.15) // 8
|
||||
( 0.60 -0.14 -0.15)
|
||||
( 0.60 0.10 -0.15) // 10
|
||||
( 0.045 0.10 -0.15)
|
||||
( 0.045 -0.14 0.15) // 12
|
||||
( 0.60 -0.14 0.15)
|
||||
( 0.60 0.10 0.15) // 14
|
||||
( 0.045 0.10 0.15)
|
||||
|
||||
// propeller
|
||||
( -0.02 -0.08 -0.04) // 16
|
||||
( 0.04 -0.08 -0.04)
|
||||
( 0.04 0.00 -0.04) // 18
|
||||
( -0.02 0.00 -0.04)
|
||||
( -0.02 -0.08 0.04) // 20
|
||||
( 0.04 -0.08 0.04)
|
||||
( 0.04 0.00 0.04) // 22
|
||||
( -0.02 0.00 0.04)
|
||||
|
||||
// rudder
|
||||
( -0.10 -0.14 -0.02) // 24
|
||||
( -0.04 -0.14 -0.02)
|
||||
( -0.04 -0.02 -0.02) // 26
|
||||
( -0.10 -0.02 -0.02)
|
||||
( -0.10 -0.14 0.02) // 28
|
||||
( -0.04 -0.14 0.02)
|
||||
( -0.04 -0.02 0.02) // 30
|
||||
( -0.10 -0.02 0.02)
|
||||
);
|
||||
|
||||
blocks
|
||||
(
|
||||
// hex (0 1 2 3 4 5 6 7) background (60 40 56)
|
||||
// simpleGrading (1 1 1) // coarser mesh cell size 0.025 m
|
||||
hex (0 1 2 3 4 5 6 7) background (75 50 70)
|
||||
simpleGrading (1 1 1) // cell size 0.02 m
|
||||
hex (8 9 10 11 12 13 14 15) hullBox (32 16 16) simpleGrading (1 1 1)
|
||||
hex (16 17 18 19 20 21 22 23) propeller (10 20 20) simpleGrading (1 1 1)
|
||||
hex (24 25 26 27 28 29 30 31) rudder (20 22 11) simpleGrading (1 1 1)
|
||||
);
|
||||
|
||||
edges
|
||||
(
|
||||
);
|
||||
|
||||
boundary
|
||||
(
|
||||
overset1 //oversetHull
|
||||
{
|
||||
type overset;
|
||||
faces
|
||||
(
|
||||
( 8 12 15 11)
|
||||
(10 14 13 9)
|
||||
(11 15 14 10)
|
||||
( 9 13 12 8)
|
||||
( 9 8 11 10)
|
||||
(12 13 14 15)
|
||||
);
|
||||
}
|
||||
overset2 //oversetPropeller
|
||||
{
|
||||
type overset;
|
||||
faces
|
||||
(
|
||||
(16 20 23 19)
|
||||
(18 22 21 17)
|
||||
(19 23 22 18)
|
||||
(17 21 20 16)
|
||||
(20 21 22 23)
|
||||
(19 18 17 16)
|
||||
);
|
||||
}
|
||||
overset3 //oversetRudder
|
||||
{
|
||||
type overset;
|
||||
faces
|
||||
(
|
||||
(24 28 31 27)
|
||||
(26 30 29 25)
|
||||
(28 29 30 31)
|
||||
(25 24 27 26)
|
||||
(27 31 30 26)
|
||||
(24 25 29 28)
|
||||
);
|
||||
}
|
||||
// Populated by subsetMesh
|
||||
hullWall
|
||||
{
|
||||
type wall;
|
||||
faces ();
|
||||
}
|
||||
propellerWall
|
||||
{
|
||||
type wall;
|
||||
faces ();
|
||||
}
|
||||
rudderWall
|
||||
{
|
||||
type wall;
|
||||
faces ();
|
||||
}
|
||||
atmosphere
|
||||
{
|
||||
type patch;
|
||||
faces
|
||||
(
|
||||
(3 7 6 2)
|
||||
// (1 5 4 0)
|
||||
);
|
||||
}
|
||||
defaultFaces
|
||||
{
|
||||
type wall;
|
||||
faces
|
||||
();
|
||||
}
|
||||
);
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -1,103 +0,0 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2012 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object topoSetDict;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
actions
|
||||
(
|
||||
{
|
||||
name bgr0; // all around bgr
|
||||
type cellSet;
|
||||
action new;
|
||||
source zoneToCell;
|
||||
zone background;
|
||||
}
|
||||
{
|
||||
name hullBox0; // all around bgr
|
||||
type cellSet;
|
||||
action new;
|
||||
source zoneToCell;
|
||||
zone hullBox;
|
||||
}
|
||||
{
|
||||
name propeller0; // all around bgr
|
||||
type cellSet;
|
||||
action new;
|
||||
source zoneToCell;
|
||||
zone propeller;
|
||||
}
|
||||
{
|
||||
name rudder0; // all around bgr
|
||||
type cellSet;
|
||||
action new;
|
||||
source zoneToCell;
|
||||
zone rudder;
|
||||
}
|
||||
|
||||
{
|
||||
name box; //all cells
|
||||
type cellSet;
|
||||
action new;
|
||||
source cellToCell;
|
||||
set hullBox0;
|
||||
}
|
||||
|
||||
{
|
||||
name box; // hole in mesh
|
||||
type cellSet;
|
||||
action subset;
|
||||
source boxToCell;
|
||||
boxes
|
||||
(
|
||||
(0.12 -0.082 -0.1)(0.52 0.052 0.1) //hullBox
|
||||
);
|
||||
}
|
||||
|
||||
{
|
||||
name box;
|
||||
type cellSet;
|
||||
action invert;
|
||||
}
|
||||
{
|
||||
name keepBox; //all cells
|
||||
type cellSet;
|
||||
action new;
|
||||
source cellToCell;
|
||||
set box;
|
||||
}
|
||||
{
|
||||
name keepBox; //all cells
|
||||
type cellSet;
|
||||
action add;
|
||||
source cellToCell;
|
||||
set propeller0;
|
||||
}
|
||||
{
|
||||
name keepBox; //all cells
|
||||
type cellSet;
|
||||
action add;
|
||||
source cellToCell;
|
||||
set rudder0;
|
||||
}
|
||||
{
|
||||
name keepBox; //all cells
|
||||
type cellSet;
|
||||
action add;
|
||||
source cellToCell;
|
||||
set bgr0;
|
||||
}
|
||||
);
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -1,103 +0,0 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2012 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object topoSetDict;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
actions
|
||||
(
|
||||
{
|
||||
name bgr0; // all around bgr
|
||||
type cellSet;
|
||||
action new;
|
||||
source zoneToCell;
|
||||
zone background;
|
||||
}
|
||||
{
|
||||
name hullBox0; // all around hull
|
||||
type cellSet;
|
||||
action new;
|
||||
source zoneToCell;
|
||||
zone hullBox;
|
||||
}
|
||||
{
|
||||
name propeller0; // all around propeller
|
||||
type cellSet;
|
||||
action new;
|
||||
source zoneToCell;
|
||||
zone propeller;
|
||||
}
|
||||
{
|
||||
name rudder0; // all around rudder
|
||||
type cellSet;
|
||||
action new;
|
||||
source zoneToCell;
|
||||
zone rudder;
|
||||
}
|
||||
|
||||
{
|
||||
name box; //all cells
|
||||
type cellSet;
|
||||
action new;
|
||||
source cellToCell;
|
||||
set propeller0;
|
||||
}
|
||||
|
||||
{
|
||||
name box; // hole in mesh
|
||||
type cellSet;
|
||||
action subset;
|
||||
source boxToCell;
|
||||
boxes
|
||||
(
|
||||
(0.005 -0.061 -0.0199)( 0.018 -0.0199 0.0199) //propeller
|
||||
);
|
||||
}
|
||||
|
||||
{
|
||||
name box;
|
||||
type cellSet;
|
||||
action invert;
|
||||
}
|
||||
{
|
||||
name keepBox; //all cells
|
||||
type cellSet;
|
||||
action new;
|
||||
source cellToCell;
|
||||
set box;
|
||||
}
|
||||
{
|
||||
name keepBox; //all cells
|
||||
type cellSet;
|
||||
action add;
|
||||
source cellToCell;
|
||||
set rudder0;
|
||||
}
|
||||
{
|
||||
name keepBox; //all cells
|
||||
type cellSet;
|
||||
action add;
|
||||
source cellToCell;
|
||||
set hullBox0;
|
||||
}
|
||||
{
|
||||
name keepBox; //all cells
|
||||
type cellSet;
|
||||
action add;
|
||||
source cellToCell;
|
||||
set bgr0;
|
||||
}
|
||||
);
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -1,39 +0,0 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2012 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object topoSetDict;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
actions
|
||||
(
|
||||
{
|
||||
name refineSet; // background around hullBox
|
||||
type cellSet;
|
||||
action new;
|
||||
source zoneToCell;
|
||||
zone background;
|
||||
}
|
||||
{
|
||||
name refineSet;
|
||||
type cellSet;
|
||||
action subset;
|
||||
source boxToCell;
|
||||
boxes
|
||||
(
|
||||
(0.05 -0.2 -0.2)(0.8 0.2 0.2)
|
||||
);
|
||||
}
|
||||
);
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -1,103 +0,0 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2012 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object topoSetDict;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
actions
|
||||
(
|
||||
{
|
||||
name bgr0; // all around bgr
|
||||
type cellSet;
|
||||
action new;
|
||||
source zoneToCell;
|
||||
zone background;
|
||||
}
|
||||
{
|
||||
name hullBox0; // all around hull
|
||||
type cellSet;
|
||||
action new;
|
||||
source zoneToCell;
|
||||
zone hullBox;
|
||||
}
|
||||
{
|
||||
name propeller0; // all around propeller
|
||||
type cellSet;
|
||||
action new;
|
||||
source zoneToCell;
|
||||
zone propeller;
|
||||
}
|
||||
{
|
||||
name rudder0; // all around rudder
|
||||
type cellSet;
|
||||
action new;
|
||||
source zoneToCell;
|
||||
zone rudder;
|
||||
}
|
||||
|
||||
{
|
||||
name box; //all cells
|
||||
type cellSet;
|
||||
action new;
|
||||
source cellToCell;
|
||||
set rudder0;
|
||||
}
|
||||
|
||||
{
|
||||
name box; // hole in mesh
|
||||
type cellSet;
|
||||
action subset;
|
||||
source boxToCell;
|
||||
boxes
|
||||
(
|
||||
(-0.09 -0.12 -0.00499)(-0.059 -0.03 0.00499) //rudder
|
||||
);
|
||||
}
|
||||
|
||||
{
|
||||
name box;
|
||||
type cellSet;
|
||||
action invert;
|
||||
}
|
||||
{
|
||||
name keepBox; //all cells
|
||||
type cellSet;
|
||||
action new;
|
||||
source cellToCell;
|
||||
set box;
|
||||
}
|
||||
{
|
||||
name keepBox; //all cells
|
||||
type cellSet;
|
||||
action add;
|
||||
source cellToCell;
|
||||
set propeller0;
|
||||
}
|
||||
{
|
||||
name keepBox; //all cells
|
||||
type cellSet;
|
||||
action add;
|
||||
source cellToCell;
|
||||
set hullBox0;
|
||||
}
|
||||
{
|
||||
name keepBox; //all cells
|
||||
type cellSet;
|
||||
action add;
|
||||
source cellToCell;
|
||||
set bgr0;
|
||||
}
|
||||
);
|
||||
|
||||
|
||||
// ************************************************************************* //
|
11
tutorials/multiphase/overInterDyMFoam/rigidBodyHull/Allclean
Executable file
11
tutorials/multiphase/overInterDyMFoam/rigidBodyHull/Allclean
Executable file
@ -0,0 +1,11 @@
|
||||
#!/bin/sh
|
||||
cd "${0%/*}" || exit # Run from this directory
|
||||
#-----------------------------------------------------------------------------
|
||||
|
||||
(cd overset-1 && ./Allclean)
|
||||
|
||||
(cd overset-2 && ./Allclean)
|
||||
|
||||
(cd background && ./Allclean)
|
||||
|
||||
#------------------------------------------------------------------------------
|
11
tutorials/multiphase/overInterDyMFoam/rigidBodyHull/Allrun
Executable file
11
tutorials/multiphase/overInterDyMFoam/rigidBodyHull/Allrun
Executable file
@ -0,0 +1,11 @@
|
||||
#!/bin/sh
|
||||
cd "${0%/*}" || exit # Run from this directory
|
||||
#-----------------------------------------------------------------------------
|
||||
|
||||
(cd overset-1 && ./Allrun)
|
||||
|
||||
(cd overset-2 && ./Allrun)
|
||||
|
||||
(cd background && ./Allrun)
|
||||
|
||||
#------------------------------------------------------------------------------
|
@ -22,29 +22,34 @@ boundaryField
|
||||
{
|
||||
#includeEtc "caseDicts/setConstraintTypes"
|
||||
|
||||
defaultFaces
|
||||
{
|
||||
type uniformFixedValue;
|
||||
uniformValue (0 0 0);
|
||||
}
|
||||
|
||||
"(hullWall|propellerWall|rudderWall)"
|
||||
"(BLADES|HUB_DISK|HUB|HUB_COVER|HULL*.*)"
|
||||
{
|
||||
type movingWallVelocity;
|
||||
value uniform (0 0 0);
|
||||
}
|
||||
|
||||
atmosphere
|
||||
inlet
|
||||
{
|
||||
type pressureInletOutletVelocity;
|
||||
value uniform (0 0 0);
|
||||
type fixedValue;
|
||||
value $internalField;
|
||||
}
|
||||
|
||||
"overset.*"
|
||||
outlet
|
||||
{
|
||||
type overset;
|
||||
patchType overset;
|
||||
type inletOutlet;
|
||||
value uniform (0 0 0);
|
||||
inletValue uniform (0 0 0 );
|
||||
}
|
||||
|
||||
"(atmosphere)"
|
||||
{
|
||||
type pressureInletOutletVelocity;
|
||||
value $internalField;
|
||||
}
|
||||
|
||||
"(overset-1|oversetPatch)"
|
||||
{
|
||||
type overset;
|
||||
}
|
||||
}
|
||||
|
@ -22,35 +22,22 @@ boundaryField
|
||||
{
|
||||
#includeEtc "caseDicts/setConstraintTypes"
|
||||
|
||||
"overset.*"
|
||||
"(outlet|inlet)"
|
||||
{
|
||||
type overset;
|
||||
value uniform 1;
|
||||
}
|
||||
|
||||
hullWall
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
|
||||
propellerWall
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
|
||||
rudderWall
|
||||
{
|
||||
type zeroGradient;
|
||||
type variableHeightFlowRate;
|
||||
lowerBound 0;
|
||||
upperBound 1;
|
||||
value $internalField;
|
||||
}
|
||||
|
||||
atmosphere
|
||||
{
|
||||
type inletOutlet;
|
||||
inletValue uniform 0;
|
||||
value uniform 0;
|
||||
inletValue $internalField;
|
||||
value $internalField;
|
||||
}
|
||||
|
||||
defaultFaces
|
||||
"(BLADES|HUB_DISK|HUB|HUB_COVER|HULL).*"
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
@ -1,70 +1,57 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2012 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class volScalarField;
|
||||
object zoneID;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
dimensions [0 0 0 0 0 0 0];
|
||||
|
||||
internalField uniform 0;
|
||||
|
||||
boundaryField
|
||||
{
|
||||
#includeEtc "caseDicts/setConstraintTypes"
|
||||
|
||||
overset1
|
||||
{
|
||||
type overset;
|
||||
value uniform 0;
|
||||
}
|
||||
|
||||
overset2
|
||||
{
|
||||
type overset;
|
||||
value uniform 0;
|
||||
}
|
||||
|
||||
overset3
|
||||
{
|
||||
type overset;
|
||||
value uniform 0;
|
||||
}
|
||||
|
||||
hullWall
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
|
||||
propellerWall
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
|
||||
rudderWall
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
|
||||
atmosphere
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
|
||||
defaultFaces
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2012 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class volScalarField;
|
||||
object epsilon;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
dimensions [0 2 -3 0 0 0 0];
|
||||
|
||||
internalField uniform 6.9e-5;
|
||||
|
||||
boundaryField
|
||||
{
|
||||
#includeEtc "caseDicts/setConstraintTypes"
|
||||
|
||||
inlet
|
||||
{
|
||||
type fixedValue;
|
||||
value $internalField;
|
||||
}
|
||||
|
||||
"(atmosphere|outlet)"
|
||||
{
|
||||
type inletOutlet;
|
||||
inletValue $internalField;
|
||||
value $internalField;
|
||||
}
|
||||
|
||||
"(HULL*.*)"
|
||||
{
|
||||
type epsilonWallFunction;
|
||||
value $internalField;
|
||||
}
|
||||
|
||||
"(BLADES|HUB_DISK|HUB)"
|
||||
{
|
||||
type epsilonWallFunction;
|
||||
value $internalField;
|
||||
}
|
||||
|
||||
"(overset-1|oversetPatch)"
|
||||
{
|
||||
type overset;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -16,47 +16,40 @@ FoamFile
|
||||
|
||||
dimensions [0 2 -2 0 0 0 0];
|
||||
|
||||
internalField uniform 0.01;
|
||||
internalField uniform 0.00521;
|
||||
|
||||
boundaryField
|
||||
{
|
||||
#includeEtc "caseDicts/setConstraintTypes"
|
||||
|
||||
"overset.*"
|
||||
inlet
|
||||
{
|
||||
type overset;
|
||||
value uniform 1;
|
||||
type fixedValue;
|
||||
value $internalField;
|
||||
}
|
||||
|
||||
hullWall
|
||||
{
|
||||
type kqRWallFunction;
|
||||
value uniform 0.01;
|
||||
}
|
||||
|
||||
propellerWall
|
||||
{
|
||||
type kqRWallFunction;
|
||||
value uniform 0.01;
|
||||
}
|
||||
|
||||
rudderWall
|
||||
{
|
||||
type kqRWallFunction;
|
||||
value uniform 0.01;
|
||||
}
|
||||
|
||||
atmosphere
|
||||
"(atmosphere|outlet)"
|
||||
{
|
||||
type inletOutlet;
|
||||
inletValue uniform 0.01;
|
||||
value uniform 0.01;
|
||||
inletValue $internalField;
|
||||
value $internalField;
|
||||
}
|
||||
|
||||
defaultFaces
|
||||
"(HULL*.*)"
|
||||
{
|
||||
type kqRWallFunction;
|
||||
value uniform 0.01;
|
||||
value $internalField;
|
||||
}
|
||||
|
||||
"(BLADES|HUB_DISK|HUB)"
|
||||
{
|
||||
type kqRWallFunction;
|
||||
value $internalField;
|
||||
}
|
||||
|
||||
"(overset-1|oversetPatch)"
|
||||
{
|
||||
type overset;
|
||||
}
|
||||
}
|
||||
|
@ -9,55 +9,40 @@ FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class pointScalarField;
|
||||
object motionScale;
|
||||
class volScalarField;
|
||||
object nut;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
dimensions [0 0 0 0 0 0 0];
|
||||
dimensions [0 2 -1 0 0 0 0];
|
||||
|
||||
internalField uniform 0;
|
||||
internalField uniform 1e-05;
|
||||
|
||||
boundaryField
|
||||
{
|
||||
overset1
|
||||
#includeEtc "caseDicts/setConstraintTypes"
|
||||
|
||||
outlet
|
||||
{
|
||||
type calculated;
|
||||
value $internalField;
|
||||
}
|
||||
|
||||
overset2
|
||||
"(atmosphere|inlet)"
|
||||
{
|
||||
type calculated;
|
||||
value $internalField;
|
||||
}
|
||||
|
||||
overset3
|
||||
"(BLADES|HUB_DISK|HUB|HUB_COVER|HULL*.*)"
|
||||
{
|
||||
type calculated;
|
||||
type nutkWallFunction;
|
||||
value $internalField;
|
||||
}
|
||||
|
||||
hullWall
|
||||
"(overset-1|oversetPatch)"
|
||||
{
|
||||
type calculated;
|
||||
}
|
||||
|
||||
propellerWall
|
||||
{
|
||||
type calculated;
|
||||
}
|
||||
|
||||
rudderWall
|
||||
{
|
||||
type calculated;
|
||||
}
|
||||
|
||||
atmosphere
|
||||
{
|
||||
type calculated;
|
||||
}
|
||||
|
||||
defaultFaces
|
||||
{
|
||||
type calculated;
|
||||
type overset;
|
||||
}
|
||||
}
|
||||
|
@ -22,32 +22,33 @@ boundaryField
|
||||
{
|
||||
#includeEtc "caseDicts/setConstraintTypes"
|
||||
|
||||
"(hullWall|propellerWall|rudderWall|defaultFaces)"
|
||||
inlet
|
||||
{
|
||||
type fixedFluxPressure;
|
||||
value $internalField;
|
||||
}
|
||||
|
||||
atmosphere
|
||||
"(atmosphere|outlet)"
|
||||
{
|
||||
type totalPressure;
|
||||
p0 uniform 0;
|
||||
U U;
|
||||
phi phi;
|
||||
rho rho;
|
||||
psi none;
|
||||
gamma 1;
|
||||
value uniform 0;
|
||||
p0 $internalField;
|
||||
}
|
||||
|
||||
defaultFaces
|
||||
"(HULL*.*)"
|
||||
{
|
||||
type fixedFluxPressure;
|
||||
value $internalField;
|
||||
}
|
||||
|
||||
"overset.*"
|
||||
"(BLADES|HUB_DISK|HUB)"
|
||||
{
|
||||
patchType overset;
|
||||
type fixedFluxPressure;
|
||||
type fixedFluxPressure;
|
||||
value $internalField;
|
||||
}
|
||||
|
||||
"(overset-1|oversetPatch)"
|
||||
{
|
||||
type overset;
|
||||
}
|
||||
}
|
||||
|
@ -20,13 +20,15 @@ internalField uniform (0 0 0);
|
||||
|
||||
boundaryField
|
||||
{
|
||||
#includeEtc "caseDicts/setConstraintTypes"
|
||||
|
||||
".*"
|
||||
{
|
||||
type uniformFixedValue;
|
||||
uniformValue (0 0 0);
|
||||
type fixedValue;
|
||||
value uniform (0 0 0);
|
||||
}
|
||||
|
||||
"(hullWall|propellerWall|rudderWall)"
|
||||
"(HULL_DISK|HULL|BLADES|HUB_DISK|HUB)"
|
||||
{
|
||||
type calculated;
|
||||
value uniform (0 0 0);
|
||||
@ -38,23 +40,11 @@ boundaryField
|
||||
type zeroGradient;
|
||||
}
|
||||
|
||||
"overset.*"
|
||||
overset-1
|
||||
{
|
||||
patchType overset;
|
||||
type zeroGradient;
|
||||
}
|
||||
|
||||
atmosphere
|
||||
{
|
||||
type fixedValue;
|
||||
value uniform (0 0 0);
|
||||
}
|
||||
|
||||
defaultFaces
|
||||
{
|
||||
type fixedValue;
|
||||
value uniform (0 0 0);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -0,0 +1,32 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2012 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class volScalarField;
|
||||
object zoneID;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
dimensions [0 0 0 0 0 0 0];
|
||||
|
||||
internalField uniform 0;
|
||||
|
||||
boundaryField
|
||||
{
|
||||
#includeEtc "caseDicts/setConstraintTypes"
|
||||
|
||||
".*"
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
8
tutorials/multiphase/overInterDyMFoam/rigidBodyHull/background/Allclean
Executable file
8
tutorials/multiphase/overInterDyMFoam/rigidBodyHull/background/Allclean
Executable file
@ -0,0 +1,8 @@
|
||||
#!/bin/sh
|
||||
cd "${0%/*}" || exit # Run from this directory
|
||||
. ${WM_PROJECT_DIR:?}/bin/tools/CleanFunctions # Tutorial clean functions
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
cleanCase0
|
||||
|
||||
#------------------------------------------------------------------------------
|
31
tutorials/multiphase/overInterDyMFoam/rigidBodyHull/background/Allrun
Executable file
31
tutorials/multiphase/overInterDyMFoam/rigidBodyHull/background/Allrun
Executable file
@ -0,0 +1,31 @@
|
||||
#!/bin/sh
|
||||
cd "${0%/*}" || exit # Run from this directory
|
||||
. ${WM_PROJECT_DIR:?}/bin/tools/RunFunctions # Tutorial run functions
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
./Allrun.pre
|
||||
|
||||
restore0Dir
|
||||
|
||||
runApplication -s 1 \
|
||||
mergeMeshes . ../overset-1 -overwrite
|
||||
|
||||
runApplication -s 2 \
|
||||
mergeMeshes . ../overset-2 -overwrite
|
||||
|
||||
runApplication createPatch -overwrite
|
||||
|
||||
runApplication -s 1 topoSet
|
||||
|
||||
runApplication setFields
|
||||
|
||||
runApplication -s 2 \
|
||||
topoSet -dict system/topoSetDict.cHullProp
|
||||
|
||||
runApplication decomposePar -force
|
||||
|
||||
runParallel $(getApplication)
|
||||
|
||||
runParallel redistributePar -reconstruct -overwrite
|
||||
|
||||
#------------------------------------------------------------------------------
|
@ -3,10 +3,8 @@ cd "${0%/*}" || exit # Run from this directory
|
||||
. ${WM_PROJECT_DIR:?}/bin/tools/RunFunctions # Tutorial run functions
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
./Allrun.pre
|
||||
runApplication blockMesh
|
||||
|
||||
runApplication decomposePar
|
||||
|
||||
runParallel $(getApplication)
|
||||
runApplication snappyHexMesh -overwrite
|
||||
|
||||
#------------------------------------------------------------------------------
|
@ -0,0 +1,124 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2012 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object dynamicMeshDict;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
dynamicFvMesh dynamicOversetFvMesh;
|
||||
|
||||
solvers
|
||||
{
|
||||
VF
|
||||
{
|
||||
motionSolverLibs (libfvMotionSolvers);
|
||||
motionSolver solidBody;
|
||||
solidBodyMotionFunction drivenLinearMotion;
|
||||
cellSet c0;
|
||||
cOfGdisplacement CofG;
|
||||
}
|
||||
|
||||
boat_propeller
|
||||
{
|
||||
motionSolverLibs (librigidBodyMeshMotion);
|
||||
motionSolver rigidBodyMotion;
|
||||
|
||||
report on;
|
||||
cellSet cHullProp;
|
||||
cOfGdisplacement CofG;
|
||||
bodyIdCofG 1;
|
||||
|
||||
solver
|
||||
{
|
||||
type Newmark;
|
||||
}
|
||||
|
||||
accelerationRelaxation 0.8;
|
||||
accelerationDamping 0.9;
|
||||
nIter 3;
|
||||
|
||||
bodies
|
||||
{
|
||||
hull
|
||||
{
|
||||
type rigidBody;
|
||||
parent root;
|
||||
mass 2787;
|
||||
|
||||
centreOfMass (0.178 0 0.3323);
|
||||
inertia (564 0 0 8535 0 8535);
|
||||
// Transformation tensor and centre of rotation
|
||||
transform (1 0 0 0 1 0 0 0 1) (0.178 0 0.3323);
|
||||
joint
|
||||
{
|
||||
type composite;
|
||||
|
||||
joints
|
||||
(
|
||||
{
|
||||
type Pxyz;
|
||||
}
|
||||
{
|
||||
type Ry;
|
||||
}
|
||||
);
|
||||
}
|
||||
patches
|
||||
(
|
||||
HULL
|
||||
HULL_DISK
|
||||
);
|
||||
innerDistance 100;
|
||||
outerDistance 200;
|
||||
}
|
||||
propeller
|
||||
{
|
||||
type rigidBody;
|
||||
parent hull;
|
||||
centreOfMass (-3.405396 -0.000044 0.129544);
|
||||
mass 0.3;
|
||||
transform (1 0 0 0 1 0 0 0 1) (-3.583 -0.000044 -0.202706);
|
||||
inertia (0.000556833 0 0 0.36905863 0 0.36858374);
|
||||
patches
|
||||
(
|
||||
BLADES
|
||||
HUB
|
||||
HUB_DISK
|
||||
);
|
||||
innerDistance 100;
|
||||
outerDistance 200;
|
||||
joint
|
||||
{
|
||||
type Rx;
|
||||
}
|
||||
}
|
||||
}
|
||||
restraints
|
||||
{
|
||||
force
|
||||
{
|
||||
type externalForce;
|
||||
body hull;
|
||||
location (-3.386 0 0.21);
|
||||
force table
|
||||
(
|
||||
(0 (500 0 0))
|
||||
(10 (2000 0 0))
|
||||
(20 (2000 0 0))
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -15,7 +15,7 @@ FoamFile
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
dimensions [0 1 -2 0 0 0 0];
|
||||
value (0 -9.81 0);
|
||||
value (0 0 -9.81);
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,21 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2012 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class uniformDimensionedScalarField;
|
||||
object hRef;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
dimensions [0 1 0 0 0 0 0];
|
||||
value 0.4125;
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -19,8 +19,8 @@ phases (water air);
|
||||
water
|
||||
{
|
||||
transportModel Newtonian;
|
||||
nu 1e-06;
|
||||
rho 998.2;
|
||||
nu 1.09e-06;
|
||||
rho 998.8;
|
||||
}
|
||||
|
||||
air
|
||||
@ -30,7 +30,7 @@ air
|
||||
rho 1;
|
||||
}
|
||||
|
||||
sigma 0;
|
||||
sigma 0;
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -16,9 +16,11 @@ FoamFile
|
||||
|
||||
simulationType RAS;
|
||||
|
||||
density variable;
|
||||
|
||||
RAS
|
||||
{
|
||||
RASModel kEpsilon;
|
||||
RASModel realizableKE;
|
||||
|
||||
turbulence on;
|
||||
|
@ -0,0 +1,93 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2012 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object blockMeshDict;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
scale 1;
|
||||
|
||||
vertices
|
||||
(
|
||||
( -7 -3 -1.8 )
|
||||
( 7 -3 -1.8 )
|
||||
( 7 3 -1.8 )
|
||||
( -7 3 -1.8 )
|
||||
( -7 -3 2.8 )
|
||||
( 7 -3 2.8 )
|
||||
( 7 3 2.8 )
|
||||
( -7 3 2.8 )
|
||||
);
|
||||
|
||||
blocks
|
||||
(
|
||||
hex (0 1 2 3 4 5 6 7) ( 120 51 39 ) simpleGrading ( 1 1 1 )
|
||||
);
|
||||
|
||||
edges
|
||||
(
|
||||
);
|
||||
|
||||
boundary
|
||||
(
|
||||
outlet
|
||||
{
|
||||
type patch;
|
||||
faces
|
||||
(
|
||||
(0 4 7 3)
|
||||
);
|
||||
}
|
||||
inlet
|
||||
{
|
||||
type patch;
|
||||
faces
|
||||
(
|
||||
(1 2 6 5)
|
||||
);
|
||||
}
|
||||
ymin
|
||||
{
|
||||
type symmetry;
|
||||
faces
|
||||
(
|
||||
(0 1 5 4)
|
||||
);
|
||||
}
|
||||
ymax
|
||||
{
|
||||
type symmetry;
|
||||
faces
|
||||
(
|
||||
(3 7 6 2)
|
||||
);
|
||||
}
|
||||
zmin
|
||||
{
|
||||
type symmetry;
|
||||
faces
|
||||
(
|
||||
(0 3 2 1)
|
||||
);
|
||||
}
|
||||
atmosphere
|
||||
{
|
||||
type patch;
|
||||
faces
|
||||
(
|
||||
(4 5 6 7)
|
||||
);
|
||||
}
|
||||
);
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -14,58 +14,53 @@ FoamFile
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
libs
|
||||
(
|
||||
overset
|
||||
rigidBodyDynamics
|
||||
fvMotionSolvers
|
||||
);
|
||||
libs (overset rigidBodyDynamics);
|
||||
|
||||
application overInterDyMFoam;
|
||||
|
||||
startFrom startTime;
|
||||
startFrom latestTime;
|
||||
|
||||
startTime 0;
|
||||
|
||||
stopAt endTime;
|
||||
|
||||
endTime 1.5;
|
||||
endTime 4;
|
||||
|
||||
deltaT 0.001;
|
||||
deltaT 1e-5;
|
||||
|
||||
writeControl adjustable;
|
||||
writeControl adjustableRunTime;
|
||||
|
||||
writeInterval 0.1;
|
||||
writeInterval 0.25;
|
||||
|
||||
purgeWrite 0;
|
||||
|
||||
writeFormat binary;
|
||||
|
||||
writePrecision 10;
|
||||
writePrecision 8;
|
||||
|
||||
writeCompression off;
|
||||
|
||||
timeFormat general;
|
||||
|
||||
timePrecision 6;
|
||||
timePrecision 8;
|
||||
|
||||
runTimeModifiable true;
|
||||
runTimeModifiable yes;
|
||||
|
||||
adjustTimeStep yes;
|
||||
|
||||
maxCo 4.0;
|
||||
maxAlphaCo 15;
|
||||
|
||||
maxAlphaCo 5.0;
|
||||
maxCo 70;
|
||||
|
||||
maxDeltaT 1;
|
||||
|
||||
functions
|
||||
{
|
||||
minMax
|
||||
minMax1
|
||||
{
|
||||
type fieldMinMax;
|
||||
libs (fieldFunctionObjects);
|
||||
fields (U);
|
||||
libs (fieldFunctionObjects);
|
||||
type fieldMinMax;
|
||||
fields (U p);
|
||||
}
|
||||
}
|
||||
|
@ -0,0 +1,37 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2012 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object createPatchDict;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
pointSync false;
|
||||
|
||||
patches
|
||||
(
|
||||
{
|
||||
name oversetPatch;
|
||||
|
||||
patchInfo
|
||||
{
|
||||
type overset;
|
||||
value uniform 0;
|
||||
}
|
||||
|
||||
constructFrom patches;
|
||||
|
||||
patches (MRF_REGION);
|
||||
}
|
||||
);
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -14,13 +14,13 @@ FoamFile
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
numberOfSubdomains 8;
|
||||
numberOfSubdomains 5;
|
||||
|
||||
method hierarchical;
|
||||
|
||||
coeffs
|
||||
{
|
||||
n (2 2 2);
|
||||
n (5 1 1);
|
||||
}
|
||||
|
||||
|
@ -0,0 +1,26 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2012 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object fvOptions;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
damp
|
||||
{
|
||||
type velocityDampingConstraint;
|
||||
active true;
|
||||
selectionMode all;
|
||||
UMax 14;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -21,25 +21,27 @@ ddtSchemes
|
||||
|
||||
gradSchemes
|
||||
{
|
||||
default Gauss linear;
|
||||
default Gauss linear;
|
||||
limitedGrad cellLimited Gauss linear 1;
|
||||
}
|
||||
|
||||
divSchemes
|
||||
{
|
||||
div(rhoPhi,U) Gauss upwind;
|
||||
div(U) Gauss linear;
|
||||
div(phi,alpha) Gauss vanLeer;
|
||||
div(phirb,alpha) Gauss linear;
|
||||
div(((rho*nuEff)*dev2(T(grad(U))))) Gauss linear;
|
||||
div(rhoPhi,U) Gauss upwind;
|
||||
div(phi,alpha) Gauss vanLeer;
|
||||
div(phirb,alpha) Gauss linear;
|
||||
|
||||
div(phi,k) Gauss upwind;
|
||||
div(phi,epsilon) Gauss upwind;
|
||||
div(phi,omega) Gauss upwind;
|
||||
turbulence Gauss linearUpwind limitedGrad;
|
||||
div(phi,k) $turbulence;
|
||||
div(phi,omega) $turbulence;
|
||||
div(phi,epsilon) $turbulence;
|
||||
|
||||
div(((rho*nuEff)*dev2(T(grad(U))))) Gauss linear;
|
||||
}
|
||||
|
||||
laplacianSchemes
|
||||
{
|
||||
default Gauss linear uncorrected;
|
||||
default Gauss linear corrected;
|
||||
}
|
||||
|
||||
interpolationSchemes
|
||||
@ -49,12 +51,27 @@ interpolationSchemes
|
||||
|
||||
snGradSchemes
|
||||
{
|
||||
default uncorrected;
|
||||
default corrected;
|
||||
}
|
||||
|
||||
fluxRequired
|
||||
{
|
||||
default no;
|
||||
pcorr ;
|
||||
p ;
|
||||
yPsi ;
|
||||
}
|
||||
|
||||
oversetInterpolation
|
||||
{
|
||||
method inverseDistance;
|
||||
method trackingInverseDistance;
|
||||
|
||||
searchBoxDivisions
|
||||
(
|
||||
(500 500 500)
|
||||
(500 500 500)
|
||||
(500 500 500)
|
||||
);
|
||||
}
|
||||
|
||||
oversetInterpolationSuppressed
|
||||
@ -63,8 +80,9 @@ oversetInterpolationSuppressed
|
||||
surfaceIntegrate(phiHbyA);
|
||||
}
|
||||
|
||||
fluxRequired
|
||||
wallDist
|
||||
{
|
||||
method Poisson;
|
||||
}
|
||||
|
||||
|
@ -20,34 +20,27 @@ solvers
|
||||
{
|
||||
solver PCG;
|
||||
preconditioner DIC;
|
||||
tolerance 1e-06;
|
||||
tolerance 1e-09;
|
||||
relTol 0;
|
||||
maxIter 300;
|
||||
maxIter 200;
|
||||
}
|
||||
|
||||
"alpha.water.*"
|
||||
{
|
||||
nAlphaCorr 3;
|
||||
nAlphaCorr 2;
|
||||
nAlphaSubCycles 2;
|
||||
cAlpha 1;
|
||||
icAlpha 0;
|
||||
|
||||
MULESCorr yes;
|
||||
nLimiterIter 5;
|
||||
nLimiterIter 10;
|
||||
alphaApplyPrevCorr no;
|
||||
|
||||
solver smoothSolver;
|
||||
smoother symGaussSeidel;
|
||||
tolerance 1e-8;
|
||||
relTol 0;
|
||||
}
|
||||
|
||||
"pcorr.*"
|
||||
{
|
||||
solver PCG;
|
||||
preconditioner DIC;
|
||||
tolerance 1e-9;
|
||||
tolerance 1e-12;
|
||||
relTol 0;
|
||||
minIter 1;
|
||||
}
|
||||
|
||||
p_rgh
|
||||
@ -55,68 +48,88 @@ solvers
|
||||
solver PBiCGStab;
|
||||
preconditioner DILU;
|
||||
tolerance 1e-9;
|
||||
relTol 0.01;
|
||||
}
|
||||
|
||||
Phi
|
||||
{
|
||||
$p_rgh;
|
||||
relTol 0.05;
|
||||
}
|
||||
|
||||
p_rghFinal
|
||||
{
|
||||
$p_rgh;
|
||||
relTol 0;
|
||||
solver PBiCGStab;
|
||||
preconditioner DILU;
|
||||
tolerance 1e-9;
|
||||
relTol 0.0;
|
||||
}
|
||||
|
||||
"(U|k|omega|epsilon).*"
|
||||
pcorr
|
||||
{
|
||||
$p;
|
||||
solver PBiCGStab;
|
||||
preconditioner DIC;
|
||||
}
|
||||
|
||||
pcorrFinal
|
||||
{
|
||||
$pcorr;
|
||||
}
|
||||
|
||||
yPsi
|
||||
{
|
||||
solver PBiCGStab;
|
||||
preconditioner DILU;
|
||||
tolerance 1e-5;
|
||||
relTol 0.0;
|
||||
}
|
||||
|
||||
"(U|h)"
|
||||
{
|
||||
solver smoothSolver;
|
||||
smoother symGaussSeidel;
|
||||
tolerance 1e-08;
|
||||
tolerance 1e-6;
|
||||
relTol 0.1;
|
||||
}
|
||||
|
||||
"(UFinal|hFinal)"
|
||||
{
|
||||
solver smoothSolver;
|
||||
smoother symGaussSeidel;
|
||||
tolerance 1e-7;
|
||||
relTol 0.0;
|
||||
}
|
||||
|
||||
"(k|omega|epsilon|kFinal|epsilonFinal|omegaFinal)"
|
||||
{
|
||||
solver smoothSolver;
|
||||
smoother symGaussSeidel;
|
||||
tolerance 1e-6;
|
||||
relTol 0.01;
|
||||
}
|
||||
|
||||
"(rho|rhoFinal)"
|
||||
{
|
||||
solver PBiCGStab;
|
||||
preconditioner DILU;
|
||||
tolerance 1e-6;
|
||||
relTol 0;
|
||||
}
|
||||
}
|
||||
|
||||
PIMPLE
|
||||
{
|
||||
momentumPredictor no;
|
||||
nOuterCorrectors 2;
|
||||
nCorrectors 2;
|
||||
nNonOrthogonalCorrectors 0;
|
||||
|
||||
ddtCorr yes;
|
||||
correctPhi no;
|
||||
massFluxInterpolation no;
|
||||
|
||||
moveMeshOuterCorrectors no;
|
||||
turbOnFinalIterOnly yes;
|
||||
|
||||
correctPhi no;
|
||||
oversetAdjustPhi no;
|
||||
}
|
||||
|
||||
potentialFlow
|
||||
{
|
||||
nNonOrthogonalCorrectors 2;
|
||||
PhiRefCell 0;
|
||||
PhiRefValue 0;
|
||||
ddtCorr false;
|
||||
momentumPredictor false;
|
||||
}
|
||||
|
||||
relaxationFactors
|
||||
{
|
||||
fields
|
||||
{
|
||||
}
|
||||
equations
|
||||
{
|
||||
".*" 1;
|
||||
".*" 1;
|
||||
}
|
||||
}
|
||||
|
||||
cache
|
||||
{
|
||||
grad(U);
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -17,6 +17,7 @@ FoamFile
|
||||
defaultFieldValues
|
||||
(
|
||||
volScalarFieldValue zoneID 123
|
||||
volScalarFieldValue alpha.water 0
|
||||
);
|
||||
|
||||
regions
|
||||
@ -25,7 +26,7 @@ regions
|
||||
// (does zerogradient on boundaries)
|
||||
cellToCell
|
||||
{
|
||||
set bgr0;
|
||||
set c0;
|
||||
|
||||
fieldValues
|
||||
(
|
||||
@ -35,17 +36,7 @@ regions
|
||||
|
||||
cellToCell
|
||||
{
|
||||
set hullBox0;
|
||||
|
||||
fieldValues
|
||||
(
|
||||
volScalarFieldValue zoneID 1
|
||||
);
|
||||
}
|
||||
|
||||
cellToCell
|
||||
{
|
||||
set propeller0;
|
||||
set c1;
|
||||
|
||||
fieldValues
|
||||
(
|
||||
@ -55,11 +46,23 @@ regions
|
||||
|
||||
cellToCell
|
||||
{
|
||||
set rudder0;
|
||||
set c2;
|
||||
|
||||
fieldValues
|
||||
(
|
||||
volScalarFieldValue zoneID 3
|
||||
volScalarFieldValue zoneID 1
|
||||
);
|
||||
}
|
||||
|
||||
// Set cell values
|
||||
// (does zerogradient on boundaries)
|
||||
boxToCell
|
||||
{
|
||||
box (-1000 -1000 -1000) (1000 1000 0.4125);
|
||||
|
||||
fieldValues
|
||||
(
|
||||
volScalarFieldValue alpha.water 1
|
||||
);
|
||||
}
|
||||
);
|
@ -0,0 +1,122 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2012 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object snappyHexMeshDict;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
castellatedMesh true;
|
||||
snap true;
|
||||
addLayers false;
|
||||
|
||||
geometry
|
||||
{
|
||||
BoxRefinement_1
|
||||
{
|
||||
type searchableBox ;
|
||||
min (-3.8 -0.8 -0.2 );
|
||||
max (3.8 0.8 0.75 );
|
||||
}
|
||||
};
|
||||
|
||||
castellatedMeshControls
|
||||
{
|
||||
maxLocalCells 200000000;
|
||||
maxGlobalCells 300000000;
|
||||
minRefinementCells 20;
|
||||
nCellsBetweenLevels 4;
|
||||
maxLoadUnbalance 0.1;
|
||||
allowFreeStandingZoneFaces true;
|
||||
resolveFeatureAngle 30;
|
||||
features
|
||||
(
|
||||
);
|
||||
|
||||
refinementSurfaces
|
||||
{
|
||||
}
|
||||
|
||||
refinementRegions
|
||||
{
|
||||
BoxRefinement_1
|
||||
{
|
||||
mode inside;
|
||||
levels ((1 1));
|
||||
}
|
||||
}
|
||||
|
||||
locationInMesh ( 0 0 0 ) ;
|
||||
}
|
||||
|
||||
snapControls
|
||||
{
|
||||
tolerance 2;
|
||||
implicitFeatureSnap false;
|
||||
explicitFeatureSnap true;
|
||||
multiRegionFeatureSnap true;
|
||||
detectNearSurfacesSnap true;
|
||||
nSmoothPatch 3;
|
||||
nSolveIter 50;
|
||||
nRelaxIter 5;
|
||||
nFeatureSnapIter 10;
|
||||
nSmoothInternal 3;
|
||||
nFaceSplitInterval 5;
|
||||
}
|
||||
|
||||
addLayersControls
|
||||
{
|
||||
}
|
||||
|
||||
meshQualityControls
|
||||
{
|
||||
minVol 1e-13;
|
||||
minTetQuality 1e-16;
|
||||
minArea 1e-13;
|
||||
minTwist 0.05;
|
||||
minDeterminant 1e-06;
|
||||
minFaceWeight 0.02;
|
||||
minVolRatio 0.01;
|
||||
minTriangleTwist -1;
|
||||
minFlatness 0.5;
|
||||
maxNonOrtho 70;
|
||||
maxBoundarySkewness 20;
|
||||
maxInternalSkewness 4;
|
||||
maxConcave 80;
|
||||
nSmoothScale 4;
|
||||
errorReduction 0.75;
|
||||
|
||||
relaxed
|
||||
{
|
||||
minVol 1e-30;
|
||||
minTetQuality 1e-30;
|
||||
minArea 1e-30;
|
||||
minTwist 0.001;
|
||||
minDeterminant 1e-06;
|
||||
minFaceWeight 1e-06;
|
||||
minVolRatio 0.01;
|
||||
minTriangleTwist -1;
|
||||
minFlatness 0.5;
|
||||
maxNonOrtho 75;
|
||||
maxBoundarySkewness 20;
|
||||
maxInternalSkewness 8;
|
||||
maxConcave 80;
|
||||
nSmoothScale 4;
|
||||
errorReduction 0.75;
|
||||
}
|
||||
}
|
||||
|
||||
mergeTolerance 1e-08;
|
||||
|
||||
debug 0;
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -17,21 +17,54 @@ FoamFile
|
||||
actions
|
||||
(
|
||||
{
|
||||
name refineSet; // all around hullBox
|
||||
name c0;
|
||||
type cellSet;
|
||||
action new;
|
||||
source zoneToCell;
|
||||
zone hullBox;
|
||||
source regionsToCell;
|
||||
sourceInfo
|
||||
{
|
||||
insidePoints ((-6 0 0.0));
|
||||
}
|
||||
}
|
||||
|
||||
{
|
||||
name refineSet;
|
||||
name c1;
|
||||
type cellSet;
|
||||
action subset;
|
||||
source boxToCell;
|
||||
boxes
|
||||
(
|
||||
(0.05 -0.2 -0.2)(0.8 0.2 0.2)
|
||||
);
|
||||
action new;
|
||||
source cellToCell;
|
||||
sourceInfo
|
||||
{
|
||||
set c0;
|
||||
}
|
||||
}
|
||||
|
||||
{
|
||||
name c1;
|
||||
type cellSet;
|
||||
action invert;
|
||||
}
|
||||
|
||||
{
|
||||
name c2;
|
||||
type cellSet;
|
||||
action new;
|
||||
source regionsToCell;
|
||||
sourceInfo
|
||||
{
|
||||
set c1;
|
||||
insidePoints ((-3.4 0.1 0.1));
|
||||
}
|
||||
}
|
||||
|
||||
{
|
||||
name c1;
|
||||
type cellSet;
|
||||
action delete;
|
||||
source cellToCell;
|
||||
sourceInfo
|
||||
{
|
||||
set c2;
|
||||
}
|
||||
}
|
||||
);
|
||||
|
@ -17,21 +17,25 @@ FoamFile
|
||||
actions
|
||||
(
|
||||
{
|
||||
name refineSet; // all around hullBox
|
||||
name cHullProp;
|
||||
type cellSet;
|
||||
action new;
|
||||
source zoneToCell;
|
||||
zone hullBox;
|
||||
source cellToCell;
|
||||
sourceInfo
|
||||
{
|
||||
set c1;
|
||||
}
|
||||
}
|
||||
|
||||
{
|
||||
name refineSet;
|
||||
name cHullProp;
|
||||
type cellSet;
|
||||
action subset;
|
||||
source boxToCell;
|
||||
boxes
|
||||
(
|
||||
(0 -0.2 -0.2)(0.04 0.2 0.2)
|
||||
);
|
||||
action add;
|
||||
source cellToCell;
|
||||
sourceInfo
|
||||
{
|
||||
set c2;
|
||||
}
|
||||
}
|
||||
);
|
||||
|
@ -5,6 +5,6 @@ cd "${0%/*}" || exit # Run from this directory
|
||||
|
||||
cleanCase0
|
||||
|
||||
rm -f constant/cellInterpolationWeight
|
||||
rm -rf constant
|
||||
|
||||
#------------------------------------------------------------------------------
|
24
tutorials/multiphase/overInterDyMFoam/rigidBodyHull/overset-1/Allrun
Executable file
24
tutorials/multiphase/overInterDyMFoam/rigidBodyHull/overset-1/Allrun
Executable file
@ -0,0 +1,24 @@
|
||||
#!/bin/sh
|
||||
cd "${0%/*}" || exit # Run from this directory
|
||||
. ${WM_PROJECT_DIR:?}/bin/tools/RunFunctions # Tutorial run functions
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
mkdir -p constant/triSurface
|
||||
|
||||
cp -f \
|
||||
"$FOAM_TUTORIALS"/resources/geometry/rigidBodyHull/HULL.obj.gz \
|
||||
constant/triSurface/
|
||||
|
||||
runApplication blockMesh
|
||||
|
||||
runApplication surfaceFeatureExtract
|
||||
|
||||
runApplication decomposePar
|
||||
|
||||
runParallel snappyHexMesh -overwrite
|
||||
|
||||
runParallel redistributePar -reconstruct -constant -overwrite
|
||||
|
||||
runApplication renumberMesh -constant -overwrite
|
||||
|
||||
#------------------------------------------------------------------------------
|
@ -10,27 +10,46 @@ FoamFile
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object topoSetDict;
|
||||
object blockMeshDict;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
actions
|
||||
scale 1;
|
||||
|
||||
vertices
|
||||
(
|
||||
( -4.99979 -1.20038 -0.400296 )
|
||||
( 5 -1.20038 -0.400296 )
|
||||
( 5 1.20038 -0.400296 )
|
||||
( -4.99979 1.20038 -0.400296 )
|
||||
( -4.99979 -1.20038 1.10002 )
|
||||
( 5 -1.20038 1.10002 )
|
||||
( 5 1.20038 1.10002 )
|
||||
( -4.99979 1.20038 1.10002 )
|
||||
);
|
||||
|
||||
blocks
|
||||
(
|
||||
hex (0 1 2 3 4 5 6 7) ( 85 20 12 ) simpleGrading ( 1 1 1 )
|
||||
);
|
||||
|
||||
edges
|
||||
(
|
||||
);
|
||||
|
||||
boundary
|
||||
(
|
||||
overset-1
|
||||
{
|
||||
name refineSet; // all around bgr
|
||||
type cellSet;
|
||||
action new;
|
||||
source zoneToCell;
|
||||
zone background;
|
||||
}
|
||||
{
|
||||
name refineSet;
|
||||
type cellSet;
|
||||
action subset;
|
||||
source boxToCell;
|
||||
boxes
|
||||
type overset;
|
||||
faces
|
||||
(
|
||||
(-0.2 -0.2 -0.2)(0.04 0.2 0.2) //hullBox
|
||||
(0 4 7 3)
|
||||
(1 2 6 5)
|
||||
(0 1 5 4)
|
||||
(3 7 6 2)
|
||||
(0 3 2 1)
|
||||
(4 5 6 7)
|
||||
);
|
||||
}
|
||||
);
|
@ -0,0 +1,48 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2012 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object controlDict;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
application snappyHexMesh;
|
||||
|
||||
startFrom startTime;
|
||||
|
||||
startTime 0;
|
||||
|
||||
stopAt endTime;
|
||||
|
||||
endTime 1;
|
||||
|
||||
deltaT 1;
|
||||
|
||||
writeControl timeStep;
|
||||
|
||||
writeInterval 1;
|
||||
|
||||
purgeWrite 0;
|
||||
|
||||
writeFormat ascii;
|
||||
|
||||
writePrecision 8;
|
||||
|
||||
writeCompression off;
|
||||
|
||||
timeFormat general;
|
||||
|
||||
timePrecision 6;
|
||||
|
||||
runTimeModifiable no;
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -10,27 +10,18 @@ FoamFile
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object refineMeshDict;
|
||||
object decomposeParDict;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
set refineSet;
|
||||
numberOfSubdomains 8;
|
||||
|
||||
coordinateSystem global;
|
||||
method hierarchical;
|
||||
|
||||
globalCoeffs
|
||||
coeffs
|
||||
{
|
||||
tan1 (1 0 0);
|
||||
tan2 (0 1 0);
|
||||
n (8 1 1);
|
||||
}
|
||||
|
||||
directions ( tan1 tan2 );
|
||||
|
||||
useHexTopology no;
|
||||
|
||||
geometricCut yes;
|
||||
|
||||
writeMesh no;
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,30 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2012 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object fvSchemes;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
gradSchemes
|
||||
{
|
||||
}
|
||||
|
||||
divSchemes
|
||||
{
|
||||
}
|
||||
|
||||
laplacianSchemes
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,18 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2012 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object fvSolution;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,196 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2012 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object snappyHexMeshDict;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
castellatedMesh true;
|
||||
snap true;
|
||||
addLayers false;
|
||||
|
||||
geometry
|
||||
{
|
||||
HULL.obj
|
||||
{
|
||||
type triSurfaceMesh;
|
||||
name HULL ;
|
||||
regions
|
||||
{
|
||||
HULL
|
||||
{
|
||||
name HULL;
|
||||
}
|
||||
HULL_DISK
|
||||
{
|
||||
name HULL_DISK;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
BoxRefinement_1
|
||||
{
|
||||
type searchableBox ;
|
||||
min ( -3.60318 -0.20025 -0.039084 );
|
||||
max ( -3.20311 0.20025 0.395883 );
|
||||
}
|
||||
|
||||
BoxRefinement_3_hub
|
||||
{
|
||||
type searchableBox ;
|
||||
min ( -3.54 -0.12 0.010);
|
||||
max ( -3.34 0.12 0.26);
|
||||
}
|
||||
};
|
||||
|
||||
castellatedMeshControls
|
||||
{
|
||||
maxLocalCells 200000000;
|
||||
maxGlobalCells 300000000;
|
||||
minRefinementCells 20;
|
||||
nCellsBetweenLevels 2;
|
||||
maxLoadUnbalance 0.1;
|
||||
allowFreeStandingZoneFaces true;
|
||||
resolveFeatureAngle 30;
|
||||
features
|
||||
(
|
||||
{
|
||||
file "HULL.eMesh" ;
|
||||
level 0 ;
|
||||
}
|
||||
);
|
||||
|
||||
refinementSurfaces
|
||||
{
|
||||
HULL
|
||||
{
|
||||
level (0 0);
|
||||
regions
|
||||
{
|
||||
HULL
|
||||
{
|
||||
level (2 2);
|
||||
}
|
||||
HULL_DISK
|
||||
{
|
||||
level (2 2);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
refinementRegions
|
||||
{
|
||||
BoxRefinement_1
|
||||
{
|
||||
mode inside;
|
||||
levels ((0 2));
|
||||
}
|
||||
|
||||
BoxRefinement_3_hub
|
||||
{
|
||||
mode inside;
|
||||
levels ((5 5));
|
||||
}
|
||||
}
|
||||
|
||||
locationInMesh ( 4.3245044 0.88143855 0.86520574 ) ;
|
||||
}
|
||||
|
||||
snapControls
|
||||
{
|
||||
tolerance 2;
|
||||
implicitFeatureSnap false;
|
||||
explicitFeatureSnap true;
|
||||
multiRegionFeatureSnap true;
|
||||
detectNearSurfacesSnap true;
|
||||
nSmoothPatch 3;
|
||||
nSolveIter 50;
|
||||
nRelaxIter 5;
|
||||
nFeatureSnapIter 10;
|
||||
nSmoothInternal 3;
|
||||
nFaceSplitInterval 5;
|
||||
}
|
||||
|
||||
addLayersControls
|
||||
{
|
||||
layers
|
||||
{
|
||||
"(HULL_DISK|HULL)"
|
||||
{
|
||||
nSurfaceLayers 4;
|
||||
}
|
||||
}
|
||||
relativeSizes true ;
|
||||
expansionRatio 1.1 ;
|
||||
firstLayerThickness 0.2 ;
|
||||
featureAngle 85;
|
||||
slipFeatureAngle 30;
|
||||
nGrow 0;
|
||||
nBufferCellsNoExtrude 0;
|
||||
minMedianAxisAngle 90;
|
||||
maxFaceThicknessRatio 0.2;
|
||||
maxThicknessToMedialRatio 0.3;
|
||||
minThickness 1e-06;
|
||||
nLayerIter 50;
|
||||
nRelaxIter 5;
|
||||
nSmoothSurfaceNormals 10;
|
||||
nSmoothNormals 3;
|
||||
nSmoothThickness 10;
|
||||
nRelaxedIter 10;
|
||||
nMedialAxisIter 10;
|
||||
}
|
||||
|
||||
meshQualityControls
|
||||
{
|
||||
minVol 1e-20;
|
||||
minTetQuality 1e-20;
|
||||
minArea 1e-20;
|
||||
minTwist 0.05;
|
||||
minDeterminant 1e-06;
|
||||
minFaceWeight 0.02;
|
||||
minVolRatio 0.01;
|
||||
minTriangleTwist -1;
|
||||
minFlatness 0.5;
|
||||
maxNonOrtho 70;
|
||||
maxBoundarySkewness 20;
|
||||
maxInternalSkewness 4;
|
||||
maxConcave 80;
|
||||
nSmoothScale 4;
|
||||
errorReduction 0.75;
|
||||
|
||||
relaxed
|
||||
{
|
||||
minVol 1e-30;
|
||||
minTetQuality 1e-30;
|
||||
minArea 1e-30;
|
||||
minTwist 0.001;
|
||||
minDeterminant 1e-06;
|
||||
minFaceWeight 1e-06;
|
||||
minVolRatio 0.01;
|
||||
minTriangleTwist -1;
|
||||
minFlatness 0.5;
|
||||
maxNonOrtho 75;
|
||||
maxBoundarySkewness 20;
|
||||
maxInternalSkewness 8;
|
||||
maxConcave 80;
|
||||
nSmoothScale 4;
|
||||
errorReduction 0.75;
|
||||
}
|
||||
}
|
||||
|
||||
mergeTolerance 1e-08;
|
||||
|
||||
debug 0;
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,29 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2012 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object surfaceFeatureExtractDict;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
HULL.obj
|
||||
{
|
||||
extractionMethod extractFromSurface;
|
||||
writeObj yes;
|
||||
|
||||
extractFromSurfaceCoeffs
|
||||
{
|
||||
includedAngle 150;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
10
tutorials/multiphase/overInterDyMFoam/rigidBodyHull/overset-2/Allclean
Executable file
10
tutorials/multiphase/overInterDyMFoam/rigidBodyHull/overset-2/Allclean
Executable file
@ -0,0 +1,10 @@
|
||||
#!/bin/sh
|
||||
cd "${0%/*}" || exit # Run from this directory
|
||||
. ${WM_PROJECT_DIR:?}/bin/tools/CleanFunctions # Tutorial clean functions
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
cleanCase0
|
||||
|
||||
rm -rf constant
|
||||
|
||||
#------------------------------------------------------------------------------
|
24
tutorials/multiphase/overInterDyMFoam/rigidBodyHull/overset-2/Allrun
Executable file
24
tutorials/multiphase/overInterDyMFoam/rigidBodyHull/overset-2/Allrun
Executable file
@ -0,0 +1,24 @@
|
||||
#!/bin/sh
|
||||
cd "${0%/*}" || exit # Run from this directory
|
||||
. ${WM_PROJECT_DIR:?}/bin/tools/RunFunctions # Tutorial run functions
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
mkdir -p constant/triSurface
|
||||
|
||||
cp -f \
|
||||
"$FOAM_TUTORIALS"/resources/geometry/rigidBodyHull/{BLADES,HUB,MRF_REGION}.obj.gz \
|
||||
constant/triSurface/
|
||||
|
||||
runApplication blockMesh
|
||||
|
||||
runApplication surfaceFeatureExtract
|
||||
|
||||
runApplication decomposePar
|
||||
|
||||
runParallel snappyHexMesh -overwrite
|
||||
|
||||
runParallel redistributePar -reconstruct -constant -overwrite
|
||||
|
||||
runApplication renumberMesh -constant -overwrite
|
||||
|
||||
#------------------------------------------------------------------------------
|
@ -0,0 +1,100 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2012 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object blockMeshDict;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
scale 1;
|
||||
|
||||
xmin -3.60;
|
||||
xmax -3.35;
|
||||
ymin -0.2;
|
||||
ymax 0.2;
|
||||
zmin -0.05;
|
||||
zmax 0.3;
|
||||
|
||||
vertices
|
||||
(
|
||||
( $xmin $ymin $zmin )
|
||||
( $xmax $ymin $zmin )
|
||||
( $xmax $ymax $zmin )
|
||||
( $xmin $ymax $zmin )
|
||||
( $xmin $ymin $zmax )
|
||||
( $xmax $ymin $zmax )
|
||||
( $xmax $ymax $zmax )
|
||||
( $xmin $ymax $zmax )
|
||||
);
|
||||
|
||||
blocks
|
||||
(
|
||||
hex (0 1 2 3 4 5 6 7) ( 20 26 20 ) simpleGrading ( 1 1 1 )
|
||||
);
|
||||
|
||||
edges
|
||||
(
|
||||
);
|
||||
|
||||
boundary
|
||||
(
|
||||
XMin
|
||||
{
|
||||
type patch;
|
||||
faces
|
||||
(
|
||||
(0 4 7 3)
|
||||
);
|
||||
}
|
||||
XMax
|
||||
{
|
||||
type patch;
|
||||
faces
|
||||
(
|
||||
(1 2 6 5)
|
||||
);
|
||||
}
|
||||
YMin
|
||||
{
|
||||
type symmetry;
|
||||
faces
|
||||
(
|
||||
(0 1 5 4)
|
||||
);
|
||||
}
|
||||
YMax
|
||||
{
|
||||
type symmetry;
|
||||
faces
|
||||
(
|
||||
(3 7 6 2)
|
||||
);
|
||||
}
|
||||
ZMin
|
||||
{
|
||||
type wall;
|
||||
faces
|
||||
(
|
||||
(0 3 2 1)
|
||||
);
|
||||
}
|
||||
ZMax
|
||||
{
|
||||
type patch;
|
||||
faces
|
||||
(
|
||||
(4 5 6 7)
|
||||
);
|
||||
}
|
||||
);
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,48 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2012 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object controlDict;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
application snappyHexMesh;
|
||||
|
||||
startFrom startTime;
|
||||
|
||||
startTime 0;
|
||||
|
||||
stopAt endTime;
|
||||
|
||||
endTime 1;
|
||||
|
||||
deltaT 1;
|
||||
|
||||
writeControl timeStep;
|
||||
|
||||
writeInterval 1;
|
||||
|
||||
purgeWrite 0;
|
||||
|
||||
writeFormat ascii;
|
||||
|
||||
writePrecision 8;
|
||||
|
||||
writeCompression off;
|
||||
|
||||
timeFormat general;
|
||||
|
||||
timePrecision 6;
|
||||
|
||||
runTimeModifiable no;
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -10,27 +10,18 @@ FoamFile
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object refineMeshDict;
|
||||
object decomposeParDict;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
set refineSet;
|
||||
numberOfSubdomains 8;
|
||||
|
||||
coordinateSystem global;
|
||||
method hierarchical;
|
||||
|
||||
globalCoeffs
|
||||
coeffs
|
||||
{
|
||||
tan1 (1 0 0);
|
||||
tan2 (0 1 0);
|
||||
n (8 1 1);
|
||||
}
|
||||
|
||||
directions ( tan1 tan2 normal);
|
||||
|
||||
useHexTopology no;
|
||||
|
||||
geometricCut yes;
|
||||
|
||||
writeMesh no;
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,30 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2012 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object fvSchemes;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
gradSchemes
|
||||
{
|
||||
}
|
||||
|
||||
divSchemes
|
||||
{
|
||||
}
|
||||
|
||||
laplacianSchemes
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,18 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2012 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object fvSolution;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,205 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2012 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object snappyHexMeshDict;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
castellatedMesh true;
|
||||
snap true;
|
||||
addLayers false;
|
||||
|
||||
geometry
|
||||
{
|
||||
BLADES.obj
|
||||
{
|
||||
type triSurfaceMesh;
|
||||
name BLADES;
|
||||
}
|
||||
|
||||
HUB.obj
|
||||
{
|
||||
type triSurfaceMesh;
|
||||
name HUB;
|
||||
regions
|
||||
{
|
||||
|
||||
HUB { name HUB; }
|
||||
HUB_DISK { name HUB_DISK; }
|
||||
}
|
||||
}
|
||||
|
||||
MRF_REGION.obj
|
||||
{
|
||||
type triSurfaceMesh;
|
||||
name MRF_REGION;
|
||||
}
|
||||
|
||||
BoxRefinement_3
|
||||
{
|
||||
type searchableBox ;
|
||||
min ( -4 -0.135 0.0085 );
|
||||
max ( -3.3 0.135 0.26 );
|
||||
}
|
||||
};
|
||||
|
||||
castellatedMeshControls
|
||||
{
|
||||
maxLocalCells 200000000;
|
||||
maxGlobalCells 300000000;
|
||||
minRefinementCells 20;
|
||||
nCellsBetweenLevels 2;
|
||||
maxLoadUnbalance 0.1;
|
||||
allowFreeStandingZoneFaces true;
|
||||
resolveFeatureAngle 30;
|
||||
features
|
||||
(
|
||||
{
|
||||
file "HUB.eMesh" ;
|
||||
level 0 ;
|
||||
}
|
||||
{
|
||||
file "BLADES.eMesh" ;
|
||||
level 0 ;
|
||||
}
|
||||
{
|
||||
file "MRF_REGION.eMesh" ;
|
||||
level 0 ;
|
||||
}
|
||||
);
|
||||
|
||||
refinementSurfaces
|
||||
{
|
||||
MRF_REGION
|
||||
{
|
||||
level (2 2);
|
||||
}
|
||||
|
||||
HUB
|
||||
{
|
||||
level (2 2);
|
||||
}
|
||||
BLADES
|
||||
{
|
||||
level (2 4);
|
||||
}
|
||||
}
|
||||
|
||||
refinementRegions
|
||||
{
|
||||
}
|
||||
|
||||
locationInMesh (-3.50 0.0 0.23);
|
||||
}
|
||||
|
||||
snapControls
|
||||
{
|
||||
tolerance 4;
|
||||
implicitFeatureSnap true;
|
||||
explicitFeatureSnap false;
|
||||
multiRegionFeatureSnap true;
|
||||
|
||||
nSmoothPatch 5;
|
||||
nSolveIter 100;
|
||||
nRelaxIter 5;
|
||||
nFeatureSnapIter 15;
|
||||
nSmoothInternal 3;
|
||||
}
|
||||
|
||||
addLayersControls
|
||||
{
|
||||
layers
|
||||
{
|
||||
HUB
|
||||
{
|
||||
nSurfaceLayers 3;
|
||||
firstLayerThickness 0.2;
|
||||
expansionRatio 1.2;
|
||||
}
|
||||
BLADES
|
||||
{
|
||||
nSurfaceLayers 3;
|
||||
firstLayerThickness 0.2;
|
||||
expansionRatio 1.2;
|
||||
}
|
||||
HUB_DISK
|
||||
{
|
||||
nSurfaceLayers 3;
|
||||
firstLayerThickness 0.1;
|
||||
expansionRatio 1.2;
|
||||
}
|
||||
}
|
||||
relativeSizes true ;
|
||||
expansionRatio 1.2 ;
|
||||
firstLayerThickness 0.1 ;
|
||||
featureAngle 85;
|
||||
slipFeatureAngle 30;
|
||||
nGrow 0;
|
||||
nBufferCellsNoExtrude 0;
|
||||
minMedianAxisAngle 90;
|
||||
maxFaceThicknessRatio 0.2;
|
||||
maxThicknessToMedialRatio 0.3;
|
||||
minThickness 1e-06;
|
||||
nLayerIter 50;
|
||||
nRelaxIter 5;
|
||||
nSmoothSurfaceNormals 10;
|
||||
nSmoothNormals 3;
|
||||
nSmoothThickness 10;
|
||||
nRelaxedIter 10;
|
||||
nMedialAxisIter 10;
|
||||
}
|
||||
|
||||
meshQualityControls
|
||||
{
|
||||
minVol 1e-25;
|
||||
minTetQuality 1e-25;
|
||||
minArea 1e-20;
|
||||
minTwist 0.001;
|
||||
minDeterminant 1e-06;
|
||||
minFaceWeight 0.05;
|
||||
minVolRatio 0.001;
|
||||
minTriangleTwist -1;
|
||||
minFlatness 0.5;
|
||||
maxNonOrtho 70;
|
||||
maxBoundarySkewness 20;
|
||||
maxInternalSkewness 4;
|
||||
maxConcave 80;
|
||||
nSmoothScale 4;
|
||||
errorReduction 0.75;
|
||||
maxNonOrtho 70;
|
||||
|
||||
relaxed
|
||||
{
|
||||
minVol 1e-30;
|
||||
minTetQuality 1e-30;
|
||||
minArea 1e-30;
|
||||
minTwist 0.001;
|
||||
minDeterminant 1e-06;
|
||||
minFaceWeight 1e-06;
|
||||
minVolRatio 0.01;
|
||||
minTriangleTwist -1;
|
||||
minFlatness 0.5;
|
||||
maxNonOrtho 75;
|
||||
maxBoundarySkewness 20;
|
||||
maxInternalSkewness 8;
|
||||
maxConcave 80;
|
||||
nSmoothScale 4;
|
||||
errorReduction 0.75;
|
||||
}
|
||||
}
|
||||
|
||||
mergeTolerance 1e-08;
|
||||
|
||||
debug 0;
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -10,35 +10,43 @@ FoamFile
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object setFieldsDict;
|
||||
object surfaceFeatureExtractDict;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
defaultFieldValues
|
||||
(
|
||||
volScalarFieldValue alpha.water 0
|
||||
);
|
||||
HUB.obj
|
||||
{
|
||||
extractionMethod extractFromSurface;
|
||||
writeObj yes;
|
||||
|
||||
regions
|
||||
(
|
||||
boxToCell
|
||||
extractFromSurfaceCoeffs
|
||||
{
|
||||
box ( -100 -100 -100 ) ( 100 0.0 100 );
|
||||
fieldValues
|
||||
(
|
||||
volScalarFieldValue alpha.water 1
|
||||
);
|
||||
includedAngle 150;
|
||||
}
|
||||
}
|
||||
|
||||
boxToFace
|
||||
BLADES.obj
|
||||
{
|
||||
extractionMethod extractFromSurface;
|
||||
writeObj yes;
|
||||
|
||||
extractFromSurfaceCoeffs
|
||||
{
|
||||
box ( -100 -100 -100 ) ( 100 0.0 100 );
|
||||
fieldValues
|
||||
(
|
||||
volScalarFieldValue alpha.water 1
|
||||
);
|
||||
includedAngle 150;
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
MRF_REGION.obj
|
||||
{
|
||||
extractionMethod extractFromSurface;
|
||||
writeObj yes;
|
||||
|
||||
extractFromSurfaceCoeffs
|
||||
{
|
||||
includedAngle 150;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
BIN
tutorials/resources/geometry/rigidBodyHull/BLADES.obj.gz
Normal file
BIN
tutorials/resources/geometry/rigidBodyHull/BLADES.obj.gz
Normal file
Binary file not shown.
BIN
tutorials/resources/geometry/rigidBodyHull/HUB.obj.gz
Normal file
BIN
tutorials/resources/geometry/rigidBodyHull/HUB.obj.gz
Normal file
Binary file not shown.
BIN
tutorials/resources/geometry/rigidBodyHull/HULL.obj.gz
Normal file
BIN
tutorials/resources/geometry/rigidBodyHull/HULL.obj.gz
Normal file
Binary file not shown.
BIN
tutorials/resources/geometry/rigidBodyHull/MRF_REGION.obj.gz
Normal file
BIN
tutorials/resources/geometry/rigidBodyHull/MRF_REGION.obj.gz
Normal file
Binary file not shown.
Loading…
Reference in New Issue
Block a user