Commit Graph

2678 Commits

Author SHA1 Message Date
cd852be3da OpenFOAM: Updated all libraries, solvers and utilities to use the new const-safe tmp
The deprecated non-const tmp functionality is now on the compiler switch
NON_CONST_TMP which can be enabled by adding -DNON_CONST_TMP to EXE_INC
in the Make/options file.  However, it is recommended to upgrade all
code to the new safer tmp by using the '.ref()' member function rather
than the non-const '()' dereference operator when non-const access to
the temporary object is required.

Please report any problems on Mantis.

Henry G. Weller
CFD Direct.
2016-02-26 17:31:28 +00:00
5a74397fe4 refineMesh: Added customizable direction fields to multiDirRefinement
Contribution provided by Bruno Santos
Resolves feature request http://www.openfoam.org/mantisbt/view.php?id=2004
2016-02-22 17:06:18 +00:00
96b0f62d04 surfaceCoarsen: Changed List<::... to List< ::... for gcc-4.5 2016-02-21 09:03:39 +00:00
99a10ecea6 Boundary conditions: Added extrapolatedCalculatedFvPatchField
To be used instead of zeroGradientFvPatchField for temporary fields for
which zero-gradient extrapolation is use to evaluate the boundary field
but avoiding fields derived from temporary field using field algebra
inheriting the zeroGradient boundary condition by the reuse of the
temporary field storage.

zeroGradientFvPatchField should not be used as the default patch field
for any temporary fields and should be avoided for non-temporary fields
except where it is clearly appropriate;
extrapolatedCalculatedFvPatchField and calculatedFvPatchField are
generally more suitable defaults depending on the manner in which the
boundary values are specified or evaluated.

The entire OpenFOAM-dev code-base has been updated following the above
recommendations.

Henry G. Weller
CFD Direct
2016-02-20 22:44:37 +00:00
350d03246e scripts: Reformat with consistent section separators 2016-02-15 18:30:24 +00:00
69b59b6586 Renamed PV4Readers -> PVReaders to avoid confusion when compiling the reader for ParaView-5 2016-02-10 21:12:49 +00:00
968c888fc4 Rename DataEntry -> Function1
Function1 is an abstract base-class of run-time selectable unary
functions which may be composed of other Function1's allowing the user
to specify complex functions of a single scalar variable, e.g. time.
The implementations need not be a simple or continuous functions;
interpolated tables and polynomials are also supported.  In fact form of
mapping between a single scalar input and a single primitive type output
is supportable.

The primary application of Function1 is in time-varying boundary
conditions, it also used for other functions of time, e.g. injected mass
is spray simulations but is not limited to functions of time.
2016-02-08 16:18:07 +00:00
7ec6f28c49 Added support for ParaView-5.0.0
PV4FoamReaders: Updated to build with ParaView-5.0.0
paraFoam: Updated to load PV4FoamReaders for ParaView-5.0.0

Currently this is experimental but if it becomes clear that ParaView-4
and ParaView-5 are and will remain consistent with respect to readers
the plan is to rename

PV4 -> PV

or

PV4 -> PV45 if it is assumed that PV6 may need to be different.
2016-02-08 10:03:55 +00:00
a9bb9c3b99 Updated header 2016-02-07 13:34:03 +00:00
d1387a8563 DataEntry: Created the DataEntryTypes namespace for all the concrete DataEntry types
to avoid name conflicts with these primitive names in the OpenFOAM namespace
2016-02-07 13:32:38 +00:00
34d2890952 foamyHexMeshBackgroundMesh: Updated to compile 2016-02-03 21:24:38 +00:00
a5c829c91b doxygenXmlParser: pre-construct and compile constant regular expressions
and pre-construct constant strings and names

Speeds-up parsing of DTAGS so that lookup of a name takes ~1s

Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=982
2016-02-03 16:28:00 +00:00
a55db28a06 rawSurfaceWriter: Added support for compressed output
Patch provided by Armin Wehrfritz
Resolves feature request http://www.openfoam.org/mantisbt/view.php?id=843
2016-02-02 20:22:27 +00:00
472fa0674a Update headers 2016-02-02 20:09:58 +00:00
8b9698ad43 processorPolyPatch, processorCyclicPolyPatch: Rationalized the construction of the patch name
This change ensures that these patches are named consistently so that
they can be looked-up as required in e.g. patchMeanVelocityForce
2016-02-02 20:07:16 +00:00
5728c1f173 Info -> InfoInFunction 2016-01-19 21:58:11 +00:00
9de3a4280e foamToVTK: Default to ASCII format when WM_LABEL_SIZE=64
Based on patch provided by Alexey Matveichev
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=1975
2016-01-19 16:28:23 +00:00
1896599d8b Add support for flex-2.6
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=1974
2016-01-18 19:44:38 +00:00
59b578f155 Provide consistency in assignment operators
Always return void to avoid various bugs associated with automatic
type conversion.

Resolves request http://openfoam.org/mantisbt/view.php?id=1973
2016-01-17 18:56:28 +00:00
56fa7c0906 Update code to use the simpler C++11 template syntax removing spaces between closing ">"s 2016-01-10 22:41:16 +00:00
4eba393fe1 Update code to use the simpler C++11 template syntax 2016-01-10 19:20:16 +00:00
acb9ec8b46 wmake/rules: Add -std=c++0x to formally enable support for of C++11 features
The c++0x is used rather than c++11 to support gcc-4.5.?
2016-01-10 19:17:31 +00:00
75cf86b769 Correct formatting: "forAll (" -> "forAll("
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=1967
2016-01-09 23:10:16 +00:00
95687c59ec wallShearStress: Now may be used with any turbulence model (laminar, RAS or LES/DES)
Resolves feature-request http://www.openfoam.org/mantisbt/view.php?id=1939
2015-12-03 09:15:09 +00:00
633e2b1255 Minor updates to aid porting to FreeBSD
Based on patches provided by Jason Bacon
2015-12-02 18:18:06 +00:00
736621b945 fvOptions: Reorganized and updated to simplify use in sub-models and maintenance
fvOptions are transferred to the database on construction using
fv::options::New which returns a reference.  The same function can be
use for construction and lookup so that fvOptions are now entirely
demand-driven.

