Commit graph

2018 commits

Author SHA1 Message Date
Vuko Vukcevic
b829763587 Additional output before "single" edge error 2018-02-21 15:10:55 +01:00
Vuko Vukcevic
91a892854e Bugfix in calculation of getFaceAnchor
Reverting to the old formulation modified for polyhedral cells
2018-02-21 15:10:55 +01:00
Vuko Vukcevic
f3edd35f23 Updated dynamicMeshDict 2018-02-21 15:10:55 +01:00
Vuko Vukcevic
84fd718786 Updates to faMesh
Initialisation of communicator for parallel runs + minor formatting
2018-02-21 15:10:55 +01:00
Vuko Vukcevic
0249319d5e Update to createFaMesh.H
faMesh created using selector New to avoid the possibility of having multiple
faMesh objects.
2018-02-21 15:10:03 +01:00
Vuko Vukcevic
76fd16d5f6 Created polyRefinementHistory
Basically a generalisation of refinementHistory which works only for hex cells
2018-02-21 15:09:54 +01:00
Vuko Vukcevic
7cd6e2357a Updates to cellAnchorPoints 2018-02-21 15:08:38 +01:00
Vuko Vukcevic
ecfdd2103e Removed faceAnchorLevel validity check 2018-02-21 15:08:26 +01:00
Vuko Vukcevic
3ebae28896 Generalisation of polyRef::getAnchorLevel
The function now returns the correct anchor level for arbitrary polygonal faces,
i.e. there is no assumption that the face comes from possibly spit hex cell.
2018-02-21 15:08:13 +01:00
Vuko Vukcevic
7372970256 Updated comments in polyRef.H 2018-02-21 15:07:45 +01:00
Henrik Rusche
5f75c33058 Backport: changeDictionary utility 2018-02-16 15:27:23 +01:00
Henrik Rusche
6aaa5ac976 Update of new FOs (from VV) to new signature 2018-02-16 15:08:00 +01:00
Henrik Rusche
7fe57ece38 BUGFIX: next wall distance may cause seg fault 2018-02-16 15:08:00 +01:00
Henrik Rusche
08a7e2e03b Vanilla backport
-in turbulenceModels
backported alphat() member function
backported rhoEpsilonEff() memberfunction
backported to constructor sigature to allow derivation of classes
backported member functions for compatibility with FOs
allow mutkWallFunction to work with LES
2018-02-16 15:08:00 +01:00
Henrik Rusche
34d4a30be7 Added additional weighted Ops for faceSource 2018-02-16 15:08:00 +01:00
Henrik Rusche
67ab0b5abd Vanilla backport
- in FOAM library
updated containers
backported PackedBoolList, hashedWordList, nullObject, wordRe,
backported functions to
backported int32 support
backported tableReaders
backported Function1, TimeFunction1
backported dynamicCode (for codedBCs, ...) -- needs to be mapped out
advanced error macros (FatalIOErrorInFunction, ...) -- needs to be mapped out
backported IOobject::MUST_READ_IF_MODIFIED and added IOobject::READ_IF_PRESENT_IF_MODIFIED (only in FO)

