Commit Graph

671 Commits

Author SHA1 Message Date
146a59e46c GeometricField: Temporary fields are no longer registered on the database by default
Registration occurs when the temporary field is transferred to a non-temporary
field via a constructor or if explicitly transferred to the database via the
regIOobject "store" methods.
2018-12-20 11:00:37 +00:00
6faadcb45c Removed the unnecessary ".0" from dimensionedScalar constructors 2018-12-19 14:24:41 +00:00
ae63ebfbe6 reactingMultiphaseEulerFoam: Fixed potential double usage of rho tmp 2018-12-13 16:38:49 +00:00
3c0ce7b152 reactingMultiphaseEulerFoam: Updated EEqns for stationary phase
Resolves bug report https://bugs.openfoam.org/view.php?id=3132
2018-12-13 16:01:49 +00:00
ba76758702 MultiComponentPhaseModel: Rename Sc to Sct
This is to make it clear that this is a turbulent Schmidt number
2018-12-11 11:57:30 +00:00
c39816f032 alphatWallBoilingWallFunction: Fix for clang
Patch contributed by Juho Peltola, VTT.
2018-12-04 12:11:33 +00:00
8d8369a5e7 reactingEulerFoam: corrected file permissions 2018-12-02 20:30:39 +00:00
69b40df84b ThermalPhaseChangePhaseSystem: Consistency when solving for internal energy
The energy transfer associated with phase change has been corrected in
the case that the variable being solved for is internal energy.

Patch contributed by Juho Peltola, VTT.
2018-11-29 11:57:34 +00:00
bcf4e68901 Further rationalisation of the handling of "Final" solver settings
The selection of the "Final" solver settings is now handled automatically within
the "<equation>.solve()" call and there is no longer any need no provide a bool
argument for specific cases.  This simplifies the solution algorithm loop
structures and ensures consistency in behaviour across all solvers.

All tutorials have been updated to correspond to the now consistent rules.
2018-11-20 11:28:02 +00:00
ee443e201f Rationalised the handling of "Final" solver and relaxation factor settings
Now for transient simulations "Final" solver settings are required for ALL
equations providing consistency between the solution of velocity, energy,
composition and radiation properties.

However "Final" relaxation factors are no longer required for fields or
equations and if not present the standard value for the variable will be
applied.  Given that relaxation factors other than 1 are rarely required for
transient runs and hence the same for all iterations including the final one
this approach provide simpler input while still providing the flexibility to
specify a different value for the final iteration if required.  For steady cases
it is usual to execute just 1 outer iteration per time-step for which the
standard relaxation factors are appropriate, and if more than one iteration is
executed it is common to use the same factors for both.  In the unlikely event
of requiring different relaxation factors for the final iteration this is still
possible to specify via the now optional "Final" specification.
2018-11-17 19:42:23 +00:00
3980cc887c interfacialCompositionModels/Henry: Updated documentation
Corrected spelling and made it clear that the supplied constants are
dimensionless solubilities.
2018-11-13 16:15:28 +00:00
7b3cc689a6 chtMultiRegionFoam: Only do closed volume handling when running steady
This resolves bug report https://bugs.openfoam.org/view.php?id=3105
2018-11-13 09:24:30 +00:00
b80f0d3cdd chemFoam: Added support for constant temperature
By setting

    constantProperty temperature;

in constant/initialConditions the composition evolves at constant temperature.
2018-11-12 17:44:38 +00:00
1c35e8a2f5 reactingEulerFoam: Added update interval for population balance source terms.
This can be used to speedup simulations that converge to a steady state
by only updating the source terms once every few iterations. The number
of iterations between each update is set in fvSolution as follows:

    solvers
    {
        bubbles
        {
            sourceUpdateInterval 10;
        }

        // etc ...
    }

By default the interval is 1, and so the sources update every time.

Based on a patch contributed by Juho Peltola, VTT.
2018-11-05 09:28:03 +00:00
b59c71a15e chtMultiRegionFoam: Removed Qdot from top-level solver
Qdot is only relevant for reacting cases, and even then it is only
written out for post-processing purposes. It has been removed from
chtMultiRegionFoam as this solvers' typical usage is for non-reacting
simulations.