The abstract base-classes for fvOptions now reside in the finiteVolume
library simplifying compilation and linkage.  The concrete
implementations of fvOptions are still in the single monolithic
fvOptions library but in the future this will be separated into smaller
libraries based on application area which may be linked at run-time in
the same manner as functionObjects.
2015-12-02 11:49:52 +00:00
ac2a275a75 wallHeatFlux: Corrected sign of radiative heat-flux
Corrects feature-request http://www.openfoam.org/mantisbt/view.php?id=1856
Patch provided by Juho Peltola
2015-12-02 11:47:11 +00:00
ba2f46f12a applications: Added fvOptions library to link 2015-12-01 16:09:19 +00:00
2c2e8247ef mirrorFvMesh: Corrected parallel operation
Patch provided by Bruno Santos
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=1494
2015-11-29 21:40:37 +00:00
660b54b728 moveDynamicMesh: Iterate over mesh.update() according to the PIMPLE settings
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=1926
2015-11-25 16:54:14 +00:00
093b4aade6 chemkinReader: Add support for reading transport properties from dictionary
Note the dictionary is in OpenFOAM format not CHEMKIN.

Patch provided by Daniel Jasinski
Resolves feature request http://www.openfoam.org/mantisbt/view.php?id=1888
2015-11-20 18:55:36 +00:00
d968ee30e1 TurbulenceModels: Improved instantiation of single-phase models in solvers
Simplifies lookup of RAS or LES models
2015-11-18 21:10:03 +00:00
22a4b5776b createTurbulenceFields: Specification of turbulence fields now command-line option
Usage: createTurbulenceFields [OPTIONS]
options:
  -case <dir>       specify alternate case directory, default is the cwd
  -constant         include the 'constant/' dir in the times list
  -fields <wordReList>
                    specify which turbulence fields (k, epsilon, omega, R) to
                    write - eg '(k omega)' or '(R)' or '(.*)'.
  -latestTime       select the latest time
  -newTimes         select the new times
  -noFunctionObjects
                    do not execute functionObjects
  -noZero           exclude the '0/' dir from the times list, has precedence
                    over the -withZero option
  -parallel         run in parallel
  -roots <(dir1 .. dirN)>
                    slave root directories for distributed running
  -time <ranges>    comma-separated time ranges - eg, ':10,20,40:70,1000:'
  -srcDoc           display source code in browser
  -doc              display application documentation in browser
  -help             print the usage

Resolves feature request http://www.openfoam.org/mantisbt/view.php?id=1912
2015-11-13 10:55:34 +00:00
e2ef006b91 applications: Update ...ErrorIn -> ...ErrorInFunction
Avoids the clutter and maintenance effort associated with providing the
function signature string.
2015-11-10 17:53:31 +00:00
42fb1b9e8e Updated notImplemented -> NotImplemented
The new NotImplemented macro uses __PRETTY_FUNCTION__ for GNU compatible
compilers otherwise __func__ to provide the function name string.
2015-11-01 10:26:37 +00:00
c84187f7fd subsetMesh/Make/options: removed unused entries
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=1886
2015-10-31 17:55:59 +00:00
4e483cc98e Updated docs for Doxygen: '<' -> '\<' and '>' -> '\>' 2015-10-30 21:37:03 +00:00
42b3f1c9dc wallHeatFlux: Add support for radiative and total heat-fluxes
Patch provided by Daniel Jasinski
Resolves feature request http://www.openfoam.org/mantisbt/view.php?id=1856
2015-10-30 14:32:26 +00:00
8342cdc6ee Documentation: Use '-' rather than '+' for lists for Doxygen 2015-10-29 22:41:34 +00:00
87b26d09cb reconstructPar: Corrected time directory for reconstructed sets
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=1880
2015-10-27 16:27:04 +00:00
ed496c2cb1 mergeMeshes: Disable functionObjects
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=1756
2015-10-23 12:41:46 +01:00
765b81853e renumberMesh: Now supports sets
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=1377
2015-10-21 16:49:57 +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
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
557c8adba8 Added "-region" option to wallGradU, temporalInterpolate and pPrime2
Patches provided by Bruno Santos
Resolves feature-request http://www.openfoam.org/mantisbt/view.php?id=1861
2015-10-05 11:33:13 +01:00
4c9eb4c2e9 ptot: Add support for -region
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=1227
Patch provided by Bruno Santos
2015-09-28 15:34:37 +01:00
34f060cfbb stitchMesh: Improved docs
Provided by Bruno Santos
Resolves report http://www.openfoam.org/mantisbt/view.php?id=1767
2015-09-09 19:56:07 +01:00
5e4bf8c9f9 Added applications/utilities/mesh/manipulation/stitchMesh/toleranceDict
Provided by Bruno Santos
Resolves report http://www.openfoam.org/mantisbt/view.php?id=1848
2015-09-09 19:53:10 +01:00
430d894e37 Added ROOTSMALL 2015-09-02 15:29:54 +01:00
047883da98 fluent3DMeshToFoam: Updated to handle ',' and '|' characters in headers
Patch provided by Bruno Santos
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=1826
2015-08-24 17:53:50 +01:00