- in postProcessing
backported IO FOs (partialWrite, removeRegisteredObject, writeDictionary, writeRegisteredObject)
backported field FOs (fieldCoordinateSystemTransform, fieldValues, nearWallFields, processorField, readFields, regionSizeDistribution, streamLine, wallBoundedStreamLine)
backported fvTools FOs (calcFvcDiv, calcFvcGrad, calcMag)
backported jobControl FOs (abortCalculation)
backported utilities FOs (ourantNo, Lambda2, Peclet, Q, codedFunctionObject, pressureTools, residuals, scalarTransport, setTimeStep, timeActivatedFileUpdate, turbulenceFields, vorticity, wallShearStress)
2018-02-16 15:07:55 +01:00
Vanja Skuric
046fc069a8 Changes to solutionControl.C in order to make it compatible with changes made by Vuko Vukcevic regarding consistency 2018-02-11 21:22:24 +01:00
Vanja Skuric
c180b7088c Added solutionFaControl files (forgot to add it in the previous commit) 2018-02-11 21:20:36 +01:00
Vanja Skuric
f569d9ffaa Fixed a typo in solutionTemplates.C 2018-02-11 19:14:04 +01:00
Vanja Skuric
2df03ebe25 New feature: Added solutionFaControl (with simple, pimple and piso controls) and VectorN to finiteArea 2018-02-11 19:01:44 +01:00
Vanja Skuric
f58e0ebf49 New feature: Added switch which enables storing only first and last iteration residuals in solvePerformance 2018-02-11 19:00:28 +01:00
Vanja Skuric
e3115846f5 New feature: generalization of storage for solverPerformanceDict based on templated BlockSolverPerformance (by Pascal Beckstein)
To correct the previous commit, the BlockSolverPerformance has been enhanced
by a replace(...) and max(...) memeber function.
The matrix solve functions of fvMatrix, faMatrix and tetFemMatrix now store
solver performance data for all components in the solverPerformance dictionary
of solution. However, they will still return a scalar-valued
lduSolverPerformance based on the component with the max residual.
This is necessary as otherwise the type of a non-scalar field, which may be
specified in fvSolution::residualControl does not match the type which is
written to and read from the solverPerformance dictionary in the
maxTypeResidual(...) from solutionControl. If e.g. the field U is given
in fvSolution::residualControl of solutionControl, the constructor of
BlockSolverPerformance in the maxTypeResidual(...) from solutionControl
expects to read a vector ( u1 u2 u3 ) from the dictionary and not just one
component.
The changes are inspired and directly related to the following vanilla
commit:
1944b09bb5
2018-02-11 18:59:15 +01:00
Hrvoje Jasak
e95c5184e3 GGI bridging bug fixes. Vuko Vukcevic 2018-02-09 12:10:57 +00:00
Hrvoje Jasak
188651d998 Merge commit '9c11730d7c0af71ee29be98c803071d791dc6a6d' into nextRelease 2018-02-07 13:04:16 +00:00
Hrvoje Jasak
c3ced91c1a Merge commit '889b8dcd4ca11b64dfa79f79e9c1222e23e258a9' into nextRelease 2018-02-07 13:04:08 +00:00
Hrvoje Jasak
67c4f3d348 Merge commit '89b2a122b2bcffca1edfcca12862cc1ce8431330' into nextRelease 2018-02-07 13:03:50 +00:00
Vanja Skuric
9c11730d7c Limitting cosTheta to be inside [-1,1] interval 2018-02-07 13:31:47 +01:00
Vanja Skuric
889b8dcd4c Fixed storing every residual in solvePerformance (increasing solverPerformance list size). Significant influence on speed when running with large number of correctors (i.e. solidMechanics) 2018-02-07 13:28:47 +01:00
Vanja Skuric
89b2a122b2 Enabling Finite Area parallel run (fix by Hrvoje Jasak) 2018-02-07 13:27:09 +01:00
Hrvoje Jasak
6a78019898 Merge commit '9bd721da3e43cb8da8c6dfbc9b264bd30374bd72' into nextRelease 2018-02-07 12:15:19 +00:00
Hrvoje Jasak
e3b43562a7 Merge commit '9fbf8f1bfce0b178d61be485fac02007bf9c8b77' into nextRelease 2018-02-07 12:14:10 +00:00
Hrvoje Jasak
ee38fbdc4e Merge commit '333c815d8fbb0a0b57250be9f8f4d47120245f1d' into nextRelease 2018-02-07 12:12:12 +00:00
Hrvoje Jasak
88ba7f654f Merge commit '1e8dd2ecb10f97091b3a5fb5b1e8f8d1cbe06bb3' into nextRelease 2018-02-07 12:10:43 +00:00
Hrvoje Jasak
9af1e121aa Merge commit '4be7661f1d586bad69ddad93b4463cc683b7f671' into nextRelease 2018-02-07 12:09:04 +00:00
Vuko Vukcevic
4d091782ed Corrected spacing 2018-02-07 12:02:39 +00:00
Vuko Vukcevic
ec8b2eb97b nuRatio boundary conditions for epsilon and omega
Given a desired nuRatio, the boundary conditions automatically calculate
epsilon/omega from k.
2018-02-07 12:02:39 +00:00
Vuko Vukcevic
bee6a2228a Consistent divDevReff calculation in incompressible turbulence models
Note: a minor bugfix is also included (previously, dev has been used instead of
dev2. This is included in the current mathematical reformulation).
Tested on cavity case: now simpleFoam with laminar turbulence model gives
exactly the same results as icoFoam.
2018-02-07 12:02:39 +00:00
Vuko Vukcevic
eee9507e55 Reorganisation of improved wall functions
Instead of calculating pressure gradient and convection terms in each
wall function (for each patch), function objects pressureGradient and
velocityConvection will update them and register them in the database and we
only fetch the data when updating wall functions.
2018-02-07 12:02:39 +00:00
Vuko Vukcevic
4b182a13ec Additional wall functions: k/epsilonNonEqWallFunctions
Non-equilibrium wall functions for k and epsilon.

