Commit Graph

16298 Commits

Author SHA1 Message Date
d25649c44d ENH: movingWallVelocityFvPatchVectorField: corrected comment. Fixes #4 2015-11-16 14:14:29 +00:00
f5a9ae43c6 COMP: liquidPropertiesFvPatchFields: compilation order 2015-11-10 12:59:47 +00:00
4f9e48bfc5 BUG: scalarTransport: have regIOobject member data
functionObjects only get detroyed when the runTime gets destroyed. So the
mesh is already destroyed and we cannot hold e.g. a volScalarField since
that will try to 'checkOut' from the objectRegistry(=mesh) upon destruction.
Note that we only see this in chtMultiRegionFoam.
2015-11-09 15:42:16 +00:00
0431b8fbe1 ENH: humidityTemperatureCoupledMixed: moved to separate library
This bc was in compressible turbulence library which made it dependent
on liquidProperties. It was moved to a separate library since it is only
used in a single tutorial.
2015-11-09 14:40:21 +00:00
4caacdddb3 Merge branch 'feature-snappyHexMesh-gapRefinement' into 'develop'
Feature snappy hex mesh gap refinement

Adding automatic gap refinement capability

See merge request !2
2015-11-09 11:48:06 +00:00
95eb7cc681 Merge branch 'feature-snappyHexMesh' into 'develop'
Feature snappy hex mesh

It's got all of the VW snappyHexMesh developments in it.

Not yet the automatic-gap refinement.