If it is desired to obtain Qdot from a chtMultiRegionFoam simulation,
then a better way would be to implement a function object to look up the
reaction model and write it out.
2018-10-30 16:01:19 +00:00
b7c64995b0 IsothermalPhaseModel: Always correct thermo
Commit 674bff40 was in the right direction, but pressure dependence also
has to be corrected for, whether the phase is pure or not. The phase now
always updates the thermo whilst maintaining a constant temperature.
2018-10-30 15:35:41 +00:00
674bff4031 IsothermalPhaseModel: Correct base thermo
An isothermal phase still needs to trigger a thermo update in it's base
classes, primarily to ensure that any inert species fractions get
updated. This will not trigger an actual update of the thermodynamics,
as that is done in AnisothermalPhaseModel.
2018-10-30 14:27:39 +00:00
e1c95941e7 reactingEulerFoam: Added linearTsub diameter model
This is a model for the diameter of vapour bubbles. It calculates the
diameter as a linear function of the liquid sub-cooling.

Also removed the correct method from diameterModel, as it wasn't really
doing anything except facilitating the update of diameter fields to be
written out. Derived sub-models can control this locally without
polluting the base interface.

Based on patch contributed by by Juho Peltola, VTT.
2018-10-29 14:16:41 +00:00
c9d7131eef driftFluxFoam: Added support for LRR and SSG Reynolds stress models 2018-10-29 12:05:54 +00:00
80cc9603a1 thermophysicalModels::eRefConstThermo: New thermodynamics to be used with internal energy
in preference hRefConstThermo.
2018-10-26 18:19:44 +01:00
43da4fefb2 TwoResistanceHeatTransferPhaseSystem: Moved interface update to before the energy solution
This has some stability benefits for both wall boiling and evaporation
cases.

Patch contributed by Juho Peltola, VTT.
2018-10-26 08:56:49 +01:00
214ae651ec reactingEulerFoam: Formatted references according the style guide
Patch contributed by Institute of Fluid Dynamics, Helmholtz-Zentrum
Dresden - Rossendorf (HZDR)
2018-10-19 11:06:25 +01:00
0546089b7d solidEquilibriumDisplacementFoam: Updated zeroing of Dcorr field 2018-10-17 16:01:08 +01:00
a8fc88b8ee DimensionedField, GeometricField: Added assignment to zero
Zeroing a dimensioned field can now be achieved by assignment to the
zero type. This prevents the clutter associated with constructing an
appropriate dimensioned type, or having to use multiply-equals-zero as a
workaround.
2018-10-17 13:41:16 +01:00
6b740a6776 reactingEulerFoam: Fixed functionObject phaseForces
The phaseForces function object now only calulates and writes out forces
when the corresponding model exists.

Patch contributed by Institute of Fluid Dynamics, Helmholtz-Zentrum
Dresden - Rossendorf (HZDR)
2018-10-17 12:16:21 +01:00
739b9e32fb reactingEulerFoam: Minor improvements to populationBalanceModel
Changed to using of UPtrList<Type> instead of List<*Type> for storing
reference to size and velocity groups, as this removes de-referencing
clutter. Fixed lookup of critical film thickness in PrinceBlanch
coalescence model. Added functionality calculating the overall diameter,
void fraction and void fraction weighted velocity for multiple velocity
groups.

Patch contributed by Institute of Fluid Dynamics, Helmholtz-Zentrum
Dresden - Rossendorf (HZDR)
2018-10-17 12:08:10 +01:00
6388a1d5d0 driftFluxFoam::BinghamPlastic: added limiter to avoid floating point exception for high phase fraction
Patch contributed by Juho Peltola, VTT.
2018-09-27 15:38:08 +01:00
f68b9cd80f InterfaceCompositionModel: Constant thermo instantiations 2018-09-25 09:33:48 +01:00
2d3e7e9981 reactingEulerFoam/phaseModels: Added multi-component isothermal phase 2018-09-24 11:24:25 +01:00
eaa089e38c InterfaceCompositionPhaseChangePhaseSystem: Two sided mass transfer fix
This change fixes an issue where mass transfer models were being looked
up on the wrong side of the interface. This also means that specifying
mass transfer just on one side of an interface is now possible without
generating errors.
2018-09-24 11:21:27 +01:00
1c0256ffab InterfaceCompositionPhaseChangePhaseSystem: Typo in error message 2018-09-24 09:54:34 +01:00
a098cdb710 hydrostaticDisplacementFvPatchVectorField: New experimental traction boundary condition for solidDisplacementFoam
Description
    Fixed traction boundary condition for the standard linear elastic, fixed
    coefficient displacement equation in which the traction is caused by
    the hydrostatic pressure of an external liquid reservoir.