Author: Filip Sutalo, Merge: Vuko Vukcevic
2018-02-07 12:02:39 +00:00
Vuko Vukcevic
3f9271f2be Additional wall functions: omega/nutMEWTWallFunctions
Modified enhanced wall treatment by Sutalo, wall functions are
sensitive to convection and pressure gradient effects.

Author: Filip Sutalo, Merge: Vuko Vukcevic
2018-02-07 12:02:39 +00:00
Vuko Vukcevic
4859959e29 Additional wall functions: omega/nutCWTWallFunctions
Compound wall treatment by Popovac and Hanjalic, wall functions are sensitive to
flow unsteadiness, convection effects and pressure gradient effects.

Author: Filip Sutalo, Merge: Vuko Vukcevic
2018-02-07 12:02:39 +00:00
Vuko Vukcevic
ae2e71f52e Fixed typos in comments 2018-02-07 12:02:39 +00:00
Vuko Vukcevic
3aa0ac137e No slip wall boundary condition 2018-02-07 12:02:39 +00:00
Pascal Beckstein
64068d50c5 Add jumpFaceFluxCorrectionPtr_ to fvMatrix for cases of jump discontinuities in grad(psi). 2018-02-07 12:02:39 +00:00
Pascal Beckstein
224fb55219 Fix write of rAU-keyword in fixedFluxPressureFvPatchScalarField 2018-02-07 12:02:39 +00:00
Pascal Beckstein
1f6f708da8 Bugfixes and improvements for parallel decomposition/reconstruction of regions 2018-02-07 12:02:39 +00:00
Robert Keser
5a558cdffc Updated cross-coupling terms in coupledKEpsilon turbulence model. 2018-02-07 12:02:39 +00:00
Vuko Vukcevic
55842641c9 Minor update in comment 2018-02-07 12:02:39 +00:00
Vuko Vukcevic
65b8ad2fc7 Added member function to initialize force and moment in sixDOFODE 2018-02-07 12:02:39 +00:00
Vuko Vukcevic
5a249bc26a Added access functions in constraints/restraints 2018-02-07 12:02:39 +00:00
Vuko Vukcevic
a2f33fc147 Updates in constraints and restraints classes
They now hold a reference to underlying sixDOFODE object. Need to handle more
complex restraints/constraints depending on its state.
2018-02-07 12:02:39 +00:00
Vuko Vukcevic
658362e122 Moved static functions in finiteRotation to public interface 2018-02-07 12:02:39 +00:00
Vuko Vukcevic
0a13a399e7 Update to eulerAngles static function in finiteRotation 2018-02-07 12:02:39 +00:00
Vuko Vukcevic
260f2329cc Minor updates to sanity checks in sixDOFODE.C 2018-02-07 12:02:39 +00:00
Vuko Vukcevic
8108e0af20 Changed reference in geometricSixDOF.H class description 2018-02-07 12:02:39 +00:00
Vuko Vukcevic
8bdb557b93 Added stabilisation for constraints
Note: necessary for arbitrary DAE systems
2018-02-07 12:02:39 +00:00
Vuko Vukcevic
6b422ec286 Force/moment update to sixDOFBodies 2018-02-07 12:02:39 +00:00
Vuko Vukcevic
e7fd51dc97 Angular damper rotational restraint 2018-02-07 12:02:39 +00:00
Vuko Vukcevic
704829a15e Finalised the use of translationa/rotational restraints in sixDOFODE classes 2018-02-07 12:02:39 +00:00
Vuko Vukcevic
c63d6b76a8 Adding interface for restraints
Abstract base classes translationalRestraint and rotationalRestraint are laid
out. Need to use them in sixDOFODE class and write basic restraints.
2018-02-07 12:02:39 +00:00
Vuko Vukcevic
8de41a7ae4 Relocated motion constraints to sixDOFODE base class 2018-02-07 12:02:39 +00:00
Vuko Vukcevic
d4e6ec34c3 Periodic oscillation translational constraint 2018-02-07 12:02:39 +00:00
Vuko Vukcevic
ca5c3600fe Extended interface for motion constraints 2018-02-07 12:02:39 +00:00
Vuko Vukcevic
b5892ea8f8 Updated comments 2018-02-07 12:02:39 +00:00
Vuko Vukcevic
1aaa8582e9 Updates to sixDOFODE classes
2nd order accurate updates of force and moment during the ODE solution.
2018-02-07 12:02:39 +00:00
Vuko Vukcevic
21ff583605 quaternionSixDOF using general constraints 2018-02-07 12:02:39 +00:00
Vuko Vukcevic
40f7e0a3d1 Fixed output of constraints for proper restart 2018-02-07 12:02:39 +00:00
Vuko Vukcevic
bd820ac31b Implementation of constraints, part 4
Version that works (compiles and runs properly).
To do:
    1. Writing out constraints to dictionary for proper restart,
    2. Stabilisation of round-off errors when using constraints.