See merge request !1
2015-11-09 11:36:13 +00:00
047211b1f7 ENH: Adding humidityTemperatureCoupledMixed BC and directionalPressureGradientExplicitSource and the corresponding tutorial
tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation
2015-11-03 14:42:08 -08:00
4927f97c5d Merge branch 'feature-snappyHexMesh' into feature-snappyHexMesh-gapRefinement 2015-11-03 12:55:32 +00:00
d0a00a6b27 Merge branch 'develop' into feature-snappyHexMesh 2015-11-03 12:37:05 +00:00
86ea4a074b ENH: tutorial: chmod +x of run scripts 2015-11-03 10:23:11 +00:00
865af48969 BUG: globalMeshData() : trigger of globalMeshData inside e.g. deltaCoeffs
Original fix (http://www.openfoam.org/mantisbt/view.php?id=1780)
did an increment to create a new communicator. This might
access the communicator-to-mpi_structure tables in PstreamGlobals.H outside
range. Instead allocate and release communicator.
2015-11-03 10:04:08 +00:00
35ef4ba87c COMP: autoMesh: build order. autoMesh now indirectly uses fvMotionSolvers 2015-11-02 10:57:41 +00:00
30fd47e7bd ENH: searchableCone: generalised hollow cone/cylinder 2015-10-30 18:11:02 +00:00
d5d062cbfe STYLE: autoHexMesh: remove unused code 2015-10-28 15:05:13 +00:00
aacf2ca07f BUG: searchableCone: fixed hollowness and radius1=radius2 2015-10-28 15:04:33 +00:00
b5b3ab9f87 ENH: searchableCone: searching on (optionally hollow) cone.
Initial implementation. Still goes wrong on r1 == r2.
2015-10-28 15:03:19 +00:00
ec76bca024 ENH: snappyHexMesh: improvements to gap detection:
- shoot rays to nearest point on surface and two perpendicular rays
  (instead of always shooting in the 3 coordinate directions)

- avoid bleeding through the surface intersection
2015-10-28 15:02:17 +00:00
3f2d5983ad ENH: snappyHexMesh: shoot gap-detection rays perpendicular to the surface 2015-10-28 13:35:52 +00:00
afa6bd5056 ENH: snappyHexMesh: added to automatic gap-refinement capabilities
1. multi-ray shooting. It now shoots rays in all the 3 coordinate directions
from the cell centre. Before it would shoot just a single ray from the
nearest point on the surface, going through the cell centre.

There is a cost overhead in that now it shoots 6 rays (+-x, +-y, +-z)
instead of just 1.

2. bleeding of refinement. It marks the cells inside a gap and walks out
the gap-size to neighbouring cells (which are just outside the gap). This
should make for a smoother refinement pattern.
2015-10-28 13:34:51 +00:00
71db93570a BUG: gap_detection: added to Allrun 2015-10-28 13:31:18 +00:00
9c0a715ac3 ENH: snappyHexMesh: added tutorial for testing automatic gap refinement 2015-10-28 13:30:39 +00:00
9dd6a5b003 ENH: snappyHexMesh: add automatic gap-level detection and refinement 2015-10-28 13:28:32 +00:00
df010ec6c0 Merge branch 'feature-snappyHexMesh' of develop.openfoam.com:Development/OpenFOAM-dev-OpenCFD into feature-snappyHexMesh 2015-10-26 14:38:19 +00:00
2de68a9ae7 BUG: snappyHexMesh: minThickness > 1 caused truncation of layers
The start of the layer addition loop does a synchronisation of the wanted
displacement. This also does a truncation of the displacement if it is <
minThickness. At the first iteration the displacement was initialised to
vector::one which might trigger the truncation logic (and then disable
extrusion altogether). Instead we now initialise the displacement to
vector::GREAT before entering the synchronisation.
2015-10-26 14:37:17 +00:00
867d0b09c1 BUG: uniformInletOutlet - uniform value updated as a function of time in updateCoeffs(). Fixes #2 2015-10-21 17:02:51 +01:00
00e61b9bbb STYLE: turbulenceFields FO - updated header documentation 2015-10-21 11:42:13 +01:00
2743c48a76 Merge remote-tracking branch 'foundation-github/master' into develop 2015-10-21 11:34:31 +01:00
766142b4cc polyMesh: Correct CELL_TETS mode in findCell
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=1792
2015-10-19 16:59:19 +01:00
f4202d9ee6 sixDoFSolver: Run-time selectable solver (integrator) for sixDoFRigidBodyMotion
The built-in explicit symplectic integrator has been replaced by a
general framework supporting run-time selectable integrators.  Currently
the explicit symplectic, implicit Crank-Nicolson and implicit Newmark
methods are provided, all of which are 2nd-order in time:

Symplectic 2nd-order explicit time-integrator for 6DoF solid-body motion:

    Reference:
        Dullweber, A., Leimkuhler, B., & McLachlan, R. (1997).
        Symplectic splitting methods for rigid body molecular dynamics.
        The Journal of chemical physics, 107(15), 5840-5851.

    Can only be used for explicit integration of the motion of the body,
    i.e. may only be called once per time-step, no outer-correctors may be
    applied.  For implicit integration with outer-correctors choose either
    CrankNicolson or Newmark schemes.

    Example specification in dynamicMeshDict:
    solver
    {
        type    symplectic;
    }

Newmark 2nd-order time-integrator for 6DoF solid-body motion:

    Reference:
        Newmark, N. M. (1959).
        A method of computation for structural dynamics.
        Journal of the Engineering Mechanics Division, 85(3), 67-94.

    Example specification in dynamicMeshDict:
    solver
    {
        type    Newmark;
        gamma   0.5;    // Velocity integration coefficient
        beta    0.25;   // Position integration coefficient
    }

Crank-Nicolson 2nd-order time-integrator for 6DoF solid-body motion:

    The off-centering coefficients for acceleration (velocity integration) and
    velocity (position/orientation integration) may be specified but default
    values of 0.5 for each are used if they are not specified.  With the default
    off-centering this scheme is equivalent to the Newmark scheme with default
    coefficients.

    Example specification in dynamicMeshDict:
    solver
    {
        type    CrankNicolson;
        aoc     0.5;    // Acceleration off-centering coefficient
        voc     0.5;    // Velocity off-centering coefficient
    }

Both the Newmark and Crank-Nicolson are proving more robust and reliable
than the symplectic method for solving complex coupled problems and the
tutorial cases have been updated to utilize this.

In this new framework it would be straight forward to add other methods
should the need arise.

Henry G. Weller
CFD Direct
2015-10-19 14:03:46 +01:00
11f35cc720 reactingTwoPhaseEulerFoam: Remove the build-in write of Ur
Ur can be generated using a functionObject or in the post-processor
2015-10-19 14:01:51 +01:00
dae6a80f50 boundaryFoam: Remove unsupported 'parallel' option
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=1868
2015-10-17 20:20:28 +01:00
ebd9f94a4d functionObjects/utilities/turbulenceFields/turbulenceFields: Added k and epsilon
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=1870
2015-10-17 15:20:10 +01:00
eb1080c933 checkMesh: Provide the number of geometric and solution directions.
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=1872
2015-10-17 13:56:34 +01:00
57547918a6 GIT: Resolve merge conflict 2015-10-15 17:14:13 +01:00
eeb2dbd139 STYLE: Lagrangian LocalPatchInteraction - updated output message for particle statistics 2015-10-15 16:43:53 +01:00
d3f2d54a28 BUG: Lagrangian StandardPatchInteraction - corrected particle output statistics. Fixes #1 2015-10-15 16:42:53 +01:00
188f366013 STYLE: Removed unused scalarField 'hmm' 2015-10-15 14:32:49 +01:00
12e2c47f74 BUG: Removed log file - should not have been committed into repository 2015-10-15 14:27:55 +01:00
79f2024248 template cases: corrected BirdCarreauCoeffs names (m -> k) 2015-10-15 12:10:12 +01:00
4d1159e685 ENH: snappyHexMesh: various improvements. See below or the default snappyHexMeshDict.
Refinement:
-----------
// Optionally avoid patch merging - keeps hexahedral cells
// (to be used with automatic refinement/unrefinement)
//mergePatchFaces off;

// Optional multiple locationsInMesh with corresponding optional cellZone
// (automatically generates faceZones inbetween)
locationsInMesh
(
    ((-0.09 -0.039 -0.049)  bottomAir)  // cellZone bottomAir
    ((-0.09 0.009 -0.049)   topAir)     // cellZone topAir
);

// Optional faceType and patchType specification for these faceZones
faceZoneControls
{
    bottomAir_to_topAir
    {
        faceType baffle;
    }
}

/ Optional checking of 'bleeding' of mesh through a specifying a locations
// outside the mesh
locationsOutsideMesh ((0 0 0)(12.3 101.17 3.98));

// Improved refinement: refine all cells with all (or all but one) sides refined

// Improved refinement: refine all cells with opposing faces with different
// refinement level. These cells can happen on multiply curved surfaces.
// Default on, can be switched off with
//interfaceRefine false;

Snapping
--------
// Optional smoothing of points at refinement interfaces. This will reduce
// the non-orthogonality at refinement interfaces.
//nSmoothInternal $nSmoothPatch;

Layering
--------

// Layers can be added to patches or to any side of a faceZone.
// (Any faceZone internally gets represented as two patches)

// The angle to merge patch faces can be set independently of the
// featureAngle. This is especially useful for large feature angles
// Default is the same as the featureAngle.
//mergePatchFacesAngle 45;

// Optional mesh shrinking type 'displacementMotionSolver'. It uses any
// displacementMotionSolver, e.g. displacementSBRStress
// (default is the medial-axis algorithm, 'displacementMedialAxis')
//meshShrinker displacementMotionSolver;
2015-10-14 14:49:37 +01:00
7b7967de76 ENH: snappyHexMesh: various improvements. See below or the default snappyHexMeshDict.
Refinement:
-----------
// Optionally avoid patch merging - keeps hexahedral cells
// (to be used with automatic refinement/unrefinement)
//mergePatchFaces off;

// Optional multiple locationsInMesh with corresponding optional cellZone
// (automatically generates faceZones inbetween)
locationsInMesh
(
    ((-0.09 -0.039 -0.049)  bottomAir)  // cellZone bottomAir
    ((-0.09 0.009 -0.049)   topAir)     // cellZone topAir
);

// Optional faceType and patchType specification for these faceZones
faceZoneControls
{
    bottomAir_to_topAir
    {
        faceType baffle;
    }
}

/ Optional checking of 'bleeding' of mesh through a specifying a locations
// outside the mesh
locationsOutsideMesh ((0 0 0)(12.3 101.17 3.98));

// Improved refinement: refine all cells with all (or all but one) sides refined

// Improved refinement: refine all cells with opposing faces with different
// refinement level. These cells can happen on multiply curved surfaces.
// Default on, can be switched off with
//interfaceRefine false;

Snapping
--------
// Optional smoothing of points at refinement interfaces. This will reduce
// the non-orthogonality at refinement interfaces.
//nSmoothInternal $nSmoothPatch;

Layering
--------

// Layers can be added to patches or to any side of a faceZone.
// (Any faceZone internally gets represented as two patches)

// The angle to merge patch faces can be set independently of the
// featureAngle. This is especially useful for large feature angles
// Default is the same as the featureAngle.
//mergePatchFacesAngle 45;

// Optional mesh shrinking type 'displacementMotionSolver'. It uses any
// displacementMotionSolver, e.g. displacementSBRStress
// (default is the medial-axis algorithm, 'displacementMedialAxis')
//meshShrinker displacementMotionSolver;
2015-10-14 14:49:37 +01:00
9c8492ebd1 STYLE: duplicatePoints: indentation 2015-10-14 14:46:57 +01:00
c83c99b30e STYLE: duplicatePoints: indentation 2015-10-14 14:46:57 +01:00
d9aba8b0d1 ENH: polyTopoChange: improved error message 2015-10-14 14:46:11 +01:00
51f9b7facb ENH: polyTopoChange: improved error message 2015-10-14 14:46:11 +01:00
e7203dbd44 BUG: removeCells: handle exposing cyclic faces 2015-10-14 14:45:45 +01:00
3ef47d6501 BUG: removeCells: handle exposing cyclic faces 2015-10-14 14:45:45 +01:00
428dff7711 ENH: tetDecomposer: continue in case of neg-tet volume 2015-10-14 14:45:01 +01:00
9e9f690de2 ENH: tetDecomposer: continue in case of neg-tet volume 2015-10-14 14:45:01 +01:00
f3d4e51242 prghTotalPressureFvPatchScalarField: Total pressure BC for p_rgh
Resolves some stability issues with the outlet of multiphase problems.
2015-10-14 13:15:17 +01:00