2018-09-21 22:12:21 +01:00
82d8784901 solidDisplacementFoam: Added support for fvOptions in both D and T equations 2018-09-21 14:52:46 +01:00
53ee32d5c2 pimpleFoam: Corrected application name 2018-09-05 18:05:34 +01:00
98ec0df866 reactingParcelFoam: Removed the unnecessary and inconsistent writing of the density field
Resolves feature request https://bugs.openfoam.org/view.php?id=3054
2018-08-27 20:47:00 +01:00
c3c09229be PDRFoam: Added betav to ddtCorr
Resolves bug-report https://bugs.openfoam.org/view.php?id=3014
2018-08-13 14:47:30 +01:00
f7100178e4 thermophysicalModels: Added laminar thermal diffusivity for energy, alphahe
Needed for laminar transport of he (h or e)

Resolves bug-report https://bugs.openfoam.org/view.php?id=3025
2018-08-05 11:29:28 +01:00
8662f99ac1 Corrected typos in comments
Resolves bug-report https://bugs.openfoam.org/view.php?id=3017
2018-07-31 17:11:21 +01:00
ab31777e9c radiation: Removed the redundant "radiation off" switch from radiationProperties
To switch-off radiation set

    radiationModel  none;

in radiationProperties which instantiates "null" model that does not read any
data or coefficients or evaluate any fields.
2018-07-25 08:10:30 +01:00
20653ee01e semiPermeableBaffle: Added mole-fraction and partial-pressure input options
The semiPermeableBaffleMassFraction boundary condition can now calculate
the mass flux as proportional to the difference in mole fraction or
partial pressure. A mass fraction difference driven transfer is also
still possible. An additional keyword, "input" has been added which is
used to select the variable used to calculate the transfer. An example
specification is as follows:

    baffle
    {
        type            semiPermeableBaffleMassFraction;
        samplePatch     membranePipe;
        c               0.1;
        input           massFraction;
        value           uniform 0;
    }

In order to facilitate this, a "W" method to get the molar mass on a
patch has been added to the thermodynamics. To avoid name-clashes,
methods that generate per-species molar masses have been renamed "Wi".

This work was supported by Georg Skillas, at Evonik
2018-07-11 10:08:44 +01:00
29fc94d3e2 Merge branch 'master' of github.com-OpenFOAM:OpenFOAM/OpenFOAM-dev into mergeDyM 2018-07-10 20:10:01 +01:00
bf54ab67e1 Updated OpenFOAM Foundation web-link in headers 2018-07-06 21:42:54 +01:00
ae76568896 rhoReactingFoam: Added moving and changing mesh functionality
Re-based on the latest rhoPimpleFoam which includes moving and changing mesh
functionality.
2018-07-05 21:07:38 +01:00
0af5c9061f DPMFoam: Merged with DPMDyMFoam
DPMFoam can now run with static or dynamic meshes selected in the
constant/dynamicMeshDict dictionary.
2018-07-05 10:25:51 +01:00
d5e27b1ed5 shallowWaterFoam: declare h0 const 2018-07-04 17:39:20 +01:00
cba52dfad0 sprayFoam: Merged with sprayDyMFoam
sprayFoam can now run with static or dynamic meshes selected in the
constant/dynamicMeshDict dictionary.
2018-07-04 17:38:36 +01:00
0262ee1364 icoUncoupledKinematicParcelFoam: Merged with icoUncoupledKinematicParcelDyMFoam
icoUncoupledKinematicParcelFoam can now run with static or dynamic meshes selected in the
constant/dynamicMeshDict dictionary.
2018-07-04 17:37:36 +01:00
648989d50c cavitatingFoam: Merged with cavitatingDyMFoam
cavitatingFoam can now run with static or dynamic meshes selected in the
constant/dynamicMeshDict dictionary.
2018-07-04 17:03:16 +01:00
42cafa62b8 interPhaseChangeFoam: Merged with interPhaseChangeDyMFoam
interPhaseChangeFoam can now run with static or dynamic meshes selected in the
constant/dynamicMeshDict dictionary.
2018-07-04 09:43:52 +01:00
ec87585127 icoUncoupledKinematicParcelFoam: Merged with icoUncoupledKinematicParcelDyMFoam
icoUncoupledKinematicParcelFoam can now run with static or dynamic meshes selected in the
constant/dynamicMeshDict dictionary.
2018-07-03 10:44:07 +01:00