2018-02-07 12:02:39 +00:00
Vuko Vukcevic
041fddd197 Implementation of constraints, part 3 2018-02-07 12:02:39 +00:00
Vuko Vukcevic
488ccffca9 Implementation of constraints, part 2 2018-02-07 12:02:39 +00:00
Vuko Vukcevic
ef9664c191 Implementation of constraints, part 1 2018-02-07 12:02:39 +00:00
Vuko Vukcevic
58c25980da Added sanity check for mass and moment of inertia 2018-02-07 12:02:39 +00:00
Vuko Vukcevic
1f1efdcacd Minor formatting 2018-02-07 12:02:39 +00:00
Vuko Vukcevic
21201c4585 Restored translationODE class
Accidentally removed it in one of the previous commits
2018-02-07 12:02:39 +00:00
Vuko Vukcevic
6a514ecb48 Updates to geometricSixDOF
Changed convention of rotation tensor and updated dexp member function to allow
higher order accuracy
2018-02-07 12:02:39 +00:00
Vuko Vukcevic
728c5ed748 Bugfix related to nonBlocking comms in ProcessorPointPatchField 2018-02-07 12:02:39 +00:00
Vuko Vukcevic
c3a38ac471 Updates to Aitkens relaxation
Now completely handled from the sixDOFODE class
2018-02-07 11:59:05 +00:00
Vuko Vukcevic
7e0eee0f94 Updates to ODESolver and sixDOFODE classes
Updates enable automatic handling of multiple calls to ODESolve::solve within a
single time step
2018-02-07 11:59:05 +00:00
Vuko Vukcevic
57b835967c Restructured sixDOFODE interface
Removed implementation specific data and left only essential interface for
coupling with CFD solver.
2018-02-07 11:59:05 +00:00
Vuko Vukcevic
c02eac8fcb Minor updates in sixDOF classes 2018-02-07 11:59:05 +00:00
Vuko Vukcevic
afeca8ee2f Runtime bugfixes and minor reorganization 2018-02-07 11:59:05 +00:00
Vuko Vukcevic
546cfc0f5f First version of geometricSixDOF class
Compiles but does not produce correct results. Still need to find bugs.
2018-02-07 11:59:05 +00:00
Vuko Vukcevic
60821402da OutputControlDictionary host class
Used to enable a combination of run-time selection and automatic read/write
provided by IOdictionary. Currently used in sixDOFODE class.
2018-02-07 11:59:05 +00:00
Vuko Vukcevic
b33681bd75 Additional functionality in finiteRotation 2018-02-07 11:59:05 +00:00
Vuko Vukcevic
b3118e18a4 Restructuring sixDOFODE class
Separation of I/O and core functionality was necessary in order to enable
correct simulation restart because of combined run-time selection and automatic
read/write operations provided by regIOobject (IOdictionary)
2018-02-07 11:59:05 +00:00
Vuko Vukcevic
3232e008ea Reorganized sixDOFbodies in terms of sixDOFODE 2018-02-07 11:59:05 +00:00
Vuko Vukcevic
fd575d39b1 Derived class quaternionSixDOF
quaternionSixDOF provides the same functionality as the old sixDOFqODE, the only
difference being the addition of run-time selectable class hieararchy (i.e.
quaternionSixDOF is derived from sixDOFODE instead of being stand-alone class).

