Commit Graph

81 Commits

Author SHA1 Message Date
ac71f86574 UList: Rationalize assignment (shallow-copy vs deep-copy)
//- Disallow default shallow-copy assignment
    //
    //  Assignment of UList<T> may need to be either shallow (copy pointer)
    //  or deep (copy elements) depending on context or the particular type
    //  of list derived from UList and it is confusing and prone to error
    //  for the default assignment to be either.  The solution is to
    //  disallow default assignment and provide separate 'shallowCopy' and
    //  'deepCopy' member functions.
    void operator=(const UList<T>&) = delete;

    //- Copy the pointer held by the given UList.
    inline void shallowCopy(const UList<T>&);

    //- Copy elements of the given UList.
    void deepCopy(const UList<T>&);
2016-04-03 10:26:05 +01:00
055a113f10 SquareMatrix, SymmetricSquareMatrix: Changed the constructor from size to require only n
This avoids the need to check that the m and n dimensions are the same.
2016-03-22 14:13:48 +00:00
c13421b10a Matrix: Added (i, j) addressing to allow support for addressing blocks of the matrix
This change brings OpenFOAM into line with the standard matrix
addressing in other C++ libraries for better interoperability.
2016-03-20 19:44:29 +00:00
930d750bfd Matrix: Switch n() and m() so that now m() = number of rows and n() = number of columns
For consistency with current references and other numerics libraries
2016-03-10 22:53:09 +00:00
99c000fc94 Rationalized the indentation of C-preprocessor directives 2016-02-29 15:42:03 +00:00
7859083246 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
49c54e9070 OpenFOAM libraries: Updated to use the new const-safe tmp 2016-02-26 08:13:59 +00:00
7d192447f0 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
ab3ed6d75e PengRobinsonGas: Added thermodynamic departure functions 2016-02-17 15:17:52 +00:00
87e6034f3a Updated headers 2016-02-17 10:53:57 +00:00
e538f281b8 thermophysicalModels: Added support for thermodynamic departure functions 2016-02-17 10:48:30 +00:00
fa0656c358 scripts: Reformat with consistent section separators 2016-02-15 18:30:24 +00:00
0b4643922a 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
38b494fbc0 thermophysicalModels/specie/transport/logPolynomial: Polynomial in ln(T) for transport properties
ln(mu) = sum_i=1^N(a[i]*ln(T)^(i-1))
    ln(kappa) = sum_i=1^N(b[i]* ln(T)^(i-1))

Based on patch provided by Armin Wehrfritz

Resolves feature-request http://www.openfoam.org/mantisbt/view.php?id=978
2016-02-02 18:59:44 +00:00
79f0c385ca Info -> InfoInFunction and updated comments 2016-01-20 17:51:15 +00:00
2804f8748d Make disallowed member functions private
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=1977
2016-01-20 10:41:14 +00:00
4426006d69 Info -> InfoInFunction and updated comments 2016-01-20 10:18:13 +00:00
a4eabffbac 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
665b1f821e 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
abcb782308 reactionThermo/functionObjects/moleFractions/moleFractions: New functionObject to calculate and write mole-fraction fields
This function object calculates mole-fraction fields from the mass-fraction
    fields of the psi/rhoReactionThermo and caches them for output and further
    post-processing.

    The names of the mole-fraction fields are obtained from the corresponding
    mass-fraction fields prepended by "X_"

    Example of function object specification:

        moleFractions
        {
            type psiReactionThermoMoleFractions;
        }

     or

        moleFractions
        {
            type rhoReactionThermoMoleFractions;
        }

    depending on the thermodynamics package used in the solver.
2016-01-14 16:34:37 +00:00
2d281a3cb9 mixedUnburntEnthalpyFvPatchScalarField: Corrected formatting 2016-01-14 16:34:15 +00:00
e029c7c1a3 Update headers 2016-01-11 13:02:52 +00:00
a56ab5f863 Consistently indent continuation backslashes in macro definitions 2016-01-11 13:00:56 +00:00
94c05a1e6c Update code to use the simpler C++11 template syntax removing spaces between closing ">"s 2016-01-10 22:41:16 +00:00
3dd784315b Correct formatting: "forAll (" -> "forAll("
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=1967
2016-01-09 23:10:16 +00:00
a3301464bd radiationModels: Correct handling of ECont and make P1 and fvDOM consistent
Patch provided by Timo Niemi
Resolved bug-report http://www.openfoam.org/mantisbt/view.php?id=1636

This correction corresponds to option 3 of the options proposed by Timo:

Define both ECont and EDisp to be the total emission per surface area,
apply multiplication by 4 in cloudAbsorptionEmission model (the only
place that uses EDisp?). Do not multiply E in P1 at all, divide both
ECont and EDisp in fvDOM.
2015-12-01 16:20:37 +00:00
7c345a0202 specie/thermo: Use Pstd in the evaluation of equilibrium coefficients 2015-11-21 18:29:20 +00:00
cc942ed18e 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
5e6a7ea282 Completed update ...ErrorIn -> ...ErrorInFunction
Avoids the clutter and maintenance effort associated with providing the
function signature string.
2015-11-11 09:03:39 +00:00
d46bbbf440 sutherlandTransport: Add support for reading thermo and transport from separate dictionaries
Based on patch provided by Daniel Jasinski
See http://www.openfoam.org/mantisbt/view.php?id=1888
2015-11-06 17:36:58 +00:00
03494fef5d 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
dfecb23b08 equationOfState/Boussinesq: New equation of state for the Boussinesq approximation for buoyant flows
Description
    Incompressible gas equation of state using the Boussinesq approximation for
    the density as a function of temperature only:

    \verbatim
        rho = rho0*(1 - beta*(T - T0))
    \endverbatim

To be used with the buoyantPimpleFoam and buoyantSimpleFoam solvers as
an alternative to using buoyantBoussinesqPimpleFoam or
buoyantBoussinesqSimpleFoam, providing consistency with all other
solvers and utilities using the thermodynamics package in OpenFOAM.
2015-10-31 18:27:38 +00:00
941117a1c4 createIncompressibleRadiationModel: Allow specification of value only for rhoRef and CpRef
Patch provided by Daniel Jasinski: http://www.openfoam.org/mantisbt/view.php?id=1856
2015-10-30 14:01:20 +00:00
b5f64cd165 radiationCoupledBase: Correct docs 2015-10-29 22:42:14 +00:00
13d35c5810 Updated headers 2015-09-02 15:33:16 +01:00
f00623d40a chemkinReader: Add tolerance to element balance check
Patch provided by Daniel Jasinski
Resolved bug-report http://www.openfoam.org/mantisbt/view.php?id=1843
2015-09-02 15:32:16 +01:00
4f87b904e5 perfectFluidI.H: Corrected return type
Patch provided by Juho Peltola
2015-08-19 13:43:59 +01:00
9e12d62156 hRefConstThermo: New constant coefficient thermodynamics model for phase-change
Provided by Juho Peltola
2015-08-19 13:42:46 +01:00
00b6400860 Removed trailing whitespace
Resolves bug-report http://openfoam.org/mantisbt/view.php?id=1805
2015-08-01 15:43:05 +01:00
b38b44a9cb ReversibleReaction: Corrected test
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=1804
2015-08-01 15:40:52 +01:00
ecee2d275e Input of dimensionedScalars: update read-construction of dimensionedScalar in applications
so that the specification of the name and dimensions are optional in property dictionaries.

Update tutorials so that the name of the dimensionedScalar property is
no longer duplicated but optional dimensions are still provided and are
checked on read.
2015-07-20 22:52:53 +01:00
beb92b4fa8 thermophysicalModels: Correcting handling of the inheritance of virtual functions
to avoid warnings from Clang
2015-07-18 12:26:25 +01:00
77bf182edc Resolved issues with virtual function inheritance and warning from clang
Also removed __GNUC__ conditional compilation statements which are no
longer needed.
2015-07-17 12:11:37 +01:00
0d024dd37d Removed use of the deprecated "register" keyword
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2015/n4340.html
2015-06-30 10:26:44 +01:00
4d1372c358 Update headers 2015-06-24 10:45:42 +01:00
61ba5f0268 Use basicThermo::dictName rather than hard-coding "thermophysicalProperties" 2015-06-24 10:44:57 +01:00
d8f45cf8c1 Lagrangian radiation models and fvDOM: Apply updates
Applying patches provided by Timo Niemi
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=1636
2015-06-12 15:35:43 +01:00
0a6814ee36 combustionModels: Added multiphase-phase support
by naming fields including the phase name is needed
2015-06-05 08:19:13 +01:00
b1cfbcf4c8 radiationModels/derivedFvPatchFields: Corrected documentation
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=1687
2015-05-24 19:02:41 +01:00
4aed56e67d makeSolidChemistryModel: Separate solid-only and solid-gas instantiation macros
Avoids duplicate typedefs.
Thanks to Bruno Santo for patch
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=1694
2015-05-17 22:04:36 +01:00