Note: sixDofqODE is left for backward compatibility.
2018-02-07 11:59:05 +00:00
Vuko Vukcevic
6436f1a496 Abstract base class sixDOFODE 2018-02-07 11:59:05 +00:00
Hrvoje Jasak
0642e99a97 Merge commit 'b5be6201e00421a59e574a07b3d28cde5defff84' 2018-02-07 11:55:10 +00:00
Hrvoje Jasak
ad5d97e537 Merge commit 'ae81f3834f80580b1bd411cfd213ee5e9ec4574d' 2018-02-07 11:53:52 +00:00
Vuko Vukcevic
b5be6201e0 Correct sign in processorFaPatchScalarField while updating matrix 2017-12-14 12:44:30 +01:00
Vuko Vukcevic
4be7661f1d Updates to faMatrix global operators
Added binary operators for faMatrix and DimensionedField.
2017-12-04 11:10:12 +01:00
Vuko Vukcevic
3c0724fc0a Bugfix: pointPatchInterpolate
Coupled boundary update needs to happen after treatment of corner (patch-patch)
points.
2017-12-04 10:58:50 +01:00
Vuko Vukcevic
dee54c23cd Merge branch 'nextRelease' of ssh://git.code.sf.net/u/vvukcevic/foam-extend-4.0-vv into nextRelease 2017-12-04 10:56:28 +01:00
Henrik Rusche
ae81f3834f BUGFIX: sampledSets FO causes seg fault on destruction 2017-12-03 20:26:39 +01:00
Vuko Vukcevic
9fbf8f1bfc Bugfix in polyRef.C
Allowing arbitrary number of anchor points per face in order to treat cut cell
interfaces consistently.
2017-10-31 11:26:37 +01:00
Vuko Vukcevic
993b979617 Optional debug output in polyRef 2017-10-30 11:11:24 +01:00
Vuko Vukcevic
58a6946769 No slip moving wall boundary condition 2017-10-30 08:22:19 +01:00
Vuko Vukcevic
6e4acb64c0 Added notes to headers 2017-10-30 08:20:44 +01:00
Vuko Vukcevic
7f7401ff8c Checking severe non-orthogonality when creating internal/boundary faces 2017-10-30 08:20:44 +01:00