From 2e62bfe5bcb94bd222bc646e5dd34f4729a2cf04 Mon Sep 17 00:00:00 2001 From: Henry Weller Date: Fri, 10 Jul 2020 09:37:48 +0100 Subject: [PATCH] reactingMultiphaseEulerFoam: Updated remaining two-phase turbulent transport and IATE models for compatibility with reactingMultiphaseEulerFoam when run with two-phases. Some of these two-phase models could be enhanced to operate with multiple dispersed phases in the future. In order to update these models for reactingMultiphaseEulerFoam it has been necessary to break compatibility with the now redundant twoPhaseEulerFoam solver which has been superseded by the much more capable reactingEulerFoam solvers and now removed. --- ...phaseCompressibleMomentumTransportModels.C | 18 + .../reactingEulerFoam/phaseSystems/Make/files | 8 + .../MomentumTransferPhaseSystem.H | 21 +- .../diameterModels/IATE/IATE.C | 0 .../diameterModels/IATE/IATE.H | 2 +- .../IATE/IATEsources/IATEsource/IATEsource.C | 8 +- .../IATE/IATEsources/IATEsource/IATEsource.H | 17 +- .../IATE/IATEsources/dummy/dummy.C | 2 +- .../IATE/IATEsources/dummy/dummy.H | 2 +- .../phaseChange/IATEphaseChange.C} | 5 +- .../phaseChange/IATEphaseChange.H} | 6 +- .../IATErandomCoalescence.C} | 4 +- .../IATErandomCoalescence.H} | 6 +- .../turbulentBreakUp/IATEturbulentBreakUp.C} | 4 +- .../turbulentBreakUp/IATEturbulentBreakUp.H} | 6 +- .../IATEwakeEntrainmentCoalescence.C} | 4 +- .../IATEwakeEntrainmentCoalescence.H} | 6 +- .../wallBoiling/IATEwallBoiling.C} | 2 +- .../wallBoiling/IATEwallBoiling.H} | 6 +- .../phaseSystems/phaseSystem/phaseSystem.H | 16 + .../phaseSystems/phaseSystem/phaseSystemI.H | 25 +- .../multiphaseSystem/multiphaseSystem.H | 6 - .../reactingTwoPhaseEulerFoam/Allwclean | 1 - .../reactingTwoPhaseEulerFoam/Allwmake | 1 - .../reactingTwoPhaseEulerFoam/Make/options | 1 - .../Make/files | 3 - .../Make/options | 20 - ...PhaseCompressibleMomentumTransportModels.C | 76 -- .../twoPhaseSystem/Make/files | 8 - .../twoPhaseSystem/Make/options | 1 - .../twoPhaseSystem/twoPhaseSystem.H | 18 +- .../multiphase/twoPhaseEulerFoam/Allwclean | 10 - .../multiphase/twoPhaseEulerFoam/Allwmake | 13 - .../multiphase/twoPhaseEulerFoam/CourantNos.H | 12 - .../multiphase/twoPhaseEulerFoam/EEqns.H | 91 -- .../multiphase/twoPhaseEulerFoam/Make/files | 3 - .../multiphase/twoPhaseEulerFoam/Make/options | 25 - .../multiphase/twoPhaseEulerFoam/contErrs.H | 13 - .../twoPhaseEulerFoam/correctContErrs.H | 7 - .../twoPhaseEulerFoam/createFieldRefs.H | 20 - .../twoPhaseEulerFoam/createFields.H | 85 -- .../multiphase/twoPhaseEulerFoam/createMRF.H | 4 - .../interfacialModels/Make/files | 64 -- .../interfacialModels/Make/options | 13 - .../TomiyamaAspectRatio/TomiyamaAspectRatio.C | 81 -- .../TomiyamaAspectRatio/TomiyamaAspectRatio.H | 101 --- .../VakhrushevEfremov/VakhrushevEfremov.C | 80 -- .../VakhrushevEfremov/VakhrushevEfremov.H | 100 --- .../aspectRatioModels/Wellek/Wellek.C | 74 -- .../aspectRatioModels/Wellek/Wellek.H | 106 --- .../aspectRatioModel/aspectRatioModel.C | 56 -- .../aspectRatioModel/aspectRatioModel.H | 121 --- .../aspectRatioModel/newAspectRatioModel.C | 60 -- .../constantAspectRatio/constantAspectRatio.C | 82 -- .../constantAspectRatio/constantAspectRatio.H | 97 --- .../dragModels/Ergun/Ergun.C | 80 -- .../dragModels/Ergun/Ergun.H | 98 --- .../dragModels/Gibilaro/Gibilaro.C | 78 -- .../dragModels/Gibilaro/Gibilaro.H | 98 --- .../GidaspowErgunWenYu/GidaspowErgunWenYu.C | 92 -- .../GidaspowErgunWenYu/GidaspowErgunWenYu.H | 114 --- .../GidaspowSchillerNaumann.C | 87 -- .../GidaspowSchillerNaumann.H | 115 --- .../dragModels/IshiiZuber/IshiiZuber.C | 100 --- .../dragModels/IshiiZuber/IshiiZuber.H | 104 --- .../interfacialModels/dragModels/Lain/Lain.C | 75 -- .../interfacialModels/dragModels/Lain/Lain.H | 111 --- .../SchillerNaumann/SchillerNaumann.C | 74 -- .../SchillerNaumann/SchillerNaumann.H | 101 --- .../dragModels/SyamlalOBrien/SyamlalOBrien.C | 93 -- .../dragModels/SyamlalOBrien/SyamlalOBrien.H | 97 --- .../TomiyamaAnalytic/TomiyamaAnalytic.C | 89 -- .../TomiyamaAnalytic/TomiyamaAnalytic.H | 116 --- .../TomiyamaCorrelated/TomiyamaCorrelated.C | 85 -- .../TomiyamaCorrelated/TomiyamaCorrelated.H | 110 --- .../dragModels/WenYu/WenYu.C | 85 -- .../dragModels/WenYu/WenYu.H | 109 --- .../dragModels/dragModel/dragModel.C | 140 --- .../dragModels/dragModel/dragModel.H | 162 ---- .../dragModels/dragModel/newDragModel.C | 59 -- .../dragModels/segregated/segregated.C | 169 ---- .../dragModels/segregated/segregated.H | 117 --- .../RanzMarshall/RanzMarshall.C | 76 -- .../RanzMarshall/RanzMarshall.H | 95 -- .../heatTransferModel/heatTransferModel.C | 68 -- .../heatTransferModel/heatTransferModel.H | 132 --- .../heatTransferModel/newHeatTransferModel.C | 59 -- .../sphericalHeatTransfer.C | 78 -- .../sphericalHeatTransfer.H | 95 -- .../LegendreMagnaudet/LegendreMagnaudet.C | 98 --- .../LegendreMagnaudet/LegendreMagnaudet.H | 116 --- .../liftModels/Moraga/Moraga.C | 98 --- .../liftModels/Moraga/Moraga.H | 109 --- .../liftModels/TomiyamaLift/TomiyamaLift.C | 78 -- .../liftModels/TomiyamaLift/TomiyamaLift.H | 106 --- .../constantLiftCoefficient.C | 77 -- .../constantLiftCoefficient.H | 100 --- .../liftModels/liftModel/liftModel.C | 86 -- .../liftModels/liftModel/liftModel.H | 137 --- .../liftModels/liftModel/newLiftModel.C | 59 -- .../liftModels/noLift/noLift.C | 104 --- .../liftModels/noLift/noLift.H | 99 --- .../TomiyamaSwarm/TomiyamaSwarm.C | 86 -- .../TomiyamaSwarm/TomiyamaSwarm.H | 109 --- .../swarmCorrections/noSwarm/noSwarm.C | 75 -- .../swarmCorrections/noSwarm/noSwarm.H | 93 -- .../swarmCorrection/newSwarmCorrection.C | 60 -- .../swarmCorrection/swarmCorrection.C | 56 -- .../swarmCorrection/swarmCorrection.H | 121 --- .../turbulentDispersionModels/Burns/Burns.C | 112 --- .../turbulentDispersionModels/Burns/Burns.H | 121 --- .../turbulentDispersionModels/Gosman/Gosman.C | 98 --- .../turbulentDispersionModels/Gosman/Gosman.H | 110 --- .../LopezDeBertodano/LopezDeBertodano.C | 79 -- .../LopezDeBertodano/LopezDeBertodano.H | 116 --- .../constantTurbulentDispersionCoefficient.C | 83 -- .../constantTurbulentDispersionCoefficient.H | 101 --- .../noTurbulentDispersion.C | 96 -- .../noTurbulentDispersion.H | 97 --- .../newTurbulentDispersionModel.C | 60 -- .../turbulentDispersionModel.C | 69 -- .../turbulentDispersionModel.H | 134 --- .../virtualMassModels/Lamb/Lamb.C | 79 -- .../virtualMassModels/Lamb/Lamb.H | 102 --- .../constantVirtualMassCoefficient.C | 85 -- .../constantVirtualMassCoefficient.H | 101 --- .../noVirtualMass/noVirtualMass.C | 84 -- .../noVirtualMass/noVirtualMass.H | 97 --- .../virtualMassModel/newVirtualMassModel.C | 59 -- .../virtualMassModel/virtualMassModel.C | 99 --- .../virtualMassModel/virtualMassModel.H | 151 ---- .../wallDependentModel/wallDependentModel.C | 57 -- .../wallDependentModel/wallDependentModel.H | 97 --- .../wallLubricationModels/Antal/Antal.C | 87 -- .../wallLubricationModels/Antal/Antal.H | 112 --- .../wallLubricationModels/Frank/Frank.C | 97 --- .../wallLubricationModels/Frank/Frank.H | 122 --- .../TomiyamaWallLubrication.C | 96 -- .../TomiyamaWallLubrication.H | 115 --- .../noWallLubrication/noWallLubrication.C | 95 -- .../noWallLubrication/noWallLubrication.H | 96 -- .../newWallLubricationModel.C | 59 -- .../wallLubricationModel.C | 75 -- .../wallLubricationModel.H | 137 --- .../multiphase/twoPhaseEulerFoam/pU/DDtU.H | 13 - .../multiphase/twoPhaseEulerFoam/pU/UEqns.H | 62 -- .../twoPhaseEulerFoam/pU/createDDtU.H | 17 - .../multiphase/twoPhaseEulerFoam/pU/pEqn.H | 415 --------- .../multiphase/twoPhaseEulerFoam/pUf/DDtU.H | 9 - .../multiphase/twoPhaseEulerFoam/pUf/UEqns.H | 55 -- .../twoPhaseEulerFoam/pUf/createDDtU.H | 9 - .../multiphase/twoPhaseEulerFoam/pUf/pEqn.H | 367 -------- .../Make/files | 39 - .../Make/options | 21 - .../Gidaspow/GidaspowConductivity.C | 93 -- .../Gidaspow/GidaspowConductivity.H | 97 --- .../HrenyaSinclairConductivity.C | 114 --- .../HrenyaSinclairConductivity.H | 104 --- .../Syamlal/SyamlalConductivity.C | 93 -- .../Syamlal/SyamlalConductivity.H | 97 --- .../conductivityModel/conductivityModel.C | 58 -- .../conductivityModel/conductivityModel.H | 133 --- .../conductivityModel/newConductivityModel.C | 59 -- ...sonJacksonParticleSlipFvPatchVectorField.C | 253 ------ ...sonJacksonParticleSlipFvPatchVectorField.H | 173 ---- ...onJacksonParticleThetaFvPatchScalarField.C | 298 ------- ...onJacksonParticleThetaFvPatchScalarField.H | 175 ---- .../JohnsonJacksonFrictionalStress.C | 148 ---- .../JohnsonJacksonFrictionalStress.H | 131 --- .../JohnsonJacksonSchaefferFrictionalStress.C | 200 ----- .../JohnsonJacksonSchaefferFrictionalStress.H | 131 --- .../Schaeffer/SchaefferFrictionalStress.C | 182 ---- .../Schaeffer/SchaefferFrictionalStress.H | 119 --- .../frictionalStressModel.C | 58 -- .../frictionalStressModel.H | 145 ---- .../newFrictionalStressModel.C | 60 -- .../granularPressureModel/Lun/LunPressure.C | 98 --- .../granularPressureModel/Lun/LunPressure.H | 104 --- .../SyamlalRogersOBrienPressure.C | 101 --- .../SyamlalRogersOBrienPressure.H | 104 --- .../granularPressureModel.C | 58 -- .../granularPressureModel.H | 142 --- .../newGranularPressureModel.C | 60 -- .../kineticTheoryModel/kineticTheoryModel.C | 549 ------------ .../kineticTheoryModel/kineticTheoryModel.H | 235 ----- .../CarnahanStarling/CarnahanStarlingRadial.C | 100 --- .../CarnahanStarling/CarnahanStarlingRadial.H | 102 --- .../radialModel/LunSavage/LunSavageRadial.C | 94 -- .../radialModel/LunSavage/LunSavageRadial.H | 101 --- .../SinclairJackson/SinclairJacksonRadial.C | 98 --- .../SinclairJackson/SinclairJacksonRadial.H | 101 --- .../radialModel/radialModel/newRadialModel.C | 60 -- .../radialModel/radialModel/radialModel.C | 58 -- .../radialModel/radialModel/radialModel.H | 139 --- .../Gidaspow/GidaspowViscosity.C | 87 -- .../Gidaspow/GidaspowViscosity.H | 96 -- .../HrenyaSinclair/HrenyaSinclairViscosity.C | 111 --- .../HrenyaSinclair/HrenyaSinclairViscosity.H | 106 --- .../viscosityModel/Syamlal/SyamlalViscosity.C | 86 -- .../viscosityModel/Syamlal/SyamlalViscosity.H | 97 --- .../viscosityModel/none/noneViscosity.C | 75 -- .../viscosityModel/none/noneViscosity.H | 94 -- .../viscosityModel/newViscosityModel.C | 59 -- .../viscosityModel/viscosityModel.C | 57 -- .../viscosityModel/viscosityModel.H | 135 --- .../phaseCompressibleMomentumTransportModel.H | 71 -- ...aseCompressibleMomentumTransportModelFwd.H | 52 -- ...phaseCompressibleMomentumTransportModels.C | 108 --- .../phasePressureModel/phasePressureModel.C | 225 ----- .../phasePressureModel/phasePressureModel.H | 188 ---- .../Make/files | 3 - .../Make/options | 16 - .../phaseThermophysicalTransportModels.C | 119 --- .../twoPhaseEulerFoam/twoPhaseEulerFoam.C | 127 --- .../BlendedInterfacialModel.C | 430 --------- .../BlendedInterfacialModel.H | 161 ---- .../blendingMethod/blendingMethod.C | 52 -- .../blendingMethod/blendingMethod.H | 120 --- .../blendingMethod/newBlendingMethod.C | 58 -- .../blendingMethods/hyperbolic/hyperbolic.C | 124 --- .../blendingMethods/hyperbolic/hyperbolic.H | 110 --- .../blendingMethods/linear/linear.C | 164 ---- .../blendingMethods/linear/linear.H | 112 --- .../blendingMethods/noBlending/noBlending.C | 101 --- .../blendingMethods/noBlending/noBlending.H | 107 --- .../twoPhaseSystem/Make/files | 25 - .../twoPhaseSystem/Make/options | 14 - .../twoPhaseSystem/diameterModels/IATE/IATE.C | 201 ----- .../twoPhaseSystem/diameterModels/IATE/IATE.H | 155 ---- .../IATE/IATEsources/IATEsource/IATEsource.C | 144 --- .../IATE/IATEsources/IATEsource/IATEsource.H | 192 ---- .../IATE/IATEsources/dummy/dummy.C | 58 -- .../IATE/IATEsources/dummy/dummy.H | 96 -- .../randomCoalescence/randomCoalescence.C | 104 --- .../randomCoalescence/randomCoalescence.H | 106 --- .../turbulentBreakUp/turbulentBreakUp.C | 99 --- .../turbulentBreakUp/turbulentBreakUp.H | 104 --- .../wakeEntrainmentCoalescence.C | 72 -- .../wakeEntrainmentCoalescence.H | 103 --- .../constantDiameter/constantDiameter.C | 89 -- .../constantDiameter/constantDiameter.H | 100 --- .../diameterModel/diameterModel.C | 70 -- .../diameterModel/diameterModel.H | 139 --- .../diameterModel/newDiameterModel.C | 67 -- .../isothermalDiameter/isothermalDiameter.C | 91 -- .../isothermalDiameter/isothermalDiameter.H | 103 --- .../twoPhaseSystem/phaseModel/phaseModel.C | 269 ------ .../twoPhaseSystem/phaseModel/phaseModel.H | 360 -------- .../orderedPhasePair/orderedPhasePair.C | 97 --- .../orderedPhasePair/orderedPhasePair.H | 104 --- .../phasePair/phasePair/phasePair.C | 196 ----- .../phasePair/phasePair/phasePair.H | 179 ---- .../phasePair/phasePair/phasePairI.H | 52 -- .../phasePair/phasePairKey/phasePairKey.C | 158 ---- .../phasePair/phasePairKey/phasePairKey.H | 130 --- .../twoPhaseSystem/twoPhaseSystem.C | 578 ------------- .../twoPhaseSystem/twoPhaseSystem.H | 253 ------ .../twoPhaseSystem/twoPhaseSystemI.H | 104 --- .../twoPhaseSystem/twoPhaseSystemTemplates.C | 77 -- .../multiphase/twoPhaseEulerFoam/write.H | 17 - bin/twoPhaseEulerFoam | 37 + .../phaseCompressible/LES/Niceno/NicenoKEqn.C | 8 +- .../LES/SmagorinskyZhang/SmagorinskyZhang.C | 3 +- .../LES/continuousGasKEqn/continuousGasKEqn.C | 5 +- .../RAS/LaheyKEpsilon/LaheyKEpsilon.C | 7 +- .../continuousGasKEpsilon.C | 9 +- .../RAS/mixtureKEpsilon/mixtureKEpsilon.C | 19 +- .../LES/bubbleColumn/0/T.air | 45 - .../LES/bubbleColumn/0/T.water | 45 - .../LES/bubbleColumn/0/Theta | 47 - .../LES/bubbleColumn/0/U.air | 41 - .../LES/bubbleColumn/0/U.water | 41 - .../LES/bubbleColumn/0/alpha.air.orig | 42 - .../LES/bubbleColumn/0/alphat.air | 48 - .../LES/bubbleColumn/0/alphat.water | 48 - .../LES/bubbleColumn/0/epsilon.air | 49 -- .../LES/bubbleColumn/0/epsilon.water | 49 -- .../LES/bubbleColumn/0/k.air | 49 -- .../LES/bubbleColumn/0/k.water | 49 -- .../LES/bubbleColumn/0/nut.air | 47 - .../LES/bubbleColumn/0/nut.water | 47 - .../twoPhaseEulerFoam/LES/bubbleColumn/0/p | 40 - .../LES/bubbleColumn/0/p_rgh | 41 - .../twoPhaseEulerFoam/LES/bubbleColumn/Allrun | 11 - .../LES/bubbleColumn/constant/g | 22 - .../constant/momentumTransport.air | 34 - .../constant/momentumTransport.water | 34 - .../LES/bubbleColumn/constant/phaseProperties | 159 ---- .../constant/thermophysicalProperties.air | 48 - .../constant/thermophysicalProperties.water | 52 -- .../LES/bubbleColumn/system/blockMeshDict | 61 -- .../LES/bubbleColumn/system/controlDict | 60 -- .../LES/bubbleColumn/system/fvSchemes | 62 -- .../LES/bubbleColumn/system/fvSolution | 84 -- .../LES/bubbleColumn/system/setFieldsDict | 36 - .../RAS/bubbleColumn/0/T.air | 45 - .../RAS/bubbleColumn/0/T.water | 45 - .../RAS/bubbleColumn/0/Theta | 47 - .../RAS/bubbleColumn/0/U.air | 41 - .../RAS/bubbleColumn/0/U.water | 41 - .../RAS/bubbleColumn/0/alpha.air.orig | 42 - .../RAS/bubbleColumn/0/alphat.air | 48 - .../RAS/bubbleColumn/0/alphat.water | 48 - .../RAS/bubbleColumn/0/epsilon.air | 49 -- .../RAS/bubbleColumn/0/epsilon.water | 49 -- .../RAS/bubbleColumn/0/epsilonm | 49 -- .../RAS/bubbleColumn/0/k.air | 49 -- .../RAS/bubbleColumn/0/k.water | 49 -- .../twoPhaseEulerFoam/RAS/bubbleColumn/0/km | 49 -- .../RAS/bubbleColumn/0/nut.air | 47 - .../RAS/bubbleColumn/0/nut.water | 47 - .../twoPhaseEulerFoam/RAS/bubbleColumn/0/p | 40 - .../RAS/bubbleColumn/0/p_rgh | 41 - .../twoPhaseEulerFoam/RAS/bubbleColumn/Allrun | 11 - .../RAS/bubbleColumn/constant/g | 22 - .../constant/momentumTransport.air | 34 - .../constant/momentumTransport.water | 28 - .../RAS/bubbleColumn/constant/phaseProperties | 159 ---- .../constant/thermophysicalProperties.air | 48 - .../constant/thermophysicalProperties.water | 52 -- .../RAS/bubbleColumn/system/blockMeshDict | 61 -- .../RAS/bubbleColumn/system/controlDict | 60 -- .../RAS/bubbleColumn/system/fvSchemes | 64 -- .../RAS/bubbleColumn/system/fvSolution | 84 -- .../RAS/bubbleColumn/system/setFieldsDict | 36 - .../RAS/fluidisedBed/0/T.air | 48 - .../RAS/fluidisedBed/0/T.particles | 47 - .../RAS/fluidisedBed/0/Theta.particles | 47 - .../RAS/fluidisedBed/0/U.air | 49 -- .../RAS/fluidisedBed/0/U.particles | 47 - .../RAS/fluidisedBed/0/alpha.air.orig | 44 - .../RAS/fluidisedBed/0/alpha.particles.orig | 44 - .../RAS/fluidisedBed/0/alphat.air | 48 - .../RAS/fluidisedBed/0/alphat.particles | 47 - .../RAS/fluidisedBed/0/epsilon.air | 49 -- .../RAS/fluidisedBed/0/k.air | 49 -- .../RAS/fluidisedBed/0/nut.air | 47 - .../RAS/fluidisedBed/0/nut.particles | 47 - .../twoPhaseEulerFoam/RAS/fluidisedBed/0/p | 47 - .../RAS/fluidisedBed/0/p_rgh | 48 - .../twoPhaseEulerFoam/RAS/fluidisedBed/Allrun | 11 - .../RAS/fluidisedBed/constant/g | 22 - .../constant/momentumTransport.air | 44 - .../constant/momentumTransport.particles | 62 -- .../RAS/fluidisedBed/constant/phaseProperties | 111 --- .../constant/thermophysicalProperties.air | 48 - .../thermophysicalProperties.particles | 52 -- .../RAS/fluidisedBed/system/blockMeshDict | 66 -- .../RAS/fluidisedBed/system/controlDict | 60 -- .../RAS/fluidisedBed/system/fvSchemes | 68 -- .../RAS/fluidisedBed/system/fvSolution | 102 --- .../RAS/fluidisedBed/system/setFieldsDict | 38 - .../laminar/bubbleColumn/0/T.air | 45 - .../laminar/bubbleColumn/0/T.water | 45 - .../laminar/bubbleColumn/0/Theta | 47 - .../laminar/bubbleColumn/0/U.air | 41 - .../laminar/bubbleColumn/0/U.water | 41 - .../laminar/bubbleColumn/0/alpha.air.orig | 42 - .../laminar/bubbleColumn/0/p | 40 - .../laminar/bubbleColumn/0/p_rgh | 41 - .../laminar/bubbleColumn/Allrun | 11 - .../laminar/bubbleColumn/constant/g | 22 - .../constant/momentumTransport.air | 20 - .../constant/momentumTransport.water | 20 - .../bubbleColumn/constant/phaseProperties | 160 ---- .../constant/thermophysicalProperties.air | 48 - .../constant/thermophysicalProperties.water | 52 -- .../laminar/bubbleColumn/system/blockMeshDict | 61 -- .../laminar/bubbleColumn/system/controlDict | 60 -- .../laminar/bubbleColumn/system/fvSchemes | 61 -- .../laminar/bubbleColumn/system/fvSolution | 75 -- .../laminar/bubbleColumn/system/setFieldsDict | 36 - .../laminar/bubbleColumnIATE/0/T.air | 45 - .../laminar/bubbleColumnIATE/0/T.water | 45 - .../laminar/bubbleColumnIATE/0/Theta | 47 - .../laminar/bubbleColumnIATE/0/U.air | 41 - .../laminar/bubbleColumnIATE/0/U.water | 41 - .../laminar/bubbleColumnIATE/0/alpha.air.orig | 42 - .../laminar/bubbleColumnIATE/0/kappai.air | 45 - .../laminar/bubbleColumnIATE/0/p | 40 - .../laminar/bubbleColumnIATE/0/p_rgh | 41 - .../laminar/bubbleColumnIATE/Allrun | 11 - .../laminar/bubbleColumnIATE/constant/g | 22 - .../constant/momentumTransport.air | 20 - .../constant/momentumTransport.water | 20 - .../bubbleColumnIATE/constant/phaseProperties | 180 ---- .../constant/thermophysicalProperties.air | 48 - .../constant/thermophysicalProperties.water | 52 -- .../bubbleColumnIATE/system/blockMeshDict | 61 -- .../bubbleColumnIATE/system/controlDict | 60 -- .../laminar/bubbleColumnIATE/system/fvSchemes | 63 -- .../bubbleColumnIATE/system/fvSolution | 75 -- .../bubbleColumnIATE/system/setFieldsDict | 36 - .../laminar/fluidisedBed/0/T.air | 48 - .../laminar/fluidisedBed/0/T.particles | 47 - .../laminar/fluidisedBed/0/Theta.particles | 47 - .../laminar/fluidisedBed/0/U.air | 49 -- .../laminar/fluidisedBed/0/U.particles | 47 - .../fluidisedBed/0/alpha.particles.orig | 44 - .../laminar/fluidisedBed/0/alphat.particles | 47 - .../laminar/fluidisedBed/0/epsilon.air | 49 -- .../laminar/fluidisedBed/0/k.air | 49 -- .../laminar/fluidisedBed/0/nut.air | 47 - .../laminar/fluidisedBed/0/nut.particles | 47 - .../laminar/fluidisedBed/0/p | 47 - .../laminar/fluidisedBed/0/p_rgh | 48 - .../laminar/fluidisedBed/Allrun | 11 - .../laminar/fluidisedBed/constant/g | 22 - .../constant/momentumTransport.air | 20 - .../constant/momentumTransport.particles | 61 -- .../fluidisedBed/constant/phaseProperties | 112 --- .../constant/thermophysicalProperties.air | 48 - .../thermophysicalProperties.particles | 52 -- .../laminar/fluidisedBed/system/blockMeshDict | 66 -- .../laminar/fluidisedBed/system/controlDict | 60 -- .../laminar/fluidisedBed/system/fvSchemes | 62 -- .../laminar/fluidisedBed/system/fvSolution | 102 --- .../laminar/fluidisedBed/system/setFieldsDict | 38 - .../laminar/injection/0/T.air | 36 - .../laminar/injection/0/T.water | 36 - .../laminar/injection/0/U.air | 36 - .../laminar/injection/0/U.water | 36 - .../laminar/injection/0/alpha.air.orig | 37 - .../twoPhaseEulerFoam/laminar/injection/0/p | 35 - .../laminar/injection/0/p_rgh | 37 - .../laminar/injection/Allrun | 11 - .../laminar/injection/constant/fvOptions | 59 -- .../laminar/injection/constant/g | 22 - .../injection/constant/momentumTransport.air | 20 - .../constant/momentumTransport.water | 20 - .../injection/constant/phaseProperties | 160 ---- .../constant/thermophysicalProperties.air | 48 - .../constant/thermophysicalProperties.water | 52 -- .../laminar/injection/system/blockMeshDict | 58 -- .../laminar/injection/system/controlDict | 55 -- .../laminar/injection/system/fvSchemes | 61 -- .../laminar/injection/system/fvSolution | 75 -- .../laminar/injection/system/setFieldsDict | 36 - .../laminar/mixerVessel2D/0/T.air | 44 - .../laminar/mixerVessel2D/0/T.water | 44 - .../laminar/mixerVessel2D/0/Theta | 44 - .../laminar/mixerVessel2D/0/U.air | 44 - .../laminar/mixerVessel2D/0/U.water | 44 - .../laminar/mixerVessel2D/0/alpha.air | 44 - .../laminar/mixerVessel2D/0/p | 46 - .../laminar/mixerVessel2D/0/p_rgh | 46 - .../laminar/mixerVessel2D/Allrun | 12 - .../mixerVessel2D/constant/MRFProperties | 31 - .../laminar/mixerVessel2D/constant/g | 22 - .../constant/momentumTransport.air | 20 - .../constant/momentumTransport.water | 20 - .../mixerVessel2D/constant/phaseProperties | 159 ---- .../constant/thermophysicalProperties.air | 48 - .../constant/thermophysicalProperties.water | 52 -- .../laminar/mixerVessel2D/makeMesh | 6 - .../mixerVessel2D/system/blockMeshDict.m4 | 818 ------------------ .../laminar/mixerVessel2D/system/controlDict | 55 -- .../laminar/mixerVessel2D/system/fvSchemes | 61 -- .../laminar/mixerVessel2D/system/fvSolution | 82 -- .../laminar/mixerVessel2D/system/topoSetDict | 32 - 460 files changed, 182 insertions(+), 34767 deletions(-) rename applications/solvers/multiphase/reactingEulerFoam/{reactingTwoPhaseEulerFoam/twoPhaseSystem => phaseSystems}/diameterModels/IATE/IATE.C (100%) rename applications/solvers/multiphase/reactingEulerFoam/{reactingTwoPhaseEulerFoam/twoPhaseSystem => phaseSystems}/diameterModels/IATE/IATE.H (98%) rename applications/solvers/multiphase/reactingEulerFoam/{reactingTwoPhaseEulerFoam/twoPhaseSystem => phaseSystems}/diameterModels/IATE/IATEsources/IATEsource/IATEsource.C (96%) rename applications/solvers/multiphase/reactingEulerFoam/{reactingTwoPhaseEulerFoam/twoPhaseSystem => phaseSystems}/diameterModels/IATE/IATEsources/IATEsource/IATEsource.H (91%) rename applications/solvers/multiphase/reactingEulerFoam/{reactingTwoPhaseEulerFoam/twoPhaseSystem => phaseSystems}/diameterModels/IATE/IATEsources/dummy/dummy.C (96%) rename applications/solvers/multiphase/reactingEulerFoam/{reactingTwoPhaseEulerFoam/twoPhaseSystem => phaseSystems}/diameterModels/IATE/IATEsources/dummy/dummy.H (97%) rename applications/solvers/multiphase/reactingEulerFoam/{reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/phaseChange/phaseChange.C => phaseSystems/diameterModels/IATE/IATEsources/phaseChange/IATEphaseChange.C} (96%) rename applications/solvers/multiphase/reactingEulerFoam/{reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/phaseChange/phaseChange.H => phaseSystems/diameterModels/IATE/IATEsources/phaseChange/IATEphaseChange.H} (95%) rename applications/solvers/multiphase/reactingEulerFoam/{reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/randomCoalescence/randomCoalescence.C => phaseSystems/diameterModels/IATE/IATEsources/randomCoalescence/IATErandomCoalescence.C} (96%) rename applications/solvers/multiphase/reactingEulerFoam/{reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/randomCoalescence/randomCoalescence.H => phaseSystems/diameterModels/IATE/IATEsources/randomCoalescence/IATErandomCoalescence.H} (95%) rename applications/solvers/multiphase/reactingEulerFoam/{reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/turbulentBreakUp/turbulentBreakUp.C => phaseSystems/diameterModels/IATE/IATEsources/turbulentBreakUp/IATEturbulentBreakUp.C} (96%) rename applications/solvers/multiphase/reactingEulerFoam/{reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/turbulentBreakUp/turbulentBreakUp.H => phaseSystems/diameterModels/IATE/IATEsources/turbulentBreakUp/IATEturbulentBreakUp.H} (95%) rename applications/solvers/multiphase/reactingEulerFoam/{reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/wakeEntrainmentCoalescence/wakeEntrainmentCoalescence.C => phaseSystems/diameterModels/IATE/IATEsources/wakeEntrainmentCoalescence/IATEwakeEntrainmentCoalescence.C} (95%) rename applications/solvers/multiphase/reactingEulerFoam/{reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/wakeEntrainmentCoalescence/wakeEntrainmentCoalescence.H => phaseSystems/diameterModels/IATE/IATEsources/wakeEntrainmentCoalescence/IATEwakeEntrainmentCoalescence.H} (95%) rename applications/solvers/multiphase/reactingEulerFoam/{reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/wallBoiling/wallBoiling.C => phaseSystems/diameterModels/IATE/IATEsources/wallBoiling/IATEwallBoiling.C} (99%) rename applications/solvers/multiphase/reactingEulerFoam/{reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/wallBoiling/wallBoiling.H => phaseSystems/diameterModels/IATE/IATEsources/wallBoiling/IATEwallBoiling.H} (95%) delete mode 100644 applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseCompressibleMomentumTransportModels/Make/files delete mode 100644 applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseCompressibleMomentumTransportModels/Make/options delete mode 100644 applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseCompressibleMomentumTransportModels/twoPhaseCompressibleMomentumTransportModels.C delete mode 100755 applications/solvers/multiphase/twoPhaseEulerFoam/Allwclean delete mode 100755 applications/solvers/multiphase/twoPhaseEulerFoam/Allwmake delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/CourantNos.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/EEqns.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/Make/files delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/Make/options delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/contErrs.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/correctContErrs.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/createFieldRefs.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/createFields.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/createMRF.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/Make/files delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/Make/options delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/aspectRatioModels/TomiyamaAspectRatio/TomiyamaAspectRatio.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/aspectRatioModels/TomiyamaAspectRatio/TomiyamaAspectRatio.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/aspectRatioModels/VakhrushevEfremov/VakhrushevEfremov.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/aspectRatioModels/VakhrushevEfremov/VakhrushevEfremov.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/aspectRatioModels/Wellek/Wellek.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/aspectRatioModels/Wellek/Wellek.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/aspectRatioModels/aspectRatioModel/aspectRatioModel.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/aspectRatioModels/aspectRatioModel/aspectRatioModel.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/aspectRatioModels/aspectRatioModel/newAspectRatioModel.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/aspectRatioModels/constantAspectRatio/constantAspectRatio.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/aspectRatioModels/constantAspectRatio/constantAspectRatio.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/Ergun/Ergun.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/Ergun/Ergun.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/Gibilaro/Gibilaro.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/Gibilaro/Gibilaro.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/GidaspowErgunWenYu/GidaspowErgunWenYu.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/GidaspowErgunWenYu/GidaspowErgunWenYu.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/GidaspowSchillerNaumann/GidaspowSchillerNaumann.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/GidaspowSchillerNaumann/GidaspowSchillerNaumann.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/IshiiZuber/IshiiZuber.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/IshiiZuber/IshiiZuber.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/Lain/Lain.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/Lain/Lain.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/SchillerNaumann/SchillerNaumann.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/SchillerNaumann/SchillerNaumann.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/SyamlalOBrien/SyamlalOBrien.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/SyamlalOBrien/SyamlalOBrien.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/TomiyamaAnalytic/TomiyamaAnalytic.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/TomiyamaAnalytic/TomiyamaAnalytic.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/TomiyamaCorrelated/TomiyamaCorrelated.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/TomiyamaCorrelated/TomiyamaCorrelated.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/WenYu/WenYu.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/WenYu/WenYu.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/dragModel/dragModel.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/dragModel/dragModel.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/dragModel/newDragModel.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/segregated/segregated.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/segregated/segregated.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/heatTransferModels/RanzMarshall/RanzMarshall.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/heatTransferModels/RanzMarshall/RanzMarshall.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/heatTransferModels/heatTransferModel/heatTransferModel.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/heatTransferModels/heatTransferModel/heatTransferModel.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/heatTransferModels/heatTransferModel/newHeatTransferModel.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/heatTransferModels/sphericalHeatTransfer/sphericalHeatTransfer.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/heatTransferModels/sphericalHeatTransfer/sphericalHeatTransfer.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/liftModels/LegendreMagnaudet/LegendreMagnaudet.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/liftModels/LegendreMagnaudet/LegendreMagnaudet.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/liftModels/Moraga/Moraga.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/liftModels/Moraga/Moraga.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/liftModels/TomiyamaLift/TomiyamaLift.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/liftModels/TomiyamaLift/TomiyamaLift.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/liftModels/constantLiftCoefficient/constantLiftCoefficient.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/liftModels/constantLiftCoefficient/constantLiftCoefficient.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/liftModels/liftModel/liftModel.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/liftModels/liftModel/liftModel.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/liftModels/liftModel/newLiftModel.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/liftModels/noLift/noLift.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/liftModels/noLift/noLift.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/swarmCorrections/TomiyamaSwarm/TomiyamaSwarm.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/swarmCorrections/TomiyamaSwarm/TomiyamaSwarm.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/swarmCorrections/noSwarm/noSwarm.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/swarmCorrections/noSwarm/noSwarm.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/swarmCorrections/swarmCorrection/newSwarmCorrection.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/swarmCorrections/swarmCorrection/swarmCorrection.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/swarmCorrections/swarmCorrection/swarmCorrection.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/Burns/Burns.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/Burns/Burns.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/Gosman/Gosman.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/Gosman/Gosman.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/LopezDeBertodano/LopezDeBertodano.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/LopezDeBertodano/LopezDeBertodano.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/constantTurbulentDispersionCoefficient/constantTurbulentDispersionCoefficient.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/constantTurbulentDispersionCoefficient/constantTurbulentDispersionCoefficient.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/noTurbulentDispersion/noTurbulentDispersion.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/noTurbulentDispersion/noTurbulentDispersion.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/turbulentDispersionModel/newTurbulentDispersionModel.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/turbulentDispersionModel/turbulentDispersionModel.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/turbulentDispersionModel/turbulentDispersionModel.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/virtualMassModels/Lamb/Lamb.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/virtualMassModels/Lamb/Lamb.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/virtualMassModels/constantVirtualMassCoefficient/constantVirtualMassCoefficient.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/virtualMassModels/constantVirtualMassCoefficient/constantVirtualMassCoefficient.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/virtualMassModels/noVirtualMass/noVirtualMass.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/virtualMassModels/noVirtualMass/noVirtualMass.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/virtualMassModels/virtualMassModel/newVirtualMassModel.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/virtualMassModels/virtualMassModel/virtualMassModel.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/virtualMassModels/virtualMassModel/virtualMassModel.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/wallDependentModel/wallDependentModel.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/wallDependentModel/wallDependentModel.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/wallLubricationModels/Antal/Antal.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/wallLubricationModels/Antal/Antal.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/wallLubricationModels/Frank/Frank.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/wallLubricationModels/Frank/Frank.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/wallLubricationModels/TomiyamaWallLubrication/TomiyamaWallLubrication.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/wallLubricationModels/TomiyamaWallLubrication/TomiyamaWallLubrication.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/wallLubricationModels/noWallLubrication/noWallLubrication.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/wallLubricationModels/noWallLubrication/noWallLubrication.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/wallLubricationModels/wallLubricationModel/newWallLubricationModel.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/wallLubricationModels/wallLubricationModel/wallLubricationModel.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/wallLubricationModels/wallLubricationModel/wallLubricationModel.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/pU/DDtU.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/pU/UEqns.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/pU/createDDtU.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/pU/pEqn.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/pUf/DDtU.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/pUf/UEqns.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/pUf/createDDtU.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/pUf/pEqn.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/Make/files delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/Make/options delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/conductivityModel/Gidaspow/GidaspowConductivity.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/conductivityModel/Gidaspow/GidaspowConductivity.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/conductivityModel/HrenyaSinclair/HrenyaSinclairConductivity.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/conductivityModel/HrenyaSinclair/HrenyaSinclairConductivity.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/conductivityModel/Syamlal/SyamlalConductivity.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/conductivityModel/Syamlal/SyamlalConductivity.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/conductivityModel/conductivityModel/conductivityModel.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/conductivityModel/conductivityModel/conductivityModel.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/conductivityModel/conductivityModel/newConductivityModel.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/derivedFvPatchFields/JohnsonJacksonParticleSlip/JohnsonJacksonParticleSlipFvPatchVectorField.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/derivedFvPatchFields/JohnsonJacksonParticleSlip/JohnsonJacksonParticleSlipFvPatchVectorField.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/derivedFvPatchFields/JohnsonJacksonParticleTheta/JohnsonJacksonParticleThetaFvPatchScalarField.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/derivedFvPatchFields/JohnsonJacksonParticleTheta/JohnsonJacksonParticleThetaFvPatchScalarField.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/frictionalStressModel/JohnsonJackson/JohnsonJacksonFrictionalStress.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/frictionalStressModel/JohnsonJackson/JohnsonJacksonFrictionalStress.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/frictionalStressModel/JohnsonJacksonSchaeffer/JohnsonJacksonSchaefferFrictionalStress.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/frictionalStressModel/JohnsonJacksonSchaeffer/JohnsonJacksonSchaefferFrictionalStress.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/frictionalStressModel/Schaeffer/SchaefferFrictionalStress.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/frictionalStressModel/Schaeffer/SchaefferFrictionalStress.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/frictionalStressModel/frictionalStressModel/frictionalStressModel.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/frictionalStressModel/frictionalStressModel/frictionalStressModel.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/frictionalStressModel/frictionalStressModel/newFrictionalStressModel.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/granularPressureModel/Lun/LunPressure.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/granularPressureModel/Lun/LunPressure.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/granularPressureModel/SyamlalRogersOBrien/SyamlalRogersOBrienPressure.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/granularPressureModel/SyamlalRogersOBrien/SyamlalRogersOBrienPressure.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/granularPressureModel/granularPressureModel/granularPressureModel.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/granularPressureModel/granularPressureModel/granularPressureModel.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/granularPressureModel/granularPressureModel/newGranularPressureModel.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/kineticTheoryModel/kineticTheoryModel.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/kineticTheoryModel/kineticTheoryModel.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/radialModel/CarnahanStarling/CarnahanStarlingRadial.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/radialModel/CarnahanStarling/CarnahanStarlingRadial.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/radialModel/LunSavage/LunSavageRadial.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/radialModel/LunSavage/LunSavageRadial.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/radialModel/SinclairJackson/SinclairJacksonRadial.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/radialModel/SinclairJackson/SinclairJacksonRadial.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/radialModel/radialModel/newRadialModel.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/radialModel/radialModel/radialModel.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/radialModel/radialModel/radialModel.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/viscosityModel/Gidaspow/GidaspowViscosity.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/viscosityModel/Gidaspow/GidaspowViscosity.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/viscosityModel/HrenyaSinclair/HrenyaSinclairViscosity.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/viscosityModel/HrenyaSinclair/HrenyaSinclairViscosity.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/viscosityModel/Syamlal/SyamlalViscosity.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/viscosityModel/Syamlal/SyamlalViscosity.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/viscosityModel/none/noneViscosity.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/viscosityModel/none/noneViscosity.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/viscosityModel/viscosityModel/newViscosityModel.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/viscosityModel/viscosityModel/viscosityModel.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/viscosityModel/viscosityModel/viscosityModel.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/phaseCompressibleMomentumTransportModel.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/phaseCompressibleMomentumTransportModelFwd.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/phaseCompressibleMomentumTransportModels.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/phasePressureModel/phasePressureModel.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/phasePressureModel/phasePressureModel.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseThermophysicalTransportModels/Make/files delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseThermophysicalTransportModels/Make/options delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/phaseThermophysicalTransportModels/phaseThermophysicalTransportModels.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseEulerFoam.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/BlendedInterfacialModel/BlendedInterfacialModel.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/BlendedInterfacialModel/BlendedInterfacialModel.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/BlendedInterfacialModel/blendingMethods/blendingMethod/blendingMethod.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/BlendedInterfacialModel/blendingMethods/blendingMethod/blendingMethod.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/BlendedInterfacialModel/blendingMethods/blendingMethod/newBlendingMethod.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/BlendedInterfacialModel/blendingMethods/hyperbolic/hyperbolic.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/BlendedInterfacialModel/blendingMethods/hyperbolic/hyperbolic.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/BlendedInterfacialModel/blendingMethods/linear/linear.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/BlendedInterfacialModel/blendingMethods/linear/linear.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/BlendedInterfacialModel/blendingMethods/noBlending/noBlending.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/BlendedInterfacialModel/blendingMethods/noBlending/noBlending.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/Make/files delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/Make/options delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATE.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATE.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/IATEsource/IATEsource.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/IATEsource/IATEsource.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/dummy/dummy.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/dummy/dummy.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/randomCoalescence/randomCoalescence.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/randomCoalescence/randomCoalescence.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/turbulentBreakUp/turbulentBreakUp.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/turbulentBreakUp/turbulentBreakUp.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/wakeEntrainmentCoalescence/wakeEntrainmentCoalescence.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/wakeEntrainmentCoalescence/wakeEntrainmentCoalescence.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/constantDiameter/constantDiameter.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/constantDiameter/constantDiameter.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/diameterModel/diameterModel.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/diameterModel/diameterModel.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/diameterModel/newDiameterModel.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/isothermalDiameter/isothermalDiameter.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/isothermalDiameter/isothermalDiameter.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/phaseModel/phaseModel.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/phaseModel/phaseModel.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/phasePair/orderedPhasePair/orderedPhasePair.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/phasePair/orderedPhasePair/orderedPhasePair.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/phasePair/phasePair/phasePair.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/phasePair/phasePair/phasePair.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/phasePair/phasePair/phasePairI.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/phasePair/phasePairKey/phasePairKey.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/phasePair/phasePairKey/phasePairKey.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/twoPhaseSystem.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/twoPhaseSystem.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/twoPhaseSystemI.H delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/twoPhaseSystemTemplates.C delete mode 100644 applications/solvers/multiphase/twoPhaseEulerFoam/write.H create mode 100755 bin/twoPhaseEulerFoam delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/LES/bubbleColumn/0/T.air delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/LES/bubbleColumn/0/T.water delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/LES/bubbleColumn/0/Theta delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/LES/bubbleColumn/0/U.air delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/LES/bubbleColumn/0/U.water delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/LES/bubbleColumn/0/alpha.air.orig delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/LES/bubbleColumn/0/alphat.air delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/LES/bubbleColumn/0/alphat.water delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/LES/bubbleColumn/0/epsilon.air delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/LES/bubbleColumn/0/epsilon.water delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/LES/bubbleColumn/0/k.air delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/LES/bubbleColumn/0/k.water delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/LES/bubbleColumn/0/nut.air delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/LES/bubbleColumn/0/nut.water delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/LES/bubbleColumn/0/p delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/LES/bubbleColumn/0/p_rgh delete mode 100755 tutorials/multiphase/twoPhaseEulerFoam/LES/bubbleColumn/Allrun delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/LES/bubbleColumn/constant/g delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/LES/bubbleColumn/constant/momentumTransport.air delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/LES/bubbleColumn/constant/momentumTransport.water delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/LES/bubbleColumn/constant/phaseProperties delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/LES/bubbleColumn/constant/thermophysicalProperties.air delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/LES/bubbleColumn/constant/thermophysicalProperties.water delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/LES/bubbleColumn/system/blockMeshDict delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/LES/bubbleColumn/system/controlDict delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/LES/bubbleColumn/system/fvSchemes delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/LES/bubbleColumn/system/fvSolution delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/LES/bubbleColumn/system/setFieldsDict delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/bubbleColumn/0/T.air delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/bubbleColumn/0/T.water delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/bubbleColumn/0/Theta delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/bubbleColumn/0/U.air delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/bubbleColumn/0/U.water delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/bubbleColumn/0/alpha.air.orig delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/bubbleColumn/0/alphat.air delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/bubbleColumn/0/alphat.water delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/bubbleColumn/0/epsilon.air delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/bubbleColumn/0/epsilon.water delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/bubbleColumn/0/epsilonm delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/bubbleColumn/0/k.air delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/bubbleColumn/0/k.water delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/bubbleColumn/0/km delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/bubbleColumn/0/nut.air delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/bubbleColumn/0/nut.water delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/bubbleColumn/0/p delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/bubbleColumn/0/p_rgh delete mode 100755 tutorials/multiphase/twoPhaseEulerFoam/RAS/bubbleColumn/Allrun delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/bubbleColumn/constant/g delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/bubbleColumn/constant/momentumTransport.air delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/bubbleColumn/constant/momentumTransport.water delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/bubbleColumn/constant/phaseProperties delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/bubbleColumn/constant/thermophysicalProperties.air delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/bubbleColumn/constant/thermophysicalProperties.water delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/bubbleColumn/system/blockMeshDict delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/bubbleColumn/system/controlDict delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/bubbleColumn/system/fvSchemes delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/bubbleColumn/system/fvSolution delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/bubbleColumn/system/setFieldsDict delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/fluidisedBed/0/T.air delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/fluidisedBed/0/T.particles delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/fluidisedBed/0/Theta.particles delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/fluidisedBed/0/U.air delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/fluidisedBed/0/U.particles delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/fluidisedBed/0/alpha.air.orig delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/fluidisedBed/0/alpha.particles.orig delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/fluidisedBed/0/alphat.air delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/fluidisedBed/0/alphat.particles delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/fluidisedBed/0/epsilon.air delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/fluidisedBed/0/k.air delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/fluidisedBed/0/nut.air delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/fluidisedBed/0/nut.particles delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/fluidisedBed/0/p delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/fluidisedBed/0/p_rgh delete mode 100755 tutorials/multiphase/twoPhaseEulerFoam/RAS/fluidisedBed/Allrun delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/fluidisedBed/constant/g delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/fluidisedBed/constant/momentumTransport.air delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/fluidisedBed/constant/momentumTransport.particles delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/fluidisedBed/constant/phaseProperties delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/fluidisedBed/constant/thermophysicalProperties.air delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/fluidisedBed/constant/thermophysicalProperties.particles delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/fluidisedBed/system/blockMeshDict delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/fluidisedBed/system/controlDict delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/fluidisedBed/system/fvSchemes delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/fluidisedBed/system/fvSolution delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/RAS/fluidisedBed/system/setFieldsDict delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/bubbleColumn/0/T.air delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/bubbleColumn/0/T.water delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/bubbleColumn/0/Theta delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/bubbleColumn/0/U.air delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/bubbleColumn/0/U.water delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/bubbleColumn/0/alpha.air.orig delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/bubbleColumn/0/p delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/bubbleColumn/0/p_rgh delete mode 100755 tutorials/multiphase/twoPhaseEulerFoam/laminar/bubbleColumn/Allrun delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/bubbleColumn/constant/g delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/bubbleColumn/constant/momentumTransport.air delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/bubbleColumn/constant/momentumTransport.water delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/bubbleColumn/constant/phaseProperties delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/bubbleColumn/constant/thermophysicalProperties.air delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/bubbleColumn/constant/thermophysicalProperties.water delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/bubbleColumn/system/blockMeshDict delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/bubbleColumn/system/controlDict delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/bubbleColumn/system/fvSchemes delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/bubbleColumn/system/fvSolution delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/bubbleColumn/system/setFieldsDict delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/bubbleColumnIATE/0/T.air delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/bubbleColumnIATE/0/T.water delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/bubbleColumnIATE/0/Theta delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/bubbleColumnIATE/0/U.air delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/bubbleColumnIATE/0/U.water delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/bubbleColumnIATE/0/alpha.air.orig delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/bubbleColumnIATE/0/kappai.air delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/bubbleColumnIATE/0/p delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/bubbleColumnIATE/0/p_rgh delete mode 100755 tutorials/multiphase/twoPhaseEulerFoam/laminar/bubbleColumnIATE/Allrun delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/bubbleColumnIATE/constant/g delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/bubbleColumnIATE/constant/momentumTransport.air delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/bubbleColumnIATE/constant/momentumTransport.water delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/bubbleColumnIATE/constant/phaseProperties delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/bubbleColumnIATE/constant/thermophysicalProperties.air delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/bubbleColumnIATE/constant/thermophysicalProperties.water delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/bubbleColumnIATE/system/blockMeshDict delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/bubbleColumnIATE/system/controlDict delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/bubbleColumnIATE/system/fvSchemes delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/bubbleColumnIATE/system/fvSolution delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/bubbleColumnIATE/system/setFieldsDict delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/fluidisedBed/0/T.air delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/fluidisedBed/0/T.particles delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/fluidisedBed/0/Theta.particles delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/fluidisedBed/0/U.air delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/fluidisedBed/0/U.particles delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/fluidisedBed/0/alpha.particles.orig delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/fluidisedBed/0/alphat.particles delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/fluidisedBed/0/epsilon.air delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/fluidisedBed/0/k.air delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/fluidisedBed/0/nut.air delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/fluidisedBed/0/nut.particles delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/fluidisedBed/0/p delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/fluidisedBed/0/p_rgh delete mode 100755 tutorials/multiphase/twoPhaseEulerFoam/laminar/fluidisedBed/Allrun delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/fluidisedBed/constant/g delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/fluidisedBed/constant/momentumTransport.air delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/fluidisedBed/constant/momentumTransport.particles delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/fluidisedBed/constant/phaseProperties delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/fluidisedBed/constant/thermophysicalProperties.air delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/fluidisedBed/constant/thermophysicalProperties.particles delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/fluidisedBed/system/blockMeshDict delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/fluidisedBed/system/controlDict delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/fluidisedBed/system/fvSchemes delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/fluidisedBed/system/fvSolution delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/fluidisedBed/system/setFieldsDict delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/injection/0/T.air delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/injection/0/T.water delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/injection/0/U.air delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/injection/0/U.water delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/injection/0/alpha.air.orig delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/injection/0/p delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/injection/0/p_rgh delete mode 100755 tutorials/multiphase/twoPhaseEulerFoam/laminar/injection/Allrun delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/injection/constant/fvOptions delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/injection/constant/g delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/injection/constant/momentumTransport.air delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/injection/constant/momentumTransport.water delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/injection/constant/phaseProperties delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/injection/constant/thermophysicalProperties.air delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/injection/constant/thermophysicalProperties.water delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/injection/system/blockMeshDict delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/injection/system/controlDict delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/injection/system/fvSchemes delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/injection/system/fvSolution delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/injection/system/setFieldsDict delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/mixerVessel2D/0/T.air delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/mixerVessel2D/0/T.water delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/mixerVessel2D/0/Theta delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/mixerVessel2D/0/U.air delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/mixerVessel2D/0/U.water delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/mixerVessel2D/0/alpha.air delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/mixerVessel2D/0/p delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/mixerVessel2D/0/p_rgh delete mode 100755 tutorials/multiphase/twoPhaseEulerFoam/laminar/mixerVessel2D/Allrun delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/mixerVessel2D/constant/MRFProperties delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/mixerVessel2D/constant/g delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/mixerVessel2D/constant/momentumTransport.air delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/mixerVessel2D/constant/momentumTransport.water delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/mixerVessel2D/constant/phaseProperties delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/mixerVessel2D/constant/thermophysicalProperties.air delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/mixerVessel2D/constant/thermophysicalProperties.water delete mode 100755 tutorials/multiphase/twoPhaseEulerFoam/laminar/mixerVessel2D/makeMesh delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/mixerVessel2D/system/blockMeshDict.m4 delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/mixerVessel2D/system/controlDict delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/mixerVessel2D/system/fvSchemes delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/mixerVessel2D/system/fvSolution delete mode 100644 tutorials/multiphase/twoPhaseEulerFoam/laminar/mixerVessel2D/system/topoSetDict diff --git a/applications/solvers/multiphase/reactingEulerFoam/phaseCompressibleMomentumTransportModels/phaseCompressibleMomentumTransportModels.C b/applications/solvers/multiphase/reactingEulerFoam/phaseCompressibleMomentumTransportModels/phaseCompressibleMomentumTransportModels.C index 6d79ec2c2f..ddeb9e25b7 100644 --- a/applications/solvers/multiphase/reactingEulerFoam/phaseCompressibleMomentumTransportModels/phaseCompressibleMomentumTransportModels.C +++ b/applications/solvers/multiphase/reactingEulerFoam/phaseCompressibleMomentumTransportModels/phaseCompressibleMomentumTransportModels.C @@ -72,18 +72,36 @@ makeLaminarModel(generalizedNewtonian); #include "kEpsilon.H" makeRASModel(kEpsilon); +#include "LaheyKEpsilon.H" +makeRASModel(LaheyKEpsilon); + #include "kOmegaSST.H" makeRASModel(kOmegaSST); #include "kOmegaSSTSato.H" makeRASModel(kOmegaSSTSato); +#include "continuousGasKEpsilon.H" +makeRASModel(continuousGasKEpsilon); + +#include "mixtureKEpsilon.H" +makeRASModel(mixtureKEpsilon); + #include "Smagorinsky.H" makeLESModel(Smagorinsky); #include "kEqn.H" makeLESModel(kEqn); +#include "SmagorinskyZhang.H" +makeLESModel(SmagorinskyZhang); + +#include "NicenoKEqn.H" +makeLESModel(NicenoKEqn); + +#include "continuousGasKEqn.H" +makeLESModel(continuousGasKEqn); + #include "kineticTheoryModel.H" makeMomentumTransportModel (phaseModelPhaseCompressibleMomentumTransportModel, RAS, kineticTheoryModel); diff --git a/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/Make/files b/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/Make/files index a9a67d5be8..070abe1aee 100644 --- a/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/Make/files +++ b/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/Make/files @@ -16,6 +16,14 @@ diameterModels/isothermalDiameter/isothermalDiameter.C diameterModels/linearTsubDiameter/linearTsubDiameter.C diameterModels/velocityGroup/velocityGroup.C +diameterModels/IATE/IATE.C +diameterModels/IATE/IATEsources/IATEsource/IATEsource.C +diameterModels/IATE/IATEsources/wakeEntrainmentCoalescence/IATEwakeEntrainmentCoalescence.C +diameterModels/IATE/IATEsources/turbulentBreakUp/IATEturbulentBreakUp.C +diameterModels/IATE/IATEsources/randomCoalescence/IATErandomCoalescence.C +diameterModels/IATE/IATEsources/phaseChange/IATEphaseChange.C +diameterModels/IATE/IATEsources/wallBoiling/IATEwallBoiling.C + sizeGroup = diameterModels/velocityGroup/sizeGroup $(sizeGroup)/sizeGroup.C diff --git a/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/PhaseSystems/MomentumTransferPhaseSystem/MomentumTransferPhaseSystem.H b/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/PhaseSystems/MomentumTransferPhaseSystem/MomentumTransferPhaseSystem.H index 0bfccc1eba..4bd072b900 100644 --- a/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/PhaseSystems/MomentumTransferPhaseSystem/MomentumTransferPhaseSystem.H +++ b/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/PhaseSystems/MomentumTransferPhaseSystem/MomentumTransferPhaseSystem.H @@ -167,18 +167,6 @@ private: turbulentDispersionModelTable turbulentDispersionModels_; - // Private Member Functions - - //- Return the drag coefficient for the phase pair - virtual tmp Kd(const phasePairKey& key) const; - - //- Return the face drag coefficient for the phase pair - virtual tmp Kdf(const phasePairKey& key) const; - - //- Return the virtual mass coefficient for the phase pair - virtual tmp Vm(const phasePairKey& key) const; - - protected: // Protected Member Functions @@ -205,6 +193,15 @@ public: // Member Functions + //- Return the drag coefficient for the phase pair + virtual tmp Kd(const phasePairKey& key) const; + + //- Return the face drag coefficient for the phase pair + virtual tmp Kdf(const phasePairKey& key) const; + + //- Return the virtual mass coefficient for the phase pair + virtual tmp Vm(const phasePairKey& key) const; + //- Return the momentum transfer matrices for the cell-based algorithm. // This includes implicit and explicit forces that add into the cell // UEqn in the normal way. diff --git a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATE.C b/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/diameterModels/IATE/IATE.C similarity index 100% rename from applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATE.C rename to applications/solvers/multiphase/reactingEulerFoam/phaseSystems/diameterModels/IATE/IATE.C diff --git a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATE.H b/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/diameterModels/IATE/IATE.H similarity index 98% rename from applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATE.H rename to applications/solvers/multiphase/reactingEulerFoam/phaseSystems/diameterModels/IATE/IATE.H index 5f4e4962e2..80488d8c7d 100644 --- a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATE.H +++ b/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/diameterModels/IATE/IATE.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2013-2019 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2013-2020 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License diff --git a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/IATEsource/IATEsource.C b/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/diameterModels/IATE/IATEsources/IATEsource/IATEsource.C similarity index 96% rename from applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/IATEsource/IATEsource.C rename to applications/solvers/multiphase/reactingEulerFoam/phaseSystems/diameterModels/IATE/IATEsources/IATEsource/IATEsource.C index 2d952451df..0ef1ef259f 100644 --- a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/IATEsource/IATEsource.C +++ b/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/diameterModels/IATE/IATEsources/IATEsource/IATEsource.C @@ -78,7 +78,7 @@ Foam::tmp Foam::diameterModels::IATEsource::Ur() const sqrt(2.0) *pow025 ( - fluid().sigma()*mag(g) + sigma()*mag(g) *(otherPhase().rho() - phase().rho()) /sqr(otherPhase().rho()) ) @@ -120,7 +120,7 @@ Foam::tmp Foam::diameterModels::IATEsource::Mo() const return mag(g)*pow4(otherPhase().thermo().nu())*sqr(otherPhase().rho()) *(otherPhase().rho() - phase().rho()) - /pow3(fluid().sigma()); + /pow3(sigma()); } Foam::tmp Foam::diameterModels::IATEsource::Eo() const @@ -131,13 +131,13 @@ Foam::tmp Foam::diameterModels::IATEsource::Eo() const return mag(g)*sqr(phase().d()) *(otherPhase().rho() - phase().rho()) - /fluid().sigma(); + /sigma(); } Foam::tmp Foam::diameterModels::IATEsource::We() const { return - otherPhase().rho()*sqr(Ur())*phase().d()/fluid().sigma(); + otherPhase().rho()*sqr(Ur())*phase().d()/sigma(); } diff --git a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/IATEsource/IATEsource.H b/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/diameterModels/IATE/IATEsources/IATEsource/IATEsource.H similarity index 91% rename from applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/IATEsource/IATEsource.H rename to applications/solvers/multiphase/reactingEulerFoam/phaseSystems/diameterModels/IATE/IATEsources/IATEsource/IATEsource.H index 670deb4172..cba51c0683 100644 --- a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/IATEsource/IATEsource.H +++ b/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/diameterModels/IATE/IATEsources/IATEsource/IATEsource.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2013-2018 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2013-2020 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -37,7 +37,7 @@ SourceFiles #define IATEsource_H #include "IATE.H" -#include "twoPhaseSystem.H" +#include "phaseSystem.H" #include "mathematicalConstants.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -141,9 +141,9 @@ public: return iate_.phase(); } - const twoPhaseSystem& fluid() const + const phaseSystem& fluid() const { - return refCast(iate_.phase().fluid()); + return iate_.phase().fluid(); } const phaseModel& otherPhase() const @@ -156,6 +156,15 @@ public: return 1.0/(36*constant::mathematical::pi); } + //- Return the bubble surface tension coefficient + tmp sigma() const + { + return fluid().sigma + ( + phasePairKey(phase().name(), otherPhase().name()) + ); + } + //- Return the bubble relative velocity tmp Ur() const; diff --git a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/dummy/dummy.C b/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/diameterModels/IATE/IATEsources/dummy/dummy.C similarity index 96% rename from applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/dummy/dummy.C rename to applications/solvers/multiphase/reactingEulerFoam/phaseSystems/diameterModels/IATE/IATEsources/dummy/dummy.C index b97e542e65..2df2534098 100644 --- a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/dummy/dummy.C +++ b/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/diameterModels/IATE/IATEsources/dummy/dummy.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2013-2018 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2013-2020 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License diff --git a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/dummy/dummy.H b/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/diameterModels/IATE/IATEsources/dummy/dummy.H similarity index 97% rename from applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/dummy/dummy.H rename to applications/solvers/multiphase/reactingEulerFoam/phaseSystems/diameterModels/IATE/IATEsources/dummy/dummy.H index 74c73ac255..ad5d3135c4 100644 --- a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/dummy/dummy.H +++ b/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/diameterModels/IATE/IATEsources/dummy/dummy.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2013-2018 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2013-2020 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License diff --git a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/phaseChange/phaseChange.C b/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/diameterModels/IATE/IATEsources/phaseChange/IATEphaseChange.C similarity index 96% rename from applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/phaseChange/phaseChange.C rename to applications/solvers/multiphase/reactingEulerFoam/phaseSystems/diameterModels/IATE/IATEsources/phaseChange/IATEphaseChange.C index 6c83200426..b3f995ceeb 100644 --- a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/phaseChange/phaseChange.C +++ b/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/diameterModels/IATE/IATEsources/phaseChange/IATEphaseChange.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2016-2019 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2016-2020 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -23,8 +23,7 @@ License \*---------------------------------------------------------------------------*/ -#include "phaseChange.H" -#include "twoPhaseSystem.H" +#include "IATEphaseChange.H" #include "phaseSystem.H" #include "ThermalPhaseChangePhaseSystem.H" #include "MomentumTransferPhaseSystem.H" diff --git a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/phaseChange/phaseChange.H b/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/diameterModels/IATE/IATEsources/phaseChange/IATEphaseChange.H similarity index 95% rename from applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/phaseChange/phaseChange.H rename to applications/solvers/multiphase/reactingEulerFoam/phaseSystems/diameterModels/IATE/IATEsources/phaseChange/IATEphaseChange.H index e11c2ed68d..4c0d6e6186 100644 --- a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/phaseChange/phaseChange.H +++ b/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/diameterModels/IATE/IATEsources/phaseChange/IATEphaseChange.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2016-2019 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2016-2020 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -32,8 +32,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef phaseChange_H -#define phaseChange_H +#ifndef IATEphaseChange_H +#define IATEphaseChange_H #include "IATEsource.H" diff --git a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/randomCoalescence/randomCoalescence.C b/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/diameterModels/IATE/IATEsources/randomCoalescence/IATErandomCoalescence.C similarity index 96% rename from applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/randomCoalescence/randomCoalescence.C rename to applications/solvers/multiphase/reactingEulerFoam/phaseSystems/diameterModels/IATE/IATEsources/randomCoalescence/IATErandomCoalescence.C index 5a773bff59..e5c4329c6e 100644 --- a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/randomCoalescence/randomCoalescence.C +++ b/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/diameterModels/IATE/IATEsources/randomCoalescence/IATErandomCoalescence.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2013-2019 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2013-2020 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -23,7 +23,7 @@ License \*---------------------------------------------------------------------------*/ -#include "randomCoalescence.H" +#include "IATErandomCoalescence.H" #include "fvmSup.H" #include "addToRunTimeSelectionTable.H" diff --git a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/randomCoalescence/randomCoalescence.H b/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/diameterModels/IATE/IATEsources/randomCoalescence/IATErandomCoalescence.H similarity index 95% rename from applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/randomCoalescence/randomCoalescence.H rename to applications/solvers/multiphase/reactingEulerFoam/phaseSystems/diameterModels/IATE/IATEsources/randomCoalescence/IATErandomCoalescence.H index 2b9ca151fc..5524f94c50 100644 --- a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/randomCoalescence/randomCoalescence.H +++ b/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/diameterModels/IATE/IATEsources/randomCoalescence/IATErandomCoalescence.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2013-2019 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2013-2020 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -40,8 +40,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef randomCoalescence_H -#define randomCoalescence_H +#ifndef IATErandomCoalescence_H +#define IATErandomCoalescence_H #include "IATEsource.H" diff --git a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/turbulentBreakUp/turbulentBreakUp.C b/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/diameterModels/IATE/IATEsources/turbulentBreakUp/IATEturbulentBreakUp.C similarity index 96% rename from applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/turbulentBreakUp/turbulentBreakUp.C rename to applications/solvers/multiphase/reactingEulerFoam/phaseSystems/diameterModels/IATE/IATEsources/turbulentBreakUp/IATEturbulentBreakUp.C index dc36a98ebf..6ca683eb52 100644 --- a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/turbulentBreakUp/turbulentBreakUp.C +++ b/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/diameterModels/IATE/IATEsources/turbulentBreakUp/IATEturbulentBreakUp.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2013-2018 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2013-2020 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -23,7 +23,7 @@ License \*---------------------------------------------------------------------------*/ -#include "turbulentBreakUp.H" +#include "IATEturbulentBreakUp.H" #include "fvmSup.H" #include "addToRunTimeSelectionTable.H" diff --git a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/turbulentBreakUp/turbulentBreakUp.H b/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/diameterModels/IATE/IATEsources/turbulentBreakUp/IATEturbulentBreakUp.H similarity index 95% rename from applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/turbulentBreakUp/turbulentBreakUp.H rename to applications/solvers/multiphase/reactingEulerFoam/phaseSystems/diameterModels/IATE/IATEsources/turbulentBreakUp/IATEturbulentBreakUp.H index e912d4f3a6..89a7bd34d8 100644 --- a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/turbulentBreakUp/turbulentBreakUp.H +++ b/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/diameterModels/IATE/IATEsources/turbulentBreakUp/IATEturbulentBreakUp.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2013-2019 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2013-2020 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -39,8 +39,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef turbulentBreakUp_H -#define turbulentBreakUp_H +#ifndef IATEturbulentBreakUp_H +#define IATEturbulentBreakUp_H #include "IATEsource.H" diff --git a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/wakeEntrainmentCoalescence/wakeEntrainmentCoalescence.C b/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/diameterModels/IATE/IATEsources/wakeEntrainmentCoalescence/IATEwakeEntrainmentCoalescence.C similarity index 95% rename from applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/wakeEntrainmentCoalescence/wakeEntrainmentCoalescence.C rename to applications/solvers/multiphase/reactingEulerFoam/phaseSystems/diameterModels/IATE/IATEsources/wakeEntrainmentCoalescence/IATEwakeEntrainmentCoalescence.C index c3258ccb2a..1b2f0d9a6f 100644 --- a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/wakeEntrainmentCoalescence/wakeEntrainmentCoalescence.C +++ b/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/diameterModels/IATE/IATEsources/wakeEntrainmentCoalescence/IATEwakeEntrainmentCoalescence.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2013-2019 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2013-2020 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -23,7 +23,7 @@ License \*---------------------------------------------------------------------------*/ -#include "wakeEntrainmentCoalescence.H" +#include "IATEwakeEntrainmentCoalescence.H" #include "fvmSup.H" #include "addToRunTimeSelectionTable.H" diff --git a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/wakeEntrainmentCoalescence/wakeEntrainmentCoalescence.H b/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/diameterModels/IATE/IATEsources/wakeEntrainmentCoalescence/IATEwakeEntrainmentCoalescence.H similarity index 95% rename from applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/wakeEntrainmentCoalescence/wakeEntrainmentCoalescence.H rename to applications/solvers/multiphase/reactingEulerFoam/phaseSystems/diameterModels/IATE/IATEsources/wakeEntrainmentCoalescence/IATEwakeEntrainmentCoalescence.H index 5402f4fe56..9d2559de92 100644 --- a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/wakeEntrainmentCoalescence/wakeEntrainmentCoalescence.H +++ b/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/diameterModels/IATE/IATEsources/wakeEntrainmentCoalescence/IATEwakeEntrainmentCoalescence.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2013-2019 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2013-2020 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -39,8 +39,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef wakeEntrainmentCoalescence_H -#define wakeEntrainmentCoalescence_H +#ifndef IATEwakeEntrainmentCoalescence_H +#define IATEwakeEntrainmentCoalescence_H #include "IATEsource.H" diff --git a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/wallBoiling/wallBoiling.C b/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/diameterModels/IATE/IATEsources/wallBoiling/IATEwallBoiling.C similarity index 99% rename from applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/wallBoiling/wallBoiling.C rename to applications/solvers/multiphase/reactingEulerFoam/phaseSystems/diameterModels/IATE/IATEsources/wallBoiling/IATEwallBoiling.C index 2c306f8f02..13a530156a 100644 --- a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/wallBoiling/wallBoiling.C +++ b/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/diameterModels/IATE/IATEsources/wallBoiling/IATEwallBoiling.C @@ -23,7 +23,7 @@ License \*---------------------------------------------------------------------------*/ -#include "wallBoiling.H" +#include "IATEwallBoiling.H" #include "alphatWallBoilingWallFunctionFvPatchScalarField.H" #include "fvmSup.H" #include "addToRunTimeSelectionTable.H" diff --git a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/wallBoiling/wallBoiling.H b/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/diameterModels/IATE/IATEsources/wallBoiling/IATEwallBoiling.H similarity index 95% rename from applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/wallBoiling/wallBoiling.H rename to applications/solvers/multiphase/reactingEulerFoam/phaseSystems/diameterModels/IATE/IATEsources/wallBoiling/IATEwallBoiling.H index a716ed1c15..d91ceba460 100644 --- a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/wallBoiling/wallBoiling.H +++ b/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/diameterModels/IATE/IATEsources/wallBoiling/IATEwallBoiling.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2016-2018 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2016-2020 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -32,8 +32,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef wallBoiling_H -#define wallBoiling_H +#ifndef IATEwallBoiling_H +#define IATEwallBoiling_H #include "IATEsource.H" diff --git a/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/phaseSystem/phaseSystem.H b/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/phaseSystem/phaseSystem.H index d57387e7e6..58d14d02f0 100644 --- a/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/phaseSystem/phaseSystem.H +++ b/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/phaseSystem/phaseSystem.H @@ -319,6 +319,10 @@ public: //- Return the phase pairs inline const phasePairTable& phasePairs() const; + //- Return the phase not given as an argument in a two-phase system + // An error is generated if the system is not two-phase + inline const phaseModel& otherPhase(const phaseModel& phase) const; + //- Return the mixture flux inline const surfaceScalarField& phi() const; @@ -439,6 +443,18 @@ public: // Transfers + //- Return the drag coefficient for phase pair + virtual tmp Kd(const phasePairKey& key) const = 0; + + //- Return the virtual mass coefficient for phase pair + virtual tmp Vm(const phasePairKey& key) const = 0; + + //- Return the face drag coefficient for phase pair + virtual tmp Kdf + ( + const phasePairKey& key + ) const = 0; + //- Return the momentum transfer matrices for the cell-based // algorithm virtual autoPtr momentumTransfer() = 0; diff --git a/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/phaseSystem/phaseSystemI.H b/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/phaseSystem/phaseSystemI.H index 906d013cd6..869b7ba431 100644 --- a/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/phaseSystem/phaseSystemI.H +++ b/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/phaseSystem/phaseSystemI.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2014-2020 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -108,6 +108,29 @@ Foam::phaseSystem::phasePairs() const } +inline const Foam::phaseModel& Foam::phaseSystem::otherPhase +( + const phaseModel& phase +) const +{ + if (phaseModels_.size() != 2) + { + FatalErrorInFunction + << "Call from a two-phase model in a multi-phase system." + << exit(FatalError); + } + + if (&phase == &phaseModels_[0]) + { + return phaseModels_[1]; + } + else + { + return phaseModels_[0]; + } +} + + inline const Foam::surfaceScalarField& Foam::phaseSystem::phi() const { return phi_; diff --git a/applications/solvers/multiphase/reactingEulerFoam/reactingMultiphaseEulerFoam/multiphaseSystem/multiphaseSystem.H b/applications/solvers/multiphase/reactingEulerFoam/reactingMultiphaseEulerFoam/multiphaseSystem/multiphaseSystem.H index 86f714e40b..34bbe07d6d 100644 --- a/applications/solvers/multiphase/reactingEulerFoam/reactingMultiphaseEulerFoam/multiphaseSystem/multiphaseSystem.H +++ b/applications/solvers/multiphase/reactingEulerFoam/reactingMultiphaseEulerFoam/multiphaseSystem/multiphaseSystem.H @@ -103,12 +103,6 @@ private: const phaseModel& alpha2 ) const; - //- Return the drag coefficient for phase pair - virtual tmp Kd(const phasePairKey& key) const = 0; - - //- Return the virtual mass coefficient for phase pair - virtual tmp Vm(const phasePairKey& key) const = 0; - protected: diff --git a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/Allwclean b/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/Allwclean index 20b40a9e12..11f2624bb1 100755 --- a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/Allwclean +++ b/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/Allwclean @@ -2,7 +2,6 @@ cd ${0%/*} || exit 1 # Run from this directory wclean libso twoPhaseSystem -wclean libso twoPhaseCompressibleMomentumTransportModels wclean #------------------------------------------------------------------------------ diff --git a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/Allwmake b/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/Allwmake index 360201affa..f5e9b28053 100755 --- a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/Allwmake +++ b/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/Allwmake @@ -5,7 +5,6 @@ cd ${0%/*} || exit 1 # Run from this directory . $WM_PROJECT_DIR/wmake/scripts/AllwmakeParseArguments wmake $targetType twoPhaseSystem -wmake $targetType twoPhaseCompressibleMomentumTransportModels wmake $targetType #------------------------------------------------------------------------------ diff --git a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/Make/options b/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/Make/options index 322b913453..420ad7e789 100644 --- a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/Make/options +++ b/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/Make/options @@ -19,7 +19,6 @@ EXE_LIBS = \ -lreactingEulerianInterfacialCompositionModels \ -lphaseReactingMomentumTransportModels \ -lphaseReactingThermophysicalTransportModels \ - -ltwoPhaseReactingMomentumTransportModels \ -lthermophysicalTransportModels \ -lfiniteVolume \ -lfvOptions \ diff --git a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseCompressibleMomentumTransportModels/Make/files b/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseCompressibleMomentumTransportModels/Make/files deleted file mode 100644 index 580c246732..0000000000 --- a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseCompressibleMomentumTransportModels/Make/files +++ /dev/null @@ -1,3 +0,0 @@ -twoPhaseCompressibleMomentumTransportModels.C - -LIB = $(FOAM_LIBBIN)/libtwoPhaseReactingMomentumTransportModels diff --git a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseCompressibleMomentumTransportModels/Make/options b/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseCompressibleMomentumTransportModels/Make/options deleted file mode 100644 index 784006d189..0000000000 --- a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseCompressibleMomentumTransportModels/Make/options +++ /dev/null @@ -1,20 +0,0 @@ -EXE_INC = \ - -I../twoPhaseSystem/lnInclude \ - -I../../phaseSystems/lnInclude \ - -I../../interfacialModels/lnInclude\ - -I../../interfacialCompositionModels/lnInclude \ - -I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \ - -I$(LIB_SRC)/MomentumTransportModels/compressible/lnInclude \ - -I$(LIB_SRC)/MomentumTransportModels/momentumTransportModels/lnInclude \ - -I$(LIB_SRC)/MomentumTransportModels/phaseCompressible/lnInclude \ - -I$(LIB_SRC)/finiteVolume/lnInclude \ - -I$(LIB_SRC)/meshTools/lnInclude - -LIB_LIBS = \ - -lreactingPhaseSystem \ - -lreactingTwoPhaseSystem \ - -lreactingEulerianInterfacialModels \ - -lreactingEulerianInterfacialCompositionModels \ - -lfiniteVolume \ - -lfvOptions \ - -lmeshTools diff --git a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseCompressibleMomentumTransportModels/twoPhaseCompressibleMomentumTransportModels.C b/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseCompressibleMomentumTransportModels/twoPhaseCompressibleMomentumTransportModels.C deleted file mode 100644 index 8dfa3238c2..0000000000 --- a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseCompressibleMomentumTransportModels/twoPhaseCompressibleMomentumTransportModels.C +++ /dev/null @@ -1,76 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "phaseCompressibleMomentumTransportModel.H" -#include "addToRunTimeSelectionTable.H" -#include "makeMomentumTransportModel.H" - -#include "laminarModel.H" -#include "RASModel.H" -#include "LESModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -makeMomentumTransportModelTypes -( - volScalarField, - volScalarField, - compressibleMomentumTransportModel, - PhaseCompressibleMomentumTransportModel, - phaseModel -); - -#define makeLaminarModel(Type) \ - makeTemplatedLaminarModel \ - (phaseModelPhaseCompressibleMomentumTransportModel, laminar, Type) - -#define makeRASModel(Type) \ - makeTemplatedMomentumTransportModel \ - (phaseModelPhaseCompressibleMomentumTransportModel, RAS, Type) - -#define makeLESModel(Type) \ - makeTemplatedMomentumTransportModel \ - (phaseModelPhaseCompressibleMomentumTransportModel, LES, Type) - -#include "mixtureKEpsilon.H" -makeRASModel(mixtureKEpsilon); - -#include "LaheyKEpsilon.H" -makeRASModel(LaheyKEpsilon); - -#include "continuousGasKEpsilon.H" -makeRASModel(continuousGasKEpsilon); - -#include "SmagorinskyZhang.H" -makeLESModel(SmagorinskyZhang); - -#include "NicenoKEqn.H" -makeLESModel(NicenoKEqn); - -#include "continuousGasKEqn.H" -makeLESModel(continuousGasKEqn); - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/Make/files b/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/Make/files index 67caa0d98b..7914420527 100644 --- a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/Make/files +++ b/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/Make/files @@ -1,11 +1,3 @@ -diameterModels/IATE/IATE.C -diameterModels/IATE/IATEsources/IATEsource/IATEsource.C -diameterModels/IATE/IATEsources/wakeEntrainmentCoalescence/wakeEntrainmentCoalescence.C -diameterModels/IATE/IATEsources/turbulentBreakUp/turbulentBreakUp.C -diameterModels/IATE/IATEsources/randomCoalescence/randomCoalescence.C -diameterModels/IATE/IATEsources/phaseChange/phaseChange.C -diameterModels/IATE/IATEsources/wallBoiling/wallBoiling.C - twoPhaseSystem.C newTwoPhaseSystem.C twoPhaseSystems.C diff --git a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/Make/options b/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/Make/options index e2791568d2..a3969395fa 100644 --- a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/Make/options +++ b/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/Make/options @@ -3,7 +3,6 @@ EXE_INC = \ -I../../interfacialCompositionModels/lnInclude \ -I../../phaseSystems/lnInclude \ -I../../phaseCompressibleMomentumTransportModels/lnInclude \ - -I../twoPhaseCompressibleMomentumTransportModels/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/specie/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/reactionThermo/lnInclude \ diff --git a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/twoPhaseSystem.H b/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/twoPhaseSystem.H index d16d091ae3..a22637c954 100644 --- a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/twoPhaseSystem.H +++ b/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseSystem/twoPhaseSystem.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2013-2019 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2013-2020 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -53,19 +53,6 @@ class twoPhaseSystem : public phaseSystem { -private: - - // Private Member Functions - - //- Return the drag coefficient for phase pair - virtual tmp Kd(const phasePairKey& key) const = 0; - - //- Return the face drag coefficient for phase pair - virtual tmp Kdf(const phasePairKey& key) const = 0; - - //- Return the virtual mass coefficient for phase pair - virtual tmp Vm(const phasePairKey& key) const = 0; - protected: @@ -124,6 +111,9 @@ public: using phaseSystem::sigma; using phaseSystem::dmdts; + using phaseSystem::Kd; + using phaseSystem::Kdf; + using phaseSystem::Vm; //- Return phase model 1 const phaseModel& phase1() const; diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/Allwclean b/applications/solvers/multiphase/twoPhaseEulerFoam/Allwclean deleted file mode 100755 index d781ff3b19..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/Allwclean +++ /dev/null @@ -1,10 +0,0 @@ -#!/bin/sh -cd ${0%/*} || exit 1 # Run from this directory - -wclean libso twoPhaseSystem -wclean libso interfacialModels -wclean libso phaseCompressibleMomentumTransportModels -wclean libso phaseThermophysicalTransportModels -wclean - -#------------------------------------------------------------------------------ diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/Allwmake b/applications/solvers/multiphase/twoPhaseEulerFoam/Allwmake deleted file mode 100755 index d5088a2c79..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/Allwmake +++ /dev/null @@ -1,13 +0,0 @@ -#!/bin/sh -cd ${0%/*} || exit 1 # Run from this directory - -# Parse arguments for library compilation -. $WM_PROJECT_DIR/wmake/scripts/AllwmakeParseArguments - -wmake $targetType twoPhaseSystem -wmake $targetType interfacialModels -wmake $targetType phaseCompressibleMomentumTransportModels -wmake $targetType phaseThermophysicalTransportModels -wmake $targetType - -#------------------------------------------------------------------------------ diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/CourantNos.H b/applications/solvers/multiphase/twoPhaseEulerFoam/CourantNos.H deleted file mode 100644 index d828f32769..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/CourantNos.H +++ /dev/null @@ -1,12 +0,0 @@ - #include "CourantNo.H" - -{ - scalar UrCoNum = 0.5*gMax - ( - fvc::surfaceSum(mag(phi1 - phi2))().primitiveField()/mesh.V().field() - )*runTime.deltaTValue(); - - Info<< "Max Ur Courant Number = " << UrCoNum << endl; - - CoNum = max(CoNum, UrCoNum); -} diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/EEqns.H b/applications/solvers/multiphase/twoPhaseEulerFoam/EEqns.H deleted file mode 100644 index e6dec13b3f..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/EEqns.H +++ /dev/null @@ -1,91 +0,0 @@ -{ - volScalarField& he1 = thermo1.he(); - volScalarField& he2 = thermo2.he(); - - volScalarField Cpv1("Cpv1", thermo1.Cpv()); - volScalarField Cpv2("Cpv2", thermo2.Cpv()); - - volScalarField Kh(fluid.Kh()); - - fvScalarMatrix E1Eqn - ( - fvm::ddt(alpha1, rho1, he1) + fvm::div(alphaRhoPhi1, he1) - - fvm::Sp(contErr1, he1) - - + fvc::ddt(alpha1, rho1, K1) + fvc::div(alphaRhoPhi1, K1) - - contErr1*K1 - + ( - he1.name() == thermo1.phasePropertyName("e") - ? fvc::div(fvc::absolute(alphaPhi1, alpha1, U1), p) - + p*fvc::ddt(alpha1) - : -alpha1*dpdt - ) - - - fvm::laplacian - ( - fvc::interpolate(alpha1) - *fvc::interpolate(thermo1.alphaEff(phase1.turbulence().mut())), - he1 - ) - ); - - E1Eqn.relax(); - - E1Eqn -= - ( - Kh*(thermo2.T() - thermo1.T()) - + Kh*he1/Cpv1 - - fvm::Sp(Kh/Cpv1, he1) - + alpha1*rho1*(U1&g) - + fvOptions(alpha1, rho1, he1) - ); - - fvScalarMatrix E2Eqn - ( - fvm::ddt(alpha2, rho2, he2) + fvm::div(alphaRhoPhi2, he2) - - fvm::Sp(contErr2, he2) - - + fvc::ddt(alpha2, rho2, K2) + fvc::div(alphaRhoPhi2, K2) - - contErr2*K2 - + ( - he2.name() == thermo2.phasePropertyName("e") - ? fvc::div(fvc::absolute(alphaPhi2, alpha2, U2), p) - + p*fvc::ddt(alpha1) - : -alpha2*dpdt - ) - - - fvm::laplacian - ( - fvc::interpolate(alpha2) - *fvc::interpolate(thermo2.alphaEff(phase2.turbulence().mut())), - he2 - ) - ); - - E2Eqn.relax(); - - E2Eqn -= - ( - Kh*(thermo1.T() - thermo2.T()) - + Kh*he2/Cpv2 - - fvm::Sp(Kh/Cpv2, he2) - + alpha2*rho2*(U2&g) - + fvOptions(alpha2, rho2, he2) - ); - - fvOptions.constrain(E1Eqn); - E1Eqn.solve(); - fvOptions.correct(he1); - - fvOptions.constrain(E2Eqn); - E2Eqn.solve(); - fvOptions.correct(he2); - - thermo1.correct(); - Info<< "min " << thermo1.T().name() - << " " << min(thermo1.T()).value() << endl; - - thermo2.correct(); - Info<< "min " << thermo2.T().name() - << " " << min(thermo2.T()).value() << endl; -} diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/Make/files b/applications/solvers/multiphase/twoPhaseEulerFoam/Make/files deleted file mode 100644 index 4de1bb96ed..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/Make/files +++ /dev/null @@ -1,3 +0,0 @@ -twoPhaseEulerFoam.C - -EXE = $(FOAM_APPBIN)/twoPhaseEulerFoam diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/Make/options b/applications/solvers/multiphase/twoPhaseEulerFoam/Make/options deleted file mode 100644 index 56de56dbc2..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/Make/options +++ /dev/null @@ -1,25 +0,0 @@ -EXE_INC = \ - -I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \ - -I$(LIB_SRC)/MomentumTransportModels/momentumTransportModels/lnInclude \ - -I$(LIB_SRC)/MomentumTransportModels/compressible/lnInclude \ - -I$(LIB_SRC)/MomentumTransportModels/phaseCompressible/lnInclude \ - -IphaseCompressibleMomentumTransportModels/lnInclude \ - -IinterfacialModels/lnInclude \ - -ItwoPhaseSystem/lnInclude \ - -I$(LIB_SRC)/finiteVolume/lnInclude \ - -I$(LIB_SRC)/meshTools/lnInclude \ - -I$(LIB_SRC)/sampling/lnInclude - -EXE_LIBS = \ - -lfluidThermophysicalModels \ - -lspecie \ - -lmomentumTransportModels \ - -lphaseCompressibleMomentumTransportModels \ - -lfluidThermoMomentumTransportModels \ - -lthermophysicalTransportModels \ - -lincompressibleTransportModels \ - -lcompressibleTwoPhaseSystem \ - -lcompressibleEulerianInterfacialModels \ - -lfiniteVolume \ - -lfvOptions \ - -lmeshTools diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/contErrs.H b/applications/solvers/multiphase/twoPhaseEulerFoam/contErrs.H deleted file mode 100644 index 83ca7cea92..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/contErrs.H +++ /dev/null @@ -1,13 +0,0 @@ -volScalarField contErr1 -( - "contErr1", - fvc::ddt(alpha1, rho1) + fvc::div(alphaRhoPhi1) - - (fvOptions(alpha1, rho1)&rho1) -); - -volScalarField contErr2 -( - "contErr2", - fvc::ddt(alpha2, rho2) + fvc::div(alphaRhoPhi2) - - (fvOptions(alpha2, rho2)&rho2) -); diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/correctContErrs.H b/applications/solvers/multiphase/twoPhaseEulerFoam/correctContErrs.H deleted file mode 100644 index 75355b3963..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/correctContErrs.H +++ /dev/null @@ -1,7 +0,0 @@ -contErr1 = - fvc::ddt(alpha1, rho1) + fvc::div(alphaRhoPhi1) - - (fvOptions(alpha1, rho1)&rho1); - -contErr2 = - fvc::ddt(alpha2, rho2) + fvc::div(alphaRhoPhi2) - - (fvOptions(alpha2, rho2)&rho2); diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/createFieldRefs.H b/applications/solvers/multiphase/twoPhaseEulerFoam/createFieldRefs.H deleted file mode 100644 index 71c3e5e39d..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/createFieldRefs.H +++ /dev/null @@ -1,20 +0,0 @@ -volScalarField& alpha2 = phase2; - -surfaceScalarField& phi1 = phase1.phi(); -surfaceScalarField& alphaPhi1 = phase1.alphaPhi(); -surfaceScalarField& alphaRhoPhi1 = phase1.alphaRhoPhi(); - -surfaceScalarField& phi2 = phase2.phi(); -surfaceScalarField& alphaPhi2 = phase2.alphaPhi(); -surfaceScalarField& alphaRhoPhi2 = phase2.alphaRhoPhi(); - -surfaceScalarField& phi = fluid.phi(); - -rhoThermo& thermo1 = phase1.thermo(); -rhoThermo& thermo2 = phase2.thermo(); - -volScalarField& rho1 = thermo1.rho(); -const volScalarField& psi1 = thermo1.psi(); - -volScalarField& rho2 = thermo2.rho(); -const volScalarField& psi2 = thermo2.psi(); diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/createFields.H b/applications/solvers/multiphase/twoPhaseEulerFoam/createFields.H deleted file mode 100644 index aebb443897..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/createFields.H +++ /dev/null @@ -1,85 +0,0 @@ -#include "readGravitationalAcceleration.H" -#include "readhRef.H" - -Info<< "Creating twoPhaseSystem\n" << endl; - -twoPhaseSystem fluid(mesh, g); - -phaseModel& phase1 = fluid.phase1(); -phaseModel& phase2 = fluid.phase2(); - -volScalarField& alpha1 = phase1; -volVectorField& U1 = phase1.U(); -volVectorField& U2 = phase2.U(); - -volScalarField& p = phase1.thermo().p(); - -dimensionedScalar pMin -( - "pMin", - dimPressure, - fluid -); - -#include "gh.H" - -Info<< "Reading field p_rgh\n" << endl; -volScalarField p_rgh -( - IOobject - ( - "p_rgh", - runTime.timeName(), - mesh, - IOobject::MUST_READ, - IOobject::AUTO_WRITE - ), - mesh -); - -volVectorField U -( - IOobject - ( - "U", - runTime.timeName(), - mesh, - IOobject::NO_READ, - IOobject::AUTO_WRITE - ), - fluid.U() -); - -label pRefCell = 0; -scalar pRefValue = 0.0; -setRefCell -( - p, - p_rgh, - pimple.dict(), - pRefCell, - pRefValue -); -mesh.setFluxRequired(p_rgh.name()); -mesh.setFluxRequired(alpha1.name()); - -Info<< "Creating field dpdt\n" << endl; -volScalarField dpdt -( - IOobject - ( - "dpdt", - runTime.timeName(), - mesh - ), - mesh, - dimensionedScalar(p.dimensions()/dimTime, 0) -); - - -Info<< "Creating field kinetic energy K\n" << endl; -volScalarField K1(IOobject::groupName("K", phase1.name()), 0.5*magSqr(U1)); -volScalarField K2(IOobject::groupName("K", phase2.name()), 0.5*magSqr(U2)); - -#include "createMRF.H" -#include "createFvOptions.H" diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/createMRF.H b/applications/solvers/multiphase/twoPhaseEulerFoam/createMRF.H deleted file mode 100644 index 76f7193253..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/createMRF.H +++ /dev/null @@ -1,4 +0,0 @@ - IOMRFZoneList MRF(mesh); - MRF.correctBoundaryVelocity(U1); - MRF.correctBoundaryVelocity(U2); - MRF.correctBoundaryVelocity(U); diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/Make/files b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/Make/files deleted file mode 100644 index b4abd28a68..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/Make/files +++ /dev/null @@ -1,64 +0,0 @@ -dragModels/dragModel/dragModel.C -dragModels/dragModel/newDragModel.C -dragModels/segregated/segregated.C -dragModels/Ergun/Ergun.C -dragModels/Gibilaro/Gibilaro.C -dragModels/GidaspowErgunWenYu/GidaspowErgunWenYu.C -dragModels/GidaspowSchillerNaumann/GidaspowSchillerNaumann.C -dragModels/Lain/Lain.C -dragModels/SchillerNaumann/SchillerNaumann.C -dragModels/SyamlalOBrien/SyamlalOBrien.C -dragModels/TomiyamaCorrelated/TomiyamaCorrelated.C -dragModels/TomiyamaAnalytic/TomiyamaAnalytic.C -dragModels/WenYu/WenYu.C -dragModels/IshiiZuber/IshiiZuber.C - -swarmCorrections/swarmCorrection/swarmCorrection.C -swarmCorrections/swarmCorrection/newSwarmCorrection.C -swarmCorrections/noSwarm/noSwarm.C -swarmCorrections/TomiyamaSwarm/TomiyamaSwarm.C - -liftModels/liftModel/liftModel.C -liftModels/liftModel/newLiftModel.C -liftModels/noLift/noLift.C -liftModels/constantLiftCoefficient/constantLiftCoefficient.C -liftModels/Moraga/Moraga.C -liftModels/LegendreMagnaudet/LegendreMagnaudet.C -liftModels/TomiyamaLift/TomiyamaLift.C - -heatTransferModels/heatTransferModel/heatTransferModel.C -heatTransferModels/heatTransferModel/newHeatTransferModel.C -heatTransferModels/RanzMarshall/RanzMarshall.C -heatTransferModels/sphericalHeatTransfer/sphericalHeatTransfer.C - -virtualMassModels/virtualMassModel/virtualMassModel.C -virtualMassModels/virtualMassModel/newVirtualMassModel.C -virtualMassModels/noVirtualMass/noVirtualMass.C -virtualMassModels/constantVirtualMassCoefficient/constantVirtualMassCoefficient.C -virtualMassModels/Lamb/Lamb.C - -wallLubricationModels/wallLubricationModel/wallLubricationModel.C -wallLubricationModels/wallLubricationModel/newWallLubricationModel.C -wallLubricationModels/noWallLubrication/noWallLubrication.C -wallLubricationModels/Antal/Antal.C -wallLubricationModels/Frank/Frank.C -wallLubricationModels/TomiyamaWallLubrication/TomiyamaWallLubrication.C - -turbulentDispersionModels/turbulentDispersionModel/turbulentDispersionModel.C -turbulentDispersionModels/turbulentDispersionModel/newTurbulentDispersionModel.C -turbulentDispersionModels/noTurbulentDispersion/noTurbulentDispersion.C -turbulentDispersionModels/constantTurbulentDispersionCoefficient/constantTurbulentDispersionCoefficient.C -turbulentDispersionModels/Burns/Burns.C -turbulentDispersionModels/Gosman/Gosman.C -turbulentDispersionModels/LopezDeBertodano/LopezDeBertodano.C - -aspectRatioModels/aspectRatioModel/aspectRatioModel.C -aspectRatioModels/aspectRatioModel/newAspectRatioModel.C -aspectRatioModels/constantAspectRatio/constantAspectRatio.C -aspectRatioModels/TomiyamaAspectRatio/TomiyamaAspectRatio.C -aspectRatioModels/VakhrushevEfremov/VakhrushevEfremov.C -aspectRatioModels/Wellek/Wellek.C - -wallDependentModel/wallDependentModel.C - -LIB = $(FOAM_LIBBIN)/libcompressibleEulerianInterfacialModels diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/Make/options b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/Make/options deleted file mode 100644 index 864ed03af8..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/Make/options +++ /dev/null @@ -1,13 +0,0 @@ -EXE_INC = \ - -I$(LIB_SRC)/finiteVolume/lnInclude \ - -I$(LIB_SRC)/meshTools/lnInclude \ - -I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \ - -I$(LIB_SRC)/MomentumTransportModels/momentumTransportModels/lnInclude \ - -I$(LIB_SRC)/MomentumTransportModels/compressible/lnInclude \ - -I$(LIB_SRC)/MomentumTransportModels/phaseCompressible/lnInclude \ - -I../twoPhaseSystem/lnInclude - -LIB_LIBS = \ - -lcompressibleTwoPhaseSystem \ - -lfluidThermophysicalModels \ - -lspecie diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/aspectRatioModels/TomiyamaAspectRatio/TomiyamaAspectRatio.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/aspectRatioModels/TomiyamaAspectRatio/TomiyamaAspectRatio.C deleted file mode 100644 index 417acf3a7d..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/aspectRatioModels/TomiyamaAspectRatio/TomiyamaAspectRatio.C +++ /dev/null @@ -1,81 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "TomiyamaAspectRatio.H" -#include "phasePair.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace aspectRatioModels -{ - defineTypeNameAndDebug(TomiyamaAspectRatio, 0); - addToRunTimeSelectionTable - ( - aspectRatioModel, - TomiyamaAspectRatio, - dictionary - ); -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::aspectRatioModels::TomiyamaAspectRatio::TomiyamaAspectRatio -( - const dictionary& dict, - const phasePair& pair -) -: - VakhrushevEfremov(dict, pair), - wallDependentModel(pair.phase1().mesh()) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::aspectRatioModels::TomiyamaAspectRatio::~TomiyamaAspectRatio() -{} - - -// * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * * // - -Foam::tmp -Foam::aspectRatioModels::TomiyamaAspectRatio::E() const -{ - return - VakhrushevEfremov::E() - *max - ( - scalar(1) - 0.35*yWall()/pair_.dispersed().d(), - scalar(0.65) - ); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/aspectRatioModels/TomiyamaAspectRatio/TomiyamaAspectRatio.H b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/aspectRatioModels/TomiyamaAspectRatio/TomiyamaAspectRatio.H deleted file mode 100644 index 85815f63b5..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/aspectRatioModels/TomiyamaAspectRatio/TomiyamaAspectRatio.H +++ /dev/null @@ -1,101 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::aspectRatioModels::TomiyamaAspectRatio - -Description - Aspect ratio model of Tomiyama. - - Reference: - \verbatim - "Implementation and Comparison of Correlations for interfacial Forces - in a Gas-Liquid System within an Euler-Euler Framework" - Otromke, M., - PhD Thesis, April 2013 - \endverbatim - -SourceFiles - TomiyamaAspectRatio.C - -\*---------------------------------------------------------------------------*/ - -#ifndef TomiyamaAspectRatio_H -#define TomiyamaAspectRatio_H - -#include "VakhrushevEfremov.H" -#include "wallDependentModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ -namespace aspectRatioModels -{ - -/*---------------------------------------------------------------------------*\ - Class TomiyamaAspectRatio Declaration -\*---------------------------------------------------------------------------*/ - -class TomiyamaAspectRatio -: - public VakhrushevEfremov, - public wallDependentModel -{ -public: - - //- Runtime type information - TypeName("Tomiyama"); - - - // Constructors - - //- Construct from a dictionary and an ordered phase pair - TomiyamaAspectRatio - ( - const dictionary& dict, - const phasePair& pair - ); - - - //- Destructor - virtual ~TomiyamaAspectRatio(); - - - // Member Functions - - //- Aspect ratio - virtual tmp E() const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace aspectRatioModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/aspectRatioModels/VakhrushevEfremov/VakhrushevEfremov.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/aspectRatioModels/VakhrushevEfremov/VakhrushevEfremov.C deleted file mode 100644 index e6555b04d8..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/aspectRatioModels/VakhrushevEfremov/VakhrushevEfremov.C +++ /dev/null @@ -1,80 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "VakhrushevEfremov.H" -#include "phasePair.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace aspectRatioModels -{ - defineTypeNameAndDebug(VakhrushevEfremov, 0); - addToRunTimeSelectionTable - ( - aspectRatioModel, - VakhrushevEfremov, - dictionary - ); -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::aspectRatioModels::VakhrushevEfremov::VakhrushevEfremov -( - const dictionary& dict, - const phasePair& pair -) -: - aspectRatioModel(dict, pair) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::aspectRatioModels::VakhrushevEfremov::~VakhrushevEfremov() -{} - - -// * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * * // - -Foam::tmp -Foam::aspectRatioModels::VakhrushevEfremov::E() const -{ - volScalarField Ta(pair_.Ta()); - - return - neg(Ta - scalar(1))*scalar(1) - + pos0(Ta - scalar(1))*neg(Ta - scalar(39.8)) - *pow3(0.81 + 0.206*tanh(1.6 - 2*log10(max(Ta, scalar(1))))) - + pos0(Ta - scalar(39.8))*0.24; -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/aspectRatioModels/VakhrushevEfremov/VakhrushevEfremov.H b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/aspectRatioModels/VakhrushevEfremov/VakhrushevEfremov.H deleted file mode 100644 index 998847a745..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/aspectRatioModels/VakhrushevEfremov/VakhrushevEfremov.H +++ /dev/null @@ -1,100 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::aspectRatioModels::VakhrushevEfremov - -Description - Aspect ratio model of Vakhrushev and Efremov. - - Reference: - \verbatim - "Interpolation formula for computing the velocities of single gas - bubbles in liquids" - Vakhrushev, I.A. and Efremov, G.I., - Chemistry and Technology of Fuels and Oils - Volume 6, Issue 5, May 1970, pp. 376-379, - \endverbatim - -SourceFiles - VakhrushevEfremov.C - -\*---------------------------------------------------------------------------*/ - -#ifndef VakhrushevEfremov_H -#define VakhrushevEfremov_H - -#include "aspectRatioModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ -namespace aspectRatioModels -{ - -/*---------------------------------------------------------------------------*\ - Class VakhrushevEfremov Declaration -\*---------------------------------------------------------------------------*/ - -class VakhrushevEfremov -: - public aspectRatioModel -{ -public: - - //- Runtime type information - TypeName("VakhrushevEfremov"); - - - // Constructors - - //- Construct from a dictionary and an ordered phase pair - VakhrushevEfremov - ( - const dictionary& dict, - const phasePair& pair - ); - - - //- Destructor - virtual ~VakhrushevEfremov(); - - - // Member Functions - - //- Aspect ratio - virtual tmp E() const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace aspectRatioModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/aspectRatioModels/Wellek/Wellek.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/aspectRatioModels/Wellek/Wellek.C deleted file mode 100644 index 57b59a9043..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/aspectRatioModels/Wellek/Wellek.C +++ /dev/null @@ -1,74 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "Wellek.H" -#include "phasePair.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace aspectRatioModels -{ - defineTypeNameAndDebug(Wellek, 0); - addToRunTimeSelectionTable - ( - aspectRatioModel, - Wellek, - dictionary - ); -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::aspectRatioModels::Wellek::Wellek -( - const dictionary& dict, - const phasePair& pair -) -: - aspectRatioModel(dict, pair) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::aspectRatioModels::Wellek::~Wellek() -{} - - -// * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * * // - -Foam::tmp -Foam::aspectRatioModels::Wellek::E() const -{ - return scalar(1)/(scalar(1) + 0.163*pow(pair_.Eo(), 0.757)); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/aspectRatioModels/Wellek/Wellek.H b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/aspectRatioModels/Wellek/Wellek.H deleted file mode 100644 index 2c82ee8000..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/aspectRatioModels/Wellek/Wellek.H +++ /dev/null @@ -1,106 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::aspectRatioModels::Wellek - -Description - Aspect ratio model of Wellek et al. - - References: - \verbatim - "Implementation and Comparison of Correlations for interfacial Forces - in a Gas-Liquid System within an Euler-Euler Framework" - Otromke, M., - PhD Thesis, April 2013 - \endverbatim - - \verbatim - "Shape of liquid drops moving in liquid media" - Wellek, R.M., Agrawal, A.K., Skelland, A.H.P., - International Journal of Multiphase Flow - Volume 12, Issue 5, September 1966, pp. 854-862 - \endverbatim - -SourceFiles - Wellek.C - -\*---------------------------------------------------------------------------*/ - -#ifndef Wellek_H -#define Wellek_H - -#include "aspectRatioModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ -namespace aspectRatioModels -{ - -/*---------------------------------------------------------------------------*\ - Class Wellek Declaration -\*---------------------------------------------------------------------------*/ - -class Wellek -: - public aspectRatioModel -{ -public: - - //- Runtime type information - TypeName("Wellek"); - - - // Constructors - - //- Construct from a dictionary and an ordered phase pair - Wellek - ( - const dictionary& dict, - const phasePair& pair - ); - - - //- Destructor - virtual ~Wellek(); - - - // Member Functions - - //- Aspect ratio - virtual tmp E() const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace aspectRatioModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/aspectRatioModels/aspectRatioModel/aspectRatioModel.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/aspectRatioModels/aspectRatioModel/aspectRatioModel.C deleted file mode 100644 index b5536323fa..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/aspectRatioModels/aspectRatioModel/aspectRatioModel.C +++ /dev/null @@ -1,56 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "aspectRatioModel.H" -#include "phasePair.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ - defineTypeNameAndDebug(aspectRatioModel, 0); - defineRunTimeSelectionTable(aspectRatioModel, dictionary); -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::aspectRatioModel::aspectRatioModel -( - const dictionary& dict, - const phasePair& pair -) -: - pair_(pair) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::aspectRatioModel::~aspectRatioModel() -{} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/aspectRatioModels/aspectRatioModel/aspectRatioModel.H b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/aspectRatioModels/aspectRatioModel/aspectRatioModel.H deleted file mode 100644 index 48dfaefbef..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/aspectRatioModels/aspectRatioModel/aspectRatioModel.H +++ /dev/null @@ -1,121 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::aspectRatioModel - -Description - -SourceFiles - aspectRatioModel.C - newAspectRatioModel.C - -\*---------------------------------------------------------------------------*/ - -#ifndef aspectRatioModel_H -#define aspectRatioModel_H - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "volFields.H" -#include "dictionary.H" -#include "runTimeSelectionTables.H" - -namespace Foam -{ - -class phasePair; - -/*---------------------------------------------------------------------------*\ - Class aspectRatioModel Declaration -\*---------------------------------------------------------------------------*/ - -class aspectRatioModel -{ -protected: - - // Protected data - - //- Phase pair - const phasePair& pair_; - - -public: - - //- Runtime type information - TypeName("aspectRatioModel"); - - - // Declare runtime construction - declareRunTimeSelectionTable - ( - autoPtr, - aspectRatioModel, - dictionary, - ( - const dictionary& dict, - const phasePair& pair - ), - (dict, pair) - ); - - - // Constructors - - //- Construct from a dictionary and an ordered phase pair - aspectRatioModel - ( - const dictionary& dict, - const phasePair& pair - ); - - - //- Destructor - virtual ~aspectRatioModel(); - - - // Selectors - - static autoPtr New - ( - const dictionary& dict, - const phasePair& pair - ); - - - // Member Functions - - //- Aspect ratio - virtual tmp E() const = 0; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/aspectRatioModels/aspectRatioModel/newAspectRatioModel.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/aspectRatioModels/aspectRatioModel/newAspectRatioModel.C deleted file mode 100644 index 752e647ad2..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/aspectRatioModels/aspectRatioModel/newAspectRatioModel.C +++ /dev/null @@ -1,60 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "aspectRatioModel.H" -#include "phasePair.H" - -// * * * * * * * * * * * * * * * * Selector * * * * * * * * * * * * * * * * // - -Foam::autoPtr -Foam::aspectRatioModel::New -( - const dictionary& dict, - const phasePair& pair -) -{ - word aspectRatioModelType(dict.lookup("type")); - - Info<< "Selecting aspectRatioModel for " - << pair << ": " << aspectRatioModelType << endl; - - dictionaryConstructorTable::iterator cstrIter = - dictionaryConstructorTablePtr_->find(aspectRatioModelType); - - if (cstrIter == dictionaryConstructorTablePtr_->end()) - { - FatalErrorInFunction - << "Unknown aspectRatioModelType type " - << aspectRatioModelType << endl << endl - << "Valid aspectRatioModel types are : " << endl - << dictionaryConstructorTablePtr_->sortedToc() - << exit(FatalError); - } - - return cstrIter()(dict, pair); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/aspectRatioModels/constantAspectRatio/constantAspectRatio.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/aspectRatioModels/constantAspectRatio/constantAspectRatio.C deleted file mode 100644 index 5c5912f2b9..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/aspectRatioModels/constantAspectRatio/constantAspectRatio.C +++ /dev/null @@ -1,82 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "constantAspectRatio.H" -#include "phasePair.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace aspectRatioModels -{ - defineTypeNameAndDebug(constantAspectRatio, 0); - addToRunTimeSelectionTable - ( - aspectRatioModel, - constantAspectRatio, - dictionary - ); -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::aspectRatioModels::constantAspectRatio::constantAspectRatio -( - const dictionary& dict, - const phasePair& pair -) -: - aspectRatioModel(dict, pair), - E0_("E0", dimless, dict) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::aspectRatioModels::constantAspectRatio::~constantAspectRatio() -{} - - -// * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * * // - -Foam::tmp -Foam::aspectRatioModels::constantAspectRatio::E() const -{ - const fvMesh& mesh(this->pair_.phase1().mesh()); - - return volScalarField::New - ( - "zero", - mesh, - E0_ - ); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/aspectRatioModels/constantAspectRatio/constantAspectRatio.H b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/aspectRatioModels/constantAspectRatio/constantAspectRatio.H deleted file mode 100644 index f0871f63b9..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/aspectRatioModels/constantAspectRatio/constantAspectRatio.H +++ /dev/null @@ -1,97 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2019 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::aspectRatioModels::constantAspectRatio - -Description - Constant value aspect ratio model. - -SourceFiles - constantAspectRatio.C - -\*---------------------------------------------------------------------------*/ - -#ifndef constantAspectRatio_H -#define constantAspectRatio_H - -#include "aspectRatioModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ -namespace aspectRatioModels -{ - -/*---------------------------------------------------------------------------*\ - Class constantAspectRatio Declaration -\*---------------------------------------------------------------------------*/ - -class constantAspectRatio -: - public aspectRatioModel -{ - // Private Data - - //- Constant aspect ratio value - const dimensionedScalar E0_; - - -public: - - //- Runtime type information - TypeName("constant"); - - - // Constructors - - //- Construct from a dictionary and an ordered phase pair - constantAspectRatio - ( - const dictionary& dict, - const phasePair& pair - ); - - - //- Destructor - virtual ~constantAspectRatio(); - - - // Member Functions - - //- Aspect ratio - virtual tmp E() const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace aspectRatioModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/Ergun/Ergun.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/Ergun/Ergun.C deleted file mode 100644 index 2a7cd8af0f..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/Ergun/Ergun.C +++ /dev/null @@ -1,80 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "Ergun.H" -#include "phasePair.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace dragModels -{ - defineTypeNameAndDebug(Ergun, 0); - addToRunTimeSelectionTable(dragModel, Ergun, dictionary); -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::dragModels::Ergun::Ergun -( - const dictionary& dict, - const phasePair& pair, - const bool registerObject -) -: - dragModel(dict, pair, registerObject) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::dragModels::Ergun::~Ergun() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp Foam::dragModels::Ergun::CdRe() const -{ - return - (4.0/3.0) - *( - 150 - *max - ( - scalar(1) - pair_.continuous(), - pair_.continuous().residualAlpha() - )/max(pair_.continuous(), pair_.continuous().residualAlpha()) - + 1.75 - *pair_.Re() - ); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/Ergun/Ergun.H b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/Ergun/Ergun.H deleted file mode 100644 index 9123ae2eb9..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/Ergun/Ergun.H +++ /dev/null @@ -1,98 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::dragModels::Ergun - -Description - H, Enwald, E. Peirano, A-E Almstedt - 'Eulerian Two-Phase Flow Theory Applied to Fluidization' - Int. J. Multiphase Flow, Vol. 22, Suppl, pp. 21-66 (1996) - Eq. 104, p. 42 - -SourceFiles - Ergun.C - -\*---------------------------------------------------------------------------*/ - -#ifndef Ergun_H -#define Ergun_H - -#include "dragModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - -class phasePair; - -namespace dragModels -{ - -/*---------------------------------------------------------------------------*\ - Class Ergun Declaration -\*---------------------------------------------------------------------------*/ - -class Ergun -: - public dragModel -{ -public: - - //- Runtime type information - TypeName("Ergun"); - - - // Constructors - - //- Construct from a dictionary and a phase pair - Ergun - ( - const dictionary& dict, - const phasePair& pair, - const bool registerObject - ); - - - //- Destructor - virtual ~Ergun(); - - - // Member Functions - - //- Drag coefficient - virtual tmp CdRe() const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace dragModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/Gibilaro/Gibilaro.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/Gibilaro/Gibilaro.C deleted file mode 100644 index 7851e0c220..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/Gibilaro/Gibilaro.C +++ /dev/null @@ -1,78 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "Gibilaro.H" -#include "phasePair.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace dragModels -{ - defineTypeNameAndDebug(Gibilaro, 0); - addToRunTimeSelectionTable(dragModel, Gibilaro, dictionary); -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::dragModels::Gibilaro::Gibilaro -( - const dictionary& dict, - const phasePair& pair, - const bool registerObject -) -: - dragModel(dict, pair, registerObject) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::dragModels::Gibilaro::~Gibilaro() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp Foam::dragModels::Gibilaro::CdRe() const -{ - volScalarField alpha2 - ( - max(scalar(1) - pair_.dispersed(), pair_.continuous().residualAlpha()) - ); - - return - (4.0/3.0) - *(17.3/alpha2 + 0.336*pair_.Re()) - *max(pair_.continuous(), pair_.continuous().residualAlpha()) - *pow(alpha2, -2.8); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/Gibilaro/Gibilaro.H b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/Gibilaro/Gibilaro.H deleted file mode 100644 index 51efd45d28..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/Gibilaro/Gibilaro.H +++ /dev/null @@ -1,98 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::dragModels::Gibilaro - -Description - H, Enwald, E. Peirano, A-E Almstedt - 'Eulerian Two-Phase Flow Theory Applied to Fluidization' - Int. J. Multiphase Flow, Vol. 22, Suppl, pp. 21-66 (1996) - Eq. 106, p. 43 - -SourceFiles - Gibilaro.C - -\*---------------------------------------------------------------------------*/ - -#ifndef Gibilaro_H -#define Gibilaro_H - -#include "dragModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - -class phasePair; - -namespace dragModels -{ - -/*---------------------------------------------------------------------------*\ - Class Gibilaro Declaration -\*---------------------------------------------------------------------------*/ - -class Gibilaro -: - public dragModel -{ -public: - - //- Runtime type information - TypeName("Gibilaro"); - - - // Constructors - - //- Construct from a dictionary and a phase pair - Gibilaro - ( - const dictionary& dict, - const phasePair& pair, - const bool registerObject - ); - - - //- Destructor - virtual ~Gibilaro(); - - - // Member Functions - - //- Drag coefficient - virtual tmp CdRe() const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace dragModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/GidaspowErgunWenYu/GidaspowErgunWenYu.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/GidaspowErgunWenYu/GidaspowErgunWenYu.C deleted file mode 100644 index 60e443d2e2..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/GidaspowErgunWenYu/GidaspowErgunWenYu.C +++ /dev/null @@ -1,92 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "GidaspowErgunWenYu.H" -#include "phasePair.H" -#include "Ergun.H" -#include "WenYu.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace dragModels -{ - defineTypeNameAndDebug(GidaspowErgunWenYu, 0); - addToRunTimeSelectionTable(dragModel, GidaspowErgunWenYu, dictionary); -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::dragModels::GidaspowErgunWenYu::GidaspowErgunWenYu -( - const dictionary& dict, - const phasePair& pair, - const bool registerObject -) -: - dragModel(dict, pair, registerObject), - Ergun_ - ( - new Ergun - ( - dict, - pair, - false - ) - ), - WenYu_ - ( - new WenYu - ( - dict, - pair, - false - ) - ) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::dragModels::GidaspowErgunWenYu::~GidaspowErgunWenYu() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp -Foam::dragModels::GidaspowErgunWenYu::CdRe() const -{ - return - pos0(pair_.continuous() - 0.8)*WenYu_->CdRe() - + neg(pair_.continuous() - 0.8)*Ergun_->CdRe(); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/GidaspowErgunWenYu/GidaspowErgunWenYu.H b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/GidaspowErgunWenYu/GidaspowErgunWenYu.H deleted file mode 100644 index fbcea0f733..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/GidaspowErgunWenYu/GidaspowErgunWenYu.H +++ /dev/null @@ -1,114 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2019 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::dragModels::GidaspowErgunWenYu - -Description - Gidaspow, Ergun, Wen and Yu drag model - - Reference: - \verbatim - "Multiphase flow and fluidization", - Gidaspow, D., - Academic Press, New York, 1994. - \endverbatim - -SourceFiles - GidaspowErgunWenYu.C - -\*---------------------------------------------------------------------------*/ - -#ifndef GidaspowErgunWenYu_H -#define GidaspowErgunWenYu_H - -#include "dragModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - -class phasePair; - -namespace dragModels -{ - -class Ergun; -class WenYu; - -/*---------------------------------------------------------------------------*\ - Class GidaspowErgunWenYu Declaration -\*---------------------------------------------------------------------------*/ - -class GidaspowErgunWenYu -: - public dragModel -{ - // Private Data - - //- Ergun drag model - autoPtr Ergun_; - - //- Wen Yu drag model - autoPtr WenYu_; - - -public: - - //- Runtime type information - TypeName("GidaspowErgunWenYu"); - - - // Constructors - - //- Construct from a dictionary and an ordered phase pair - GidaspowErgunWenYu - ( - const dictionary& interfaceDict, - const phasePair& pair, - const bool registerObject - ); - - - //- Destructor - virtual ~GidaspowErgunWenYu(); - - - // Member Functions - - //- Drag coefficient - virtual tmp CdRe() const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace dragModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/GidaspowSchillerNaumann/GidaspowSchillerNaumann.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/GidaspowSchillerNaumann/GidaspowSchillerNaumann.C deleted file mode 100644 index 79a72e8fcb..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/GidaspowSchillerNaumann/GidaspowSchillerNaumann.C +++ /dev/null @@ -1,87 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "GidaspowSchillerNaumann.H" -#include "phasePair.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace dragModels -{ - defineTypeNameAndDebug(GidaspowSchillerNaumann, 0); - addToRunTimeSelectionTable(dragModel, GidaspowSchillerNaumann, dictionary); -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::dragModels::GidaspowSchillerNaumann::GidaspowSchillerNaumann -( - const dictionary& dict, - const phasePair& pair, - const bool registerObject -) -: - dragModel(dict, pair, registerObject), - residualRe_("residualRe", dimless, dict) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::dragModels::GidaspowSchillerNaumann::~GidaspowSchillerNaumann() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp -Foam::dragModels::GidaspowSchillerNaumann::CdRe() const -{ - volScalarField alpha2 - ( - max(scalar(1) - pair_.dispersed(), pair_.continuous().residualAlpha()) - ); - - volScalarField Re(alpha2*pair_.Re()); - - volScalarField CdsRe - ( - neg(Re - 1000)*24.0*(1.0 + 0.15*pow(Re, 0.687))/alpha2 - + pos0(Re - 1000)*0.44*max(Re, residualRe_) - ); - - return - CdsRe - *pow(alpha2, -2.65) - *max(pair_.continuous(), pair_.continuous().residualAlpha()); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/GidaspowSchillerNaumann/GidaspowSchillerNaumann.H b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/GidaspowSchillerNaumann/GidaspowSchillerNaumann.H deleted file mode 100644 index cb086b72a3..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/GidaspowSchillerNaumann/GidaspowSchillerNaumann.H +++ /dev/null @@ -1,115 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2019 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::dragModels::GidaspowSchillerNaumann - -Description - Gidaspow, Schiller and Naumann drag model - - References: - \verbatim - "Eulerian Two-Phase Flow Theory Applied to Fluidization" - Enwald, H., Peirano, E., Almstedt, A-E., - Int. J. Multiphase Flow, Vol. 22, Suppl, 1996, pp. 21-66 - Eq. 86-87, p. 40 - - This is identical to the Wen and Yu, Rowe model Table 3.6 p.56 in - "Derivation, Implementation and Validation of Computer Simulation Models - for Gas-Solid Fluidized Beds", - Berend van Wachem - Ph.D. thesis. - \endverbatim - -SourceFiles - GidaspowSchillerNaumann.C - -\*---------------------------------------------------------------------------*/ - -#ifndef GidaspowSchillerNaumann_H -#define GidaspowSchillerNaumann_H - -#include "dragModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - -class phasePair; - -namespace dragModels -{ - -/*---------------------------------------------------------------------------*\ - Class GidaspowSchillerNaumann Declaration -\*---------------------------------------------------------------------------*/ - -class GidaspowSchillerNaumann -: - public dragModel -{ - // Private Data - - //- Residual Reynolds Number - const dimensionedScalar residualRe_; - - -public: - - //- Runtime type information - TypeName("GidaspowSchillerNaumann"); - - - // Constructors - - //- Construct from a dictionary and a phase pair - GidaspowSchillerNaumann - ( - const dictionary& dict, - const phasePair& pair, - const bool registerObject - ); - - - //- Destructor - virtual ~GidaspowSchillerNaumann(); - - - // Member Functions - - //- Drag coefficient - virtual tmp CdRe() const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace dragModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/IshiiZuber/IshiiZuber.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/IshiiZuber/IshiiZuber.C deleted file mode 100644 index 1045f3667a..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/IshiiZuber/IshiiZuber.C +++ /dev/null @@ -1,100 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "IshiiZuber.H" -#include "phasePair.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace dragModels -{ - defineTypeNameAndDebug(IshiiZuber, 0); - addToRunTimeSelectionTable(dragModel, IshiiZuber, dictionary); -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::dragModels::IshiiZuber::IshiiZuber -( - const dictionary& dict, - const phasePair& pair, - const bool registerObject -) -: - dragModel(dict, pair, registerObject) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::dragModels::IshiiZuber::~IshiiZuber() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp -Foam::dragModels::IshiiZuber::CdRe() const -{ - const volScalarField Re(pair_.Re()); - const volScalarField Eo(pair_.Eo()); - - const volScalarField mud(pair_.dispersed().mu()); - const volScalarField muc(pair_.continuous().mu()); - - const volScalarField muStar((mud + 0.4*muc)/(mud + muc)); - - const volScalarField muMix - ( - muc*pow(max(1 - pair_.dispersed(), scalar(1e-3)), -2.5*muStar) - ); - - const volScalarField ReM(Re*muc/muMix); - const volScalarField CdRe - ( - pos0(1000 - ReM)*24*(scalar(1) + 0.1*pow(ReM, 0.75)) - + neg(1000 - ReM)*0.44*ReM - ); - - volScalarField F((muc/muMix)*sqrt(1 - pair_.dispersed())); - F.max(1e-3); - - const volScalarField Ealpha((1 + 17.67*pow(F, 0.8571428))/(18.67*F)); - - const volScalarField CdReEllipse(Ealpha*0.6666*sqrt(Eo)*Re); - - return - pos0(CdReEllipse - CdRe) - *min(CdReEllipse, Re*sqr(1 - pair_.dispersed())*2.66667) - + neg(CdReEllipse - CdRe)*CdRe; -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/IshiiZuber/IshiiZuber.H b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/IshiiZuber/IshiiZuber.H deleted file mode 100644 index c0c8f99261..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/IshiiZuber/IshiiZuber.H +++ /dev/null @@ -1,104 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::dragModels::IshiiZuber - -Description - Ishii and Zuber (1979) drag model for dense dispersed bubbly flows. - - Reference: - \verbatim - "Drag Coefficient and relative velocity in bubbly, droplet and - particulate flows", - Ishii, M., Zuber, N., - AIChE Journal 5, Vol. 25, 1979, pp. 843-855. - \endverbatim - -SourceFiles - IshiiZuber.C - -\*---------------------------------------------------------------------------*/ - -#ifndef IshiiZuber_H -#define IshiiZuber_H - -#include "dragModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - -class phasePair; - -namespace dragModels -{ - -/*---------------------------------------------------------------------------*\ - Class IshiiZuber Declaration -\*---------------------------------------------------------------------------*/ - -class IshiiZuber -: - public dragModel -{ - -public: - - //- Runtime type information - TypeName("IshiiZuber"); - - - // Constructors - - //- Construct from a dictionary and a phase pair - IshiiZuber - ( - const dictionary& dict, - const phasePair& pair, - const bool registerObject - ); - - - //- Destructor - virtual ~IshiiZuber(); - - - // Member Functions - - //- Drag coefficient - virtual tmp CdRe() const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace dragModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/Lain/Lain.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/Lain/Lain.C deleted file mode 100644 index 73781c35f7..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/Lain/Lain.C +++ /dev/null @@ -1,75 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "Lain.H" -#include "phasePair.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace dragModels -{ - defineTypeNameAndDebug(Lain, 0); - addToRunTimeSelectionTable(dragModel, Lain, dictionary); -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::dragModels::Lain::Lain -( - const dictionary& dict, - const phasePair& pair, - const bool registerObject -) -: - dragModel(dict, pair, registerObject) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::dragModels::Lain::~Lain() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp Foam::dragModels::Lain::CdRe() const -{ - volScalarField Re(pair_.Re()); - - return - neg(Re - 1.5)*16.0 - + pos0(Re - 1.5)*neg(Re - 80.0)*14.9*pow(Re, 0.22) - + pos0(Re - 80.0)*neg(Re - 1500.0)*48*(1.0 - 2.21/sqrt(max(Re, small))) - + pos0(Re - 1500.0)*2.61*Re; -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/Lain/Lain.H b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/Lain/Lain.H deleted file mode 100644 index 13cddcae82..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/Lain/Lain.H +++ /dev/null @@ -1,111 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::dragModels::Lain - -Description - Drag model of Lain et al. - - References: - \verbatim - "Implementation and Comparison of Correlations for interfacial Forces - in a Gas-Liquid System within an Euler-Euler Framework" - Otromke, M., - PhD Thesis, April 2013 - \endverbatim - - \verbatim - "Modelling hydrodynamics and turbulence in a bubble column using the - Euler-Lagrange procedure" - Lain, S., Brodera, D., Sommerfelda, M., Goza, M.F., - International Journal of Multiphase Flow - Volume 28, Issue 8, August 2002, pp. 1381-1407 - \endverbatim - -SourceFiles - Lain.C - -\*---------------------------------------------------------------------------*/ - -#ifndef Lain_H -#define Lain_H - -#include "dragModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - -class phasePair; - -namespace dragModels -{ - -/*---------------------------------------------------------------------------*\ - Class Lain Declaration -\*---------------------------------------------------------------------------*/ - -class Lain -: - public dragModel -{ -public: - - //- Runtime type information - TypeName("Lain"); - - - // Constructors - - //- Construct from a dictionary and a phase pair - Lain - ( - const dictionary& dict, - const phasePair& pair, - const bool registerObject - ); - - - //- Destructor - virtual ~Lain(); - - - // Member Functions - - //- Drag coefficient - virtual tmp CdRe() const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace dragModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/SchillerNaumann/SchillerNaumann.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/SchillerNaumann/SchillerNaumann.C deleted file mode 100644 index 869b249989..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/SchillerNaumann/SchillerNaumann.C +++ /dev/null @@ -1,74 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "SchillerNaumann.H" -#include "phasePair.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace dragModels -{ - defineTypeNameAndDebug(SchillerNaumann, 0); - addToRunTimeSelectionTable(dragModel, SchillerNaumann, dictionary); -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::dragModels::SchillerNaumann::SchillerNaumann -( - const dictionary& dict, - const phasePair& pair, - const bool registerObject -) -: - dragModel(dict, pair, registerObject), - residualRe_("residualRe", dimless, dict) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::dragModels::SchillerNaumann::~SchillerNaumann() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp Foam::dragModels::SchillerNaumann::CdRe() const -{ - volScalarField Re(pair_.Re()); - - return - neg(Re - 1000)*24.0*(1.0 + 0.15*pow(Re, 0.687)) - + pos0(Re - 1000)*0.44*max(Re, residualRe_); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/SchillerNaumann/SchillerNaumann.H b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/SchillerNaumann/SchillerNaumann.H deleted file mode 100644 index 7f240d1ff8..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/SchillerNaumann/SchillerNaumann.H +++ /dev/null @@ -1,101 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2019 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::dragModels::SchillerNaumann - -Description - Schiller and Naumann drag model for dispersed bubbly flows. - -SourceFiles - SchillerNaumann.C - -\*---------------------------------------------------------------------------*/ - -#ifndef SchillerNaumann_H -#define SchillerNaumann_H - -#include "dragModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - -class phasePair; - -namespace dragModels -{ - -/*---------------------------------------------------------------------------*\ - Class SchillerNaumann Declaration -\*---------------------------------------------------------------------------*/ - -class SchillerNaumann -: - public dragModel -{ - // Private Data - - //- Residual Reynolds Number - const dimensionedScalar residualRe_; - - -public: - - //- Runtime type information - TypeName("SchillerNaumann"); - - - // Constructors - - //- Construct from a dictionary and a phase pair - SchillerNaumann - ( - const dictionary& dict, - const phasePair& pair, - const bool registerObject - ); - - - //- Destructor - virtual ~SchillerNaumann(); - - - // Member Functions - - //- Drag coefficient - virtual tmp CdRe() const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace dragModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/SyamlalOBrien/SyamlalOBrien.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/SyamlalOBrien/SyamlalOBrien.C deleted file mode 100644 index c458812c4e..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/SyamlalOBrien/SyamlalOBrien.C +++ /dev/null @@ -1,93 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "SyamlalOBrien.H" -#include "phasePair.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace dragModels -{ - defineTypeNameAndDebug(SyamlalOBrien, 0); - addToRunTimeSelectionTable(dragModel, SyamlalOBrien, dictionary); -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::dragModels::SyamlalOBrien::SyamlalOBrien -( - const dictionary& dict, - const phasePair& pair, - const bool registerObject -) -: - dragModel(dict, pair, registerObject) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::dragModels::SyamlalOBrien::~SyamlalOBrien() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp Foam::dragModels::SyamlalOBrien::CdRe() const -{ - volScalarField alpha2 - ( - max(scalar(1) - pair_.dispersed(), pair_.continuous().residualAlpha()) - ); - - volScalarField A(pow(alpha2, 4.14)); - volScalarField B - ( - neg(alpha2 - 0.85)*(0.8*pow(alpha2, 1.28)) - + pos0(alpha2 - 0.85)*(pow(alpha2, 2.65)) - ); - volScalarField Re(pair_.Re()); - volScalarField Vr - ( - 0.5 - *( - A - 0.06*Re + sqrt(sqr(0.06*Re) + 0.12*Re*(2.0*B - A) + sqr(A)) - ) - ); - volScalarField CdsRe(sqr(0.63*sqrt(Re) + 4.8*sqrt(Vr))); - - return - CdsRe - *max(pair_.continuous(), pair_.continuous().residualAlpha()) - /sqr(Vr); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/SyamlalOBrien/SyamlalOBrien.H b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/SyamlalOBrien/SyamlalOBrien.H deleted file mode 100644 index 6358941e51..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/SyamlalOBrien/SyamlalOBrien.H +++ /dev/null @@ -1,97 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::dragModels::SyamlalOBrien - -Description - Syamlal, M., Rogers, W. and O'Brien, T. J. (1993) MFIX documentation, - Theory Guide. Technical Note DOE/METC-94/1004. Morgantown, West Virginia, - USA. - -SourceFiles - SyamlalOBrien.C - -\*---------------------------------------------------------------------------*/ - -#ifndef SyamlalOBrien_H -#define SyamlalOBrien_H - -#include "dragModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - -class phasePair; - -namespace dragModels -{ - -/*---------------------------------------------------------------------------*\ - Class SyamlalOBrien Declaration -\*---------------------------------------------------------------------------*/ - -class SyamlalOBrien -: - public dragModel -{ -public: - - //- Runtime type information - TypeName("SyamlalOBrien"); - - - // Constructors - - //- Construct from a dictionary and a phase pair - SyamlalOBrien - ( - const dictionary& dict, - const phasePair& pair, - const bool registerObject - ); - - - //- Destructor - virtual ~SyamlalOBrien(); - - - // Member Functions - - //- Drag coefficient - virtual tmp CdRe() const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace dragModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/TomiyamaAnalytic/TomiyamaAnalytic.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/TomiyamaAnalytic/TomiyamaAnalytic.C deleted file mode 100644 index 48d9b63eae..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/TomiyamaAnalytic/TomiyamaAnalytic.C +++ /dev/null @@ -1,89 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "TomiyamaAnalytic.H" -#include "phasePair.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace dragModels -{ - defineTypeNameAndDebug(TomiyamaAnalytic, 0); - addToRunTimeSelectionTable(dragModel, TomiyamaAnalytic, dictionary); -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::dragModels::TomiyamaAnalytic::TomiyamaAnalytic -( - const dictionary& dict, - const phasePair& pair, - const bool registerObject -) -: - dragModel(dict, pair, registerObject), - residualRe_("residualRe", dimless, dict), - residualEo_("residualEo", dimless, dict), - residualE_("residualE", dimless, dict) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::dragModels::TomiyamaAnalytic::~TomiyamaAnalytic() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp -Foam::dragModels::TomiyamaAnalytic::CdRe() const -{ - volScalarField Eo(max(pair_.Eo(), residualEo_)); - volScalarField E(max(pair_.E(), residualE_)); - - volScalarField OmEsq(max(scalar(1) - sqr(E), sqr(residualE_))); - volScalarField rtOmEsq(sqrt(OmEsq)); - - volScalarField F(max(asin(rtOmEsq) - E*rtOmEsq, residualE_)/OmEsq); - - return - (8.0/3.0) - *Eo - /( - Eo*pow(E, 2.0/3.0)/OmEsq - + 16*pow(E, 4.0/3.0) - ) - /sqr(F) - *max(pair_.Re(), residualRe_); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/TomiyamaAnalytic/TomiyamaAnalytic.H b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/TomiyamaAnalytic/TomiyamaAnalytic.H deleted file mode 100644 index c30227cb34..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/TomiyamaAnalytic/TomiyamaAnalytic.H +++ /dev/null @@ -1,116 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2019 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::dragModels::TomiyamaAnalytic - -Description - Analytical drag model of Tomiyama et al. - - Reference: - \verbatim - "Drag Coefficients of Bubbles. 1st Report. Drag Coefficients of a - Single Bubble in a Stagnant Liquid." - Tomiyama, A., Kataoka, I., and Sakaguchi, T., - Nippon Kikai Gakkai Ronbunshu - Volume 61, Issue 587, 1995, pp. 2357-2364 - \endverbatim - -SourceFiles - TomiyamaAnalytic.C - -\*---------------------------------------------------------------------------*/ - -#ifndef TomiyamaAnalytic_H -#define TomiyamaAnalytic_H - -#include "dragModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - -class phasePair; - -namespace dragModels -{ - -/*---------------------------------------------------------------------------*\ - Class TomiyamaAnalytic Declaration -\*---------------------------------------------------------------------------*/ - -class TomiyamaAnalytic -: - public dragModel -{ - // Private Data - - //- Residual Reynolds Number - const dimensionedScalar residualRe_; - - //- Residual Eotvos number - const dimensionedScalar residualEo_; - - //- Residual aspect ratio - const dimensionedScalar residualE_; - - -public: - - //- Runtime type information - TypeName("TomiyamaAnalytic"); - - - // Constructors - - //- Construct from a dictionary and a phase pair - TomiyamaAnalytic - ( - const dictionary& dict, - const phasePair& pair, - const bool registerObject - ); - - - //- Destructor - virtual ~TomiyamaAnalytic(); - - - // Member Functions - - // Drag coefficient - virtual tmp CdRe() const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace dragModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/TomiyamaCorrelated/TomiyamaCorrelated.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/TomiyamaCorrelated/TomiyamaCorrelated.C deleted file mode 100644 index da4dca3f77..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/TomiyamaCorrelated/TomiyamaCorrelated.C +++ /dev/null @@ -1,85 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "TomiyamaCorrelated.H" -#include "phasePair.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace dragModels -{ - defineTypeNameAndDebug(TomiyamaCorrelated, 0); - addToRunTimeSelectionTable(dragModel, TomiyamaCorrelated, dictionary); -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::dragModels::TomiyamaCorrelated::TomiyamaCorrelated -( - const dictionary& dict, - const phasePair& pair, - const bool registerObject -) -: - dragModel(dict, pair, registerObject), - A_("A", dimless, dict) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::dragModels::TomiyamaCorrelated::~TomiyamaCorrelated() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp -Foam::dragModels::TomiyamaCorrelated::CdRe() const -{ - volScalarField Re(pair_.Re()); - volScalarField Eo(pair_.Eo()); - - return - max - ( - A_ - *min - ( - (1 + 0.15*pow(Re, 0.687)), - scalar(3) - ), - 8*Eo*Re/(3*Eo + 12) - ); - -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/TomiyamaCorrelated/TomiyamaCorrelated.H b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/TomiyamaCorrelated/TomiyamaCorrelated.H deleted file mode 100644 index 637d1cd90f..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/TomiyamaCorrelated/TomiyamaCorrelated.H +++ /dev/null @@ -1,110 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2019 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::dragModels::TomiyamaCorrelated - -Description - Correlation of Tomiyama et al. - - Reference: - \verbatim - "Terminal velocity of single bubbles in surface tension force dominant - regime" - Tomiyama, T., Celata, G.P., Hosokawa, S., Yoshida, S., - International Journal of Multiphase Flow - Volume 28, Issue 9, September 2002, pp. 1497-1519 - \endverbatim - -SourceFiles - TomiyamaCorrelated.C - -\*---------------------------------------------------------------------------*/ - -#ifndef TomiyamaCorrelated_H -#define TomiyamaCorrelated_H - -#include "dragModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - -class phasePair; - -namespace dragModels -{ - -/*---------------------------------------------------------------------------*\ - Class TomiyamaCorrelated Declaration -\*---------------------------------------------------------------------------*/ - -class TomiyamaCorrelated -: - public dragModel -{ - // Private Data - - //- Coefficient - const dimensionedScalar A_; - - -public: - - //- Runtime type information - TypeName("TomiyamaCorrelated"); - - - // Constructors - - //- Construct from a dictionary and a phase pair - TomiyamaCorrelated - ( - const dictionary& dict, - const phasePair& pair, - const bool registerObject - ); - - - //- Destructor - virtual ~TomiyamaCorrelated(); - - - // Member Functions - - //- Drag coefficient - virtual tmp CdRe() const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace dragModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/WenYu/WenYu.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/WenYu/WenYu.C deleted file mode 100644 index e154339a4d..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/WenYu/WenYu.C +++ /dev/null @@ -1,85 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "WenYu.H" -#include "phasePair.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace dragModels -{ - defineTypeNameAndDebug(WenYu, 0); - addToRunTimeSelectionTable(dragModel, WenYu, dictionary); -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::dragModels::WenYu::WenYu -( - const dictionary& dict, - const phasePair& pair, - const bool registerObject -) -: - dragModel(dict, pair, registerObject), - residualRe_("residualRe", dimless, dict) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::dragModels::WenYu::~WenYu() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp Foam::dragModels::WenYu::CdRe() const -{ - volScalarField alpha2 - ( - max(scalar(1) - pair_.dispersed(), pair_.continuous().residualAlpha()) - ); - - volScalarField Res(alpha2*pair_.Re()); - volScalarField CdsRes - ( - neg(Res - 1000)*24.0*(1.0 + 0.15*pow(Res, 0.687)) - + pos0(Res - 1000)*0.44*max(Res, residualRe_) - ); - - return - CdsRes - *pow(alpha2, -3.65) - *max(pair_.continuous(), pair_.continuous().residualAlpha()); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/WenYu/WenYu.H b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/WenYu/WenYu.H deleted file mode 100644 index cd20d7603e..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/WenYu/WenYu.H +++ /dev/null @@ -1,109 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2019 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::dragModels::WenYu - -Description - Wen and Yu drag model - - Reference: - \verbatim - "Eulerian Two-Phase Flow Theory Applied to Fluidization" - Enwald, H., Peirano, E., Almstedt, A-E., - Int. J. Multiphase Flow, Vol. 22, Suppl, 1996, pp. 21-66 - Eq. 86-87, p. 40 - \endverbatim - -SourceFiles - WenYu.C - -\*---------------------------------------------------------------------------*/ - -#ifndef WenYu_H -#define WenYu_H - -#include "dragModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - -class phasePair; - -namespace dragModels -{ - -/*---------------------------------------------------------------------------*\ - Class WenYu Declaration -\*---------------------------------------------------------------------------*/ - -class WenYu -: - public dragModel -{ - // Private Data - - //- Residual Reynolds Number - const dimensionedScalar residualRe_; - - -public: - - //- Runtime type information - TypeName("WenYu"); - - - // Constructors - - //- Construct from a dictionary and a phase pair - WenYu - ( - const dictionary& dict, - const phasePair& pair, - const bool registerObject - ); - - - //- Destructor - virtual ~WenYu(); - - - // Member Functions - - //- Drag coefficient - virtual tmp CdRe() const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace dragModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/dragModel/dragModel.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/dragModel/dragModel.C deleted file mode 100644 index 07cec596a6..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/dragModel/dragModel.C +++ /dev/null @@ -1,140 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "dragModel.H" -#include "phasePair.H" -#include "swarmCorrection.H" -#include "surfaceInterpolate.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ - defineTypeNameAndDebug(dragModel, 0); - defineRunTimeSelectionTable(dragModel, dictionary); -} - -const Foam::dimensionSet Foam::dragModel::dimK(1, -3, -1, 0, 0); - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::dragModel::dragModel -( - const phasePair& pair, - const bool registerObject -) -: - regIOobject - ( - IOobject - ( - IOobject::groupName(typeName, pair.name()), - pair.phase1().mesh().time().timeName(), - pair.phase1().mesh(), - IOobject::NO_READ, - IOobject::NO_WRITE, - registerObject - ) - ), - pair_(pair) -{} - - -Foam::dragModel::dragModel -( - const dictionary& dict, - const phasePair& pair, - const bool registerObject -) -: - regIOobject - ( - IOobject - ( - IOobject::groupName(typeName, pair.name()), - pair.phase1().mesh().time().timeName(), - pair.phase1().mesh(), - IOobject::NO_READ, - IOobject::NO_WRITE, - registerObject - ) - ), - pair_(pair), - swarmCorrection_ - ( - swarmCorrection::New - ( - dict.subDict("swarmCorrection"), - pair - ) - ) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::dragModel::~dragModel() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp Foam::dragModel::Ki() const -{ - return - 0.75 - *CdRe() - *swarmCorrection_->Cs() - *pair_.continuous().rho() - *pair_.continuous().nu() - /sqr(pair_.dispersed().d()); -} - - -Foam::tmp Foam::dragModel::K() const -{ - return max(pair_.dispersed(), pair_.dispersed().residualAlpha())*Ki(); -} - - -Foam::tmp Foam::dragModel::Kf() const -{ - return - max - ( - fvc::interpolate(pair_.dispersed()), - pair_.dispersed().residualAlpha() - )*fvc::interpolate(Ki()); -} - - -bool Foam::dragModel::writeData(Ostream& os) const -{ - return os.good(); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/dragModel/dragModel.H b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/dragModel/dragModel.H deleted file mode 100644 index 438d8efbf4..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/dragModel/dragModel.H +++ /dev/null @@ -1,162 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2019 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::dragModel - -Description - -SourceFiles - dragModel.C - newDragModel.C - -\*---------------------------------------------------------------------------*/ - -#ifndef dragModel_H -#define dragModel_H - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "volFields.H" -#include "dictionary.H" -#include "runTimeSelectionTables.H" - -namespace Foam -{ - -class phasePair; -class swarmCorrection; - -/*---------------------------------------------------------------------------*\ - Class dragModel Declaration -\*---------------------------------------------------------------------------*/ - -class dragModel -: - public regIOobject -{ -protected: - - // Protected data - - //- Phase pair - const phasePair& pair_; - - //- Swarm correction - autoPtr swarmCorrection_; - - -public: - - //- Runtime type information - TypeName("dragModel"); - - - // Declare runtime construction - - declareRunTimeSelectionTable - ( - autoPtr, - dragModel, - dictionary, - ( - const dictionary& dict, - const phasePair& pair, - const bool registerObject - ), - (dict, pair, registerObject) - ); - - - // Static Data Members - - //- Coefficient dimensions - static const dimensionSet dimK; - - - // Constructors - - // Construct without residual constants - dragModel - ( - const phasePair& pair, - const bool registerObject - ); - - // Construct with residual constants - dragModel - ( - const dictionary& dict, - const phasePair& pair, - const bool registerObject - ); - - - //- Destructor - virtual ~dragModel(); - - - // Selectors - - static autoPtr New - ( - const dictionary& dict, - const phasePair& pair - ); - - - // Member Functions - - //- Drag coefficient - virtual tmp CdRe() const = 0; - - //- Return the phase-intensive drag coefficient Ki - // used in the momentum equations - // ddt(alpha1*rho1*U1) + ... = ... alphad*K*(U1-U2) - // ddt(alpha2*rho2*U2) + ... = ... alphad*K*(U2-U1) - virtual tmp Ki() const; - - //- Return the drag coefficient K - // used in the momentum equations - // ddt(alpha1*rho1*U1) + ... = ... K*(U1-U2) - // ddt(alpha2*rho2*U2) + ... = ... K*(U2-U1) - virtual tmp K() const; - - //- Return the drag coefficient Kf - // used in the face-momentum equations - virtual tmp Kf() const; - - //- Dummy write for regIOobject - bool writeData(Ostream& os) const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/dragModel/newDragModel.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/dragModel/newDragModel.C deleted file mode 100644 index d429452c2e..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/dragModel/newDragModel.C +++ /dev/null @@ -1,59 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "dragModel.H" -#include "phasePair.H" - -// * * * * * * * * * * * * * * * * Selector * * * * * * * * * * * * * * * * // - -Foam::autoPtr Foam::dragModel::New -( - const dictionary& dict, - const phasePair& pair -) -{ - word dragModelType(dict.lookup("type")); - - Info<< "Selecting dragModel for " - << pair << ": " << dragModelType << endl; - - dictionaryConstructorTable::iterator cstrIter = - dictionaryConstructorTablePtr_->find(dragModelType); - - if (cstrIter == dictionaryConstructorTablePtr_->end()) - { - FatalErrorInFunction - << "Unknown dragModelType type " - << dragModelType << endl << endl - << "Valid dragModel types are : " << endl - << dictionaryConstructorTablePtr_->sortedToc() - << exit(FatalError); - } - - return cstrIter()(dict, pair, true); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/segregated/segregated.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/segregated/segregated.C deleted file mode 100644 index 0f93b592f5..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/segregated/segregated.C +++ /dev/null @@ -1,169 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2019 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "segregated.H" -#include "phasePair.H" -#include "fvcGrad.H" -#include "surfaceInterpolate.H" -#include "zeroGradientFvPatchFields.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace dragModels -{ - defineTypeNameAndDebug(segregated, 0); - addToRunTimeSelectionTable(dragModel, segregated, dictionary); -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::dragModels::segregated::segregated -( - const dictionary& dict, - const phasePair& pair, - const bool registerObject -) -: - dragModel(dict, pair, registerObject), - m_("m", dimless, dict), - n_("n", dimless, dict) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::dragModels::segregated::~segregated() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp Foam::dragModels::segregated::CdRe() const -{ - FatalErrorInFunction - << "Not implemented." - << "Drag coefficient not defined for the segregated model." - << exit(FatalError); - - return pair_.phase1(); -} - - -Foam::tmp Foam::dragModels::segregated::K() const -{ - const fvMesh& mesh(pair_.phase1().mesh()); - - const volScalarField& alpha1(pair_.phase1()); - const volScalarField& alpha2(pair_.phase2()); - - const volScalarField& rho1(pair_.phase1().rho()); - const volScalarField& rho2(pair_.phase2().rho()); - - tmp tnu1(pair_.phase1().nu()); - tmp tnu2(pair_.phase2().nu()); - - const volScalarField& nu1(tnu1()); - const volScalarField& nu2(tnu2()); - - volScalarField L - ( - IOobject - ( - "L", - mesh.time().timeName(), - mesh - ), - mesh, - dimensionedScalar(dimLength, 0), - zeroGradientFvPatchField::typeName - ); - L.primitiveFieldRef() = cbrt(mesh.V()); - L.correctBoundaryConditions(); - - const volScalarField I - ( - alpha1 - /max - ( - alpha1 + alpha2, - pair_.phase1().residualAlpha() + pair_.phase2().residualAlpha() - ) - ); - - const volScalarField magGradI - ( - max - ( - mag(fvc::grad(I)), - (pair_.phase1().residualAlpha() + pair_.phase2().residualAlpha())/L - ) - ); - - const volScalarField muI - ( - rho1*nu1*rho2*nu2 - /(rho1*nu1 + rho2*nu2) - ); - - const volScalarField limitedAlpha1 - ( - max(alpha1, pair_.phase1().residualAlpha()) - ); - - const volScalarField limitedAlpha2 - ( - max(alpha2, pair_.phase2().residualAlpha()) - ); - - const volScalarField muAlphaI - ( - alpha1*rho1*nu1*alpha2*rho2*nu2 - /(limitedAlpha1*rho1*nu1 + limitedAlpha2*rho2*nu2) - ); - - const volScalarField ReI - ( - pair_.rho()*pair_.magUr() - /(magGradI*limitedAlpha1*limitedAlpha2*muI) - ); - - const volScalarField lambda(m_*ReI + n_*muAlphaI/muI); - - return lambda*sqr(magGradI)*muI; -} - - -Foam::tmp Foam::dragModels::segregated::Kf() const -{ - return fvc::interpolate(K()); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/segregated/segregated.H b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/segregated/segregated.H deleted file mode 100644 index 3d0d0e9733..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/segregated/segregated.H +++ /dev/null @@ -1,117 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2019 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::dragModels::segregated - -Description - Segregated drag model for use in regions with no obvious dispersed phase. - - Reference: - \verbatim - "Towards the Numerical Simulation of Multi-scale Two-phase Flows", - Marschall, H., - PhD Thesis, TU München, 2011 - \endverbatim - -SourceFiles - segregated.C - -\*---------------------------------------------------------------------------*/ - -#ifndef segregated_H -#define segregated_H - -#include "dragModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - -class phasePair; - -namespace dragModels -{ - -/*---------------------------------------------------------------------------*\ - Class segregated Declaration -\*---------------------------------------------------------------------------*/ - -class segregated -: - public dragModel -{ - // Private Data - - //- M coefficient - const dimensionedScalar m_; - - //- N coefficient - const dimensionedScalar n_; - - -public: - - //- Runtime type information - TypeName("segregated"); - - - // Constructors - - //- Construct from components - segregated - ( - const dictionary& dict, - const phasePair& pair, - const bool registerObject - ); - - - //- Destructor - virtual ~segregated(); - - - // Member Functions - - //- Drag coefficient - virtual tmp CdRe() const; - - //- The drag function used in the momentum equation - virtual tmp K() const; - - //- The drag function Kf used in the face-momentum equations - virtual tmp Kf() const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace dragModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/heatTransferModels/RanzMarshall/RanzMarshall.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/heatTransferModels/RanzMarshall/RanzMarshall.C deleted file mode 100644 index ca5d1493c9..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/heatTransferModels/RanzMarshall/RanzMarshall.C +++ /dev/null @@ -1,76 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "RanzMarshall.H" -#include "phasePair.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace heatTransferModels -{ - defineTypeNameAndDebug(RanzMarshall, 0); - addToRunTimeSelectionTable(heatTransferModel, RanzMarshall, dictionary); -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::heatTransferModels::RanzMarshall::RanzMarshall -( - const dictionary& dict, - const phasePair& pair -) -: - heatTransferModel(dict, pair) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::heatTransferModels::RanzMarshall::~RanzMarshall() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp -Foam::heatTransferModels::RanzMarshall::K() const -{ - volScalarField Nu(scalar(2) + 0.6*sqrt(pair_.Re())*cbrt(pair_.Pr())); - - return - 6.0 - *max(pair_.dispersed(), residualAlpha_) - *pair_.continuous().kappa() - *Nu - /sqr(pair_.dispersed().d()); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/heatTransferModels/RanzMarshall/RanzMarshall.H b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/heatTransferModels/RanzMarshall/RanzMarshall.H deleted file mode 100644 index 967d516f6c..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/heatTransferModels/RanzMarshall/RanzMarshall.H +++ /dev/null @@ -1,95 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::heatTransferModels::RanzMarshall - -Description - Ranz-Marshall correlation for turbulent heat transfer from the surface of a - sphere to the surrounding fluid. - -SourceFiles - RanzMarshall.C - -\*---------------------------------------------------------------------------*/ - -#ifndef RanzMarshall_H -#define RanzMarshall_H - -#include "heatTransferModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - -class phasePair; - -namespace heatTransferModels -{ - -/*---------------------------------------------------------------------------*\ - Class RanzMarshall Declaration -\*---------------------------------------------------------------------------*/ - -class RanzMarshall -: - public heatTransferModel -{ -public: - - //- Runtime type information - TypeName("RanzMarshall"); - - - // Constructors - - //- Construct from components - RanzMarshall - ( - const dictionary& dict, - const phasePair& pair - ); - - - //- Destructor - virtual ~RanzMarshall(); - - - // Member Functions - - //- The heat transfer function K used in the enthalpy equation - tmp K() const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace heatTransferModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/heatTransferModels/heatTransferModel/heatTransferModel.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/heatTransferModels/heatTransferModel/heatTransferModel.C deleted file mode 100644 index c6ece19dd7..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/heatTransferModels/heatTransferModel/heatTransferModel.C +++ /dev/null @@ -1,68 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "heatTransferModel.H" -#include "phasePair.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ - defineTypeNameAndDebug(heatTransferModel, 0); - defineRunTimeSelectionTable(heatTransferModel, dictionary); -} - -const Foam::dimensionSet Foam::heatTransferModel::dimK(1, -1, -3, -1, 0); - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::heatTransferModel::heatTransferModel -( - const dictionary& dict, - const phasePair& pair -) -: - pair_(pair), - residualAlpha_ - ( - "residualAlpha", - dimless, - dict.lookupOrDefault - ( - "residualAlpha", - pair_.dispersed().residualAlpha().value() - ) - ) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::heatTransferModel::~heatTransferModel() -{} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/heatTransferModels/heatTransferModel/heatTransferModel.H b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/heatTransferModels/heatTransferModel/heatTransferModel.H deleted file mode 100644 index 63ef5c7210..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/heatTransferModels/heatTransferModel/heatTransferModel.H +++ /dev/null @@ -1,132 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2019 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::heatTransferModel - -Description - -SourceFiles - heatTransferModel.C - -\*---------------------------------------------------------------------------*/ - -#ifndef heatTransferModel_H -#define heatTransferModel_H - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "volFields.H" -#include "dictionary.H" -#include "runTimeSelectionTables.H" - -namespace Foam -{ - -class phasePair; - -/*---------------------------------------------------------------------------*\ - Class heatTransferModel Declaration -\*---------------------------------------------------------------------------*/ - -class heatTransferModel -{ -protected: - - // Protected data - - //- Phase pair - const phasePair& pair_; - - //- Residual phase fraction - const dimensionedScalar residualAlpha_; - - -public: - - //- Runtime type information - TypeName("heatTransferModel"); - - - // Declare runtime construction - - declareRunTimeSelectionTable - ( - autoPtr, - heatTransferModel, - dictionary, - ( - const dictionary& dict, - const phasePair& pair - ), - (dict, pair) - ); - - - // Static Data Members - - //- Coefficient dimensions - static const dimensionSet dimK; - - - // Constructors - - //- Construct froma dictionary and a phase pair - heatTransferModel - ( - const dictionary& dict, - const phasePair& pair - ); - - - //- Destructor - virtual ~heatTransferModel(); - - - // Selectors - - static autoPtr New - ( - const dictionary& dict, - const phasePair& pair - ); - - - // Member Functions - - //- The heat transfer function K used in the enthalpy equation - // ddt(alpha1*rho1*ha) + ... = ... K*(Ta - Tb) - // ddt(alpha2*rho2*hb) + ... = ... K*(Tb - Ta) - virtual tmp K() const = 0; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/heatTransferModels/heatTransferModel/newHeatTransferModel.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/heatTransferModels/heatTransferModel/newHeatTransferModel.C deleted file mode 100644 index d0ba4cc199..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/heatTransferModels/heatTransferModel/newHeatTransferModel.C +++ /dev/null @@ -1,59 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "heatTransferModel.H" -#include "phasePair.H" - -// * * * * * * * * * * * * * * * * Selector * * * * * * * * * * * * * * * * // - -Foam::autoPtr Foam::heatTransferModel::New -( - const dictionary& dict, - const phasePair& pair -) -{ - word heatTransferModelType(dict.lookup("type")); - - Info<< "Selecting heatTransferModel for " - << pair << ": " << heatTransferModelType << endl; - - dictionaryConstructorTable::iterator cstrIter = - dictionaryConstructorTablePtr_->find(heatTransferModelType); - - if (cstrIter == dictionaryConstructorTablePtr_->end()) - { - FatalErrorInFunction - << "Unknown heatTransferModelType type " - << heatTransferModelType << endl << endl - << "Valid heatTransferModel types are : " << endl - << dictionaryConstructorTablePtr_->sortedToc() - << exit(FatalError); - } - - return cstrIter()(dict, pair); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/heatTransferModels/sphericalHeatTransfer/sphericalHeatTransfer.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/heatTransferModels/sphericalHeatTransfer/sphericalHeatTransfer.C deleted file mode 100644 index ee095abff8..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/heatTransferModels/sphericalHeatTransfer/sphericalHeatTransfer.C +++ /dev/null @@ -1,78 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2015-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "sphericalHeatTransfer.H" -#include "phasePair.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace heatTransferModels -{ - defineTypeNameAndDebug(sphericalHeatTransfer, 0); - addToRunTimeSelectionTable - ( - heatTransferModel, - sphericalHeatTransfer, - dictionary - ); -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::heatTransferModels::sphericalHeatTransfer::sphericalHeatTransfer -( - const dictionary& dict, - const phasePair& pair -) -: - heatTransferModel(dict, pair) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::heatTransferModels::sphericalHeatTransfer::~sphericalHeatTransfer() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp -Foam::heatTransferModels::sphericalHeatTransfer::K() const -{ - return - 60.0 - *max(pair_.dispersed(), residualAlpha_) - *pair_.continuous().kappa() - /sqr(pair_.dispersed().d()); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/heatTransferModels/sphericalHeatTransfer/sphericalHeatTransfer.H b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/heatTransferModels/sphericalHeatTransfer/sphericalHeatTransfer.H deleted file mode 100644 index 0fc5010571..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/heatTransferModels/sphericalHeatTransfer/sphericalHeatTransfer.H +++ /dev/null @@ -1,95 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2015-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::heatTransferModels::sphericalHeatTransfer - -Description - Model which applies an analytical solution for heat transfer from the - surface of a sphere to the fluid within the sphere. - -SourceFiles - sphericalHeatTransfer.C - -\*---------------------------------------------------------------------------*/ - -#ifndef sphericalHeatTransfer_H -#define sphericalHeatTransfer_H - -#include "heatTransferModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - -class phasePair; - -namespace heatTransferModels -{ - -/*---------------------------------------------------------------------------*\ - Class sphericalHeatTransfer Declaration -\*---------------------------------------------------------------------------*/ - -class sphericalHeatTransfer -: - public heatTransferModel -{ -public: - - //- Runtime type information - TypeName("spherical"); - - - // Constructors - - //- Construct from components - sphericalHeatTransfer - ( - const dictionary& dict, - const phasePair& pair - ); - - - //- Destructor - virtual ~sphericalHeatTransfer(); - - - // Member Functions - - //- The heat transfer function K used in the enthalpy equation - tmp K() const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace heatTransferModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/liftModels/LegendreMagnaudet/LegendreMagnaudet.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/liftModels/LegendreMagnaudet/LegendreMagnaudet.C deleted file mode 100644 index 9873d25102..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/liftModels/LegendreMagnaudet/LegendreMagnaudet.C +++ /dev/null @@ -1,98 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "LegendreMagnaudet.H" -#include "phasePair.H" -#include "fvcGrad.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace liftModels -{ - defineTypeNameAndDebug(LegendreMagnaudet, 0); - addToRunTimeSelectionTable(liftModel, LegendreMagnaudet, dictionary); -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::liftModels::LegendreMagnaudet::LegendreMagnaudet -( - const dictionary& dict, - const phasePair& pair -) -: - liftModel(dict, pair), - residualRe_("residualRe", dimless, dict) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::liftModels::LegendreMagnaudet::~LegendreMagnaudet() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp Foam::liftModels::LegendreMagnaudet::Cl() const -{ - volScalarField Re(max(pair_.Re(), residualRe_)); - - volScalarField Sr - ( - sqr(pair_.dispersed().d()) - /( - Re - *pair_.continuous().nu() - ) - *mag(fvc::grad(pair_.continuous().U())) - ); - - volScalarField ClLowSqr - ( - sqr(6.0*2.255) - *sqr(Sr) - /( - pow4(constant::mathematical::pi) - *Re - *pow3(Sr + 0.2*Re) - ) - ); - - volScalarField ClHighSqr - ( - sqr(0.5*(Re + 16.0)/(Re + 29.0)) - ); - - return sqrt(ClLowSqr + ClHighSqr); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/liftModels/LegendreMagnaudet/LegendreMagnaudet.H b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/liftModels/LegendreMagnaudet/LegendreMagnaudet.H deleted file mode 100644 index 188cdb7959..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/liftModels/LegendreMagnaudet/LegendreMagnaudet.H +++ /dev/null @@ -1,116 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2019 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::liftModels::LegendreMagnaudet - -Description - Lift model of Legendre and Magnaudet. - - References: - \verbatim - "Implementation and Comparison of Correlations for interfacial Forces - in a Gas-Liquid System within an Euler-Euler Framework" - Otromke, M. - PhD Thesis - April 2013 - \endverbatim - - \verbatim - "The lift force on a spherical bubble in a viscous linear shear flow" - Legendre, D., Magnaudet, J., - Journal of Fluid Mechanics - Volume 368, August 1998, pp. 81-126 - \endverbatim - -SourceFiles - LegendreMagnaudet.C - -\*---------------------------------------------------------------------------*/ - -#ifndef LegendreMagnaudet_H -#define LegendreMagnaudet_H - -#include "liftModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - -class phasePair; - -namespace liftModels -{ - -/*---------------------------------------------------------------------------*\ - Class LegendreMagnaudet Declaration -\*---------------------------------------------------------------------------*/ - -class LegendreMagnaudet -: - public liftModel -{ - // Private Data - - //- Residual Reynold's number - const dimensionedScalar residualRe_; - - -public: - - //- Runtime type information - TypeName("LegendreMagnaudet"); - - - // Constructors - - //- Construct from a dictionary and a phase pair - LegendreMagnaudet - ( - const dictionary& dict, - const phasePair& pair - ); - - - //- Destructor - virtual ~LegendreMagnaudet(); - - - // Member Functions - - //- Lift coefficient - virtual tmp Cl() const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace liftModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/liftModels/Moraga/Moraga.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/liftModels/Moraga/Moraga.C deleted file mode 100644 index 23866e4104..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/liftModels/Moraga/Moraga.C +++ /dev/null @@ -1,98 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "Moraga.H" -#include "phasePair.H" -#include "fvcGrad.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace liftModels -{ - defineTypeNameAndDebug(Moraga, 0); - addToRunTimeSelectionTable(liftModel, Moraga, dictionary); -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::liftModels::Moraga::Moraga -( - const dictionary& dict, - const phasePair& pair -) -: - liftModel(dict, pair) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::liftModels::Moraga::~Moraga() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp Foam::liftModels::Moraga::Cl() const -{ - volScalarField Re(pair_.Re()); - - volScalarField sqrSr - ( - sqr(pair_.dispersed().d()) - /pair_.continuous().nu() - *mag(fvc::grad(pair_.continuous().U())) - ); - - if - ( - min(Re).value() < 1200.0 - || max(Re).value() > 18800.0 - || min(sqrSr).value() < 0.0016 - || max(sqrSr).value() > 0.04 - ) - { - WarningInFunction - << "Re and/or Sr are out of the range of applicability of the " - << "Moraga model. Clamping to range bounds" - << endl; - } - - Re.min(1200.0); - Re.max(18800.0); - - sqrSr.min(0.0016); - sqrSr.max(0.04); - - return 0.2*exp(- Re*sqrSr/3.6e5 - 0.12)*exp(Re*sqrSr/3.0e7); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/liftModels/Moraga/Moraga.H b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/liftModels/Moraga/Moraga.H deleted file mode 100644 index 2c772b2fbb..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/liftModels/Moraga/Moraga.H +++ /dev/null @@ -1,109 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::liftModels::Moraga - -Description - Lift model of Moraga et al. - - References: - \verbatim - "Implementation and Comparison of Correlations for interfacial Forces - in a Gas-Liquid System within an Euler-Euler Framework" - Otromke, M., - PhD Thesis, April 2013 - \endverbatim - - \verbatim - "Lateral forces on spheres in turbulent uniform shear flow" - Moraga, F.J., Bonetto, F.J., Lahey, R.T., - International Journal of Multiphase Flow - Volume 25, Issues 6-7, September 1999, pp. 1321-1372 - \endverbatim - -SourceFiles - Moraga.C - -\*---------------------------------------------------------------------------*/ - -#ifndef Moraga_H -#define Moraga_H - -#include "liftModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - -class phasePair; - -namespace liftModels -{ - -/*---------------------------------------------------------------------------*\ - Class Moraga Declaration -\*---------------------------------------------------------------------------*/ - -class Moraga -: - public liftModel -{ -public: - - //- Runtime type information - TypeName("Moraga"); - - - // Constructors - - //- Construct from a dictionary and a phase pair - Moraga - ( - const dictionary& dict, - const phasePair& pair - ); - - - //- Destructor - virtual ~Moraga(); - - - // Member Functions - - //- Lift coefficient - virtual tmp Cl() const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace liftModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/liftModels/TomiyamaLift/TomiyamaLift.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/liftModels/TomiyamaLift/TomiyamaLift.C deleted file mode 100644 index ec7532fde4..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/liftModels/TomiyamaLift/TomiyamaLift.C +++ /dev/null @@ -1,78 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "TomiyamaLift.H" -#include "phasePair.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace liftModels -{ - defineTypeNameAndDebug(TomiyamaLift, 0); - addToRunTimeSelectionTable(liftModel, TomiyamaLift, dictionary); -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::liftModels::TomiyamaLift::TomiyamaLift -( - const dictionary& dict, - const phasePair& pair -) -: - liftModel(dict, pair) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::liftModels::TomiyamaLift::~TomiyamaLift() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp Foam::liftModels::TomiyamaLift::Cl() const -{ - volScalarField EoH(pair_.EoH2()); - - volScalarField f - ( - 0.0010422*pow3(EoH) - 0.0159*sqr(EoH) - 0.0204*EoH + 0.474 - ); - - return - neg(EoH - scalar(4))*min(0.288*tanh(0.121*pair_.Re()), f) - + pos0(EoH - scalar(4))*neg(EoH - scalar(10.7))*f - + pos0(EoH - scalar(10.7))*(-0.288); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/liftModels/TomiyamaLift/TomiyamaLift.H b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/liftModels/TomiyamaLift/TomiyamaLift.H deleted file mode 100644 index 6169af559b..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/liftModels/TomiyamaLift/TomiyamaLift.H +++ /dev/null @@ -1,106 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::liftModels::TomiyamaLift - -Description - Lift model of Tomiyama et al. - - Reference: - \verbatim - "Transverse migration of single bubbles in simple shear flows" - Tomiyama, A., Tamai, H., Zun, I., Hosokawa, S., - Chemical Engineering Science - Volume 57, Issue 11, June 2002, pp. 1849-1858 - \endverbatim - - The coefficient for pow3(EoH) proposed by Tomiyama (2002) has been modified - to make the model continuous at EoH = 10.7 while maintaining the - lift coefficient proposed by Tomiyama (2002) when EoH >= 10.7. - -SourceFiles - TomiyamaLift.C - -\*---------------------------------------------------------------------------*/ - -#ifndef TomiyamaLift_H -#define TomiyamaLift_H - -#include "liftModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - -class phasePair; - -namespace liftModels -{ - -/*---------------------------------------------------------------------------*\ - Class TomiyamaLift Declaration -\*---------------------------------------------------------------------------*/ - -class TomiyamaLift -: - public liftModel -{ -public: - - //- Runtime type information - TypeName("Tomiyama"); - - - // Constructors - - //- Construct from a dictionary and a phase pair - TomiyamaLift - ( - const dictionary& dict, - const phasePair& pair - ); - - - //- Destructor - virtual ~TomiyamaLift(); - - - // Member Functions - - //- Lift coefficient - virtual tmp Cl() const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace liftModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/liftModels/constantLiftCoefficient/constantLiftCoefficient.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/liftModels/constantLiftCoefficient/constantLiftCoefficient.C deleted file mode 100644 index 68bea6dfa9..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/liftModels/constantLiftCoefficient/constantLiftCoefficient.C +++ /dev/null @@ -1,77 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "constantLiftCoefficient.H" -#include "phasePair.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace liftModels -{ - defineTypeNameAndDebug(constantLiftCoefficient, 0); - addToRunTimeSelectionTable(liftModel, constantLiftCoefficient, dictionary); -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::liftModels::constantLiftCoefficient::constantLiftCoefficient -( - const dictionary& dict, - const phasePair& pair -) -: - liftModel(dict, pair), - Cl_("Cl", dimless, dict) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::liftModels::constantLiftCoefficient::~constantLiftCoefficient() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp -Foam::liftModels::constantLiftCoefficient::Cl() const -{ - const fvMesh& mesh(this->pair_.phase1().mesh()); - - return volScalarField::New - ( - "zero", - mesh, - Cl_ - ); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/liftModels/constantLiftCoefficient/constantLiftCoefficient.H b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/liftModels/constantLiftCoefficient/constantLiftCoefficient.H deleted file mode 100644 index e43cd54344..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/liftModels/constantLiftCoefficient/constantLiftCoefficient.H +++ /dev/null @@ -1,100 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2019 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::liftModels::constantLiftCoefficient - -Description - Constant coefficient lift model. - -SourceFiles - constantLiftCoefficient.C - -\*---------------------------------------------------------------------------*/ - -#ifndef constantLiftCoefficient_H -#define constantLiftCoefficient_H - -#include "liftModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - -class phasePair; - -namespace liftModels -{ - -/*---------------------------------------------------------------------------*\ - Class constantLiftCoefficient Declaration -\*---------------------------------------------------------------------------*/ - -class constantLiftCoefficient -: - public liftModel -{ - // Private Data - - //- Constant lift coefficient - const dimensionedScalar Cl_; - - -public: - - //- Runtime type information - TypeName("constantCoefficient"); - - - // Constructors - - //- Construct from a dictionary and a phase pair - constantLiftCoefficient - ( - const dictionary& dict, - const phasePair& pair - ); - - - //- Destructor - virtual ~constantLiftCoefficient(); - - - // Member Functions - - //- Lift coefficient - virtual tmp Cl() const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace liftModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/liftModels/liftModel/liftModel.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/liftModels/liftModel/liftModel.C deleted file mode 100644 index 9beba5f42e..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/liftModels/liftModel/liftModel.C +++ /dev/null @@ -1,86 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "liftModel.H" -#include "phasePair.H" -#include "fvcCurl.H" -#include "fvcFlux.H" -#include "surfaceInterpolate.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ - defineTypeNameAndDebug(liftModel, 0); - defineRunTimeSelectionTable(liftModel, dictionary); -} - -const Foam::dimensionSet Foam::liftModel::dimF(1, -2, -2, 0, 0); - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::liftModel::liftModel -( - const dictionary& dict, - const phasePair& pair -) -: - pair_(pair) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::liftModel::~liftModel() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp Foam::liftModel::Fi() const -{ - return - Cl() - *pair_.continuous().rho() - *( - pair_.Ur() ^ fvc::curl(pair_.continuous().U()) - ); -} - - -Foam::tmp Foam::liftModel::F() const -{ - return pair_.dispersed()*Fi(); -} - - -Foam::tmp Foam::liftModel::Ff() const -{ - return fvc::interpolate(pair_.dispersed())*fvc::flux(Fi()); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/liftModels/liftModel/liftModel.H b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/liftModels/liftModel/liftModel.H deleted file mode 100644 index 93e2c0b2f0..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/liftModels/liftModel/liftModel.H +++ /dev/null @@ -1,137 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2019 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::liftModel - -Description - -SourceFiles - liftModel.C - newLiftModel.C - -\*---------------------------------------------------------------------------*/ - -#ifndef liftModel_H -#define liftModel_H - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "volFields.H" -#include "dictionary.H" -#include "runTimeSelectionTables.H" - -namespace Foam -{ - -class phasePair; - -/*---------------------------------------------------------------------------*\ - Class liftModel Declaration -\*---------------------------------------------------------------------------*/ - -class liftModel -{ -protected: - - // Protected data - - //- Phase pair - const phasePair& pair_; - - -public: - - //- Runtime type information - TypeName("liftModel"); - - - // Declare runtime construction - - declareRunTimeSelectionTable - ( - autoPtr, - liftModel, - dictionary, - ( - const dictionary& dict, - const phasePair& pair - ), - (dict, pair) - ); - - - // Static Data Members - - //- Force dimensions - static const dimensionSet dimF; - - - // Constructors - - //- Construct from a dictionary and a phase pair - liftModel - ( - const dictionary& dict, - const phasePair& pair - ); - - - //- Destructor - virtual ~liftModel(); - - - // Selectors - - static autoPtr New - ( - const dictionary& dict, - const phasePair& pair - ); - - - // Member Functions - - //- Return lift coefficient - virtual tmp Cl() const = 0; - - //- Return phase-intensive lift force - virtual tmp Fi() const; - - //- Return lift force - virtual tmp F() const; - - //- Return face lift force - virtual tmp Ff() const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/liftModels/liftModel/newLiftModel.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/liftModels/liftModel/newLiftModel.C deleted file mode 100644 index 411e2e4343..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/liftModels/liftModel/newLiftModel.C +++ /dev/null @@ -1,59 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "liftModel.H" -#include "phasePair.H" - -// * * * * * * * * * * * * * * * * Selector * * * * * * * * * * * * * * * * // - -Foam::autoPtr Foam::liftModel::New -( - const dictionary& dict, - const phasePair& pair -) -{ - word liftModelType(dict.lookup("type")); - - Info<< "Selecting liftModel for " - << pair << ": " << liftModelType << endl; - - dictionaryConstructorTable::iterator cstrIter = - dictionaryConstructorTablePtr_->find(liftModelType); - - if (cstrIter == dictionaryConstructorTablePtr_->end()) - { - FatalErrorInFunction - << "Unknown liftModelType type " - << liftModelType << endl << endl - << "Valid liftModel types are : " << endl - << dictionaryConstructorTablePtr_->sortedToc() - << exit(FatalError); - } - - return cstrIter()(dict, pair); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/liftModels/noLift/noLift.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/liftModels/noLift/noLift.C deleted file mode 100644 index 3c56a50f7e..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/liftModels/noLift/noLift.C +++ /dev/null @@ -1,104 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "noLift.H" -#include "phasePair.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace liftModels -{ - defineTypeNameAndDebug(noLift, 0); - addToRunTimeSelectionTable(liftModel, noLift, dictionary); -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::liftModels::noLift::noLift -( - const dictionary& dict, - const phasePair& pair -) -: - liftModel(dict, pair) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::liftModels::noLift::~noLift() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp Foam::liftModels::noLift::Cl() const -{ - const fvMesh& mesh(this->pair_.phase1().mesh()); - - return volScalarField::New - ( - "Cl", - mesh, - dimensionedScalar(dimless, 0) - ); -} - - -Foam::tmp Foam::liftModels::noLift::F() const -{ - const fvMesh& mesh(this->pair_.phase1().mesh()); - - return volVectorField::New - ( - "noLift:F", - mesh, - dimensionedVector(dimF, Zero) - ); -} - - -Foam::tmp Foam::liftModels::noLift::Ff() const -{ - const fvMesh& mesh(this->pair_.phase1().mesh()); - - return tmp - ( - surfaceScalarField::New - ( - "noLift:Ff", - mesh, - dimensionedScalar(dimF*dimArea, 0) - ) - ); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/liftModels/noLift/noLift.H b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/liftModels/noLift/noLift.H deleted file mode 100644 index f73a214edd..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/liftModels/noLift/noLift.H +++ /dev/null @@ -1,99 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::liftModels::noLift - -Description - -SourceFiles - noLift.C - -\*---------------------------------------------------------------------------*/ - -#ifndef noLift_H -#define noLift_H - -#include "liftModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - -class phasePair; - -namespace liftModels -{ - -/*---------------------------------------------------------------------------*\ - Class noLift Declaration -\*---------------------------------------------------------------------------*/ - -class noLift -: - public liftModel -{ -public: - - //- Runtime type information - TypeName("none"); - - - // Constructors - - //- Construct from a dictionary and a phase pair - noLift - ( - const dictionary& dict, - const phasePair& pair - ); - - - //- Destructor - virtual ~noLift(); - - - // Member Functions - - //- Lift coefficient - virtual tmp Cl() const; - - //- Lift force - virtual tmp F() const; - - //- Lift force on faces - virtual tmp Ff() const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace liftModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/swarmCorrections/TomiyamaSwarm/TomiyamaSwarm.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/swarmCorrections/TomiyamaSwarm/TomiyamaSwarm.C deleted file mode 100644 index da493d3f5b..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/swarmCorrections/TomiyamaSwarm/TomiyamaSwarm.C +++ /dev/null @@ -1,86 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "TomiyamaSwarm.H" -#include "phasePair.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace swarmCorrections -{ - defineTypeNameAndDebug(TomiyamaSwarm, 0); - addToRunTimeSelectionTable - ( - swarmCorrection, - TomiyamaSwarm, - dictionary - ); -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::swarmCorrections::TomiyamaSwarm::TomiyamaSwarm -( - const dictionary& dict, - const phasePair& pair -) -: - swarmCorrection(dict, pair), - residualAlpha_ - ( - "residualAlpha", - dimless, - dict.lookupOrDefault - ( - "residualAlpha", - pair_.dispersed().residualAlpha().value() - ) - ), - l_("l", dimless, dict) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::swarmCorrections::TomiyamaSwarm::~TomiyamaSwarm() -{} - - -// * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * * // - -Foam::tmp -Foam::swarmCorrections::TomiyamaSwarm::Cs() const -{ - return - pow(max(this->pair_.continuous(), residualAlpha_), scalar(3) - 2*l_); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/swarmCorrections/TomiyamaSwarm/TomiyamaSwarm.H b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/swarmCorrections/TomiyamaSwarm/TomiyamaSwarm.H deleted file mode 100644 index 7d5b2dd6ea..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/swarmCorrections/TomiyamaSwarm/TomiyamaSwarm.H +++ /dev/null @@ -1,109 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2019 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::swarmCorrections::TomiyamaSwarm - -Description - Swarm correction of Tomiyama et al. - - Reference: - \verbatim - "Drag Coefficients of Bubbles. 2nd Report. Drag Coefficient for a Swarm - of Bubbles and its Applicability to Transient Flow." - Tomiyama, A., Kataoka, I., Fukuda, T., and Sakaguchi, T., - Nippon Kikai Gakkai Ronbunshu - Volume 61, Issue 588, 1995, pp. 2810-2817 - \endverbatim - -SourceFiles - TomiyamaSwarm.C - -\*---------------------------------------------------------------------------*/ - -#ifndef TomiyamaSwarm_H -#define TomiyamaSwarm_H - -#include "swarmCorrection.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ -namespace swarmCorrections -{ - -/*---------------------------------------------------------------------------*\ - Class TomiyamaSwarm Declaration -\*---------------------------------------------------------------------------*/ - -class TomiyamaSwarm -: - public swarmCorrection -{ - // Private Data - - //- Residual phase fraction - const dimensionedScalar residualAlpha_; - - //- Constant exponent - const dimensionedScalar l_; - - -public: - - //- Runtime type information - TypeName("Tomiyama"); - - - // Constructors - - //- Construct from a dictionary and a phase pair - TomiyamaSwarm - ( - const dictionary& dict, - const phasePair& pair - ); - - - //- Destructor - virtual ~TomiyamaSwarm(); - - - // Member Functions - - //- Swarm correction coefficient - virtual tmp Cs() const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace swarmCorrections -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/swarmCorrections/noSwarm/noSwarm.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/swarmCorrections/noSwarm/noSwarm.C deleted file mode 100644 index 6102ca6bb9..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/swarmCorrections/noSwarm/noSwarm.C +++ /dev/null @@ -1,75 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "noSwarm.H" -#include "phasePair.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace swarmCorrections -{ - defineTypeNameAndDebug(noSwarm, 0); - addToRunTimeSelectionTable(swarmCorrection, noSwarm, dictionary); -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::swarmCorrections::noSwarm::noSwarm -( - const dictionary& dict, - const phasePair& pair -) -: - swarmCorrection(dict, pair) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::swarmCorrections::noSwarm::~noSwarm() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp Foam::swarmCorrections::noSwarm::Cs() const -{ - const fvMesh& mesh(this->pair_.phase1().mesh()); - - return volScalarField::New - ( - "one", - mesh, - dimensionedScalar(dimless, 1) - ); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/swarmCorrections/noSwarm/noSwarm.H b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/swarmCorrections/noSwarm/noSwarm.H deleted file mode 100644 index c1b8699999..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/swarmCorrections/noSwarm/noSwarm.H +++ /dev/null @@ -1,93 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::swarmCorrections::noSwarm - -Description - -SourceFiles - noSwarm.C - -\*---------------------------------------------------------------------------*/ - -#ifndef noSwarm_H -#define noSwarm_H - -#include "swarmCorrection.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - -class phasePair; - -namespace swarmCorrections -{ - -/*---------------------------------------------------------------------------*\ - Class noSwarm Declaration -\*---------------------------------------------------------------------------*/ - -class noSwarm -: - public swarmCorrection -{ -public: - - //- Runtime type information - TypeName("none"); - - - // Constructors - - //- Construct from a dictionary and a phase pair - noSwarm - ( - const dictionary& dict, - const phasePair& pair - ); - - - //- Destructor - virtual ~noSwarm(); - - - // Member Functions - - //- Swarm correction coefficient - tmp Cs() const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace swarmCorrections -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/swarmCorrections/swarmCorrection/newSwarmCorrection.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/swarmCorrections/swarmCorrection/newSwarmCorrection.C deleted file mode 100644 index 2f28ae7f6c..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/swarmCorrections/swarmCorrection/newSwarmCorrection.C +++ /dev/null @@ -1,60 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "swarmCorrection.H" -#include "phasePair.H" - -// * * * * * * * * * * * * * * * * Selector * * * * * * * * * * * * * * * * // - -Foam::autoPtr -Foam::swarmCorrection::New -( - const dictionary& dict, - const phasePair& pair -) -{ - word swarmCorrectionType(dict.lookup("type")); - - Info<< "Selecting swarmCorrection for " - << pair << ": " << swarmCorrectionType << endl; - - dictionaryConstructorTable::iterator cstrIter = - dictionaryConstructorTablePtr_->find(swarmCorrectionType); - - if (cstrIter == dictionaryConstructorTablePtr_->end()) - { - FatalErrorInFunction - << "Unknown swarmCorrectionType type " - << swarmCorrectionType << endl << endl - << "Valid swarmCorrection types are : " << endl - << dictionaryConstructorTablePtr_->sortedToc() - << exit(FatalError); - } - - return cstrIter()(dict, pair); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/swarmCorrections/swarmCorrection/swarmCorrection.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/swarmCorrections/swarmCorrection/swarmCorrection.C deleted file mode 100644 index c388afb0bc..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/swarmCorrections/swarmCorrection/swarmCorrection.C +++ /dev/null @@ -1,56 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "swarmCorrection.H" -#include "phasePair.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ - defineTypeNameAndDebug(swarmCorrection, 0); - defineRunTimeSelectionTable(swarmCorrection, dictionary); -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::swarmCorrection::swarmCorrection -( - const dictionary& dict, - const phasePair& pair -) -: - pair_(pair) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::swarmCorrection::~swarmCorrection() -{} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/swarmCorrections/swarmCorrection/swarmCorrection.H b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/swarmCorrections/swarmCorrection/swarmCorrection.H deleted file mode 100644 index 2e6e62f79c..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/swarmCorrections/swarmCorrection/swarmCorrection.H +++ /dev/null @@ -1,121 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::swarmCorrection - -Description - -SourceFiles - swarmCorrection.C - newSwarmCorrection.C - -\*---------------------------------------------------------------------------*/ - -#ifndef swarmCorrection_H -#define swarmCorrection_H - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "volFields.H" -#include "dictionary.H" -#include "runTimeSelectionTables.H" - -namespace Foam -{ - -class phasePair; - -/*---------------------------------------------------------------------------*\ - Class swarmCorrection Declaration -\*---------------------------------------------------------------------------*/ - -class swarmCorrection -{ -protected: - - // Protected data - - //- Phase pair - const phasePair& pair_; - - -public: - - //- Runtime type information - TypeName("swarmCorrection"); - - - // Declare runtime construction - declareRunTimeSelectionTable - ( - autoPtr, - swarmCorrection, - dictionary, - ( - const dictionary& dict, - const phasePair& pair - ), - (dict, pair) - ); - - - // Constructors - - //- Construct from a dictionary and a phase pair - swarmCorrection - ( - const dictionary& dict, - const phasePair& pair - ); - - - //- Destructor - virtual ~swarmCorrection(); - - - // Selectors - - static autoPtr New - ( - const dictionary& dict, - const phasePair& pair - ); - - - // Member Functions - - //- Swarm correction coefficient - virtual tmp Cs() const = 0; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/Burns/Burns.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/Burns/Burns.C deleted file mode 100644 index f1c17e660d..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/Burns/Burns.C +++ /dev/null @@ -1,112 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "Burns.H" -#include "phasePair.H" -#include "PhaseCompressibleMomentumTransportModel.H" -#include "addToRunTimeSelectionTable.H" - -#include "dragModel.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace turbulentDispersionModels -{ - defineTypeNameAndDebug(Burns, 0); - addToRunTimeSelectionTable - ( - turbulentDispersionModel, - Burns, - dictionary - ); -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::turbulentDispersionModels::Burns::Burns -( - const dictionary& dict, - const phasePair& pair -) -: - turbulentDispersionModel(dict, pair), - sigma_("sigma", dimless, dict), - residualAlpha_ - ( - "residualAlpha", - dimless, - dict.lookupOrDefault - ( - "residualAlpha", - pair_.dispersed().residualAlpha().value() - ) - ) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::turbulentDispersionModels::Burns::~Burns() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp -Foam::turbulentDispersionModels::Burns::D() const -{ - const fvMesh& mesh(pair_.phase1().mesh()); - const dragModel& - drag - ( - mesh.lookupObject - ( - IOobject::groupName(dragModel::typeName, pair_.name()) - ) - ); - - return - 0.75 - *drag.CdRe() - *pair_.continuous().nu() - *pair_.continuous().turbulence().nut() - /( - sigma_ - *sqr(pair_.dispersed().d()) - ) - *pair_.continuous().rho() - *pair_.dispersed() - *( - 1.0/max(pair_.dispersed(), residualAlpha_) - + 1.0/max(pair_.continuous(), residualAlpha_) - ); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/Burns/Burns.H b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/Burns/Burns.H deleted file mode 100644 index 4ad2826bc5..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/Burns/Burns.H +++ /dev/null @@ -1,121 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2019 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::turbulentDispersionModels::Burns - -Description - Turbulent dispersion model of Burns et al. - - References: - \verbatim - "Implementation and Comparison of Correlations for interfacial Forces - in a Gas-Liquid System within an Euler-Euler Framework" - Otromke, M., - PhD Thesis - April 2013 - \endverbatim - - \verbatim - "The Favre averaged drag model for turbulent dispersion in Eulerian - multi-phase flows" - Burns, A.D., Frank, T., Hamill, I., Shi, J.M., - 5th international conference on multiphase flow - Volume 4, Paper 392, May 2004 - \endverbatim - -SourceFiles - Burns.C - -\*---------------------------------------------------------------------------*/ - -#ifndef Burns_H -#define Burns_H - -#include "turbulentDispersionModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - -class phasePair; - -namespace turbulentDispersionModels -{ - -/*---------------------------------------------------------------------------*\ - Class Burns Declaration -\*---------------------------------------------------------------------------*/ - -class Burns -: - public turbulentDispersionModel -{ - // Private Data - - //- Schmidt number - const dimensionedScalar sigma_; - - //- Residual phase fraction - const dimensionedScalar residualAlpha_; - - -public: - - //- Runtime type information - TypeName("Burns"); - - - // Constructors - - //- Construct from a dictionary and a phase pair - Burns - ( - const dictionary& dict, - const phasePair& pair - ); - - - //- Destructor - virtual ~Burns(); - - - // Member Functions - - //- Turbulent diffusivity - // multiplying the gradient of the phase-fraction - virtual tmp D() const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace turbulentDispersionModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/Gosman/Gosman.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/Gosman/Gosman.C deleted file mode 100644 index 9d6829c6ef..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/Gosman/Gosman.C +++ /dev/null @@ -1,98 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "Gosman.H" -#include "phasePair.H" -#include "PhaseCompressibleMomentumTransportModel.H" -#include "addToRunTimeSelectionTable.H" - -#include "dragModel.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace turbulentDispersionModels -{ - defineTypeNameAndDebug(Gosman, 0); - addToRunTimeSelectionTable - ( - turbulentDispersionModel, - Gosman, - dictionary - ); -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::turbulentDispersionModels::Gosman::Gosman -( - const dictionary& dict, - const phasePair& pair -) -: - turbulentDispersionModel(dict, pair), - sigma_("sigma", dimless, dict) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::turbulentDispersionModels::Gosman::~Gosman() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp -Foam::turbulentDispersionModels::Gosman::D() const -{ - const fvMesh& mesh(pair_.phase1().mesh()); - const dragModel& - drag - ( - mesh.lookupObject - ( - IOobject::groupName(dragModel::typeName, pair_.name()) - ) - ); - - return - 0.75 - *drag.CdRe() - *pair_.dispersed() - *pair_.continuous().nu() - *pair_.continuous().turbulence().nut() - /( - sigma_ - *sqr(pair_.dispersed().d()) - ) - *pair_.continuous().rho(); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/Gosman/Gosman.H b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/Gosman/Gosman.H deleted file mode 100644 index 4fa0af9b2a..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/Gosman/Gosman.H +++ /dev/null @@ -1,110 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2019 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::turbulentDispersionModels::Gosman - -Description - Turbulent dispersion model of Gosman et al. - - Reference: - \verbatim - "Multidimensional modeling of turbulent two-phase flows in stirred - vessels" - Gosman, A.D., Lekakou, C., Politis, S., Issa, R.I., and Looney, M.K., - AIChE Journal - Volume 38, Issue 12, 1992, pp. 1946-1956 - \endverbatim - -SourceFiles - Gosman.C - -\*---------------------------------------------------------------------------*/ - -#ifndef Gosman_H -#define Gosman_H - -#include "turbulentDispersionModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - -class phasePair; - -namespace turbulentDispersionModels -{ - -/*---------------------------------------------------------------------------*\ - Class Gosman Declaration -\*---------------------------------------------------------------------------*/ - -class Gosman -: - public turbulentDispersionModel -{ - // Private Data - - //- Schmidt number - const dimensionedScalar sigma_; - - -public: - - //- Runtime type information - TypeName("Gosman"); - - - // Constructors - - //- Construct from a dictionary and a phase pair - Gosman - ( - const dictionary& dict, - const phasePair& pair - ); - - - //- Destructor - virtual ~Gosman(); - - - // Member Functions - - //- Turbulent diffusivity - // multiplying the gradient of the phase-fraction - virtual tmp D() const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace turbulentDispersionModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/LopezDeBertodano/LopezDeBertodano.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/LopezDeBertodano/LopezDeBertodano.C deleted file mode 100644 index 7e65485c24..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/LopezDeBertodano/LopezDeBertodano.C +++ /dev/null @@ -1,79 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "LopezDeBertodano.H" -#include "phasePair.H" -#include "PhaseCompressibleMomentumTransportModel.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace turbulentDispersionModels -{ - defineTypeNameAndDebug(LopezDeBertodano, 0); - addToRunTimeSelectionTable - ( - turbulentDispersionModel, - LopezDeBertodano, - dictionary - ); -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::turbulentDispersionModels::LopezDeBertodano::LopezDeBertodano -( - const dictionary& dict, - const phasePair& pair -) -: - turbulentDispersionModel(dict, pair), - Ctd_("Ctd", dimless, dict) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::turbulentDispersionModels::LopezDeBertodano::~LopezDeBertodano() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp -Foam::turbulentDispersionModels::LopezDeBertodano::D() const -{ - return - Ctd_ - *pair_.continuous().rho() - *pair_.continuous().turbulence().k(); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/LopezDeBertodano/LopezDeBertodano.H b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/LopezDeBertodano/LopezDeBertodano.H deleted file mode 100644 index a19276cbe8..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/LopezDeBertodano/LopezDeBertodano.H +++ /dev/null @@ -1,116 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2019 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::turbulentDispersionModels::LopezDeBertodano - -Description - Lopez de Bertodano (1992) turbulent dispersion model. - - \verbatim - "Turbulent bubbly two-phase flow in a triangular - duct" - Lopez de Bertodano, M. - Ph.D. Thesis, Rensselaer Polytechnic Institution, New York, USA, 1992. - \endverbatim - - \verbatim - "The Favre averaged drag model for turbulent dispersion in Eulerian - multi-phase flows" - Burns, A.D., Frank, T., Hamill, I., Shi, J.M., - 5th international conference on multiphase flow - Volume 4, Paper 392, May 2004 - \endverbatim - -SourceFiles - LopezDeBertodano.C - -\*---------------------------------------------------------------------------*/ - -#ifndef LopezDeBertodano_H -#define LopezDeBertodano_H - -#include "turbulentDispersionModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - -class phasePair; - -namespace turbulentDispersionModels -{ - -/*---------------------------------------------------------------------------*\ - Class LopezDeBertodano Declaration -\*---------------------------------------------------------------------------*/ - -class LopezDeBertodano -: - public turbulentDispersionModel -{ - // Private Data - - //- Constant turbulent dispersion coefficient - const dimensionedScalar Ctd_; - - -public: - - //- Runtime type information - TypeName("LopezDeBertodano"); - - - // Constructors - - //- Construct from a dictionary and a phase pair - LopezDeBertodano - ( - const dictionary& dict, - const phasePair& pair - ); - - - //- Destructor - virtual ~LopezDeBertodano(); - - - // Member Functions - - //- Turbulent diffusivity - // multiplying the gradient of the phase-fraction - virtual tmp D() const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace turbulentDispersionModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/constantTurbulentDispersionCoefficient/constantTurbulentDispersionCoefficient.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/constantTurbulentDispersionCoefficient/constantTurbulentDispersionCoefficient.C deleted file mode 100644 index 71abaca323..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/constantTurbulentDispersionCoefficient/constantTurbulentDispersionCoefficient.C +++ /dev/null @@ -1,83 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "constantTurbulentDispersionCoefficient.H" -#include "phasePair.H" -#include "PhaseCompressibleMomentumTransportModel.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace turbulentDispersionModels -{ - defineTypeNameAndDebug(constantTurbulentDispersionCoefficient, 0); - addToRunTimeSelectionTable - ( - turbulentDispersionModel, - constantTurbulentDispersionCoefficient, - dictionary - ); -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::turbulentDispersionModels::constantTurbulentDispersionCoefficient:: -constantTurbulentDispersionCoefficient -( - const dictionary& dict, - const phasePair& pair -) -: - turbulentDispersionModel(dict, pair), - Ctd_("Ctd", dimless, dict) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::turbulentDispersionModels::constantTurbulentDispersionCoefficient:: -~constantTurbulentDispersionCoefficient() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp -Foam::turbulentDispersionModels::constantTurbulentDispersionCoefficient:: -D() const -{ - return - Ctd_ - *pair_.dispersed() - *pair_.continuous().rho() - *pair_.continuous().turbulence().k(); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/constantTurbulentDispersionCoefficient/constantTurbulentDispersionCoefficient.H b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/constantTurbulentDispersionCoefficient/constantTurbulentDispersionCoefficient.H deleted file mode 100644 index f2fc12fe1d..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/constantTurbulentDispersionCoefficient/constantTurbulentDispersionCoefficient.H +++ /dev/null @@ -1,101 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2019 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::turbulentDispersionModels::constantTurbulentDispersionCoefficient - -Description - Constant coefficient turbulent dispersion model. - -SourceFiles - constantTurbulentDispersionCoefficient.C - -\*---------------------------------------------------------------------------*/ - -#ifndef constantTurbulentDispersionCoefficient_H -#define constantTurbulentDispersionCoefficient_H - -#include "turbulentDispersionModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - -class phasePair; - -namespace turbulentDispersionModels -{ - -/*---------------------------------------------------------------------------*\ - Class constantTurbulentDispersionCoefficient Declaration -\*---------------------------------------------------------------------------*/ - -class constantTurbulentDispersionCoefficient -: - public turbulentDispersionModel -{ - // Private Data - - //- Constant turbulent dispersion coefficient - const dimensionedScalar Ctd_; - - -public: - - //- Runtime type information - TypeName("constantCoefficient"); - - - // Constructors - - //- Construct from a dictionary and a phase pair - constantTurbulentDispersionCoefficient - ( - const dictionary& dict, - const phasePair& pair - ); - - - //- Destructor - virtual ~constantTurbulentDispersionCoefficient(); - - - // Member Functions - - //- Turbulent diffusivity - // multiplying the gradient of the phase-fraction - virtual tmp D() const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace turbulentDispersionModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/noTurbulentDispersion/noTurbulentDispersion.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/noTurbulentDispersion/noTurbulentDispersion.C deleted file mode 100644 index 74438c8061..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/noTurbulentDispersion/noTurbulentDispersion.C +++ /dev/null @@ -1,96 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "noTurbulentDispersion.H" -#include "phasePair.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace turbulentDispersionModels -{ - defineTypeNameAndDebug(noTurbulentDispersion, 0); - addToRunTimeSelectionTable - ( - turbulentDispersionModel, - noTurbulentDispersion, - dictionary - ); -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::turbulentDispersionModels::noTurbulentDispersion::noTurbulentDispersion -( - const dictionary& dict, - const phasePair& pair -) -: - turbulentDispersionModel(dict, pair) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::turbulentDispersionModels::noTurbulentDispersion:: -~noTurbulentDispersion() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp -Foam::turbulentDispersionModels::noTurbulentDispersion::D() const -{ - const fvMesh& mesh(this->pair_.phase1().mesh()); - - return volScalarField::New - ( - "zero", - mesh, - dimensionedScalar(dimD, 0) - ); -} - - -Foam::tmp -Foam::turbulentDispersionModels::noTurbulentDispersion::F() const -{ - const fvMesh& mesh(this->pair_.phase1().mesh()); - - return volVectorField::New - ( - "zero", - mesh, - dimensionedVector(dimF, Zero) - ); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/noTurbulentDispersion/noTurbulentDispersion.H b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/noTurbulentDispersion/noTurbulentDispersion.H deleted file mode 100644 index f0112ff4e1..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/noTurbulentDispersion/noTurbulentDispersion.H +++ /dev/null @@ -1,97 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::turbulentDispersionModels::noTurbulentDispersion - -Description - -SourceFiles - noTurbulentDispersion.C - -\*---------------------------------------------------------------------------*/ - -#ifndef noTurbulentDispersion_H -#define noTurbulentDispersion_H - -#include "turbulentDispersionModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - -class phasePair; - -namespace turbulentDispersionModels -{ - -/*---------------------------------------------------------------------------*\ - Class noTurbulentDispersion Declaration -\*---------------------------------------------------------------------------*/ - -class noTurbulentDispersion -: - public turbulentDispersionModel -{ -public: - - //- Runtime type information - TypeName("none"); - - - // Constructors - - //- Construct from a dictionary and a phase pair - noTurbulentDispersion - ( - const dictionary& dict, - const phasePair& pair - ); - - - //- Destructor - virtual ~noTurbulentDispersion(); - - - // Member Functions - - //- Turbulent diffusivity - // multiplying the gradient of the phase-fraction - virtual tmp D() const; - - //- Turbulent dispersion force - virtual tmp F() const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace turbulentDispersionModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/turbulentDispersionModel/newTurbulentDispersionModel.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/turbulentDispersionModel/newTurbulentDispersionModel.C deleted file mode 100644 index 12e3e1c3c9..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/turbulentDispersionModel/newTurbulentDispersionModel.C +++ /dev/null @@ -1,60 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "turbulentDispersionModel.H" -#include "phasePair.H" - -// * * * * * * * * * * * * * * * * Selector * * * * * * * * * * * * * * * * // - -Foam::autoPtr -Foam::turbulentDispersionModel::New -( - const dictionary& dict, - const phasePair& pair -) -{ - word turbulentDispersionModelType(dict.lookup("type")); - - Info<< "Selecting turbulentDispersionModel for " - << pair << ": " << turbulentDispersionModelType << endl; - - dictionaryConstructorTable::iterator cstrIter = - dictionaryConstructorTablePtr_->find(turbulentDispersionModelType); - - if (cstrIter == dictionaryConstructorTablePtr_->end()) - { - FatalErrorInFunction - << "Unknown turbulentDispersionModelType type " - << turbulentDispersionModelType << endl << endl - << "Valid turbulentDispersionModel types are : " << endl - << dictionaryConstructorTablePtr_->sortedToc() - << exit(FatalError); - } - - return cstrIter()(dict, pair); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/turbulentDispersionModel/turbulentDispersionModel.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/turbulentDispersionModel/turbulentDispersionModel.C deleted file mode 100644 index 2ef85084e2..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/turbulentDispersionModel/turbulentDispersionModel.C +++ /dev/null @@ -1,69 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "turbulentDispersionModel.H" -#include "phasePair.H" -#include "fvcGrad.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ - defineTypeNameAndDebug(turbulentDispersionModel, 0); - defineRunTimeSelectionTable(turbulentDispersionModel, dictionary); -} - -const Foam::dimensionSet Foam::turbulentDispersionModel::dimD(1, -1, -2, 0, 0); -const Foam::dimensionSet Foam::turbulentDispersionModel::dimF(1, -2, -2, 0, 0); - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::turbulentDispersionModel::turbulentDispersionModel -( - const dictionary& dict, - const phasePair& pair -) -: - pair_(pair) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::turbulentDispersionModel::~turbulentDispersionModel() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp -Foam::turbulentDispersionModel::F() const -{ - return D()*fvc::grad(pair_.dispersed()); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/turbulentDispersionModel/turbulentDispersionModel.H b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/turbulentDispersionModel/turbulentDispersionModel.H deleted file mode 100644 index 5c35876839..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/turbulentDispersionModel/turbulentDispersionModel.H +++ /dev/null @@ -1,134 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2019 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::turbulentDispersionModel - -Description - -SourceFiles - turbulentDispersionModel.C - newTurbulentDispersionModel.C - -\*---------------------------------------------------------------------------*/ - -#ifndef turbulentDispersionModel_H -#define turbulentDispersionModel_H - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "volFields.H" -#include "dictionary.H" -#include "runTimeSelectionTables.H" - -namespace Foam -{ - -class phasePair; - -/*---------------------------------------------------------------------------*\ - Class turbulentDispersionModel Declaration -\*---------------------------------------------------------------------------*/ - -class turbulentDispersionModel -{ -protected: - - // Protected data - - //- Phase pair - const phasePair& pair_; - - -public: - - //- Runtime type information - TypeName("turbulentDispersionModel"); - - - // Declare runtime construction - - declareRunTimeSelectionTable - ( - autoPtr, - turbulentDispersionModel, - dictionary, - ( - const dictionary& dict, - const phasePair& pair - ), - (dict, pair) - ); - - // Static Data Members - - //- Diffusivity dimensions - static const dimensionSet dimD; - - //- Force dimensions - static const dimensionSet dimF; - - - // Constructors - - //- Construct from a dictionary and a phase pair - turbulentDispersionModel - ( - const dictionary& dict, - const phasePair& pair - ); - - - //- Destructor - virtual ~turbulentDispersionModel(); - - - // Selectors - - static autoPtr New - ( - const dictionary& dict, - const phasePair& pair - ); - - - // Member Functions - - //- Turbulent diffusivity - // multiplying the gradient of the phase-fraction - virtual tmp D() const = 0; - - //- Turbulent dispersion force - virtual tmp F() const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/virtualMassModels/Lamb/Lamb.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/virtualMassModels/Lamb/Lamb.C deleted file mode 100644 index 8ce1f38980..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/virtualMassModels/Lamb/Lamb.C +++ /dev/null @@ -1,79 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "Lamb.H" -#include "phasePair.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace virtualMassModels -{ - defineTypeNameAndDebug(Lamb, 0); - addToRunTimeSelectionTable - ( - virtualMassModel, - Lamb, - dictionary - ); -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::virtualMassModels::Lamb::Lamb -( - const dictionary& dict, - const phasePair& pair, - const bool registerObject -) -: - virtualMassModel(dict, pair, registerObject) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::virtualMassModels::Lamb::~Lamb() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp Foam::virtualMassModels::Lamb::Cvm() const -{ - volScalarField E(min(max(pair_.E(), small), 1 - small)); - volScalarField rtOmEsq(sqrt(1 - sqr(E))); - - return - (rtOmEsq - E*acos(E)) - /(E*acos(E) - sqr(E)*rtOmEsq); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/virtualMassModels/Lamb/Lamb.H b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/virtualMassModels/Lamb/Lamb.H deleted file mode 100644 index bc2dff3261..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/virtualMassModels/Lamb/Lamb.H +++ /dev/null @@ -1,102 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::virtualMassModels::Lamb - -Description - Virtual mass model of Lamb. - - Reference: - \verbatim - "Hydrodynamics" - Lamb, H., - Cambridge University Press, 1895 - \endverbatim - -SourceFiles - Lamb.C - -\*---------------------------------------------------------------------------*/ - -#ifndef Lamb_H -#define Lamb_H - -#include "virtualMassModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - -class phasePair; - -namespace virtualMassModels -{ - -/*---------------------------------------------------------------------------*\ - Class Lamb Declaration -\*---------------------------------------------------------------------------*/ - -class Lamb -: - public virtualMassModel -{ -public: - - //- Runtime type information - TypeName("Lamb"); - - - // Constructors - - //- Construct from a dictionary and a phase pair - Lamb - ( - const dictionary& dict, - const phasePair& pair, - const bool registerObject - ); - - - //- Destructor - virtual ~Lamb(); - - - // Member Functions - - //- Virtual mass coefficient - virtual tmp Cvm() const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace virtualMassModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/virtualMassModels/constantVirtualMassCoefficient/constantVirtualMassCoefficient.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/virtualMassModels/constantVirtualMassCoefficient/constantVirtualMassCoefficient.C deleted file mode 100644 index a5ddc6abe6..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/virtualMassModels/constantVirtualMassCoefficient/constantVirtualMassCoefficient.C +++ /dev/null @@ -1,85 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "constantVirtualMassCoefficient.H" -#include "phasePair.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace virtualMassModels -{ - defineTypeNameAndDebug(constantVirtualMassCoefficient, 0); - addToRunTimeSelectionTable - ( - virtualMassModel, - constantVirtualMassCoefficient, - dictionary - ); -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::virtualMassModels::constantVirtualMassCoefficient:: -constantVirtualMassCoefficient -( - const dictionary& dict, - const phasePair& pair, - const bool registerObject -) -: - virtualMassModel(dict, pair, registerObject), - Cvm_("Cvm", dimless, dict) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::virtualMassModels::constantVirtualMassCoefficient:: -~constantVirtualMassCoefficient() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp -Foam::virtualMassModels::constantVirtualMassCoefficient::Cvm() const -{ - const fvMesh& mesh(this->pair_.phase1().mesh()); - - return volScalarField::New - ( - "Cvm", - mesh, - Cvm_ - ); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/virtualMassModels/constantVirtualMassCoefficient/constantVirtualMassCoefficient.H b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/virtualMassModels/constantVirtualMassCoefficient/constantVirtualMassCoefficient.H deleted file mode 100644 index a433b4cca1..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/virtualMassModels/constantVirtualMassCoefficient/constantVirtualMassCoefficient.H +++ /dev/null @@ -1,101 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2019 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::virtualMassModels::constantVirtualMassCoefficient - -Description - Constant coefficient virtual mass model. - -SourceFiles - constantVirtualMassCoefficient.C - -\*---------------------------------------------------------------------------*/ - -#ifndef constantVirtualMassCoefficient_H -#define constantVirtualMassCoefficient_H - -#include "virtualMassModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - -class phasePair; - -namespace virtualMassModels -{ - -/*---------------------------------------------------------------------------*\ - Class constantVirtualMassCoefficient Declaration -\*---------------------------------------------------------------------------*/ - -class constantVirtualMassCoefficient -: - public virtualMassModel -{ - // Private Data - - //- Constant virtual mass coefficient - const dimensionedScalar Cvm_; - - -public: - - //- Runtime type information - TypeName("constantCoefficient"); - - - // Constructors - - //- Construct from a dictionary and a phase pair - constantVirtualMassCoefficient - ( - const dictionary& dict, - const phasePair& pair, - const bool registerObject - ); - - - //- Destructor - virtual ~constantVirtualMassCoefficient(); - - - // Member Functions - - //- Virtual mass coefficient - virtual tmp Cvm() const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace virtualMassModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/virtualMassModels/noVirtualMass/noVirtualMass.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/virtualMassModels/noVirtualMass/noVirtualMass.C deleted file mode 100644 index ce8bf6c193..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/virtualMassModels/noVirtualMass/noVirtualMass.C +++ /dev/null @@ -1,84 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "noVirtualMass.H" -#include "phasePair.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace virtualMassModels -{ - defineTypeNameAndDebug(noVirtualMass, 0); - addToRunTimeSelectionTable(virtualMassModel, noVirtualMass, dictionary); -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::virtualMassModels::noVirtualMass::noVirtualMass -( - const dictionary& dict, - const phasePair& pair, - const bool registerObject -) -: - virtualMassModel(dict, pair, registerObject) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::virtualMassModels::noVirtualMass::~noVirtualMass() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp -Foam::virtualMassModels::noVirtualMass::Cvm() const -{ - const fvMesh& mesh(this->pair_.phase1().mesh()); - - return volScalarField::New - ( - "zero", - mesh, - dimensionedScalar(dimless, 0) - ); -} - - -Foam::tmp -Foam::virtualMassModels::noVirtualMass::K() const -{ - return Cvm()*dimensionedScalar(dimDensity, 0); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/virtualMassModels/noVirtualMass/noVirtualMass.H b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/virtualMassModels/noVirtualMass/noVirtualMass.H deleted file mode 100644 index ebf06422bd..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/virtualMassModels/noVirtualMass/noVirtualMass.H +++ /dev/null @@ -1,97 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::virtualMassModels::noVirtualMass - -Description - -SourceFiles - noVirtualMass.C - -\*---------------------------------------------------------------------------*/ - -#ifndef noVirtualMass_H -#define noVirtualMass_H - -#include "virtualMassModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - -class phasePair; - -namespace virtualMassModels -{ - -/*---------------------------------------------------------------------------*\ - Class noVirtualMass Declaration -\*---------------------------------------------------------------------------*/ - -class noVirtualMass -: - public virtualMassModel -{ -public: - - //- Runtime type information - TypeName("none"); - - - // Constructors - - //- Construct from a dictionary and a phase pair - noVirtualMass - ( - const dictionary& dict, - const phasePair& pair, - const bool registerObject - ); - - - //- Destructor - virtual ~noVirtualMass(); - - - // Member Functions - - //- Virtual mass coefficient - virtual tmp Cvm() const; - - //- The virtual mass function K used in the momentum equation - virtual tmp K() const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace virtualMassModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/virtualMassModels/virtualMassModel/newVirtualMassModel.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/virtualMassModels/virtualMassModel/newVirtualMassModel.C deleted file mode 100644 index 84e48a035b..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/virtualMassModels/virtualMassModel/newVirtualMassModel.C +++ /dev/null @@ -1,59 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "virtualMassModel.H" -#include "phasePair.H" - -// * * * * * * * * * * * * * * * * Selector * * * * * * * * * * * * * * * * // - -Foam::autoPtr Foam::virtualMassModel::New -( - const dictionary& dict, - const phasePair& pair -) -{ - word virtualMassModelType(dict.lookup("type")); - - Info<< "Selecting virtualMassModel for " - << pair << ": " << virtualMassModelType << endl; - - dictionaryConstructorTable::iterator cstrIter = - dictionaryConstructorTablePtr_->find(virtualMassModelType); - - if (cstrIter == dictionaryConstructorTablePtr_->end()) - { - FatalErrorInFunction - << "Unknown virtualMassModelType type " - << virtualMassModelType << endl << endl - << "Valid virtualMassModel types are : " << endl - << dictionaryConstructorTablePtr_->sortedToc() - << exit(FatalError); - } - - return cstrIter()(dict, pair, true); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/virtualMassModels/virtualMassModel/virtualMassModel.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/virtualMassModels/virtualMassModel/virtualMassModel.C deleted file mode 100644 index 00d67e8e21..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/virtualMassModels/virtualMassModel/virtualMassModel.C +++ /dev/null @@ -1,99 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "virtualMassModel.H" -#include "phasePair.H" -#include "surfaceInterpolate.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ - defineTypeNameAndDebug(virtualMassModel, 0); - defineRunTimeSelectionTable(virtualMassModel, dictionary); -} - -const Foam::dimensionSet Foam::virtualMassModel::dimK(dimDensity); - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::virtualMassModel::virtualMassModel -( - const dictionary& dict, - const phasePair& pair, - const bool registerObject -) -: - regIOobject - ( - IOobject - ( - IOobject::groupName(typeName, pair.name()), - pair.phase1().mesh().time().timeName(), - pair.phase1().mesh(), - IOobject::NO_READ, - IOobject::NO_WRITE, - registerObject - ) - ), - pair_(pair) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::virtualMassModel::~virtualMassModel() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp Foam::virtualMassModel::Ki() const -{ - return Cvm()*pair_.continuous().rho(); -} - - -Foam::tmp Foam::virtualMassModel::K() const -{ - return pair_.dispersed()*Ki(); -} - - -Foam::tmp Foam::virtualMassModel::Kf() const -{ - return - fvc::interpolate(pair_.dispersed())*fvc::interpolate(Ki()); -} - - -bool Foam::virtualMassModel::writeData(Ostream& os) const -{ - return os.good(); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/virtualMassModels/virtualMassModel/virtualMassModel.H b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/virtualMassModels/virtualMassModel/virtualMassModel.H deleted file mode 100644 index c71e74418d..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/virtualMassModels/virtualMassModel/virtualMassModel.H +++ /dev/null @@ -1,151 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2019 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::virtualMassModel - -Description - -SourceFiles - virtualMassModel.C - newVirtualMassModel.C - -\*---------------------------------------------------------------------------*/ - -#ifndef virtualMassModel_H -#define virtualMassModel_H - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "volFields.H" -#include "dictionary.H" -#include "runTimeSelectionTables.H" - -namespace Foam -{ - -class phasePair; - -/*---------------------------------------------------------------------------*\ - Class virtualMassModel Declaration -\*---------------------------------------------------------------------------*/ - -class virtualMassModel -: - public regIOobject -{ -protected: - - // Protected data - - //- Phase pair - const phasePair& pair_; - - -public: - - //- Runtime type information - TypeName("virtualMassModel"); - - - // Declare runtime construction - - declareRunTimeSelectionTable - ( - autoPtr, - virtualMassModel, - dictionary, - ( - const dictionary& dict, - const phasePair& pair, - const bool registerObject - ), - (dict, pair, registerObject) - ); - - - // Static Data Members - - //- Coefficient dimensions - static const dimensionSet dimK; - - - // Constructors - - //- Construct from a dictionary and a phase pair - virtualMassModel - ( - const dictionary& dict, - const phasePair& pair, - const bool registerObject - ); - - - //- Destructor - virtual ~virtualMassModel(); - - - // Selectors - - static autoPtr New - ( - const dictionary& dict, - const phasePair& pair - ); - - - // Member Functions - - //- Return the virtual mass coefficient - virtual tmp Cvm() const = 0; - - //- Return the phase-intensive virtual mass coefficient Ki - // used in the momentum equation - // ddt(alpha1*rho1*U1) + ... = ... alphad*K*(DU1_Dt - DU2_Dt) - // ddt(alpha2*rho2*U2) + ... = ... alphad*K*(DU1_Dt - DU2_Dt) - virtual tmp Ki() const; - - //- Return the virtual mass coefficient K - // used in the momentum equation - // ddt(alpha1*rho1*U1) + ... = ... K*(DU1_Dt - DU2_Dt) - // ddt(alpha2*rho2*U2) + ... = ... K*(DU1_Dt - DU2_Dt) - virtual tmp K() const; - - //- Return the virtual mass coefficient Kf - // used in the face-momentum equations - virtual tmp Kf() const; - - // Dummy write for regIOobject - bool writeData(Ostream& os) const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/wallDependentModel/wallDependentModel.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/wallDependentModel/wallDependentModel.C deleted file mode 100644 index 2d5ce58bed..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/wallDependentModel/wallDependentModel.C +++ /dev/null @@ -1,57 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "wallDependentModel.H" -#include "wallDist.H" - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::wallDependentModel::wallDependentModel(const fvMesh& mesh) -: - mesh_(mesh) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::wallDependentModel::~wallDependentModel() -{} - - -// * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * * // - -const Foam::volScalarField& Foam::wallDependentModel::yWall() const -{ - return wallDist::New(mesh_).y(); -} - - -const Foam::volVectorField& Foam::wallDependentModel::nWall() const -{ - return wallDist::New(mesh_).n(); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/wallDependentModel/wallDependentModel.H b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/wallDependentModel/wallDependentModel.H deleted file mode 100644 index f4f3de5ba4..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/wallDependentModel/wallDependentModel.H +++ /dev/null @@ -1,97 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2019 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::wallDependentModel - -Description - A class which provides on-demand creation and caching of wall distance and - wall normal fields for use by multiple models. - -SourceFiles - wallDependentModel.C - -\*---------------------------------------------------------------------------*/ - -#ifndef wallDependentModel_H -#define wallDependentModel_H - -#include "fvMesh.H" -#include "volFields.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - -/*---------------------------------------------------------------------------*\ - Class wallDependentModel Declaration -\*---------------------------------------------------------------------------*/ - -class wallDependentModel -{ - // Private Data - - //- Reference to the mesh - const fvMesh& mesh_; - - -public: - - // Constructors - - //- Construct from a mesh - wallDependentModel(const fvMesh& mesh); - - //- Disallow default bitwise copy construction - wallDependentModel(const wallDependentModel&) = delete; - - - //- Destructor - virtual ~wallDependentModel(); - - // Member Functions - - // Return the wall distance, creating and storing it if necessary - const volScalarField& yWall() const; - - // Return the wall normal, creating and storing it if necessary - const volVectorField& nWall() const; - - - // Member Operators - - //- Disallow default bitwise assignment - void operator=(const wallDependentModel&) = delete; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/wallLubricationModels/Antal/Antal.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/wallLubricationModels/Antal/Antal.C deleted file mode 100644 index 600cb8c12a..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/wallLubricationModels/Antal/Antal.C +++ /dev/null @@ -1,87 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "Antal.H" -#include "phasePair.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace wallLubricationModels -{ - defineTypeNameAndDebug(Antal, 0); - addToRunTimeSelectionTable - ( - wallLubricationModel, - Antal, - dictionary - ); -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::wallLubricationModels::Antal::Antal -( - const dictionary& dict, - const phasePair& pair -) -: - wallLubricationModel(dict, pair), - Cw1_("Cw1", dimless, dict), - Cw2_("Cw2", dimless, dict) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::wallLubricationModels::Antal::~Antal() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp Foam::wallLubricationModels::Antal::Fi() const -{ - volVectorField Ur(pair_.Ur()); - - const volVectorField& n(nWall()); - - return - max - ( - dimensionedScalar(dimless/dimLength, 0), - Cw1_/pair_.dispersed().d() + Cw2_/yWall() - ) - *pair_.continuous().rho() - *magSqr(Ur - (Ur & n)*n) - *n; -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/wallLubricationModels/Antal/Antal.H b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/wallLubricationModels/Antal/Antal.H deleted file mode 100644 index fc5d344fd6..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/wallLubricationModels/Antal/Antal.H +++ /dev/null @@ -1,112 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2019 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::wallLubricationModels::Antal - -Description - Wall lubrication model of Antal et al. - - Reference: - \verbatim - "Analysis of phase distribution in fully developed laminar bubbly - two-phase flow" - Antal, S.P., Lahey Jr, R.T., and Flaherty, J.E. - International Journal of Multiphase Flow - Volume 17, Issue 5, September 1991, pp. 635-652 - \endverbatim - -SourceFiles - Antal.C - -\*---------------------------------------------------------------------------*/ - -#ifndef Antal_H -#define Antal_H - -#include "wallLubricationModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - -class phasePair; - -namespace wallLubricationModels -{ - -/*---------------------------------------------------------------------------*\ - Class Antal Declaration -\*---------------------------------------------------------------------------*/ - -class Antal -: - public wallLubricationModel -{ - // Private Data - - //- Coefficient 1 - const dimensionedScalar Cw1_; - - //- Coefficient 2 - const dimensionedScalar Cw2_; - - -public: - - //- Runtime type information - TypeName("Antal"); - - - // Constructors - - //- Construct from components - Antal - ( - const dictionary& dict, - const phasePair& pair - ); - - - //- Destructor - virtual ~Antal(); - - - // Member Functions - - //- Return phase-intensive wall lubrication force - tmp Fi() const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace wallLubricationModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/wallLubricationModels/Frank/Frank.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/wallLubricationModels/Frank/Frank.C deleted file mode 100644 index 8390add5fa..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/wallLubricationModels/Frank/Frank.C +++ /dev/null @@ -1,97 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2019 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "Frank.H" -#include "phasePair.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace wallLubricationModels -{ - defineTypeNameAndDebug(Frank, 0); - addToRunTimeSelectionTable - ( - wallLubricationModel, - Frank, - dictionary - ); -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::wallLubricationModels::Frank::Frank -( - const dictionary& dict, - const phasePair& pair -) -: - wallLubricationModel(dict, pair), - Cwd_("Cwd", dimless, dict), - Cwc_("Cwc", dimless, dict), - p_(dict.lookup("p")) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::wallLubricationModels::Frank::~Frank() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp Foam::wallLubricationModels::Frank::Fi() const -{ - volVectorField Ur(pair_.Ur()); - - const volVectorField& n(nWall()); - const volScalarField& y(yWall()); - - volScalarField Eo(pair_.Eo()); - volScalarField yTilde(y/(Cwc_*pair_.dispersed().d())); - - return - ( - pos0(Eo - 1.0)*neg(Eo - 5.0)*exp(-0.933*Eo + 0.179) - + pos0(Eo - 5.0)*neg(Eo - 33.0)*(0.00599*Eo - 0.0187) - + pos0(Eo - 33.0)*0.179 - ) - *max - ( - dimensionedScalar(dimless/dimLength, 0), - (1.0 - yTilde)/(Cwd_*y*pow(yTilde, p_ - 1.0)) - ) - *pair_.continuous().rho() - *magSqr(Ur - (Ur & n)*n) - *n; -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/wallLubricationModels/Frank/Frank.H b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/wallLubricationModels/Frank/Frank.H deleted file mode 100644 index d8aea86da5..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/wallLubricationModels/Frank/Frank.H +++ /dev/null @@ -1,122 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2019 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::wallLubricationModels::Frank - -Description - Wall lubrication model of Frank. - - References: - \verbatim - "Implementation and Comparison of Correlations for interfacial Forces - in a Gas-Liquid System within an Euler-Euler Framework" - Otromke, M. - PhD Thesis - April 2013 - \endverbatim - - \verbatim - "Advances in Computational Fluid Dynamics (CFD) of 3-dimensional Gas- - Liquid Multiphase Flows" - Frank, T. - NAFEMS Seminar: Simulation of Complex Flows (CFD), April 2005, pp. 1-18 - \endverbatim - -SourceFiles - Frank.C - -\*---------------------------------------------------------------------------*/ - -#ifndef Frank_H -#define Frank_H - -#include "wallLubricationModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - -class phasePair; - -namespace wallLubricationModels -{ - -/*---------------------------------------------------------------------------*\ - Class Frank Declaration -\*---------------------------------------------------------------------------*/ - -class Frank -: - public wallLubricationModel -{ - // Private Data - - //- Coefficient d - const dimensionedScalar Cwd_; - - //- Coefficient c - const dimensionedScalar Cwc_; - - //- Power p - const scalar p_; - - -public: - - //- Runtime type information - TypeName("Frank"); - - - // Constructors - - //- Construct from components - Frank - ( - const dictionary& dict, - const phasePair& pair - ); - - - //- Destructor - virtual ~Frank(); - - - // Member Functions - - //- Return phase-intensive wall lubrication force - tmp Fi() const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace wallLubricationModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/wallLubricationModels/TomiyamaWallLubrication/TomiyamaWallLubrication.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/wallLubricationModels/TomiyamaWallLubrication/TomiyamaWallLubrication.C deleted file mode 100644 index 1624736b7c..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/wallLubricationModels/TomiyamaWallLubrication/TomiyamaWallLubrication.C +++ /dev/null @@ -1,96 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "TomiyamaWallLubrication.H" -#include "phasePair.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace wallLubricationModels -{ - defineTypeNameAndDebug(TomiyamaWallLubrication, 0); - addToRunTimeSelectionTable - ( - wallLubricationModel, - TomiyamaWallLubrication, - dictionary - ); -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::wallLubricationModels::TomiyamaWallLubrication::TomiyamaWallLubrication -( - const dictionary& dict, - const phasePair& pair -) -: - wallLubricationModel(dict, pair), - D_("Cwd", dimLength, dict) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::wallLubricationModels::TomiyamaWallLubrication::~TomiyamaWallLubrication() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp -Foam::wallLubricationModels::TomiyamaWallLubrication::Fi() const -{ - volVectorField Ur(pair_.Ur()); - - const volVectorField& n(nWall()); - const volScalarField& y(yWall()); - - volScalarField Eo(pair_.Eo()); - - return - ( - pos0(Eo - 1.0)*neg(Eo - 5.0)*exp(-0.933*Eo + 0.179) - + pos0(Eo - 5.0)*neg(Eo - 33.0)*(0.00599*Eo - 0.0187) - + pos0(Eo - 33.0)*0.179 - ) - *0.5 - *pair_.dispersed().d() - *( - 1/sqr(y) - - 1/sqr(D_ - y) - ) - *pair_.continuous().rho() - *magSqr(Ur - (Ur & n)*n) - *n; -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/wallLubricationModels/TomiyamaWallLubrication/TomiyamaWallLubrication.H b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/wallLubricationModels/TomiyamaWallLubrication/TomiyamaWallLubrication.H deleted file mode 100644 index e50691fe1a..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/wallLubricationModels/TomiyamaWallLubrication/TomiyamaWallLubrication.H +++ /dev/null @@ -1,115 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2019 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::wallLubricationModels::TomiyamaWallLubrication - -Description - Wall lubrication model of Tomiyama. - - References: - \verbatim - "Implementation and Comparison of Correlations for interfacial Forces - in a Gas-Liquid System within an Euler-Euler Framework" - Otromke, M. - PhD Thesis, April 2013 - \endverbatim - - \verbatim - "Struggle with Computational Bubble Dynamics" - Tomiyama, A., - Multiphase Science and Technology - Volume 10, Issue 4, 1998, pp. 369-405 - \endverbatim - -SourceFiles - TomiyamaWallLubrication.C - -\*---------------------------------------------------------------------------*/ - -#ifndef TomiyamaWallLubrication_H -#define TomiyamaWallLubrication_H - -#include "wallLubricationModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - -class phasePair; - -namespace wallLubricationModels -{ - -/*---------------------------------------------------------------------------*\ - Class TomiyamaWallLubrication Declaration -\*---------------------------------------------------------------------------*/ - -class TomiyamaWallLubrication -: - public wallLubricationModel -{ - // Private Data - - //- Characteristic channel dimension - const dimensionedScalar D_; - - -public: - - //- Runtime type information - TypeName("Tomiyama"); - - - // Constructors - - //- Construct from components - TomiyamaWallLubrication - ( - const dictionary& dict, - const phasePair& pair - ); - - - //- Destructor - virtual ~TomiyamaWallLubrication(); - - - // Member Functions - - //- Return phase-intensive wall lubrication force - tmp Fi() const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace wallLubricationModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/wallLubricationModels/noWallLubrication/noWallLubrication.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/wallLubricationModels/noWallLubrication/noWallLubrication.C deleted file mode 100644 index dd62683b65..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/wallLubricationModels/noWallLubrication/noWallLubrication.C +++ /dev/null @@ -1,95 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "noWallLubrication.H" -#include "phasePair.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace wallLubricationModels -{ - defineTypeNameAndDebug(noWallLubrication, 0); - addToRunTimeSelectionTable - ( - wallLubricationModel, - noWallLubrication, - dictionary - ); -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::wallLubricationModels::noWallLubrication::noWallLubrication -( - const dictionary& dict, - const phasePair& pair -) -: - wallLubricationModel(dict, pair) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::wallLubricationModels::noWallLubrication::~noWallLubrication() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp -Foam::wallLubricationModels::noWallLubrication::Fi() const -{ - const fvMesh& mesh(this->pair_.phase1().mesh()); - - return volVectorField::New - ( - "noWallLubrication:Fi", - mesh, - dimensionedVector(dimF, Zero) - ); -} - - -Foam::tmp -Foam::wallLubricationModels::noWallLubrication::F() const -{ - const fvMesh& mesh(this->pair_.phase1().mesh()); - - return volVectorField::New - ( - "noWallLubrication:F", - mesh, - dimensionedVector(dimF, Zero) - ); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/wallLubricationModels/noWallLubrication/noWallLubrication.H b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/wallLubricationModels/noWallLubrication/noWallLubrication.H deleted file mode 100644 index f7a47a0197..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/wallLubricationModels/noWallLubrication/noWallLubrication.H +++ /dev/null @@ -1,96 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::wallLubricationModels::noWallLubrication - -Description - -SourceFiles - noWallLubrication.C - -\*---------------------------------------------------------------------------*/ - -#ifndef noWallLubrication_H -#define noWallLubrication_H - -#include "wallLubricationModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - -class phasePair; - -namespace wallLubricationModels -{ - -/*---------------------------------------------------------------------------*\ - Class noWallLubrication Declaration -\*---------------------------------------------------------------------------*/ - -class noWallLubrication -: - public wallLubricationModel -{ -public: - - //- Runtime type information - TypeName("none"); - - - // Constructors - - //- Construct from components - noWallLubrication - ( - const dictionary& dict, - const phasePair& pair - ); - - - //- Destructor - virtual ~noWallLubrication(); - - - // Member Functions - - //- Return phase-intensive wall lubrication force - tmp Fi() const; - - //- Wall lubrication force - tmp F() const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace wallLubricationModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/wallLubricationModels/wallLubricationModel/newWallLubricationModel.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/wallLubricationModels/wallLubricationModel/newWallLubricationModel.C deleted file mode 100644 index d444a95914..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/wallLubricationModels/wallLubricationModel/newWallLubricationModel.C +++ /dev/null @@ -1,59 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "wallLubricationModel.H" -#include "phasePair.H" - -// * * * * * * * * * * * * * * * * Selector * * * * * * * * * * * * * * * * // - -Foam::autoPtr Foam::wallLubricationModel::New -( - const dictionary& dict, - const phasePair& pair -) -{ - word wallLubricationModelType(dict.lookup("type")); - - Info<< "Selecting wallLubricationModel for " - << pair << ": " << wallLubricationModelType << endl; - - dictionaryConstructorTable::iterator cstrIter = - dictionaryConstructorTablePtr_->find(wallLubricationModelType); - - if (cstrIter == dictionaryConstructorTablePtr_->end()) - { - FatalErrorInFunction - << "Unknown wallLubricationModelType type " - << wallLubricationModelType << endl << endl - << "Valid wallLubricationModel types are : " << endl - << dictionaryConstructorTablePtr_->sortedToc() - << exit(FatalError); - } - - return cstrIter()(dict, pair); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/wallLubricationModels/wallLubricationModel/wallLubricationModel.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/wallLubricationModels/wallLubricationModel/wallLubricationModel.C deleted file mode 100644 index b982c8228b..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/wallLubricationModels/wallLubricationModel/wallLubricationModel.C +++ /dev/null @@ -1,75 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "wallLubricationModel.H" -#include "phasePair.H" -#include "fvcFlux.H" -#include "surfaceInterpolate.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ - defineTypeNameAndDebug(wallLubricationModel, 0); - defineRunTimeSelectionTable(wallLubricationModel, dictionary); -} - -const Foam::dimensionSet Foam::wallLubricationModel::dimF(1, -2, -2, 0, 0); - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::wallLubricationModel::wallLubricationModel -( - const dictionary& dict, - const phasePair& pair -) -: - wallDependentModel(pair.phase1().mesh()), - pair_(pair) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::wallLubricationModel::~wallLubricationModel() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp Foam::wallLubricationModel::F() const -{ - return pair_.dispersed()*Fi(); -} - - -Foam::tmp Foam::wallLubricationModel::Ff() const -{ - return fvc::interpolate(pair_.dispersed())*fvc::flux(Fi()); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/wallLubricationModels/wallLubricationModel/wallLubricationModel.H b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/wallLubricationModels/wallLubricationModel/wallLubricationModel.H deleted file mode 100644 index a5795f1a7f..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/wallLubricationModels/wallLubricationModel/wallLubricationModel.H +++ /dev/null @@ -1,137 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2019 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::wallLubricationModel - -Description - -SourceFiles - wallLubricationModel.C - newWallLubricationModel.C - -\*---------------------------------------------------------------------------*/ - -#ifndef wallLubricationModel_H -#define wallLubricationModel_H - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "wallDependentModel.H" -#include "volFields.H" -#include "dictionary.H" -#include "runTimeSelectionTables.H" - -namespace Foam -{ - -class phasePair; - -/*---------------------------------------------------------------------------*\ - Class wallLubricationModel Declaration -\*---------------------------------------------------------------------------*/ - -class wallLubricationModel -: - public wallDependentModel -{ -protected: - - // Protected data - - //- Phase pair - const phasePair& pair_; - - -public: - - //- Runtime type information - TypeName("wallLubricationModel"); - - - // Declare runtime construction - - declareRunTimeSelectionTable - ( - autoPtr, - wallLubricationModel, - dictionary, - ( - const dictionary& dict, - const phasePair& pair - ), - (dict, pair) - ); - - - // Static Data Members - - //- Coefficient dimensions - static const dimensionSet dimF; - - - // Constructors - - //- Construct from components - wallLubricationModel - ( - const dictionary& dict, - const phasePair& pair - ); - - - //- Destructor - virtual ~wallLubricationModel(); - - - // Selectors - - static autoPtr New - ( - const dictionary& dict, - const phasePair& pair - ); - - - // Member Functions - - //- Return phase-intensive wall lubrication force - virtual tmp Fi() const = 0; - - //- Return wall lubrication force - virtual tmp F() const; - - //- Return face wall lubrication force - virtual tmp Ff() const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/pU/DDtU.H b/applications/solvers/multiphase/twoPhaseEulerFoam/pU/DDtU.H deleted file mode 100644 index 0ade723a3b..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/pU/DDtU.H +++ /dev/null @@ -1,13 +0,0 @@ -{ - DDtU1 = - fvc::ddt(U1) - + fvc::div(phi1, U1) - - fvc::div(phi1)*U1; - MRF.addAcceleration(U1, DDtU1); - - DDtU2 = - fvc::ddt(U2) - + fvc::div(phi2, U2) - - fvc::div(phi2)*U2; - MRF.addAcceleration(U2, DDtU2); -} diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/pU/UEqns.H b/applications/solvers/multiphase/twoPhaseEulerFoam/pU/UEqns.H deleted file mode 100644 index 051ea5f814..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/pU/UEqns.H +++ /dev/null @@ -1,62 +0,0 @@ -Info<< "Constructing momentum equations" << endl; - -MRF.correctBoundaryVelocity(U1); -MRF.correctBoundaryVelocity(U2); -MRF.correctBoundaryVelocity(U); - -fvVectorMatrix U1Eqn(U1, rho1.dimensions()*U1.dimensions()*dimVol/dimTime); -fvVectorMatrix U2Eqn(U2, rho2.dimensions()*U2.dimensions()*dimVol/dimTime); - -volScalarField Kd(fluid.Kd()); - -{ - volScalarField Vm(fluid.Vm()); - - { - U1Eqn = - ( - fvm::ddt(alpha1, rho1, U1) + fvm::div(alphaRhoPhi1, U1) - - fvm::Sp(contErr1, U1) - + MRF.DDt(alpha1*rho1 + Vm, U1) - + phase1.turbulence().divDevTau(U1) - == - - Vm - *( - fvm::ddt(U1) - + fvm::div(phi1, U1) - - fvm::Sp(fvc::div(phi1), U1) - - DDtU2 - ) - + fvOptions(alpha1, rho1, U1) - ); - U1Eqn.relax(); - U1Eqn += fvm::Sp(Kd, U1); - fvOptions.constrain(U1Eqn); - U1.correctBoundaryConditions(); - fvOptions.correct(U1); - } - - { - U2Eqn = - ( - fvm::ddt(alpha2, rho2, U2) + fvm::div(alphaRhoPhi2, U2) - - fvm::Sp(contErr2, U2) - + MRF.DDt(alpha2*rho2 + Vm, U2) - + phase2.turbulence().divDevTau(U2) - == - - Vm - *( - fvm::ddt(U2) - + fvm::div(phi2, U2) - - fvm::Sp(fvc::div(phi2), U2) - - DDtU1 - ) - + fvOptions(alpha2, rho2, U2) - ); - U2Eqn.relax(); - U2Eqn += fvm::Sp(Kd, U2); - fvOptions.constrain(U2Eqn); - U2.correctBoundaryConditions(); - fvOptions.correct(U2); - } -} diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/pU/createDDtU.H b/applications/solvers/multiphase/twoPhaseEulerFoam/pU/createDDtU.H deleted file mode 100644 index f71a265817..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/pU/createDDtU.H +++ /dev/null @@ -1,17 +0,0 @@ - Info<< "Calculating field DDtU1 and DDtU2\n" << endl; - - volVectorField DDtU1 - ( - "DDtU1", - fvc::ddt(U1) - + fvc::div(phi1, U1) - - fvc::div(phi1)*U1 - ); - - volVectorField DDtU2 - ( - "DDtU2", - fvc::ddt(U2) - + fvc::div(phi2, U2) - - fvc::div(phi2)*U2 - ); diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/pU/pEqn.H b/applications/solvers/multiphase/twoPhaseEulerFoam/pU/pEqn.H deleted file mode 100644 index c5fd85ad7f..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/pU/pEqn.H +++ /dev/null @@ -1,415 +0,0 @@ -surfaceScalarField alphaf1("alphaf1", fvc::interpolate(alpha1)); -surfaceScalarField alphaf2("alphaf2", scalar(1) - alphaf1); - -volScalarField rAU1 -( - IOobject::groupName("rAU", phase1.name()), - 1.0 - /( - U1Eqn.A() - + max(phase1.residualAlpha() - alpha1, scalar(0)) - *rho1/runTime.deltaT() - ) -); -volScalarField rAU2 -( - IOobject::groupName("rAU", phase2.name()), - 1.0 - /( - U2Eqn.A() - + max(phase2.residualAlpha() - alpha2, scalar(0)) - *rho2/runTime.deltaT() - ) -); - -surfaceScalarField alpharAUf1 -( - fvc::interpolate(max(alpha1, phase1.residualAlpha())*rAU1) -); -surfaceScalarField alpharAUf2 -( - fvc::interpolate(max(alpha2, phase2.residualAlpha())*rAU2) -); - -// Turbulent diffusion, particle-pressure, lift and wall-lubrication fluxes -tmp phiF1; -tmp phiF2; -{ - // Turbulent-dispersion diffusivity - volScalarField D(fluid.D()); - - // Phase-1 turbulent dispersion and particle-pressure flux - surfaceScalarField Df1 - ( - fvc::interpolate - ( - rAU1*(D + phase1.turbulence().pPrime()) - ) - ); - - // Phase-2 turbulent dispersion and particle-pressure flux - surfaceScalarField Df2 - ( - fvc::interpolate - ( - rAU2*(D + phase2.turbulence().pPrime()) - ) - ); - - // Cache the net diffusivity for implicit diffusion treatment in the - // phase-fraction equation - if (implicitPhasePressure) - { - fluid.pPrimeByA() = Df1 + Df2; - } - - // Lift and wall-lubrication forces - volVectorField F(fluid.F()); - - // Phase-fraction face-gradient - surfaceScalarField snGradAlpha1(fvc::snGrad(alpha1)*mesh.magSf()); - - // Phase-1 dispersion, lift and wall-lubrication flux - phiF1 = Df1*snGradAlpha1 + fvc::flux(rAU1*F); - - // Phase-1 dispersion, lift and wall-lubrication flux - phiF2 = - Df2*snGradAlpha1 - fvc::flux(rAU2*F); -} - - -// --- Pressure corrector loop -while (pimple.correct()) -{ - // Update continuity errors due to temperature changes - #include "correctContErrs.H" - - volScalarField rho("rho", fluid.rho()); - - // Correct p_rgh for consistency with p and the updated densities - p_rgh = p - rho*gh; - - // Correct fixed-flux BCs to be consistent with the velocity BCs - MRF.correctBoundaryFlux(U1, phi1); - MRF.correctBoundaryFlux(U2, phi2); - - volVectorField HbyA1 - ( - IOobject::groupName("HbyA", phase1.name()), - U1 - ); - HbyA1 = - rAU1 - *( - U1Eqn.H() - + max(phase1.residualAlpha() - alpha1, scalar(0)) - *rho1*U1.oldTime()/runTime.deltaT() - ); - - volVectorField HbyA2 - ( - IOobject::groupName("HbyA", phase2.name()), - U2 - ); - HbyA2 = - rAU2 - *( - U2Eqn.H() - + max(phase2.residualAlpha() - alpha2, scalar(0)) - *rho2*U2.oldTime()/runTime.deltaT() - ); - - surfaceScalarField ghSnGradRho - ( - "ghSnGradRho", - ghf*fvc::snGrad(rho)*mesh.magSf() - ); - - surfaceScalarField phig1 - ( - alpharAUf1 - *( - ghSnGradRho - - alphaf2*fvc::interpolate(rho1 - rho2)*(g & mesh.Sf()) - ) - ); - - surfaceScalarField phig2 - ( - alpharAUf2 - *( - ghSnGradRho - - alphaf1*fvc::interpolate(rho2 - rho1)*(g & mesh.Sf()) - ) - ); - - - // ddtPhiCorr filter -- only apply in pure(ish) phases - surfaceScalarField alphaf1Bar(fvc::interpolate(fvc::average(alphaf1))); - surfaceScalarField phiCorrCoeff1(pos0(alphaf1Bar - 0.99)); - surfaceScalarField phiCorrCoeff2(pos0(0.01 - alphaf1Bar)); - - { - surfaceScalarField::Boundary& phiCorrCoeff1Bf = - phiCorrCoeff1.boundaryFieldRef(); - - surfaceScalarField::Boundary& phiCorrCoeff2Bf = - phiCorrCoeff2.boundaryFieldRef(); - - forAll(mesh.boundary(), patchi) - { - // Set ddtPhiCorr to 0 on non-coupled boundaries - if - ( - !mesh.boundary()[patchi].coupled() - || isA(mesh.boundary()[patchi]) - ) - { - phiCorrCoeff1Bf[patchi] = 0; - phiCorrCoeff2Bf[patchi] = 0; - } - } - } - - // Phase-1 predicted flux - surfaceScalarField phiHbyA1 - ( - IOobject::groupName("phiHbyA", phase1.name()), - fvc::flux(HbyA1) - + phiCorrCoeff1*fvc::interpolate(alpha1.oldTime()*rho1.oldTime()*rAU1) - *( - MRF.absolute(phi1.oldTime()) - - fvc::flux(U1.oldTime()) - )/runTime.deltaT() - - phiF1() - - phig1 - ); - - // Phase-2 predicted flux - surfaceScalarField phiHbyA2 - ( - IOobject::groupName("phiHbyA", phase2.name()), - fvc::flux(HbyA2) - + phiCorrCoeff2*fvc::interpolate(alpha2.oldTime()*rho2.oldTime()*rAU2) - *( - MRF.absolute(phi2.oldTime()) - - fvc::flux(U2.oldTime()) - )/runTime.deltaT() - - phiF2() - - phig2 - ); - - // Face-drag coefficients - surfaceScalarField rAUKd1(fvc::interpolate(rAU1*Kd)); - surfaceScalarField rAUKd2(fvc::interpolate(rAU2*Kd)); - - // Construct the mean predicted flux - // including explicit drag contributions based on absolute fluxes - surfaceScalarField phiHbyA - ( - "phiHbyA", - alphaf1*(phiHbyA1 + rAUKd1*MRF.absolute(phi2)) - + alphaf2*(phiHbyA2 + rAUKd2*MRF.absolute(phi1)) - ); - MRF.makeRelative(phiHbyA); - - // Construct pressure "diffusivity" - surfaceScalarField rAUf - ( - "rAUf", - mag(alphaf1*alpharAUf1 + alphaf2*alpharAUf2) - ); - - // Update the fixedFluxPressure BCs to ensure flux consistency - setSnGrad - ( - p_rgh.boundaryFieldRef(), - ( - phiHbyA.boundaryField() - - ( - alphaf1.boundaryField()*phi1.boundaryField() - + alphaf2.boundaryField()*phi2.boundaryField() - ) - )/(mesh.magSf().boundaryField()*rAUf.boundaryField()) - ); - - tmp pEqnComp1; - tmp pEqnComp2; - - // Construct the compressibility parts of the pressure equation - if (pimple.transonic()) - { - surfaceScalarField phid1 - ( - IOobject::groupName("phid", phase1.name()), - fvc::interpolate(psi1)*phi1 - ); - surfaceScalarField phid2 - ( - IOobject::groupName("phid", phase2.name()), - fvc::interpolate(psi2)*phi2 - ); - - pEqnComp1 = - ( - contErr1 - - fvc::Sp(fvc::ddt(alpha1) + fvc::div(alphaPhi1), rho1) - )/rho1 - + correction - ( - (alpha1/rho1)* - ( - psi1*fvm::ddt(p_rgh) - + fvm::div(phid1, p_rgh) - fvm::Sp(fvc::div(phid1), p_rgh) - ) - ); - pEqnComp1.ref().relax(); - - pEqnComp2 = - ( - contErr2 - - fvc::Sp(fvc::ddt(alpha2) + fvc::div(alphaPhi2), rho2) - )/rho2 - + correction - ( - (alpha2/rho2)* - ( - psi2*fvm::ddt(p_rgh) - + fvm::div(phid2, p_rgh) - fvm::Sp(fvc::div(phid2), p_rgh) - ) - ); - pEqnComp2.ref().relax(); - } - else - { - pEqnComp1 = - ( - contErr1 - - fvc::Sp(fvc::ddt(alpha1) + fvc::div(alphaPhi1), rho1) - )/rho1 - + (alpha1*psi1/rho1)*correction(fvm::ddt(p_rgh)); - - pEqnComp2 = - ( - contErr2 - - fvc::Sp(fvc::ddt(alpha2) + fvc::div(alphaPhi2), rho2) - )/rho2 - + (alpha2*psi2/rho2)*correction(fvm::ddt(p_rgh)); - } - - // Cache p prior to solve for density update - volScalarField p_rgh_0(p_rgh); - - // Iterate over the pressure equation to correct for non-orthogonality - while (pimple.correctNonOrthogonal()) - { - // Construct the transport part of the pressure equation - fvScalarMatrix pEqnIncomp - ( - fvc::div(phiHbyA) - - fvm::laplacian(rAUf, p_rgh) - ); - - solve - ( - pEqnComp1() + pEqnComp2() + pEqnIncomp - ); - - // Correct fluxes and velocities on last non-orthogonal iteration - if (pimple.finalNonOrthogonalIter()) - { - phi = phiHbyA + pEqnIncomp.flux(); - - surfaceScalarField mSfGradp("mSfGradp", pEqnIncomp.flux()/rAUf); - - // Partial-elimination phase-flux corrector - { - surfaceScalarField phi1s - ( - phiHbyA1 + alpharAUf1*mSfGradp - ); - - surfaceScalarField phi2s - ( - phiHbyA2 + alpharAUf2*mSfGradp - ); - - surfaceScalarField phir - ( - ((phi1s + rAUKd1*phi2s) - (phi2s + rAUKd2*phi1s)) - /(1 - rAUKd1*rAUKd2) - ); - - phi1 = phi + alphaf2*phir; - phi2 = phi - alphaf1*phir; - } - - // Compressibility correction for phase-fraction equations - fluid.dgdt() = - ( - alpha1*(pEqnComp2 & p_rgh) - - alpha2*(pEqnComp1 & p_rgh) - ); - - // Optionally relax pressure for velocity correction - p_rgh.relax(); - - mSfGradp = pEqnIncomp.flux()/rAUf; - - // Partial-elimination phase-velocity corrector - { - volVectorField Us1 - ( - HbyA1 - + fvc::reconstruct(alpharAUf1*mSfGradp - phiF1() - phig1) - ); - - volVectorField Us2 - ( - HbyA2 - + fvc::reconstruct(alpharAUf2*mSfGradp - phiF2() - phig2) - ); - - volScalarField D1(rAU1*Kd); - volScalarField D2(rAU2*Kd); - - U = alpha1*(Us1 + D1*U2) + alpha2*(Us2 + D2*U1); - volVectorField Ur(((1 - D2)*Us1 - (1 - D1)*Us2)/(1 - D1*D2)); - - U1 = U + alpha2*Ur; - U1.correctBoundaryConditions(); - fvOptions.correct(U1); - - U2 = U - alpha1*Ur; - U2.correctBoundaryConditions(); - fvOptions.correct(U2); - - U = fluid.U(); - } - } - } - - // Update and limit the static pressure - p = max(p_rgh + rho*gh, pMin); - - // Limit p_rgh - p_rgh = p - rho*gh; - - // Update densities from change in p_rgh - rho1 += psi1*(p_rgh - p_rgh_0); - rho2 += psi2*(p_rgh - p_rgh_0); - - // Correct p_rgh for consistency with p and the updated densities - rho = fluid.rho(); - p_rgh = p - rho*gh; - p_rgh.correctBoundaryConditions(); -} - -// Update the phase kinetic energies -K1 = 0.5*magSqr(U1); -K2 = 0.5*magSqr(U2); - -// Update the pressure time-derivative if required -if (thermo1.dpdt() || thermo2.dpdt()) -{ - dpdt = fvc::ddt(p); -} diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/pUf/DDtU.H b/applications/solvers/multiphase/twoPhaseEulerFoam/pUf/DDtU.H deleted file mode 100644 index 63b61cd61a..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/pUf/DDtU.H +++ /dev/null @@ -1,9 +0,0 @@ - ddtPhi1 = - ( - (phi1 - phi1.oldTime())/runTime.deltaT() - ); - - ddtPhi2 = - ( - (phi2 - phi2.oldTime())/runTime.deltaT() - ); diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/pUf/UEqns.H b/applications/solvers/multiphase/twoPhaseEulerFoam/pUf/UEqns.H deleted file mode 100644 index f22e309c71..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/pUf/UEqns.H +++ /dev/null @@ -1,55 +0,0 @@ -Info<< "Constructing face momentum equations" << endl; - -MRF.correctBoundaryVelocity(U1); -MRF.correctBoundaryVelocity(U2); -MRF.correctBoundaryVelocity(U); -Info<< "Constructing face momentum equations" << endl; - -fvVectorMatrix U1Eqn(U1, rho1.dimensions()*U1.dimensions()*dimVol/dimTime); -fvVectorMatrix U2Eqn(U2, rho2.dimensions()*U2.dimensions()*dimVol/dimTime); - -{ - volScalarField Vm(fluid.Vm()); - - fvVectorMatrix UgradU1 - ( - fvm::div(phi1, U1) - fvm::Sp(fvc::div(phi1), U1) - + MRF.DDt(U1) - ); - - fvVectorMatrix UgradU2 - ( - fvm::div(phi2, U2) - fvm::Sp(fvc::div(phi2), U2) - + MRF.DDt(U2) - ); - - { - U1Eqn = - ( - fvm::div(alphaRhoPhi1, U1) - fvm::Sp(fvc::div(alphaRhoPhi1), U1) - + MRF.DDt(alpha1*rho1, U1) - + phase1.turbulence().divDevTau(U1) - + Vm*(UgradU1 - (UgradU2 & U2)) - - fvOptions(alpha1, rho1, U1) - ); - U1Eqn.relax(); - fvOptions.constrain(U1Eqn); - U1.correctBoundaryConditions(); - fvOptions.correct(U1); - } - - { - U2Eqn = - ( - fvm::div(alphaRhoPhi2, U2) - fvm::Sp(fvc::div(alphaRhoPhi2), U2) - + MRF.DDt(alpha2*rho2, U2) - + phase2.turbulence().divDevTau(U2) - + Vm*(UgradU2 - (UgradU1 & U1)) - - fvOptions(alpha2, rho2, U2) - ); - U2Eqn.relax(); - fvOptions.constrain(U2Eqn); - U2.correctBoundaryConditions(); - fvOptions.correct(U2); - } -} diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/pUf/createDDtU.H b/applications/solvers/multiphase/twoPhaseEulerFoam/pUf/createDDtU.H deleted file mode 100644 index 7445d4af23..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/pUf/createDDtU.H +++ /dev/null @@ -1,9 +0,0 @@ - surfaceScalarField ddtPhi1 - ( - (phi1 - phi1.oldTime())/runTime.deltaT() - ); - - surfaceScalarField ddtPhi2 - ( - (phi2 - phi2.oldTime())/runTime.deltaT() - ); diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/pUf/pEqn.H b/applications/solvers/multiphase/twoPhaseEulerFoam/pUf/pEqn.H deleted file mode 100644 index ac2edc59f6..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/pUf/pEqn.H +++ /dev/null @@ -1,367 +0,0 @@ -surfaceScalarField alphaf1("alphaf1", fvc::interpolate(alpha1)); -surfaceScalarField alphaf2("alphaf2", scalar(1) - alphaf1); - -surfaceScalarField alphaRhof10 -( - "alphaRhof10", - fvc::interpolate - ( - max(alpha1.oldTime(), phase1.residualAlpha()) - *rho1.oldTime() - ) -); - -surfaceScalarField alphaRhof20 -( - "alphaRhof20", - fvc::interpolate - ( - max(alpha2.oldTime(), phase2.residualAlpha()) - *rho2.oldTime() - ) -); - -// Drag coefficient -surfaceScalarField Kdf("Kdf", fluid.Kdf()); - -// Virtual-mass coefficient -surfaceScalarField Vmf("Vmf", fluid.Vmf()); - -surfaceScalarField rAUf1 -( - IOobject::groupName("rAUf", phase1.name()), - 1.0 - /( - (alphaRhof10 + Vmf)/runTime.deltaT() - + fvc::interpolate(U1Eqn.A()) - + Kdf - ) -); - -surfaceScalarField rAUf2 -( - IOobject::groupName("rAUf", phase2.name()), - 1.0 - /( - (alphaRhof20 + Vmf)/runTime.deltaT() - + fvc::interpolate(U2Eqn.A()) - + Kdf - ) -); - - -// Turbulent dispersion, particle-pressure, lift and wall-lubrication forces -tmp Ff1; -tmp Ff2; -{ - // Turbulent-dispersion diffusivity - volScalarField D(fluid.D()); - - // Phase-1 turbulent dispersion and particle-pressure diffusivity - surfaceScalarField Df1 - ( - fvc::interpolate(D + phase1.turbulence().pPrime()) - ); - - // Phase-2 turbulent dispersion and particle-pressure diffusivity - surfaceScalarField Df2 - ( - fvc::interpolate(D + phase2.turbulence().pPrime()) - ); - - // Cache the net diffusivity for implicit diffusion treatment in the - // phase-fraction equation - if (implicitPhasePressure) - { - fluid.pPrimeByA() = rAUf1*Df1 + rAUf2*Df2; - } - - // Lift and wall-lubrication forces - surfaceScalarField Ff(fluid.Ff()); - - // Phase-fraction face-gradient - surfaceScalarField snGradAlpha1(fvc::snGrad(alpha1)*mesh.magSf()); - - // Phase-1 dispersion, lift and wall-lubrication force - Ff1 = Df1*snGradAlpha1 + Ff; - - // Phase-2 dispersion, lift and wall-lubrication force - Ff2 = -Df2*snGradAlpha1 - Ff; -} - - -while (pimple.correct()) -{ - // Update continuity errors due to temperature changes - #include "correctContErrs.H" - - volScalarField rho("rho", fluid.rho()); - - // Correct p_rgh for consistency with p and the updated densities - p_rgh = p - rho*gh; - - surfaceScalarField rhof1(fvc::interpolate(rho1)); - surfaceScalarField rhof2(fvc::interpolate(rho2)); - - // Correct fixed-flux BCs to be consistent with the velocity BCs - MRF.correctBoundaryFlux(U1, phi1); - MRF.correctBoundaryFlux(U2, phi2); - - surfaceScalarField alpharAUf1 - ( - IOobject::groupName("alpharAUf", phase1.name()), - max(alphaf1, phase1.residualAlpha())*rAUf1 - ); - - surfaceScalarField alpharAUf2 - ( - IOobject::groupName("alpharAUf", phase2.name()), - max(alphaf2, phase2.residualAlpha())*rAUf2 - ); - - surfaceScalarField ghSnGradRho - ( - "ghSnGradRho", - ghf*fvc::snGrad(rho)*mesh.magSf() - ); - - // Phase-1 buoyancy flux - surfaceScalarField phig1 - ( - IOobject::groupName("phig", phase1.name()), - alpharAUf1 - *( - ghSnGradRho - - alphaf2*(rhof1 - rhof2)*(g & mesh.Sf()) - ) - ); - - // Phase-2 buoyancy flux - surfaceScalarField phig2 - ( - IOobject::groupName("phig", phase2.name()), - alpharAUf2 - *( - ghSnGradRho - - alphaf1*(rhof2 - rhof1)*(g & mesh.Sf()) - ) - ); - - - // Phase-1 predicted flux - surfaceScalarField phiHbyA1 - ( - IOobject::groupName("phiHbyA", phase1.name()), - phi1 - ); - - phiHbyA1 = - rAUf1 - *( - (alphaRhof10 + Vmf) - *MRF.absolute(phi1.oldTime())/runTime.deltaT() - + fvc::flux(U1Eqn.H()) - + Vmf*ddtPhi2 - + Kdf*MRF.absolute(phi2) - - Ff1() - ); - - // Phase-2 predicted flux - surfaceScalarField phiHbyA2 - ( - IOobject::groupName("phiHbyA", phase2.name()), - phi2 - ); - - phiHbyA2 = - rAUf2 - *( - (alphaRhof20 + Vmf) - *MRF.absolute(phi2.oldTime())/runTime.deltaT() - + fvc::flux(U2Eqn.H()) - + Vmf*ddtPhi1 - + Kdf*MRF.absolute(phi1) - - Ff2() - ); - - - surfaceScalarField phiHbyA - ( - "phiHbyA", - alphaf1*(phiHbyA1 - phig1) + alphaf2*(phiHbyA2 - phig2) - ); - MRF.makeRelative(phiHbyA); - - phiHbyA1 -= phig1; - phiHbyA2 -= phig2; - - surfaceScalarField rAUf - ( - "rAUf", - mag(alphaf1*alpharAUf1 + alphaf2*alpharAUf2) - ); - - // Update the fixedFluxPressure BCs to ensure flux consistency - setSnGrad - ( - p_rgh.boundaryFieldRef(), - ( - phiHbyA.boundaryField() - - ( - alphaf1.boundaryField()*phi1.boundaryField() - + alphaf2.boundaryField()*phi2.boundaryField() - ) - )/(mesh.magSf().boundaryField()*rAUf.boundaryField()) - ); - - tmp pEqnComp1; - tmp pEqnComp2; - - if (pimple.transonic()) - { - surfaceScalarField phid1 - ( - IOobject::groupName("phid", phase1.name()), - fvc::interpolate(psi1)*phi1 - ); - surfaceScalarField phid2 - ( - IOobject::groupName("phid", phase2.name()), - fvc::interpolate(psi2)*phi2 - ); - - pEqnComp1 = - ( - contErr1 - - fvc::Sp(fvc::ddt(alpha1) + fvc::div(alphaPhi1), rho1) - )/rho1 - + correction - ( - (alpha1/rho1)* - ( - psi1*fvm::ddt(p_rgh) - + fvm::div(phid1, p_rgh) - fvm::Sp(fvc::div(phid1), p_rgh) - ) - ); - pEqnComp1.ref().relax(); - - pEqnComp2 = - ( - contErr2 - - fvc::Sp(fvc::ddt(alpha2) + fvc::div(alphaPhi2), rho2) - )/rho2 - + correction - ( - (alpha2/rho2)* - ( - psi2*fvm::ddt(p_rgh) - + fvm::div(phid2, p_rgh) - fvm::Sp(fvc::div(phid2), p_rgh) - ) - ); - pEqnComp2.ref().relax(); - } - else - { - pEqnComp1 = - ( - contErr1 - - fvc::Sp(fvc::ddt(alpha1) + fvc::div(alphaPhi1), rho1) - )/rho1 - + (alpha1*psi1/rho1)*correction(fvm::ddt(p_rgh)); - - pEqnComp2 = - ( - contErr2 - - fvc::Sp(fvc::ddt(alpha2) + fvc::div(alphaPhi2), rho2) - )/rho2 - + (alpha2*psi2/rho2)*correction(fvm::ddt(p_rgh)); - } - - // Cache p prior to solve for density update - volScalarField p_rgh_0("p_rgh_0", p_rgh); - - while (pimple.correctNonOrthogonal()) - { - fvScalarMatrix pEqnIncomp - ( - fvc::div(phiHbyA) - - fvm::laplacian(rAUf, p_rgh) - ); - - solve - ( - pEqnComp1() + pEqnComp2() + pEqnIncomp - ); - - if (pimple.finalNonOrthogonalIter()) - { - surfaceScalarField mSfGradp("mSfGradp", pEqnIncomp.flux()/rAUf); - - phi = phiHbyA + pEqnIncomp.flux(); - - surfaceScalarField phi1s - ( - phiHbyA1 - + alpharAUf1*mSfGradp - - rAUf1*Kdf*MRF.absolute(phi2) - ); - - surfaceScalarField phi2s - ( - phiHbyA2 - + alpharAUf2*mSfGradp - - rAUf2*Kdf*MRF.absolute(phi1) - ); - - surfaceScalarField phir - ( - ((phi2s + rAUf2*Kdf*phi1s) - (phi1s + rAUf1*Kdf*phi2s)) - /(1.0 - rAUf1*rAUf2*sqr(Kdf)) - ); - - phi1 = phi - alphaf2*phir; - phi2 = phi + alphaf1*phir; - - U1 = fvc::reconstruct(MRF.absolute(phi1)); - U1.correctBoundaryConditions(); - fvOptions.correct(U1); - - U2 = fvc::reconstruct(MRF.absolute(phi2)); - U2.correctBoundaryConditions(); - fvOptions.correct(U2); - - U = fluid.U(); - - fluid.dgdt() = - ( - alpha1*(pEqnComp2 & p_rgh) - - alpha2*(pEqnComp1 & p_rgh) - ); - } - } - - // Update and limit the static pressure - p = max(p_rgh + rho*gh, pMin); - - // Limit p_rgh - p_rgh = p - rho*gh; - - // Update densities from change in p_rgh - rho1 += psi1*(p_rgh - p_rgh_0); - rho2 += psi2*(p_rgh - p_rgh_0); - - // Correct p_rgh for consistency with p and the updated densities - rho = fluid.rho(); - p_rgh = p - rho*gh; - p_rgh.correctBoundaryConditions(); -} - -// Update the phase kinetic energies -K1 = 0.5*magSqr(U1); -K2 = 0.5*magSqr(U2); - -// Update the pressure time-derivative if required -if (thermo1.dpdt() || thermo2.dpdt()) -{ - dpdt = fvc::ddt(p); -} diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/Make/files b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/Make/files deleted file mode 100644 index b6fd9c1a53..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/Make/files +++ /dev/null @@ -1,39 +0,0 @@ -phaseCompressibleMomentumTransportModels.C -phasePressureModel/phasePressureModel.C - -kineticTheoryModels/kineticTheoryModel/kineticTheoryModel.C - -kineticTheoryModels/viscosityModel/viscosityModel/viscosityModel.C -kineticTheoryModels/viscosityModel/viscosityModel/newViscosityModel.C -kineticTheoryModels/viscosityModel/Gidaspow/GidaspowViscosity.C -kineticTheoryModels/viscosityModel/Syamlal/SyamlalViscosity.C -kineticTheoryModels/viscosityModel/HrenyaSinclair/HrenyaSinclairViscosity.C -kineticTheoryModels/viscosityModel/none/noneViscosity.C - -kineticTheoryModels/conductivityModel/conductivityModel/conductivityModel.C -kineticTheoryModels/conductivityModel/conductivityModel/newConductivityModel.C -kineticTheoryModels/conductivityModel/Gidaspow/GidaspowConductivity.C -kineticTheoryModels/conductivityModel/Syamlal/SyamlalConductivity.C -kineticTheoryModels/conductivityModel/HrenyaSinclair/HrenyaSinclairConductivity.C - -kineticTheoryModels/radialModel/radialModel/radialModel.C -kineticTheoryModels/radialModel/radialModel/newRadialModel.C -kineticTheoryModels/radialModel/CarnahanStarling/CarnahanStarlingRadial.C -kineticTheoryModels/radialModel/LunSavage/LunSavageRadial.C -kineticTheoryModels/radialModel/SinclairJackson/SinclairJacksonRadial.C - -kineticTheoryModels/granularPressureModel/granularPressureModel/granularPressureModel.C -kineticTheoryModels/granularPressureModel/granularPressureModel/newGranularPressureModel.C -kineticTheoryModels/granularPressureModel/Lun/LunPressure.C -kineticTheoryModels/granularPressureModel/SyamlalRogersOBrien/SyamlalRogersOBrienPressure.C - -kineticTheoryModels/frictionalStressModel/frictionalStressModel/frictionalStressModel.C -kineticTheoryModels/frictionalStressModel/frictionalStressModel/newFrictionalStressModel.C -kineticTheoryModels/frictionalStressModel/JohnsonJackson/JohnsonJacksonFrictionalStress.C -kineticTheoryModels/frictionalStressModel/Schaeffer/SchaefferFrictionalStress.C -kineticTheoryModels/frictionalStressModel/JohnsonJacksonSchaeffer/JohnsonJacksonSchaefferFrictionalStress.C - -kineticTheoryModels/derivedFvPatchFields/JohnsonJacksonParticleTheta/JohnsonJacksonParticleThetaFvPatchScalarField.C -kineticTheoryModels/derivedFvPatchFields/JohnsonJacksonParticleSlip/JohnsonJacksonParticleSlipFvPatchVectorField.C - -LIB = $(FOAM_LIBBIN)/libphaseCompressibleMomentumTransportModels diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/Make/options b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/Make/options deleted file mode 100644 index 1e5d77538a..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/Make/options +++ /dev/null @@ -1,21 +0,0 @@ -EXE_INC = \ - -I../twoPhaseSystem/lnInclude \ - -I../interfacialModels/lnInclude \ - -I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \ - -I$(LIB_SRC)/MomentumTransportModels/compressible/lnInclude \ - -I$(LIB_SRC)/MomentumTransportModels/momentumTransportModels/lnInclude \ - -I$(LIB_SRC)/MomentumTransportModels/phaseCompressible/lnInclude \ - -I$(LIB_SRC)/finiteVolume/lnInclude \ - -I$(LIB_SRC)/meshTools/lnInclude - -LIB_LIBS = \ - -lfluidThermophysicalModels \ - -lspecie \ - -lmomentumTransportModels \ - -lfluidThermoMomentumTransportModels \ - -lincompressibleTransportModels \ - -lcompressibleTwoPhaseSystem \ - -lcompressibleEulerianInterfacialModels \ - -lfiniteVolume \ - -lfvOptions \ - -lmeshTools diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/conductivityModel/Gidaspow/GidaspowConductivity.C b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/conductivityModel/Gidaspow/GidaspowConductivity.C deleted file mode 100644 index 9d7c706b19..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/conductivityModel/Gidaspow/GidaspowConductivity.C +++ /dev/null @@ -1,93 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "GidaspowConductivity.H" -#include "mathematicalConstants.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace kineticTheoryModels -{ -namespace conductivityModels -{ - defineTypeNameAndDebug(Gidaspow, 0); - - addToRunTimeSelectionTable - ( - conductivityModel, - Gidaspow, - dictionary - ); -} -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::kineticTheoryModels::conductivityModels::Gidaspow::Gidaspow -( - const dictionary& dict -) -: - conductivityModel(dict) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::kineticTheoryModels::conductivityModels::Gidaspow::~Gidaspow() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp -Foam::kineticTheoryModels::conductivityModels::Gidaspow::kappa -( - const volScalarField& alpha1, - const volScalarField& Theta, - const volScalarField& g0, - const volScalarField& rho1, - const volScalarField& da, - const dimensionedScalar& e -) const -{ - const scalar sqrtPi = sqrt(constant::mathematical::pi); - - return rho1*da*sqrt(Theta)* - ( - 2.0*sqr(alpha1)*g0*(1.0 + e)/sqrtPi - + (9.0/8.0)*sqrtPi*g0*0.5*(1.0 + e)*sqr(alpha1) - + (15.0/16.0)*sqrtPi*alpha1 - + (25.0/64.0)*sqrtPi/((1.0 + e)*g0) - ); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/conductivityModel/Gidaspow/GidaspowConductivity.H b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/conductivityModel/Gidaspow/GidaspowConductivity.H deleted file mode 100644 index bd5846013a..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/conductivityModel/Gidaspow/GidaspowConductivity.H +++ /dev/null @@ -1,97 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::kineticTheoryModels::conductivityModels::Gidaspow - -Description - -SourceFiles - Gidaspow.C - -\*---------------------------------------------------------------------------*/ - -#ifndef GidaspowConductivity_H -#define GidaspowConductivity_H - -#include "conductivityModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ -namespace kineticTheoryModels -{ -namespace conductivityModels -{ - -/*---------------------------------------------------------------------------*\ - Class Gidaspow Declaration -\*---------------------------------------------------------------------------*/ - -class Gidaspow -: - public conductivityModel -{ - -public: - - //- Runtime type information - TypeName("Gidaspow"); - - - // Constructors - - //- Construct from components - Gidaspow(const dictionary& dict); - - - //- Destructor - virtual ~Gidaspow(); - - - // Member Functions - - tmp kappa - ( - const volScalarField& alpha1, - const volScalarField& Theta, - const volScalarField& g0, - const volScalarField& rho1, - const volScalarField& da, - const dimensionedScalar& e - ) const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace conductivityModels -} // End namespace kineticTheoryModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/conductivityModel/HrenyaSinclair/HrenyaSinclairConductivity.C b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/conductivityModel/HrenyaSinclair/HrenyaSinclairConductivity.C deleted file mode 100644 index 59b92d87a4..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/conductivityModel/HrenyaSinclair/HrenyaSinclairConductivity.C +++ /dev/null @@ -1,114 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "HrenyaSinclairConductivity.H" -#include "mathematicalConstants.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace kineticTheoryModels -{ -namespace conductivityModels -{ - defineTypeNameAndDebug(HrenyaSinclair, 0); - - addToRunTimeSelectionTable - ( - conductivityModel, - HrenyaSinclair, - dictionary - ); -} -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::kineticTheoryModels::conductivityModels::HrenyaSinclair::HrenyaSinclair -( - const dictionary& dict -) -: - conductivityModel(dict), - coeffDict_(dict.optionalSubDict(typeName + "Coeffs")), - L_("L", dimensionSet(0, 1, 0, 0, 0), coeffDict_) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::kineticTheoryModels::conductivityModels::HrenyaSinclair:: -~HrenyaSinclair() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp -Foam::kineticTheoryModels::conductivityModels::HrenyaSinclair::kappa -( - const volScalarField& alpha1, - const volScalarField& Theta, - const volScalarField& g0, - const volScalarField& rho1, - const volScalarField& da, - const dimensionedScalar& e -) const -{ - const scalar sqrtPi = sqrt(constant::mathematical::pi); - - volScalarField lamda - ( - scalar(1) + da/(6.0*sqrt(2.0)*(alpha1 + scalar(1.0e-5)))/L_ - ); - - return rho1*da*sqrt(Theta)* - ( - 2.0*sqr(alpha1)*g0*(1.0 + e)/sqrtPi - + (9.0/8.0)*sqrtPi*g0*0.25*sqr(1.0 + e)*(2.0*e - 1.0)*sqr(alpha1) - /(49.0/16.0 - 33.0*e/16.0) - + (15.0/16.0)*sqrtPi*alpha1*(0.5*sqr(e) + 0.25*e - 0.75 + lamda) - /((49.0/16.0 - 33.0*e/16.0)*lamda) - + (25.0/64.0)*sqrtPi - /((1.0 + e)*(49.0/16.0 - 33.0*e/16.0)*lamda*g0) - ); -} - - -bool Foam::kineticTheoryModels::conductivityModels::HrenyaSinclair::read() -{ - coeffDict_ <<= dict_.optionalSubDict(typeName + "Coeffs"); - - L_.readIfPresent(coeffDict_); - - return true; -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/conductivityModel/HrenyaSinclair/HrenyaSinclairConductivity.H b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/conductivityModel/HrenyaSinclair/HrenyaSinclairConductivity.H deleted file mode 100644 index 1795d07d5c..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/conductivityModel/HrenyaSinclair/HrenyaSinclairConductivity.H +++ /dev/null @@ -1,104 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::kineticTheoryModels::conductivityModels::HrenyaSinclair - -Description - -SourceFiles - HrenyaSinclair.C - -\*---------------------------------------------------------------------------*/ - -#ifndef HrenyaSinclairConductivity_H -#define HrenyaSinclairConductivity_H - -#include "conductivityModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ -namespace kineticTheoryModels -{ -namespace conductivityModels -{ - -/*---------------------------------------------------------------------------*\ - Class HrenyaSinclair Declaration -\*---------------------------------------------------------------------------*/ - -class HrenyaSinclair -: - public conductivityModel -{ - dictionary coeffDict_; - - //- Characteristic length of geometry - dimensionedScalar L_; - - -public: - - //- Runtime type information - TypeName("HrenyaSinclair"); - - - // Constructors - - //- Construct from components - HrenyaSinclair(const dictionary& dict); - - - //- Destructor - virtual ~HrenyaSinclair(); - - - // Member Functions - - tmp kappa - ( - const volScalarField& alpha1, - const volScalarField& Theta, - const volScalarField& g0, - const volScalarField& rho1, - const volScalarField& da, - const dimensionedScalar& e - ) const; - - virtual bool read(); -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace conductivityModels -} // End namespace kineticTheoryModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/conductivityModel/Syamlal/SyamlalConductivity.C b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/conductivityModel/Syamlal/SyamlalConductivity.C deleted file mode 100644 index 36ad3d2b67..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/conductivityModel/Syamlal/SyamlalConductivity.C +++ /dev/null @@ -1,93 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "SyamlalConductivity.H" -#include "mathematicalConstants.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace kineticTheoryModels -{ -namespace conductivityModels -{ - defineTypeNameAndDebug(Syamlal, 0); - - addToRunTimeSelectionTable - ( - conductivityModel, - Syamlal, - dictionary - ); -} -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::kineticTheoryModels::conductivityModels::Syamlal::Syamlal -( - const dictionary& dict -) -: - conductivityModel(dict) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::kineticTheoryModels::conductivityModels::Syamlal::~Syamlal() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp -Foam::kineticTheoryModels::conductivityModels::Syamlal::kappa -( - const volScalarField& alpha1, - const volScalarField& Theta, - const volScalarField& g0, - const volScalarField& rho1, - const volScalarField& da, - const dimensionedScalar& e -) const -{ - const scalar sqrtPi = sqrt(constant::mathematical::pi); - - return rho1*da*sqrt(Theta)* - ( - 2.0*sqr(alpha1)*g0*(1.0 + e)/sqrtPi - + (9.0/8.0)*sqrtPi*g0*0.25*sqr(1.0 + e)*(2.0*e - 1.0)*sqr(alpha1) - /(49.0/16.0 - 33.0*e/16.0) - + (15.0/32.0)*sqrtPi*alpha1/(49.0/16.0 - 33.0*e/16.0) - ); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/conductivityModel/Syamlal/SyamlalConductivity.H b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/conductivityModel/Syamlal/SyamlalConductivity.H deleted file mode 100644 index 75f2e8cd6a..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/conductivityModel/Syamlal/SyamlalConductivity.H +++ /dev/null @@ -1,97 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::kineticTheoryModels::conductivityModels::Syamlal - -Description - -SourceFiles - Syamlal.C - -\*---------------------------------------------------------------------------*/ - -#ifndef SyamlalConductivity_H -#define SyamlalConductivity_H - -#include "conductivityModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ -namespace kineticTheoryModels -{ -namespace conductivityModels -{ - -/*---------------------------------------------------------------------------*\ - Class Syamlal Declaration -\*---------------------------------------------------------------------------*/ - -class Syamlal -: - public conductivityModel -{ - -public: - - //- Runtime type information - TypeName("Syamlal"); - - - // Constructors - - //- Construct from components - Syamlal(const dictionary& dict); - - - //- Destructor - virtual ~Syamlal(); - - - // Member Functions - - tmp kappa - ( - const volScalarField& alpha1, - const volScalarField& Theta, - const volScalarField& g0, - const volScalarField& rho1, - const volScalarField& da, - const dimensionedScalar& e - ) const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace conductivityModels -} // End namespace kineticTheoryModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/conductivityModel/conductivityModel/conductivityModel.C b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/conductivityModel/conductivityModel/conductivityModel.C deleted file mode 100644 index d50703def8..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/conductivityModel/conductivityModel/conductivityModel.C +++ /dev/null @@ -1,58 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "conductivityModel.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace kineticTheoryModels -{ - defineTypeNameAndDebug(conductivityModel, 0); - - defineRunTimeSelectionTable(conductivityModel, dictionary); -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::kineticTheoryModels::conductivityModel::conductivityModel -( - const dictionary& dict -) -: - dict_(dict) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::kineticTheoryModels::conductivityModel::~conductivityModel() -{} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/conductivityModel/conductivityModel/conductivityModel.H b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/conductivityModel/conductivityModel/conductivityModel.H deleted file mode 100644 index dad6d78431..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/conductivityModel/conductivityModel/conductivityModel.H +++ /dev/null @@ -1,133 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::kineticTheoryModels::conductivityModel - -SourceFiles - conductivityModel.C - -\*---------------------------------------------------------------------------*/ - -#ifndef conductivityModel_H -#define conductivityModel_H - -#include "dictionary.H" -#include "volFields.H" -#include "dimensionedTypes.H" -#include "runTimeSelectionTables.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ -namespace kineticTheoryModels -{ - -/*---------------------------------------------------------------------------*\ - Class conductivityModel Declaration -\*---------------------------------------------------------------------------*/ - -class conductivityModel -{ -protected: - - // Protected data - - const dictionary& dict_; - - -public: - - //- Runtime type information - TypeName("conductivityModel"); - - // Declare runtime constructor selection table - declareRunTimeSelectionTable - ( - autoPtr, - conductivityModel, - dictionary, - ( - const dictionary& dict - ), - (dict) - ); - - - // Constructors - - //- Construct from components - conductivityModel(const dictionary& dict); - - //- Disallow default bitwise copy construction - conductivityModel(const conductivityModel&) = delete; - - - // Selectors - - static autoPtr New - ( - const dictionary& dict - ); - - - //- Destructor - virtual ~conductivityModel(); - - - // Member Functions - - virtual tmp kappa - ( - const volScalarField& alpha1, - const volScalarField& Theta, - const volScalarField& g0, - const volScalarField& rho1, - const volScalarField& da, - const dimensionedScalar& e - ) const = 0; - - virtual bool read() - { - return true; - } - - - // Member Operators - - //- Disallow default bitwise assignment - void operator=(const conductivityModel&) = delete; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace kineticTheoryModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/conductivityModel/conductivityModel/newConductivityModel.C b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/conductivityModel/conductivityModel/newConductivityModel.C deleted file mode 100644 index 9a8c6324b2..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/conductivityModel/conductivityModel/newConductivityModel.C +++ /dev/null @@ -1,59 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "conductivityModel.H" - -// * * * * * * * * * * * * * * * * Selectors * * * * * * * * * * * * * * * * // - -Foam::autoPtr -Foam::kineticTheoryModels::conductivityModel::New -( - const dictionary& dict -) -{ - word conductivityModelType(dict.lookup("conductivityModel")); - - Info<< "Selecting conductivityModel " - << conductivityModelType << endl; - - dictionaryConstructorTable::iterator cstrIter = - dictionaryConstructorTablePtr_->find(conductivityModelType); - - if (cstrIter == dictionaryConstructorTablePtr_->end()) - { - FatalError - << "conductivityModel::New(const dictionary&) : " << endl - << " unknown conductivityModelType type " - << conductivityModelType - << ", constructor not in hash table" << endl << endl - << " Valid conductivityModelType types are :" << endl; - Info<< dictionaryConstructorTablePtr_->sortedToc() << abort(FatalError); - } - - return autoPtr(cstrIter()(dict)); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/derivedFvPatchFields/JohnsonJacksonParticleSlip/JohnsonJacksonParticleSlipFvPatchVectorField.C b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/derivedFvPatchFields/JohnsonJacksonParticleSlip/JohnsonJacksonParticleSlipFvPatchVectorField.C deleted file mode 100644 index 5df9d623d0..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/derivedFvPatchFields/JohnsonJacksonParticleSlip/JohnsonJacksonParticleSlipFvPatchVectorField.C +++ /dev/null @@ -1,253 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "JohnsonJacksonParticleSlipFvPatchVectorField.H" -#include "addToRunTimeSelectionTable.H" -#include "twoPhaseSystem.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - makePatchTypeField - ( - fvPatchVectorField, - JohnsonJacksonParticleSlipFvPatchVectorField - ); -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::JohnsonJacksonParticleSlipFvPatchVectorField:: -JohnsonJacksonParticleSlipFvPatchVectorField -( - const fvPatch& p, - const DimensionedField& iF -) -: - partialSlipFvPatchVectorField(p, iF), - specularityCoefficient_("specularityCoefficient", dimless, 0) -{} - - -Foam::JohnsonJacksonParticleSlipFvPatchVectorField:: -JohnsonJacksonParticleSlipFvPatchVectorField -( - const JohnsonJacksonParticleSlipFvPatchVectorField& ptf, - const fvPatch& p, - const DimensionedField& iF, - const fvPatchFieldMapper& mapper -) -: - partialSlipFvPatchVectorField(ptf, p, iF, mapper), - specularityCoefficient_(ptf.specularityCoefficient_) -{} - - -Foam::JohnsonJacksonParticleSlipFvPatchVectorField:: -JohnsonJacksonParticleSlipFvPatchVectorField -( - const fvPatch& p, - const DimensionedField& iF, - const dictionary& dict -) -: - partialSlipFvPatchVectorField(p, iF), - specularityCoefficient_ - ( - "specularityCoefficient", - dimless, - dict.lookup("specularityCoefficient") - ) -{ - if - ( - (specularityCoefficient_.value() < 0) - || (specularityCoefficient_.value() > 1) - ) - { - FatalErrorInFunction - << "The specularity coefficient has to be between 0 and 1" - << abort(FatalError); - } - - fvPatchVectorField::operator= - ( - vectorField("value", dict, p.size()) - ); -} - - -Foam::JohnsonJacksonParticleSlipFvPatchVectorField:: -JohnsonJacksonParticleSlipFvPatchVectorField -( - const JohnsonJacksonParticleSlipFvPatchVectorField& ptf -) -: - partialSlipFvPatchVectorField(ptf), - specularityCoefficient_(ptf.specularityCoefficient_) -{} - - -Foam::JohnsonJacksonParticleSlipFvPatchVectorField:: -JohnsonJacksonParticleSlipFvPatchVectorField -( - const JohnsonJacksonParticleSlipFvPatchVectorField& ptf, - const DimensionedField& iF -) -: - partialSlipFvPatchVectorField(ptf, iF), - specularityCoefficient_(ptf.specularityCoefficient_) -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -void Foam::JohnsonJacksonParticleSlipFvPatchVectorField::autoMap -( - const fvPatchFieldMapper& m -) -{ - partialSlipFvPatchVectorField::autoMap(m); -} - - -void Foam::JohnsonJacksonParticleSlipFvPatchVectorField::rmap -( - const fvPatchVectorField& ptf, - const labelList& addr -) -{ - partialSlipFvPatchVectorField::rmap(ptf, addr); -} - - -void Foam::JohnsonJacksonParticleSlipFvPatchVectorField::updateCoeffs() -{ - if (updated()) - { - return; - } - - // lookup the fluid model and the phase - const twoPhaseSystem& fluid = db().lookupObject - ( - "phaseProperties" - ); - - const phaseModel& phased - ( - fluid.phase1().name() == internalField().group() - ? fluid.phase1() - : fluid.phase2() - ); - - // lookup all the fields on this patch - const fvPatchScalarField& alpha - ( - patch().lookupPatchField - ( - phased.volScalarField::name() - ) - ); - - const fvPatchScalarField& gs0 - ( - patch().lookupPatchField - ( - IOobject::groupName("gs0", phased.name()) - ) - ); - - const scalarField nu - ( - patch().lookupPatchField - ( - IOobject::groupName("nut", phased.name()) - ) - ); - - const scalarField nuFric - ( - patch().lookupPatchField - ( - IOobject::groupName("nuFric", phased.name()) - ) - ); - - word ThetaName(IOobject::groupName("Theta", phased.name())); - - const fvPatchScalarField& Theta - ( - db().foundObject(ThetaName) - ? patch().lookupPatchField(ThetaName) - : alpha - ); - - // lookup the packed volume fraction - dimensionedScalar alphaMax - ( - "alphaMax", - dimless, - db() - .lookupObject - ( - IOobject::groupName("momentumTransport", phased.name()) - ) - .subDict("RAS") - .subDict("kineticTheoryCoeffs") - .lookup("alphaMax") - ); - - // calculate the slip value fraction - scalarField c - ( - constant::mathematical::pi - *alpha - *gs0 - *specularityCoefficient_.value() - *sqrt(3.0*Theta) - /max(6.0*(nu - nuFric)*alphaMax.value(), small) - ); - - this->valueFraction() = c/(c + patch().deltaCoeffs()); - - partialSlipFvPatchVectorField::updateCoeffs(); -} - - -void Foam::JohnsonJacksonParticleSlipFvPatchVectorField::write -( - Ostream& os -) const -{ - fvPatchVectorField::write(os); - writeEntry(os, "specularityCoefficient", specularityCoefficient_); - writeEntry(os, "value", *this); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/derivedFvPatchFields/JohnsonJacksonParticleSlip/JohnsonJacksonParticleSlipFvPatchVectorField.H b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/derivedFvPatchFields/JohnsonJacksonParticleSlip/JohnsonJacksonParticleSlipFvPatchVectorField.H deleted file mode 100644 index 3a4bd76c37..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/derivedFvPatchFields/JohnsonJacksonParticleSlip/JohnsonJacksonParticleSlipFvPatchVectorField.H +++ /dev/null @@ -1,173 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::JohnsonJacksonParticleSlipFvPatchVectorField - -Description - Partial slip boundary condition for the particulate velocity. - - References: - \verbatim - "Multifluid Eulerian modeling of dense gas–solids fluidized bed - hydrodynamics: Influence of the dissipation parameters" - Reuge, N., - Chemical Engineering Science - Volume 63, Issue 22, November 2008, pp. 5540-5551 - \endverbatim - - \verbatim - "Frictional-collisional constitutive relations for granular materials, - with application to plane shearing" - Johnson, P.C., and Jackson, R., - Journal of Fluid Mechanics - Volume 176, March 1987, pp. 67-93 - \endverbatim - -SourceFiles - JohnsonJacksonParticleSlipFvPatchVectorField.C - -\*---------------------------------------------------------------------------*/ - -#ifndef JohnsonJacksonParticleSlipFvPatchVectorField_H -#define JohnsonJacksonParticleSlipFvPatchVectorField_H - -#include "partialSlipFvPatchFields.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - -/*---------------------------------------------------------------------------*\ - Class JohnsonJacksonParticleSlipFvPatchVectorField Declaration -\*---------------------------------------------------------------------------*/ - -class JohnsonJacksonParticleSlipFvPatchVectorField -: - public partialSlipFvPatchVectorField -{ - // Private Data - - //- Specularity coefficient - dimensionedScalar specularityCoefficient_; - - -public: - - //- Runtime type information - TypeName("JohnsonJacksonParticleSlip"); - - - // Constructors - - //- Construct from patch and internal field - JohnsonJacksonParticleSlipFvPatchVectorField - ( - const fvPatch&, - const DimensionedField& - ); - - //- Construct from patch, internal field and dictionary - JohnsonJacksonParticleSlipFvPatchVectorField - ( - const fvPatch&, - const DimensionedField&, - const dictionary& - ); - - //- Construct by mapping onto a new patch - JohnsonJacksonParticleSlipFvPatchVectorField - ( - const JohnsonJacksonParticleSlipFvPatchVectorField&, - const fvPatch&, - const DimensionedField&, - const fvPatchFieldMapper& - ); - - //- Copy constructor - JohnsonJacksonParticleSlipFvPatchVectorField - ( - const JohnsonJacksonParticleSlipFvPatchVectorField& - ); - - //- Construct and return a clone - virtual tmp clone() const - { - return tmp - ( - new JohnsonJacksonParticleSlipFvPatchVectorField(*this) - ); - } - - //- Copy constructor setting internal field reference - JohnsonJacksonParticleSlipFvPatchVectorField - ( - const JohnsonJacksonParticleSlipFvPatchVectorField&, - const DimensionedField& - ); - - //- Construct and return a clone setting internal field reference - virtual tmp clone - ( - const DimensionedField& iF - ) const - { - return tmp - ( - new JohnsonJacksonParticleSlipFvPatchVectorField(*this, iF) - ); - } - - - // Member Functions - - // Mapping functions - - //- Map (and resize as needed) from self given a mapping object - // Used to update fields following mesh topology change - virtual void autoMap(const fvPatchFieldMapper&); - - //- Reverse map the given fvPatchField onto this fvPatchField - // Used to reconstruct fields - virtual void rmap(const fvPatchVectorField&, const labelList&); - - - //- Update the coefficients - virtual void updateCoeffs(); - - //- Write - virtual void write(Ostream&) const; - -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/derivedFvPatchFields/JohnsonJacksonParticleTheta/JohnsonJacksonParticleThetaFvPatchScalarField.C b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/derivedFvPatchFields/JohnsonJacksonParticleTheta/JohnsonJacksonParticleThetaFvPatchScalarField.C deleted file mode 100644 index 4d1d2bc15f..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/derivedFvPatchFields/JohnsonJacksonParticleTheta/JohnsonJacksonParticleThetaFvPatchScalarField.C +++ /dev/null @@ -1,298 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "JohnsonJacksonParticleThetaFvPatchScalarField.H" -#include "addToRunTimeSelectionTable.H" -#include "twoPhaseSystem.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - makePatchTypeField - ( - fvPatchScalarField, - JohnsonJacksonParticleThetaFvPatchScalarField - ); -} - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::JohnsonJacksonParticleThetaFvPatchScalarField:: -JohnsonJacksonParticleThetaFvPatchScalarField -( - const fvPatch& p, - const DimensionedField& iF -) -: - mixedFvPatchScalarField(p, iF), - restitutionCoefficient_("restitutionCoefficient", dimless, 0), - specularityCoefficient_("specularityCoefficient", dimless, 0) -{} - - -Foam::JohnsonJacksonParticleThetaFvPatchScalarField:: -JohnsonJacksonParticleThetaFvPatchScalarField -( - const JohnsonJacksonParticleThetaFvPatchScalarField& ptf, - const fvPatch& p, - const DimensionedField& iF, - const fvPatchFieldMapper& mapper -) -: - mixedFvPatchScalarField(ptf, p, iF, mapper), - restitutionCoefficient_(ptf.restitutionCoefficient_), - specularityCoefficient_(ptf.specularityCoefficient_) -{ -} - - -Foam::JohnsonJacksonParticleThetaFvPatchScalarField:: -JohnsonJacksonParticleThetaFvPatchScalarField -( - const fvPatch& p, - const DimensionedField& iF, - const dictionary& dict -) -: - mixedFvPatchScalarField(p, iF), - restitutionCoefficient_ - ( - "restitutionCoefficient", - dimless, - dict.lookup("restitutionCoefficient") - ), - specularityCoefficient_ - ( - "specularityCoefficient", - dimless, - dict.lookup("specularityCoefficient") - ) -{ - if - ( - (restitutionCoefficient_.value() < 0) - || (restitutionCoefficient_.value() > 1) - ) - { - FatalErrorInFunction - << "The restitution coefficient has to be between 0 and 1" - << abort(FatalError); - } - - if - ( - (specularityCoefficient_.value() < 0) - || (specularityCoefficient_.value() > 1) - ) - { - FatalErrorInFunction - << "The specularity coefficient has to be between 0 and 1" - << abort(FatalError); - } - - fvPatchScalarField::operator= - ( - scalarField("value", dict, p.size()) - ); -} - - -Foam::JohnsonJacksonParticleThetaFvPatchScalarField:: -JohnsonJacksonParticleThetaFvPatchScalarField -( - const JohnsonJacksonParticleThetaFvPatchScalarField& ptf -) -: - mixedFvPatchScalarField(ptf), - restitutionCoefficient_(ptf.restitutionCoefficient_), - specularityCoefficient_(ptf.specularityCoefficient_) -{} - - -Foam::JohnsonJacksonParticleThetaFvPatchScalarField:: -JohnsonJacksonParticleThetaFvPatchScalarField -( - const JohnsonJacksonParticleThetaFvPatchScalarField& ptf, - const DimensionedField& iF -) -: - mixedFvPatchScalarField(ptf, iF), - restitutionCoefficient_(ptf.restitutionCoefficient_), - specularityCoefficient_(ptf.specularityCoefficient_) -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -void Foam::JohnsonJacksonParticleThetaFvPatchScalarField::autoMap -( - const fvPatchFieldMapper& m -) -{ - mixedFvPatchScalarField::autoMap(m); -} - - -void Foam::JohnsonJacksonParticleThetaFvPatchScalarField::rmap -( - const fvPatchScalarField& ptf, - const labelList& addr -) -{ - mixedFvPatchScalarField::rmap(ptf, addr); -} - - -void Foam::JohnsonJacksonParticleThetaFvPatchScalarField::updateCoeffs() -{ - if (updated()) - { - return; - } - - // lookup the fluid model and the phase - const twoPhaseSystem& fluid = db().lookupObject - ( - "phaseProperties" - ); - - const phaseModel& phased - ( - fluid.phase1().name() == internalField().group() - ? fluid.phase1() - : fluid.phase2() - ); - - // lookup all the fields on this patch - const fvPatchScalarField& alpha - ( - patch().lookupPatchField - ( - phased.volScalarField::name() - ) - ); - - const fvPatchVectorField& U - ( - patch().lookupPatchField - ( - IOobject::groupName("U", phased.name()) - ) - ); - - const fvPatchScalarField& gs0 - ( - patch().lookupPatchField - ( - IOobject::groupName("gs0", phased.name()) - ) - ); - - const fvPatchScalarField& kappa - ( - patch().lookupPatchField - ( - IOobject::groupName("kappa", phased.name()) - ) - ); - - const scalarField Theta(patchInternalField()); - - // lookup the packed volume fraction - dimensionedScalar alphaMax - ( - "alphaMax", - dimless, - db() - .lookupObject - ( - IOobject::groupName("momentumTransport", phased.name()) - ) - .subDict("RAS") - .subDict("kineticTheoryCoeffs") - .lookup("alphaMax") - ); - - // calculate the reference value and the value fraction - if (restitutionCoefficient_.value() != 1.0) - { - this->refValue() = - (2.0/3.0) - *specularityCoefficient_.value() - *magSqr(U) - /(scalar(1) - sqr(restitutionCoefficient_.value())); - - this->refGrad() = 0.0; - - scalarField c - ( - constant::mathematical::pi - *alpha - *gs0 - *(scalar(1) - sqr(restitutionCoefficient_.value())) - *sqrt(3.0*Theta) - /max(4.0*kappa*alphaMax.value(), small) - ); - - this->valueFraction() = c/(c + patch().deltaCoeffs()); - } - - // for a restitution coefficient of 1, the boundary degenerates to a fixed - // gradient condition - else - { - this->refValue() = 0.0; - - this->refGrad() = - pos0(alpha - small) - *constant::mathematical::pi - *specularityCoefficient_.value() - *alpha - *gs0 - *sqrt(3.0*Theta) - *magSqr(U) - /max(6.0*kappa*alphaMax.value(), small); - - this->valueFraction() = 0.0; - } - - mixedFvPatchScalarField::updateCoeffs(); -} - - -void Foam::JohnsonJacksonParticleThetaFvPatchScalarField::write -( - Ostream& os -) const -{ - fvPatchScalarField::write(os); - writeEntry(os, "restitutionCoefficient", restitutionCoefficient_); - writeEntry(os, "specularityCoefficient", specularityCoefficient_); - writeEntry(os, "value", *this); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/derivedFvPatchFields/JohnsonJacksonParticleTheta/JohnsonJacksonParticleThetaFvPatchScalarField.H b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/derivedFvPatchFields/JohnsonJacksonParticleTheta/JohnsonJacksonParticleThetaFvPatchScalarField.H deleted file mode 100644 index 3f0da18966..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/derivedFvPatchFields/JohnsonJacksonParticleTheta/JohnsonJacksonParticleThetaFvPatchScalarField.H +++ /dev/null @@ -1,175 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::JohnsonJacksonParticleThetaFvPatchScalarField - -Description - Robin condition for the particulate granular temperature. - - References: - \verbatim - "Multifluid Eulerian modeling of dense gas–solids fluidized bed - hydrodynamics: Influence of the dissipation parameters" - Reuge, N., - Chemical Engineering Science - Volume 63, Issue 22, November 2008, pp. 5540-5551 - \endverbatim - - \verbatim - "Frictional-collisional constitutive relations for granular materials, - with application to plane shearing" - Johnson, P.C., and Jackson, R., - Journal of Fluid Mechanics - Volume 176, March 1987, pp. 67-93 - \endverbatim - -SourceFiles - JohnsonJacksonParticleThetaFvPatchScalarField.C - -\*---------------------------------------------------------------------------*/ - -#ifndef JohnsonJacksonParticleThetaFvPatchScalarField_H -#define JohnsonJacksonParticleThetaFvPatchScalarField_H - -#include "mixedFvPatchFields.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - -/*---------------------------------------------------------------------------*\ - Class JohnsonJacksonParticleThetaFvPatchScalarField Declaration -\*---------------------------------------------------------------------------*/ - -class JohnsonJacksonParticleThetaFvPatchScalarField -: - public mixedFvPatchScalarField -{ - // Private Data - - //- Particle-wall restitution coefficient - dimensionedScalar restitutionCoefficient_; - - //- Specularity coefficient - dimensionedScalar specularityCoefficient_; - - -public: - - //- Runtime type information - TypeName("JohnsonJacksonParticleTheta"); - - - // Constructors - - //- Construct from patch and internal field - JohnsonJacksonParticleThetaFvPatchScalarField - ( - const fvPatch&, - const DimensionedField& - ); - - //- Construct from patch, internal field and dictionary - JohnsonJacksonParticleThetaFvPatchScalarField - ( - const fvPatch&, - const DimensionedField&, - const dictionary& - ); - - //- Construct by mapping onto a new patch - JohnsonJacksonParticleThetaFvPatchScalarField - ( - const JohnsonJacksonParticleThetaFvPatchScalarField&, - const fvPatch&, - const DimensionedField&, - const fvPatchFieldMapper& - ); - - //- Copy constructor - JohnsonJacksonParticleThetaFvPatchScalarField - ( - const JohnsonJacksonParticleThetaFvPatchScalarField& - ); - - //- Construct and return a clone - virtual tmp clone() const - { - return tmp - ( - new JohnsonJacksonParticleThetaFvPatchScalarField(*this) - ); - } - - //- Copy constructor setting internal field reference - JohnsonJacksonParticleThetaFvPatchScalarField - ( - const JohnsonJacksonParticleThetaFvPatchScalarField&, - const DimensionedField& - ); - - //- Construct and return a clone setting internal field reference - virtual tmp clone - ( - const DimensionedField& iF - ) const - { - return tmp - ( - new JohnsonJacksonParticleThetaFvPatchScalarField(*this, iF) - ); - } - - - // Member Functions - - // Mapping functions - - //- Map (and resize as needed) from self given a mapping object - // Used to update fields following mesh topology change - virtual void autoMap(const fvPatchFieldMapper&); - - //- Reverse map the given fvPatchField onto this fvPatchField - // Used to reconstruct fields - virtual void rmap(const fvPatchScalarField&, const labelList&); - - - //- Update the coefficients - virtual void updateCoeffs(); - - //- Write - virtual void write(Ostream&) const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/frictionalStressModel/JohnsonJackson/JohnsonJacksonFrictionalStress.C b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/frictionalStressModel/JohnsonJackson/JohnsonJacksonFrictionalStress.C deleted file mode 100644 index 083d2955c3..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/frictionalStressModel/JohnsonJackson/JohnsonJacksonFrictionalStress.C +++ /dev/null @@ -1,148 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "JohnsonJacksonFrictionalStress.H" -#include "addToRunTimeSelectionTable.H" -#include "mathematicalConstants.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace kineticTheoryModels -{ -namespace frictionalStressModels -{ - defineTypeNameAndDebug(JohnsonJackson, 0); - - addToRunTimeSelectionTable - ( - frictionalStressModel, - JohnsonJackson, - dictionary - ); -} -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::kineticTheoryModels::frictionalStressModels::JohnsonJackson:: -JohnsonJackson -( - const dictionary& dict -) -: - frictionalStressModel(dict), - coeffDict_(dict.optionalSubDict(typeName + "Coeffs")), - Fr_("Fr", dimensionSet(1, -1, -2, 0, 0), coeffDict_), - eta_("eta", dimless, coeffDict_), - p_("p", dimless, coeffDict_), - phi_("phi", dimless, coeffDict_), - alphaDeltaMin_("alphaDeltaMin", dimless, coeffDict_) -{ - phi_ *= constant::mathematical::pi/180.0; -} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::kineticTheoryModels::frictionalStressModels::JohnsonJackson:: -~JohnsonJackson() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp -Foam::kineticTheoryModels::frictionalStressModels::JohnsonJackson:: -frictionalPressure -( - const phaseModel& phase, - const dimensionedScalar& alphaMinFriction, - const dimensionedScalar& alphaMax -) const -{ - const volScalarField& alpha = phase; - - return - Fr_*pow(max(alpha - alphaMinFriction, scalar(0)), eta_) - /pow(max(alphaMax - alpha, alphaDeltaMin_), p_); -} - - -Foam::tmp -Foam::kineticTheoryModels::frictionalStressModels::JohnsonJackson:: -frictionalPressurePrime -( - const phaseModel& phase, - const dimensionedScalar& alphaMinFriction, - const dimensionedScalar& alphaMax -) const -{ - const volScalarField& alpha = phase; - - return Fr_* - ( - eta_*pow(max(alpha - alphaMinFriction, scalar(0)), eta_ - 1.0) - *(alphaMax-alpha) - + p_*pow(max(alpha - alphaMinFriction, scalar(0)), eta_) - )/pow(max(alphaMax - alpha, alphaDeltaMin_), p_ + 1.0); -} - - -Foam::tmp -Foam::kineticTheoryModels::frictionalStressModels::JohnsonJackson::nu -( - const phaseModel& phase, - const dimensionedScalar& alphaMinFriction, - const dimensionedScalar& alphaMax, - const volScalarField& pf, - const volSymmTensorField& D -) const -{ - return dimensionedScalar(dimTime, 0.5)*pf*sin(phi_); -} - - -bool Foam::kineticTheoryModels::frictionalStressModels::JohnsonJackson::read() -{ - coeffDict_ <<= dict_.optionalSubDict(typeName + "Coeffs"); - - Fr_.read(coeffDict_); - eta_.read(coeffDict_); - p_.read(coeffDict_); - - phi_.read(coeffDict_); - phi_ *= constant::mathematical::pi/180.0; - - alphaDeltaMin_.read(coeffDict_); - - return true; -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/frictionalStressModel/JohnsonJackson/JohnsonJacksonFrictionalStress.H b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/frictionalStressModel/JohnsonJackson/JohnsonJacksonFrictionalStress.H deleted file mode 100644 index 7641560903..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/frictionalStressModel/JohnsonJackson/JohnsonJacksonFrictionalStress.H +++ /dev/null @@ -1,131 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::kineticTheoryModels::frictionalStressModels::JohnsonJackson - -Description - -SourceFiles - JohnsonJacksonFrictionalStress.C - -\*---------------------------------------------------------------------------*/ - -#ifndef JohnsonJacksonFrictionalStress_H -#define JohnsonJacksonFrictionalStress_H - -#include "frictionalStressModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ -namespace kineticTheoryModels -{ -namespace frictionalStressModels -{ - -/*---------------------------------------------------------------------------*\ - Class JohnsonJackson Declaration -\*---------------------------------------------------------------------------*/ - -class JohnsonJackson -: - public frictionalStressModel -{ - // Private Data - - dictionary coeffDict_; - - //- Material constant for frictional normal stress - dimensionedScalar Fr_; - - //- Material constant for frictional normal stress - dimensionedScalar eta_; - - //- Material constant for frictional normal stress - dimensionedScalar p_; - - //- Angle of internal friction - dimensionedScalar phi_; - - //- Lower limit for (alphaMax - alpha1) - dimensionedScalar alphaDeltaMin_; - - -public: - - //- Runtime type information - TypeName("JohnsonJackson"); - - - // Constructors - - //- Construct from components - JohnsonJackson(const dictionary& dict); - - - //- Destructor - virtual ~JohnsonJackson(); - - - // Member Functions - - virtual tmp frictionalPressure - ( - const phaseModel& phase, - const dimensionedScalar& alphaMinFriction, - const dimensionedScalar& alphaMax - ) const; - - virtual tmp frictionalPressurePrime - ( - const phaseModel& phase, - const dimensionedScalar& alphaMinFriction, - const dimensionedScalar& alphaMax - ) const; - - virtual tmp nu - ( - const phaseModel& phase, - const dimensionedScalar& alphaMinFriction, - const dimensionedScalar& alphaMax, - const volScalarField& pf, - const volSymmTensorField& D - ) const; - - virtual bool read(); -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace frictionalStressModels -} // End namespace kineticTheoryModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/frictionalStressModel/JohnsonJacksonSchaeffer/JohnsonJacksonSchaefferFrictionalStress.C b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/frictionalStressModel/JohnsonJacksonSchaeffer/JohnsonJacksonSchaefferFrictionalStress.C deleted file mode 100644 index 0829e4fb21..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/frictionalStressModel/JohnsonJacksonSchaeffer/JohnsonJacksonSchaefferFrictionalStress.C +++ /dev/null @@ -1,200 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2016-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "JohnsonJacksonSchaefferFrictionalStress.H" -#include "addToRunTimeSelectionTable.H" -#include "mathematicalConstants.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace kineticTheoryModels -{ -namespace frictionalStressModels -{ - defineTypeNameAndDebug(JohnsonJacksonSchaeffer, 0); - - addToRunTimeSelectionTable - ( - frictionalStressModel, - JohnsonJacksonSchaeffer, - dictionary - ); -} -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::kineticTheoryModels::frictionalStressModels:: -JohnsonJacksonSchaeffer::JohnsonJacksonSchaeffer -( - const dictionary& dict -) -: - frictionalStressModel(dict), - coeffDict_(dict.optionalSubDict(typeName + "Coeffs")), - Fr_("Fr", dimensionSet(1, -1, -2, 0, 0), coeffDict_), - eta_("eta", dimless, coeffDict_), - p_("p", dimless, coeffDict_), - phi_("phi", dimless, coeffDict_), - alphaDeltaMin_("alphaDeltaMin", dimless, coeffDict_) -{ - phi_ *= constant::mathematical::pi/180.0; -} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::kineticTheoryModels::frictionalStressModels:: -JohnsonJacksonSchaeffer::~JohnsonJacksonSchaeffer() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp -Foam::kineticTheoryModels::frictionalStressModels:: -JohnsonJacksonSchaeffer::frictionalPressure -( - const phaseModel& phase, - const dimensionedScalar& alphaMinFriction, - const dimensionedScalar& alphaMax -) const -{ - const volScalarField& alpha = phase; - - return - Fr_*pow(max(alpha - alphaMinFriction, scalar(0)), eta_) - /pow(max(alphaMax - alpha, alphaDeltaMin_), p_); -} - - -Foam::tmp -Foam::kineticTheoryModels::frictionalStressModels:: -JohnsonJacksonSchaeffer::frictionalPressurePrime -( - const phaseModel& phase, - const dimensionedScalar& alphaMinFriction, - const dimensionedScalar& alphaMax -) const -{ - const volScalarField& alpha = phase; - - return Fr_* - ( - eta_*pow(max(alpha - alphaMinFriction, scalar(0)), eta_ - 1.0) - *(alphaMax-alpha) - + p_*pow(max(alpha - alphaMinFriction, scalar(0)), eta_) - )/pow(max(alphaMax - alpha, alphaDeltaMin_), p_ + 1.0); -} - - -Foam::tmp -Foam::kineticTheoryModels::frictionalStressModels:: -JohnsonJacksonSchaeffer::nu -( - const phaseModel& phase, - const dimensionedScalar& alphaMinFriction, - const dimensionedScalar& alphaMax, - const volScalarField& pf, - const volSymmTensorField& D -) const -{ - const volScalarField& alpha = phase; - - tmp tnu - ( - volScalarField::New - ( - "JohnsonJacksonSchaeffer:nu", - phase.mesh(), - dimensionedScalar(dimensionSet(0, 2, -1, 0, 0), 0) - ) - ); - - volScalarField& nuf = tnu.ref(); - - forAll(D, celli) - { - if (alpha[celli] > alphaMinFriction.value()) - { - nuf[celli] = - 0.5*pf[celli]*sin(phi_.value()) - /( - sqrt((1.0/3.0)*sqr(tr(D[celli])) - invariantII(D[celli])) - + small - ); - } - } - - const fvPatchList& patches = phase.mesh().boundary(); - const volVectorField& U = phase.U(); - - volScalarField::Boundary& nufBf = nuf.boundaryFieldRef(); - - forAll(patches, patchi) - { - if (!patches[patchi].coupled()) - { - nufBf[patchi] = - ( - pf.boundaryField()[patchi]*sin(phi_.value()) - /( - mag(U.boundaryField()[patchi].snGrad()) - + small - ) - ); - } - } - - // Correct coupled BCs - nuf.correctBoundaryConditions(); - - return tnu; -} - - -bool Foam::kineticTheoryModels::frictionalStressModels:: -JohnsonJacksonSchaeffer::read() -{ - coeffDict_ <<= dict_.optionalSubDict(typeName + "Coeffs"); - - Fr_.read(coeffDict_); - eta_.read(coeffDict_); - p_.read(coeffDict_); - - phi_.read(coeffDict_); - phi_ *= constant::mathematical::pi/180.0; - - alphaDeltaMin_.read(coeffDict_); - - return true; -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/frictionalStressModel/JohnsonJacksonSchaeffer/JohnsonJacksonSchaefferFrictionalStress.H b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/frictionalStressModel/JohnsonJacksonSchaeffer/JohnsonJacksonSchaefferFrictionalStress.H deleted file mode 100644 index dfc177d45d..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/frictionalStressModel/JohnsonJacksonSchaeffer/JohnsonJacksonSchaefferFrictionalStress.H +++ /dev/null @@ -1,131 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2016-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::kineticTheoryModels::frictionalStressModels::JohnsonJacksonSchaeffer - -Description - -SourceFiles - JohnsonJacksonSchaefferFrictionalStress.C - -\*---------------------------------------------------------------------------*/ - -#ifndef JohnsonJacksonSchaefferFrictionalStress_H -#define JohnsonJacksonSchaefferFrictionalStress_H - -#include "frictionalStressModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ -namespace kineticTheoryModels -{ -namespace frictionalStressModels -{ - -/*---------------------------------------------------------------------------*\ - Class JohnsonJacksonSchaeffer Declaration -\*---------------------------------------------------------------------------*/ - -class JohnsonJacksonSchaeffer -: - public frictionalStressModel -{ - // Private Data - - dictionary coeffDict_; - - //- Material constant for frictional normal stress - dimensionedScalar Fr_; - - //- Material constant for frictional normal stress - dimensionedScalar eta_; - - //- Material constant for frictional normal stress - dimensionedScalar p_; - - //- Angle of internal friction - dimensionedScalar phi_; - - //- Lower limit for (alphaMax - alpha1) - dimensionedScalar alphaDeltaMin_; - - -public: - - //- Runtime type information - TypeName("JohnsonJacksonSchaeffer"); - - - // Constructors - - //- Construct from components - JohnsonJacksonSchaeffer(const dictionary& dict); - - - //- Destructor - virtual ~JohnsonJacksonSchaeffer(); - - - // Member Functions - - virtual tmp frictionalPressure - ( - const phaseModel& phase, - const dimensionedScalar& alphaMinFriction, - const dimensionedScalar& alphaMax - ) const; - - virtual tmp frictionalPressurePrime - ( - const phaseModel& phase, - const dimensionedScalar& alphaMinFriction, - const dimensionedScalar& alphaMax - ) const; - - virtual tmp nu - ( - const phaseModel& phase, - const dimensionedScalar& alphaMinFriction, - const dimensionedScalar& alphaMax, - const volScalarField& pf, - const volSymmTensorField& D - ) const; - - virtual bool read(); -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace frictionalStressModels -} // End namespace kineticTheoryModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/frictionalStressModel/Schaeffer/SchaefferFrictionalStress.C b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/frictionalStressModel/Schaeffer/SchaefferFrictionalStress.C deleted file mode 100644 index c05e5a7f4e..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/frictionalStressModel/Schaeffer/SchaefferFrictionalStress.C +++ /dev/null @@ -1,182 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "SchaefferFrictionalStress.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace kineticTheoryModels -{ -namespace frictionalStressModels -{ - defineTypeNameAndDebug(Schaeffer, 0); - - addToRunTimeSelectionTable - ( - frictionalStressModel, - Schaeffer, - dictionary - ); -} -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::kineticTheoryModels::frictionalStressModels::Schaeffer::Schaeffer -( - const dictionary& dict -) -: - frictionalStressModel(dict), - coeffDict_(dict.optionalSubDict(typeName + "Coeffs")), - phi_("phi", dimless, coeffDict_) -{ - phi_ *= constant::mathematical::pi/180.0; -} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::kineticTheoryModels::frictionalStressModels::Schaeffer::~Schaeffer() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp -Foam::kineticTheoryModels::frictionalStressModels::Schaeffer:: -frictionalPressure -( - const phaseModel& phase, - const dimensionedScalar& alphaMinFriction, - const dimensionedScalar& alphaMax -) const -{ - const volScalarField& alpha = phase; - - return - dimensionedScalar(dimensionSet(1, -1, -2, 0, 0), 1e24) - *pow(Foam::max(alpha - alphaMinFriction, scalar(0)), 10.0); -} - - -Foam::tmp -Foam::kineticTheoryModels::frictionalStressModels::Schaeffer:: -frictionalPressurePrime -( - const phaseModel& phase, - const dimensionedScalar& alphaMinFriction, - const dimensionedScalar& alphaMax -) const -{ - const volScalarField& alpha = phase; - - return - dimensionedScalar(dimensionSet(1, -1, -2, 0, 0), 1e25) - *pow(Foam::max(alpha - alphaMinFriction, scalar(0)), 9.0); -} - - -Foam::tmp -Foam::kineticTheoryModels::frictionalStressModels::Schaeffer::nu -( - const phaseModel& phase, - const dimensionedScalar& alphaMinFriction, - const dimensionedScalar& alphaMax, - const volScalarField& pf, - const volSymmTensorField& D -) const -{ - const volScalarField& alpha = phase; - - tmp tnu - ( - volScalarField::New - ( - "Schaeffer:nu", - phase.mesh(), - dimensionedScalar(dimensionSet(0, 2, -1, 0, 0), 0) - ) - ); - - volScalarField& nuf = tnu.ref(); - - forAll(D, celli) - { - if (alpha[celli] > alphaMinFriction.value()) - { - nuf[celli] = - 0.5*pf[celli]*sin(phi_.value()) - /( - sqrt((1.0/3.0)*sqr(tr(D[celli])) - invariantII(D[celli])) - + small - ); - } - } - - const fvPatchList& patches = phase.mesh().boundary(); - const volVectorField& U = phase.U(); - - volScalarField::Boundary& nufBf = nuf.boundaryFieldRef(); - - forAll(patches, patchi) - { - if (!patches[patchi].coupled()) - { - nufBf[patchi] = - ( - pf.boundaryField()[patchi]*sin(phi_.value()) - /( - mag(U.boundaryField()[patchi].snGrad()) - + small - ) - ); - } - } - - // Correct coupled BCs - nuf.correctBoundaryConditions(); - - return tnu; -} - - -bool Foam::kineticTheoryModels::frictionalStressModels::Schaeffer::read() -{ - coeffDict_ <<= dict_.optionalSubDict(typeName + "Coeffs"); - - phi_.read(coeffDict_); - phi_ *= constant::mathematical::pi/180.0; - - return true; -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/frictionalStressModel/Schaeffer/SchaefferFrictionalStress.H b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/frictionalStressModel/Schaeffer/SchaefferFrictionalStress.H deleted file mode 100644 index fca2efe8a1..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/frictionalStressModel/Schaeffer/SchaefferFrictionalStress.H +++ /dev/null @@ -1,119 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::kineticTheoryModels::frictionalStressModels::Schaeffer - -Description - -SourceFiles - SchaefferFrictionalStress.C - -\*---------------------------------------------------------------------------*/ - -#ifndef SchaefferFrictionalStress_H -#define SchaefferFrictionalStress_H - -#include "frictionalStressModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ -namespace kineticTheoryModels -{ -namespace frictionalStressModels -{ - -/*---------------------------------------------------------------------------*\ - Class Schaeffer Declaration -\*---------------------------------------------------------------------------*/ - -class Schaeffer -: - public frictionalStressModel -{ - // Private Data - - dictionary coeffDict_; - - //- Angle of internal friction - dimensionedScalar phi_; - - -public: - - //- Runtime type information - TypeName("Schaeffer"); - - - // Constructors - - //- Construct from components - Schaeffer(const dictionary& dict); - - - //- Destructor - virtual ~Schaeffer(); - - - // Member Functions - - virtual tmp frictionalPressure - ( - const phaseModel& phase, - const dimensionedScalar& alphaMinFriction, - const dimensionedScalar& alphaMax - ) const; - - virtual tmp frictionalPressurePrime - ( - const phaseModel& phase, - const dimensionedScalar& alphaMinFriction, - const dimensionedScalar& alphaMax - ) const; - - virtual tmp nu - ( - const phaseModel& phase, - const dimensionedScalar& alphaMinFriction, - const dimensionedScalar& alphaMax, - const volScalarField& pf, - const volSymmTensorField& D - ) const; - - virtual bool read(); -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace frictionalStressModels -} // End namespace kineticTheoryModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/frictionalStressModel/frictionalStressModel/frictionalStressModel.C b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/frictionalStressModel/frictionalStressModel/frictionalStressModel.C deleted file mode 100644 index 1a1659c474..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/frictionalStressModel/frictionalStressModel/frictionalStressModel.C +++ /dev/null @@ -1,58 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "frictionalStressModel.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace kineticTheoryModels -{ - defineTypeNameAndDebug(frictionalStressModel, 0); - - defineRunTimeSelectionTable(frictionalStressModel, dictionary); -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::kineticTheoryModels::frictionalStressModel::frictionalStressModel -( - const dictionary& dict -) -: - dict_(dict) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::kineticTheoryModels::frictionalStressModel::~frictionalStressModel() -{} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/frictionalStressModel/frictionalStressModel/frictionalStressModel.H b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/frictionalStressModel/frictionalStressModel/frictionalStressModel.H deleted file mode 100644 index 9ee134af6f..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/frictionalStressModel/frictionalStressModel/frictionalStressModel.H +++ /dev/null @@ -1,145 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::kineticTheoryModels::frictionalStressModel - -SourceFiles - frictionalStressModel.C - -\*---------------------------------------------------------------------------*/ - -#ifndef frictionalStressModel_H -#define frictionalStressModel_H - -#include "dictionary.H" -#include "volFields.H" -#include "dimensionedTypes.H" -#include "runTimeSelectionTables.H" -#include "phaseModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ -namespace kineticTheoryModels -{ - -/*---------------------------------------------------------------------------*\ - Class frictionalStressModel Declaration -\*---------------------------------------------------------------------------*/ - -class frictionalStressModel -{ -protected: - - // Protected data - - //- Reference to higher-level dictionary for re-read - const dictionary& dict_; - - -public: - - //- Runtime type information - TypeName("frictionalStressModel"); - - // Declare runtime constructor selection table - declareRunTimeSelectionTable - ( - autoPtr, - frictionalStressModel, - dictionary, - ( - const dictionary& dict - ), - (dict) - ); - - - // Constructors - - //- Construct from components - frictionalStressModel(const dictionary& dict); - - //- Disallow default bitwise copy construction - frictionalStressModel(const frictionalStressModel&) = delete; - - - // Selectors - - static autoPtr New - ( - const dictionary& dict - ); - - - //- Destructor - virtual ~frictionalStressModel(); - - - // Member Functions - - virtual tmp frictionalPressure - ( - const phaseModel& phase, - const dimensionedScalar& alphaMinFriction, - const dimensionedScalar& alphaMax - ) const = 0; - - virtual tmp frictionalPressurePrime - ( - const phaseModel& phase, - const dimensionedScalar& alphaMinFriction, - const dimensionedScalar& alphaMax - ) const = 0; - - virtual tmp nu - ( - const phaseModel& phase, - const dimensionedScalar& alphaMinFriction, - const dimensionedScalar& alphaMax, - const volScalarField& pf, - const volSymmTensorField& D - ) const = 0; - - virtual bool read() = 0; - - - // Member Operators - - //- Disallow default bitwise assignment - void operator=(const frictionalStressModel&) = delete; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace kineticTheoryModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/frictionalStressModel/frictionalStressModel/newFrictionalStressModel.C b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/frictionalStressModel/frictionalStressModel/newFrictionalStressModel.C deleted file mode 100644 index 981ef36ccc..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/frictionalStressModel/frictionalStressModel/newFrictionalStressModel.C +++ /dev/null @@ -1,60 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "frictionalStressModel.H" - -// * * * * * * * * * * * * * * * * Selectors * * * * * * * * * * * * * * * * // - -Foam::autoPtr -Foam::kineticTheoryModels::frictionalStressModel::New -( - const dictionary& dict -) -{ - word frictionalStressModelType(dict.lookup("frictionalStressModel")); - - Info<< "Selecting frictionalStressModel " - << frictionalStressModelType << endl; - - dictionaryConstructorTable::iterator cstrIter = - dictionaryConstructorTablePtr_->find(frictionalStressModelType); - - if (cstrIter == dictionaryConstructorTablePtr_->end()) - { - FatalError - << "frictionalStressModel::New(const dictionary&) : " << endl - << " unknown frictionalStressModelType type " - << frictionalStressModelType - << ", constructor not in hash table" << endl << endl - << " Valid frictionalStressModelType types are :" << endl; - Info<< dictionaryConstructorTablePtr_->sortedToc() - << abort(FatalError); - } - - return autoPtr(cstrIter()(dict)); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/granularPressureModel/Lun/LunPressure.C b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/granularPressureModel/Lun/LunPressure.C deleted file mode 100644 index 7fb213ab98..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/granularPressureModel/Lun/LunPressure.C +++ /dev/null @@ -1,98 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "LunPressure.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace kineticTheoryModels -{ -namespace granularPressureModels -{ - defineTypeNameAndDebug(Lun, 0); - - addToRunTimeSelectionTable - ( - granularPressureModel, - Lun, - dictionary - ); -} -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::kineticTheoryModels::granularPressureModels::Lun::Lun -( - const dictionary& dict -) -: - granularPressureModel(dict) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::kineticTheoryModels::granularPressureModels::Lun::~Lun() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp -Foam::kineticTheoryModels::granularPressureModels::Lun::granularPressureCoeff -( - const volScalarField& alpha1, - const volScalarField& g0, - const volScalarField& rho1, - const dimensionedScalar& e -) const -{ - - return rho1*alpha1*(1.0 + 2.0*(1.0 + e)*alpha1*g0); -} - - -Foam::tmp -Foam::kineticTheoryModels::granularPressureModels::Lun:: -granularPressureCoeffPrime -( - const volScalarField& alpha1, - const volScalarField& g0, - const volScalarField& g0prime, - const volScalarField& rho1, - const dimensionedScalar& e -) const -{ - return rho1*(1.0 + alpha1*(1.0 + e)*(4.0*g0 + 2.0*g0prime*alpha1)); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/granularPressureModel/Lun/LunPressure.H b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/granularPressureModel/Lun/LunPressure.H deleted file mode 100644 index 71b8e3a892..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/granularPressureModel/Lun/LunPressure.H +++ /dev/null @@ -1,104 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::kineticTheoryModels::granularPressureModels::Lun - -Description - -SourceFiles - LunPressure.C - -\*---------------------------------------------------------------------------*/ - -#ifndef LunPressure_H -#define LunPressure_H - -#include "granularPressureModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ -namespace kineticTheoryModels -{ -namespace granularPressureModels -{ - -/*---------------------------------------------------------------------------*\ - Class Lun Declaration -\*---------------------------------------------------------------------------*/ - -class Lun -: - public granularPressureModel -{ - -public: - - //- Runtime type information - TypeName("Lun"); - - - // Constructors - - //- Construct from components - Lun(const dictionary& dict); - - - //- Destructor - virtual ~Lun(); - - - // Member Functions - - tmp granularPressureCoeff - ( - const volScalarField& alpha1, - const volScalarField& g0, - const volScalarField& rho1, - const dimensionedScalar& e - ) const; - - tmp granularPressureCoeffPrime - ( - const volScalarField& alpha1, - const volScalarField& g0, - const volScalarField& g0prime, - const volScalarField& rho1, - const dimensionedScalar& e - ) const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace granularPressureModels -} // End namespace kineticTheoryModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/granularPressureModel/SyamlalRogersOBrien/SyamlalRogersOBrienPressure.C b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/granularPressureModel/SyamlalRogersOBrien/SyamlalRogersOBrienPressure.C deleted file mode 100644 index 144daec324..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/granularPressureModel/SyamlalRogersOBrien/SyamlalRogersOBrienPressure.C +++ /dev/null @@ -1,101 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "SyamlalRogersOBrienPressure.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace kineticTheoryModels -{ -namespace granularPressureModels -{ - defineTypeNameAndDebug(SyamlalRogersOBrien, 0); - - addToRunTimeSelectionTable - ( - granularPressureModel, - SyamlalRogersOBrien, - dictionary - ); -} -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::kineticTheoryModels::granularPressureModels::SyamlalRogersOBrien:: -SyamlalRogersOBrien -( - const dictionary& dict -) -: - granularPressureModel(dict) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::kineticTheoryModels::granularPressureModels::SyamlalRogersOBrien:: -~SyamlalRogersOBrien() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp -Foam::kineticTheoryModels::granularPressureModels::SyamlalRogersOBrien:: -granularPressureCoeff -( - const volScalarField& alpha1, - const volScalarField& g0, - const volScalarField& rho1, - const dimensionedScalar& e -) const -{ - - return 2.0*rho1*(1.0 + e)*sqr(alpha1)*g0; -} - - -Foam::tmp -Foam::kineticTheoryModels::granularPressureModels::SyamlalRogersOBrien:: -granularPressureCoeffPrime -( - const volScalarField& alpha1, - const volScalarField& g0, - const volScalarField& g0prime, - const volScalarField& rho1, - const dimensionedScalar& e -) const -{ - return rho1*alpha1*(1.0 + e)*(4.0*g0 + 2.0*g0prime*alpha1); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/granularPressureModel/SyamlalRogersOBrien/SyamlalRogersOBrienPressure.H b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/granularPressureModel/SyamlalRogersOBrien/SyamlalRogersOBrienPressure.H deleted file mode 100644 index 12397b7d0c..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/granularPressureModel/SyamlalRogersOBrien/SyamlalRogersOBrienPressure.H +++ /dev/null @@ -1,104 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::kineticTheoryModels::granularPressureModels::SyamlalRogersOBrien - -Description - -SourceFiles - SyamlalRogersOBrienPressure.C - -\*---------------------------------------------------------------------------*/ - -#ifndef SyamlalRogersOBrienPressure_H -#define SyamlalRogersOBrienPressure_H - -#include "granularPressureModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ -namespace kineticTheoryModels -{ -namespace granularPressureModels -{ - -/*---------------------------------------------------------------------------*\ - Class SyamlalRogersOBrien Declaration -\*---------------------------------------------------------------------------*/ - -class SyamlalRogersOBrien -: - public granularPressureModel -{ - -public: - - //- Runtime type information - TypeName("SyamlalRogersOBrien"); - - - // Constructors - - //- Construct from components - SyamlalRogersOBrien(const dictionary& dict); - - - //- Destructor - virtual ~SyamlalRogersOBrien(); - - - // Member Functions - - tmp granularPressureCoeff - ( - const volScalarField& alpha1, - const volScalarField& g0, - const volScalarField& rho1, - const dimensionedScalar& e - ) const; - - tmp granularPressureCoeffPrime - ( - const volScalarField& alpha1, - const volScalarField& g0, - const volScalarField& g0prime, - const volScalarField& rho1, - const dimensionedScalar& e - ) const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace granularPressureModels -} // End namespace kineticTheoryModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/granularPressureModel/granularPressureModel/granularPressureModel.C b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/granularPressureModel/granularPressureModel/granularPressureModel.C deleted file mode 100644 index 37fd91f9c7..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/granularPressureModel/granularPressureModel/granularPressureModel.C +++ /dev/null @@ -1,58 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "granularPressureModel.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace kineticTheoryModels -{ - defineTypeNameAndDebug(granularPressureModel, 0); - - defineRunTimeSelectionTable(granularPressureModel, dictionary); -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::kineticTheoryModels::granularPressureModel::granularPressureModel -( - const dictionary& dict -) -: - dict_(dict) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::kineticTheoryModels::granularPressureModel::~granularPressureModel() -{} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/granularPressureModel/granularPressureModel/granularPressureModel.H b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/granularPressureModel/granularPressureModel/granularPressureModel.H deleted file mode 100644 index 14a0d70194..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/granularPressureModel/granularPressureModel/granularPressureModel.H +++ /dev/null @@ -1,142 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::kineticTheoryModels::granularPressureModel - -SourceFiles - granularPressureModel.C - -\*---------------------------------------------------------------------------*/ - -#ifndef granularPressureModel_H -#define granularPressureModel_H - -#include "dictionary.H" -#include "volFields.H" -#include "dimensionedTypes.H" -#include "runTimeSelectionTables.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ -namespace kineticTheoryModels -{ - -/*---------------------------------------------------------------------------*\ - Class granularPressureModel Declaration -\*---------------------------------------------------------------------------*/ - -class granularPressureModel -{ -protected: - - // Protected data - - const dictionary& dict_; - - -public: - - //- Runtime type information - TypeName("granularPressureModel"); - - // Declare runtime constructor selection table - declareRunTimeSelectionTable - ( - autoPtr, - granularPressureModel, - dictionary, - ( - const dictionary& dict - ), - (dict) - ); - - - // Constructors - - //- Construct from components - granularPressureModel(const dictionary& dict); - - //- Disallow default bitwise copy construction - granularPressureModel(const granularPressureModel&) = delete; - - - // Selectors - - static autoPtr New - ( - const dictionary& dict - ); - - - //- Destructor - virtual ~granularPressureModel(); - - - // Member Functions - - //- Granular pressure coefficient - virtual tmp granularPressureCoeff - ( - const volScalarField& alpha1, - const volScalarField& g0, - const volScalarField& rho1, - const dimensionedScalar& e - ) const = 0; - - //- Derivative of the granular pressure coefficient - virtual tmp granularPressureCoeffPrime - ( - const volScalarField& alpha1, - const volScalarField& g0, - const volScalarField& g0prime, - const volScalarField& rho1, - const dimensionedScalar& e - ) const = 0; - - virtual bool read() - { - return true; - } - - - // Member Operators - - //- Disallow default bitwise assignment - void operator=(const granularPressureModel&) = delete; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace kineticTheoryModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/granularPressureModel/granularPressureModel/newGranularPressureModel.C b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/granularPressureModel/granularPressureModel/newGranularPressureModel.C deleted file mode 100644 index 07440f7241..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/granularPressureModel/granularPressureModel/newGranularPressureModel.C +++ /dev/null @@ -1,60 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "granularPressureModel.H" - -// * * * * * * * * * * * * * * * * Selectors * * * * * * * * * * * * * * * * // - -Foam::autoPtr -Foam::kineticTheoryModels::granularPressureModel::New -( - const dictionary& dict -) -{ - word granularPressureModelType(dict.lookup("granularPressureModel")); - - Info<< "Selecting granularPressureModel " - << granularPressureModelType << endl; - - dictionaryConstructorTable::iterator cstrIter = - dictionaryConstructorTablePtr_->find(granularPressureModelType); - - if (cstrIter == dictionaryConstructorTablePtr_->end()) - { - FatalError - << "granularPressureModel::New(const dictionary&) : " << endl - << " unknown granularPressureModelType type " - << granularPressureModelType - << ", constructor not in hash table" << endl << endl - << " Valid granularPressureModelType types are :" << endl; - Info<< dictionaryConstructorTablePtr_->sortedToc() - << abort(FatalError); - } - - return autoPtr(cstrIter()(dict)); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/kineticTheoryModel/kineticTheoryModel.C b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/kineticTheoryModel/kineticTheoryModel.C deleted file mode 100644 index b1c37450d4..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/kineticTheoryModel/kineticTheoryModel.C +++ /dev/null @@ -1,549 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "kineticTheoryModel.H" -#include "mathematicalConstants.H" -#include "twoPhaseSystem.H" -#include "fvOptions.H" - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::RASModels::kineticTheoryModel::kineticTheoryModel -( - const volScalarField& alpha, - const volScalarField& rho, - const volVectorField& U, - const surfaceScalarField& alphaRhoPhi, - const surfaceScalarField& phi, - const phaseModel& phase, - const word& type -) -: - eddyViscosity> - ( - type, - alpha, - rho, - U, - alphaRhoPhi, - phi, - phase - ), - - phase_(phase), - - viscosityModel_ - ( - kineticTheoryModels::viscosityModel::New - ( - coeffDict_ - ) - ), - conductivityModel_ - ( - kineticTheoryModels::conductivityModel::New - ( - coeffDict_ - ) - ), - radialModel_ - ( - kineticTheoryModels::radialModel::New - ( - coeffDict_ - ) - ), - granularPressureModel_ - ( - kineticTheoryModels::granularPressureModel::New - ( - coeffDict_ - ) - ), - frictionalStressModel_ - ( - kineticTheoryModels::frictionalStressModel::New - ( - coeffDict_ - ) - ), - - equilibrium_(coeffDict_.lookup("equilibrium")), - e_("e", dimless, coeffDict_), - alphaMax_("alphaMax", dimless, coeffDict_), - alphaMinFriction_ - ( - "alphaMinFriction", - dimless, - coeffDict_ - ), - residualAlpha_ - ( - "residualAlpha", - dimless, - coeffDict_ - ), - - maxNut_ - ( - "maxNut", - dimensionSet(0,2,-1,0,0), - coeffDict_.lookupOrDefault("maxNut",1000) - ), - - Theta_ - ( - IOobject - ( - IOobject::groupName("Theta", phase.name()), - U.time().timeName(), - U.mesh(), - IOobject::MUST_READ, - IOobject::AUTO_WRITE - ), - U.mesh() - ), - - lambda_ - ( - IOobject - ( - IOobject::groupName("lambda", phase.name()), - U.time().timeName(), - U.mesh(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), - U.mesh(), - dimensionedScalar(dimensionSet(0, 2, -1, 0, 0), 0) - ), - - gs0_ - ( - IOobject - ( - IOobject::groupName("gs0", phase.name()), - U.time().timeName(), - U.mesh(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), - U.mesh(), - dimensionedScalar(dimensionSet(0, 0, 0, 0, 0), 0) - ), - - kappa_ - ( - IOobject - ( - IOobject::groupName("kappa", phase.name()), - U.time().timeName(), - U.mesh(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), - U.mesh(), - dimensionedScalar(dimensionSet(1, -1, -1, 0, 0), 0) - ), - - nuFric_ - ( - IOobject - ( - IOobject::groupName("nuFric", phase.name()), - U.time().timeName(), - U.mesh(), - IOobject::NO_READ, - IOobject::AUTO_WRITE - ), - U.mesh(), - dimensionedScalar(dimensionSet(0, 2, -1, 0, 0), 0) - ) -{ - if (type == typeName) - { - printCoeffs(type); - } -} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::RASModels::kineticTheoryModel::~kineticTheoryModel() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -bool Foam::RASModels::kineticTheoryModel::read() -{ - if - ( - eddyViscosity>::read() - ) - { - coeffDict().lookup("equilibrium") >> equilibrium_; - e_.readIfPresent(coeffDict()); - alphaMax_.readIfPresent(coeffDict()); - alphaMinFriction_.readIfPresent(coeffDict()); - - viscosityModel_->read(); - conductivityModel_->read(); - radialModel_->read(); - granularPressureModel_->read(); - frictionalStressModel_->read(); - - return true; - } - else - { - return false; - } -} - - -Foam::tmp -Foam::RASModels::kineticTheoryModel::k() const -{ - NotImplemented; - return nut_; -} - - -Foam::tmp -Foam::RASModels::kineticTheoryModel::epsilon() const -{ - NotImplemented; - return nut_; -} - - -Foam::tmp -Foam::RASModels::kineticTheoryModel::sigma() const -{ - return volSymmTensorField::New - ( - IOobject::groupName("R", U_.group()), - - (nut_)*dev(twoSymm(fvc::grad(U_))) - - (lambda_*fvc::div(phi_))*symmTensor::I - ); -} - - -Foam::tmp -Foam::RASModels::kineticTheoryModel::pPrime() const -{ - const volScalarField& rho = phase_.rho(); - - tmp tpPrime - ( - Theta_ - *granularPressureModel_->granularPressureCoeffPrime - ( - alpha_, - radialModel_->g0(alpha_, alphaMinFriction_, alphaMax_), - radialModel_->g0prime(alpha_, alphaMinFriction_, alphaMax_), - rho, - e_ - ) - + frictionalStressModel_->frictionalPressurePrime - ( - phase_, - alphaMinFriction_, - alphaMax_ - ) - ); - - volScalarField::Boundary& bpPrime = - tpPrime.ref().boundaryFieldRef(); - - forAll(bpPrime, patchi) - { - if (!bpPrime[patchi].coupled()) - { - bpPrime[patchi] == 0; - } - } - - return tpPrime; -} - - -Foam::tmp -Foam::RASModels::kineticTheoryModel::pPrimef() const -{ - return fvc::interpolate(pPrime()); -} - - -Foam::tmp -Foam::RASModels::kineticTheoryModel::devTau() const -{ - return volSymmTensorField::New - ( - IOobject::groupName("devTau", U_.group()), - - (rho_*nut_) - *dev(twoSymm(fvc::grad(U_))) - - ((rho_*lambda_)*fvc::div(phi_))*symmTensor::I - ); -} - - -Foam::tmp -Foam::RASModels::kineticTheoryModel::divDevTau -( - volVectorField& U -) const -{ - return - ( - - fvm::laplacian(rho_*nut_, U) - - fvc::div - ( - (rho_*nut_)*dev2(T(fvc::grad(U))) - + ((rho_*lambda_)*fvc::div(phi_)) - *dimensioned("I", dimless, symmTensor::I) - ) - ); -} - - -void Foam::RASModels::kineticTheoryModel::correct() -{ - // Local references - const twoPhaseSystem& fluid = refCast(phase_.fluid()); - volScalarField alpha(max(alpha_, scalar(0))); - const volScalarField& rho = phase_.rho(); - const surfaceScalarField& alphaRhoPhi = alphaRhoPhi_; - const volVectorField& U = U_; - const volVectorField& Uc_ = fluid.otherPhase(phase_).U(); - - const scalar sqrtPi = sqrt(constant::mathematical::pi); - dimensionedScalar ThetaSmall("ThetaSmall", Theta_.dimensions(), 1.0e-6); - dimensionedScalar ThetaSmallSqrt(sqrt(ThetaSmall)); - - tmp tda(phase_.d()); - const volScalarField& da = tda(); - - tmp tgradU(fvc::grad(U_)); - const volTensorField& gradU(tgradU()); - volSymmTensorField D(symm(gradU)); - - // Calculating the radial distribution function - gs0_ = radialModel_->g0(alpha, alphaMinFriction_, alphaMax_); - - if (!equilibrium_) - { - // Particle viscosity (Table 3.2, p.47) - nut_ = viscosityModel_->nu(alpha, Theta_, gs0_, rho, da, e_); - - volScalarField ThetaSqrt("sqrtTheta", sqrt(Theta_)); - - // Bulk viscosity p. 45 (Lun et al. 1984). - lambda_ = (4.0/3.0)*sqr(alpha)*da*gs0_*(1.0 + e_)*ThetaSqrt/sqrtPi; - - // Stress tensor, Definitions, Table 3.1, p. 43 - volSymmTensorField tau - ( - rho*(2.0*nut_*D + (lambda_ - (2.0/3.0)*nut_)*tr(D)*I) - ); - - // Dissipation (Eq. 3.24, p.50) - volScalarField gammaCoeff - ( - "gammaCoeff", - 12.0*(1.0 - sqr(e_)) - *max(sqr(alpha), residualAlpha_) - *rho*gs0_*(1.0/da)*ThetaSqrt/sqrtPi - ); - - // Drag - volScalarField beta - ( - fluid.lookupSubModel - ( - phase_, - fluid.otherPhase(phase_) - ).K() - ); - - // Eq. 3.25, p. 50 Js = J1 - J2 - volScalarField J1("J1", 3.0*beta); - volScalarField J2 - ( - "J2", - 0.25*sqr(beta)*da*magSqr(U - Uc_) - /( - max(alpha, residualAlpha_)*rho - *sqrtPi*(ThetaSqrt + ThetaSmallSqrt) - ) - ); - - // particle pressure - coefficient in front of Theta (Eq. 3.22, p. 45) - volScalarField PsCoeff - ( - granularPressureModel_->granularPressureCoeff - ( - alpha, - gs0_, - rho, - e_ - ) - ); - - // 'thermal' conductivity (Table 3.3, p. 49) - kappa_ = conductivityModel_->kappa(alpha, Theta_, gs0_, rho, da, e_); - - fv::options& fvOptions(fv::options::New(mesh_)); - - // Construct the granular temperature equation (Eq. 3.20, p. 44) - // NB. note that there are two typos in Eq. 3.20: - // Ps should be without grad - // the laplacian has the wrong sign - fvScalarMatrix ThetaEqn - ( - 1.5* - ( - fvm::ddt(alpha, rho, Theta_) - + fvm::div(alphaRhoPhi, Theta_) - - fvc::Sp(fvc::ddt(alpha, rho) + fvc::div(alphaRhoPhi), Theta_) - ) - - fvm::laplacian(kappa_, Theta_, "laplacian(kappa,Theta)") - == - - fvm::SuSp((PsCoeff*I) && gradU, Theta_) - + (tau && gradU) - + fvm::Sp(-gammaCoeff, Theta_) - + fvm::Sp(-J1, Theta_) - + fvm::Sp(J2/(Theta_ + ThetaSmall), Theta_) - + fvOptions(alpha, rho, Theta_) - ); - - ThetaEqn.relax(); - fvOptions.constrain(ThetaEqn); - ThetaEqn.solve(); - fvOptions.correct(Theta_); - } - else - { - // Equilibrium => dissipation == production - // Eq. 4.14, p.82 - volScalarField K1("K1", 2.0*(1.0 + e_)*rho*gs0_); - volScalarField K3 - ( - "K3", - 0.5*da*rho* - ( - (sqrtPi/(3.0*(3.0 - e_))) - *(1.0 + 0.4*(1.0 + e_)*(3.0*e_ - 1.0)*alpha*gs0_) - +1.6*alpha*gs0_*(1.0 + e_)/sqrtPi - ) - ); - - volScalarField K2 - ( - "K2", - 4.0*da*rho*(1.0 + e_)*alpha*gs0_/(3.0*sqrtPi) - 2.0*K3/3.0 - ); - - volScalarField K4("K4", 12.0*(1.0 - sqr(e_))*rho*gs0_/(da*sqrtPi)); - - volScalarField trD - ( - "trD", - alpha/(alpha + residualAlpha_) - *fvc::div(phi_) - ); - volScalarField tr2D("tr2D", sqr(trD)); - volScalarField trD2("trD2", tr(D & D)); - - volScalarField t1("t1", K1*alpha + rho); - volScalarField l1("l1", -t1*trD); - volScalarField l2("l2", sqr(t1)*tr2D); - volScalarField l3 - ( - "l3", - 4.0 - *K4 - *alpha - *(2.0*K3*trD2 + K2*tr2D) - ); - - Theta_ = sqr - ( - (l1 + sqrt(l2 + l3)) - /(2.0*max(alpha, residualAlpha_)*K4) - ); - - kappa_ = conductivityModel_->kappa(alpha, Theta_, gs0_, rho, da, e_); - } - - Theta_.max(0); - Theta_.min(100); - - { - // particle viscosity (Table 3.2, p.47) - nut_ = viscosityModel_->nu(alpha, Theta_, gs0_, rho, da, e_); - - volScalarField ThetaSqrt("sqrtTheta", sqrt(Theta_)); - - // Bulk viscosity p. 45 (Lun et al. 1984). - lambda_ = (4.0/3.0)*sqr(alpha)*da*gs0_*(1.0 + e_)*ThetaSqrt/sqrtPi; - - // Frictional pressure - volScalarField pf - ( - frictionalStressModel_->frictionalPressure - ( - phase_, - alphaMinFriction_, - alphaMax_ - ) - ); - - nuFric_ = frictionalStressModel_->nu - ( - phase_, - alphaMinFriction_, - alphaMax_, - pf/rho, - D - ); - - // Limit viscosity and add frictional viscosity - nut_.min(maxNut_); - nuFric_ = min(nuFric_, maxNut_ - nut_); - nut_ += nuFric_; - } - - if (debug) - { - Info<< typeName << ':' << nl - << " max(Theta) = " << max(Theta_).value() << nl - << " max(nut) = " << max(nut_).value() << endl; - } -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/kineticTheoryModel/kineticTheoryModel.H b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/kineticTheoryModel/kineticTheoryModel.H deleted file mode 100644 index 3620f8404d..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/kineticTheoryModel/kineticTheoryModel.H +++ /dev/null @@ -1,235 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::RASModels::kineticTheoryModel - -Description - Kinetic theory particle phase RAS model - - Reference: - \verbatim - "Derivation, implementation, and validation of computer simulation - models for gas-solid fluidized beds", - van Wachem, B.G.M., - Ph.D. Thesis, Delft University of Technology, Amsterdam, 2000. - \endverbatim - - There are no default model coefficients. - -SourceFiles - kineticTheoryModel.C - -\*---------------------------------------------------------------------------*/ - -#ifndef kineticTheoryModel_H -#define kineticTheoryModel_H - -#include "RASModel.H" -#include "eddyViscosity.H" -#include "phaseCompressibleMomentumTransportModel.H" -#include "phaseModel.H" -#include "dragModel.H" -#include "viscosityModel.H" -#include "conductivityModel.H" -#include "radialModel.H" -#include "granularPressureModel.H" -#include "frictionalStressModel.H" - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ -namespace RASModels -{ - -/*---------------------------------------------------------------------------*\ - Class kineticTheoryModel Declaration -\*---------------------------------------------------------------------------*/ - -class kineticTheoryModel -: - public eddyViscosity> -{ - // Private Data - - // Input Fields - - const phaseModel& phase_; - - - // Sub-models - - //- Run-time selected viscosity model - autoPtr viscosityModel_; - - //- Run-time selected conductivity model - autoPtr conductivityModel_; - - //- Run-time selected radial distribution model - autoPtr radialModel_; - - //- Run-time selected granular pressure model - autoPtr - granularPressureModel_; - - //- Run-time selected frictional stress model - autoPtr - frictionalStressModel_; - - - // Kinetic Theory Model coefficients - - //- Use equilibrium approximation: generation == dissipation - Switch equilibrium_; - - //- Coefficient of restitution - dimensionedScalar e_; - - //- Maximum packing phase-fraction - dimensionedScalar alphaMax_; - - //- Min value for which the frictional stresses are zero - dimensionedScalar alphaMinFriction_; - - //- Residual phase fraction - dimensionedScalar residualAlpha_; - - //- Maximum turbulent viscosity - dimensionedScalar maxNut_; - - - // Kinetic Theory Model Fields - - //- The granular energy/temperature - volScalarField Theta_; - - //- The granular bulk viscosity - volScalarField lambda_; - - //- The granular radial distribution - volScalarField gs0_; - - //- The granular "thermal" conductivity - volScalarField kappa_; - - //- The frictional viscosity - volScalarField nuFric_; - - - // Private Member Functions - - void correctNut() - {} - - -public: - - //- Runtime type information - TypeName("kineticTheory"); - - - // Constructors - - //- Construct from components - kineticTheoryModel - ( - const volScalarField& alpha, - const volScalarField& rho, - const volVectorField& U, - const surfaceScalarField& alphaRhoPhi, - const surfaceScalarField& phi, - const phaseModel& transport, - const word& type = typeName - ); - - //- Disallow default bitwise copy construction - kineticTheoryModel(const kineticTheoryModel&) = delete; - - - //- Destructor - virtual ~kineticTheoryModel(); - - - // Member Functions - - //- Re-read model coefficients if they have changed - virtual bool read(); - - //- Return the effective viscosity - virtual tmp nuEff() const - { - return this->nut(); - } - - //- Return the effective viscosity on patch - virtual tmp nuEff(const label patchi) const - { - return this->nut(patchi); - } - - //- Return the turbulence kinetic energy - virtual tmp k() const; - - //- Return the turbulence kinetic energy dissipation rate - virtual tmp epsilon() const; - - //- Return the stress tensor [m^2/s^2] - virtual tmp sigma() const; - - //- Return the phase-pressure' - // (derivative of phase-pressure w.r.t. phase-fraction) - virtual tmp pPrime() const; - - //- Return the face-phase-pressure' - // (derivative of phase-pressure w.r.t. phase-fraction) - virtual tmp pPrimef() const; - - //- Return the effective stress tensor - virtual tmp devTau() const; - - //- Return the source term for the momentum equation - virtual tmp divDevTau(volVectorField& U) const; - - //- Solve the kinetic theory equations and correct the viscosity - virtual void correct(); - - - // Member Operators - - //- Disallow default bitwise assignment - void operator=(const kineticTheoryModel&) = delete; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace RASModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/radialModel/CarnahanStarling/CarnahanStarlingRadial.C b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/radialModel/CarnahanStarling/CarnahanStarlingRadial.C deleted file mode 100644 index 117d5159c0..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/radialModel/CarnahanStarling/CarnahanStarlingRadial.C +++ /dev/null @@ -1,100 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "CarnahanStarlingRadial.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace kineticTheoryModels -{ -namespace radialModels -{ - defineTypeNameAndDebug(CarnahanStarling, 0); - - addToRunTimeSelectionTable - ( - radialModel, - CarnahanStarling, - dictionary - ); -} -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::kineticTheoryModels::radialModels::CarnahanStarling::CarnahanStarling -( - const dictionary& dict -) -: - radialModel(dict) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::kineticTheoryModels::radialModels::CarnahanStarling::~CarnahanStarling() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp -Foam::kineticTheoryModels::radialModels::CarnahanStarling::g0 -( - const volScalarField& alpha, - const dimensionedScalar& alphaMinFriction, - const dimensionedScalar& alphaMax -) const -{ - - return - 1.0/(1.0 - alpha) - + 3.0*alpha/(2.0*sqr(1.0 - alpha)) - + sqr(alpha)/(2.0*pow3(1.0 - alpha)); -} - - -Foam::tmp -Foam::kineticTheoryModels::radialModels::CarnahanStarling::g0prime -( - const volScalarField& alpha, - const dimensionedScalar& alphaMinFriction, - const dimensionedScalar& alphaMax -) const -{ - return - 2.5/sqr(1.0 - alpha) - + 4.0*alpha/pow3(1.0 - alpha) - + 1.5*sqr(alpha)/pow4(1.0 - alpha); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/radialModel/CarnahanStarling/CarnahanStarlingRadial.H b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/radialModel/CarnahanStarling/CarnahanStarlingRadial.H deleted file mode 100644 index ef8cf03774..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/radialModel/CarnahanStarling/CarnahanStarlingRadial.H +++ /dev/null @@ -1,102 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::kineticTheoryModels::radialModels::CarnahanStarling - -Description - -SourceFiles - CarnahanStarlingRadial.C - -\*---------------------------------------------------------------------------*/ - -#ifndef CarnahanStarlingRadial_H -#define CarnahanStarlingRadial_H - -#include "radialModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ -namespace kineticTheoryModels -{ -namespace radialModels -{ - -/*---------------------------------------------------------------------------*\ - Class CarnahanStarling Declaration -\*---------------------------------------------------------------------------*/ - -class CarnahanStarling -: - public radialModel -{ - -public: - - //- Runtime type information - TypeName("CarnahanStarling"); - - - // Constructors - - //- Construct from components - CarnahanStarling(const dictionary& dict); - - - //- Destructor - virtual ~CarnahanStarling(); - - - // Member Functions - - - tmp g0 - ( - const volScalarField& alpha, - const dimensionedScalar& alphaMinFriction, - const dimensionedScalar& alphaMax - ) const; - - tmp g0prime - ( - const volScalarField& alpha, - const dimensionedScalar& alphaMinFriction, - const dimensionedScalar& alphaMax - ) const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace radialModels -} // End namespace kineticTheoryModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/radialModel/LunSavage/LunSavageRadial.C b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/radialModel/LunSavage/LunSavageRadial.C deleted file mode 100644 index 57f2f98287..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/radialModel/LunSavage/LunSavageRadial.C +++ /dev/null @@ -1,94 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "LunSavageRadial.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace kineticTheoryModels -{ -namespace radialModels -{ - defineTypeNameAndDebug(LunSavage, 0); - - addToRunTimeSelectionTable - ( - radialModel, - LunSavage, - dictionary - ); -} -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::kineticTheoryModels::radialModels::LunSavage::LunSavage -( - const dictionary& dict -) -: - radialModel(dict) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::kineticTheoryModels::radialModels::LunSavage::~LunSavage() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp -Foam::kineticTheoryModels::radialModels::LunSavage::g0 -( - const volScalarField& alpha, - const dimensionedScalar& alphaMinFriction, - const dimensionedScalar& alphaMax -) const -{ - - return pow(1.0 - alpha/alphaMax, -2.5*alphaMax); -} - - -Foam::tmp -Foam::kineticTheoryModels::radialModels::LunSavage::g0prime -( - const volScalarField& alpha, - const dimensionedScalar& alphaMinFriction, - const dimensionedScalar& alphaMax -) const -{ - return 2.5*pow(1.0 - alpha/alphaMax, -2.5*alphaMax - 1); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/radialModel/LunSavage/LunSavageRadial.H b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/radialModel/LunSavage/LunSavageRadial.H deleted file mode 100644 index 72b234971c..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/radialModel/LunSavage/LunSavageRadial.H +++ /dev/null @@ -1,101 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::kineticTheoryModels::radialModels::LunSavage - -Description - -SourceFiles - LunSavage.C - -\*---------------------------------------------------------------------------*/ - -#ifndef LunSavageRadial_H -#define LunSavageRadial_H - -#include "radialModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ -namespace kineticTheoryModels -{ -namespace radialModels -{ - -/*---------------------------------------------------------------------------*\ - Class LunSavage Declaration -\*---------------------------------------------------------------------------*/ - -class LunSavage -: - public radialModel -{ - -public: - - //- Runtime type information - TypeName("LunSavage"); - - - // Constructors - - //- Construct from components - LunSavage(const dictionary& dict); - - - //- Destructor - virtual ~LunSavage(); - - - // Member Functions - - tmp g0 - ( - const volScalarField& alpha, - const dimensionedScalar& alphaMinFriction, - const dimensionedScalar& alphaMax - ) const; - - tmp g0prime - ( - const volScalarField& alpha, - const dimensionedScalar& alphaMinFriction, - const dimensionedScalar& alphaMax - ) const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace radialModels -} // End namespace kineticTheoryModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/radialModel/SinclairJackson/SinclairJacksonRadial.C b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/radialModel/SinclairJackson/SinclairJacksonRadial.C deleted file mode 100644 index bb690f147c..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/radialModel/SinclairJackson/SinclairJacksonRadial.C +++ /dev/null @@ -1,98 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "SinclairJacksonRadial.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace kineticTheoryModels -{ -namespace radialModels -{ - defineTypeNameAndDebug(SinclairJackson, 0); - - addToRunTimeSelectionTable - ( - radialModel, - SinclairJackson, - dictionary - ); -} -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::kineticTheoryModels::radialModels::SinclairJackson::SinclairJackson -( - const dictionary& dict -) -: - radialModel(dict) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::kineticTheoryModels::radialModels::SinclairJackson::~SinclairJackson() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp -Foam::kineticTheoryModels::radialModels::SinclairJackson::g0 -( - const volScalarField& alpha, - const dimensionedScalar& alphaMinFriction, - const dimensionedScalar& alphaMax -) const -{ - return 1.0/(1.0 - cbrt(min(alpha, alphaMinFriction)/alphaMax)); -} - - -Foam::tmp -Foam::kineticTheoryModels::radialModels::SinclairJackson::g0prime -( - const volScalarField& alpha, - const dimensionedScalar& alphaMinFriction, - const dimensionedScalar& alphaMax -) const -{ - volScalarField aByaMax - ( - cbrt(min(max(alpha, scalar(1e-3)), alphaMinFriction)/alphaMax) - ); - - return (1.0/(3*alphaMax))/sqr(aByaMax - sqr(aByaMax)); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/radialModel/SinclairJackson/SinclairJacksonRadial.H b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/radialModel/SinclairJackson/SinclairJacksonRadial.H deleted file mode 100644 index e00469aec6..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/radialModel/SinclairJackson/SinclairJacksonRadial.H +++ /dev/null @@ -1,101 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::kineticTheoryModels::radialModels::SinclairJackson - -Description - -SourceFiles - SinclairJacksonRadial.C - -\*---------------------------------------------------------------------------*/ - -#ifndef SinclairJacksonRadial_H -#define SinclairJacksonRadial_H - -#include "radialModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ -namespace kineticTheoryModels -{ -namespace radialModels -{ - -/*---------------------------------------------------------------------------*\ - Class SinclairJackson Declaration -\*---------------------------------------------------------------------------*/ - -class SinclairJackson -: - public radialModel -{ - -public: - - //- Runtime type information - TypeName("SinclairJackson"); - - - // Constructors - - //- Construct from components - SinclairJackson(const dictionary& dict); - - - //- Destructor - virtual ~SinclairJackson(); - - - // Member Functions - - tmp g0 - ( - const volScalarField& alpha, - const dimensionedScalar& alphaMinFriction, - const dimensionedScalar& alphaMax - ) const; - - tmp g0prime - ( - const volScalarField& alpha, - const dimensionedScalar& alphaMinFriction, - const dimensionedScalar& alphaMax - ) const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace radialModels -} // End namespace kineticTheoryModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/radialModel/radialModel/newRadialModel.C b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/radialModel/radialModel/newRadialModel.C deleted file mode 100644 index 0a57e62379..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/radialModel/radialModel/newRadialModel.C +++ /dev/null @@ -1,60 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "radialModel.H" - -// * * * * * * * * * * * * * * * * Selectors * * * * * * * * * * * * * * * * // - -Foam::autoPtr -Foam::kineticTheoryModels::radialModel::New -( - const dictionary& dict -) -{ - word radialModelType(dict.lookup("radialModel")); - - Info<< "Selecting radialModel " - << radialModelType << endl; - - dictionaryConstructorTable::iterator cstrIter = - dictionaryConstructorTablePtr_->find(radialModelType); - - if (cstrIter == dictionaryConstructorTablePtr_->end()) - { - FatalError - << "radialModel::New(const dictionary&) : " << endl - << " unknown radialModelType type " - << radialModelType - << ", constructor not in hash table" << endl << endl - << " Valid radialModelType types are :" << endl; - Info<< dictionaryConstructorTablePtr_->sortedToc() - << abort(FatalError); - } - - return autoPtr(cstrIter()(dict)); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/radialModel/radialModel/radialModel.C b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/radialModel/radialModel/radialModel.C deleted file mode 100644 index 5ec4a31a6b..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/radialModel/radialModel/radialModel.C +++ /dev/null @@ -1,58 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "radialModel.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace kineticTheoryModels -{ - defineTypeNameAndDebug(radialModel, 0); - - defineRunTimeSelectionTable(radialModel, dictionary); -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::kineticTheoryModels::radialModel::radialModel -( - const dictionary& dict -) -: - dict_(dict) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::kineticTheoryModels::radialModel::~radialModel() -{} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/radialModel/radialModel/radialModel.H b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/radialModel/radialModel/radialModel.H deleted file mode 100644 index e20f51345a..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/radialModel/radialModel/radialModel.H +++ /dev/null @@ -1,139 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::kineticTheoryModels::radialModel - -SourceFiles - radialModel.C - -\*---------------------------------------------------------------------------*/ - -#ifndef radialModel_H -#define radialModel_H - -#include "dictionary.H" -#include "volFields.H" -#include "dimensionedTypes.H" -#include "runTimeSelectionTables.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ -namespace kineticTheoryModels -{ - -/*---------------------------------------------------------------------------*\ - Class radialModel Declaration -\*---------------------------------------------------------------------------*/ - -class radialModel -{ -protected: - - // Protected data - - const dictionary& dict_; - - -public: - - //- Runtime type information - TypeName("radialModel"); - - // Declare runtime constructor selection table - declareRunTimeSelectionTable - ( - autoPtr, - radialModel, - dictionary, - ( - const dictionary& dict - ), - (dict) - ); - - - // Constructors - - //- Construct from components - radialModel(const dictionary& dict); - - //- Disallow default bitwise copy construction - radialModel(const radialModel&) = delete; - - - // Selectors - - static autoPtr New - ( - const dictionary& dict - ); - - - //- Destructor - virtual ~radialModel(); - - - // Member Functions - - //- Radial distribution function - virtual tmp g0 - ( - const volScalarField& alpha, - const dimensionedScalar& alphaMinFriction, - const dimensionedScalar& alphaMax - ) const = 0; - - //- Derivative of the radial distribution function - virtual tmp g0prime - ( - const volScalarField& alpha, - const dimensionedScalar& alphaMinFriction, - const dimensionedScalar& alphaMax - ) const = 0; - - virtual bool read() - { - return true; - } - - - // Member Operators - - //- Disallow default bitwise assignment - void operator=(const radialModel&) = delete; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace kineticTheoryModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/viscosityModel/Gidaspow/GidaspowViscosity.C b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/viscosityModel/Gidaspow/GidaspowViscosity.C deleted file mode 100644 index a925bf8a86..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/viscosityModel/Gidaspow/GidaspowViscosity.C +++ /dev/null @@ -1,87 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "GidaspowViscosity.H" -#include "mathematicalConstants.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace kineticTheoryModels -{ -namespace viscosityModels -{ - defineTypeNameAndDebug(Gidaspow, 0); - addToRunTimeSelectionTable(viscosityModel, Gidaspow, dictionary); -} -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::kineticTheoryModels::viscosityModels::Gidaspow::Gidaspow -( - const dictionary& dict -) -: - viscosityModel(dict) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::kineticTheoryModels::viscosityModels::Gidaspow::~Gidaspow() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp -Foam::kineticTheoryModels::viscosityModels::Gidaspow::nu -( - const volScalarField& alpha1, - const volScalarField& Theta, - const volScalarField& g0, - const volScalarField& rho1, - const volScalarField& da, - const dimensionedScalar& e -) const -{ - const scalar sqrtPi = sqrt(constant::mathematical::pi); - - return da*sqrt(Theta)* - ( - (4.0/5.0)*sqr(alpha1)*g0*(1.0 + e)/sqrtPi - + (1.0/15.0)*sqrtPi*g0*(1.0 + e)*sqr(alpha1) - + (1.0/6.0)*sqrtPi*alpha1 - + (10.0/96.0)*sqrtPi/((1.0 + e)*g0) - ); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/viscosityModel/Gidaspow/GidaspowViscosity.H b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/viscosityModel/Gidaspow/GidaspowViscosity.H deleted file mode 100644 index 8f4143d179..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/viscosityModel/Gidaspow/GidaspowViscosity.H +++ /dev/null @@ -1,96 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::kineticTheoryModels::viscosityModels::Gidaspow - -Description - -SourceFiles - GidaspowViscosity.C - -\*---------------------------------------------------------------------------*/ - -#ifndef GidaspowViscosity_H -#define GidaspowViscosity_H - -#include "viscosityModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ -namespace kineticTheoryModels -{ -namespace viscosityModels -{ - -/*---------------------------------------------------------------------------*\ - Class Gidaspow Declaration -\*---------------------------------------------------------------------------*/ - -class Gidaspow -: - public viscosityModel -{ - -public: - - //- Runtime type information - TypeName("Gidaspow"); - - // Constructors - - //- Construct from components - Gidaspow(const dictionary& dict); - - - //- Destructor - virtual ~Gidaspow(); - - - // Member Functions - - tmp nu - ( - const volScalarField& alpha1, - const volScalarField& Theta, - const volScalarField& g0, - const volScalarField& rho1, - const volScalarField& da, - const dimensionedScalar& e - ) const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace viscosityModels -} // End namespace kineticTheoryModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/viscosityModel/HrenyaSinclair/HrenyaSinclairViscosity.C b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/viscosityModel/HrenyaSinclair/HrenyaSinclairViscosity.C deleted file mode 100644 index dae043156e..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/viscosityModel/HrenyaSinclair/HrenyaSinclairViscosity.C +++ /dev/null @@ -1,111 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "HrenyaSinclairViscosity.H" -#include "mathematicalConstants.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace kineticTheoryModels -{ -namespace viscosityModels -{ - defineTypeNameAndDebug(HrenyaSinclair, 0); - - addToRunTimeSelectionTable - ( - viscosityModel, - HrenyaSinclair, - dictionary - ); -} -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::kineticTheoryModels::viscosityModels::HrenyaSinclair::HrenyaSinclair -( - const dictionary& dict -) -: - viscosityModel(dict), - coeffDict_(dict.optionalSubDict(typeName + "Coeffs")), - L_("L", dimensionSet(0, 1, 0, 0, 0), coeffDict_) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::kineticTheoryModels::viscosityModels::HrenyaSinclair::~HrenyaSinclair() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp -Foam::kineticTheoryModels::viscosityModels::HrenyaSinclair::nu -( - const volScalarField& alpha1, - const volScalarField& Theta, - const volScalarField& g0, - const volScalarField& rho1, - const volScalarField& da, - const dimensionedScalar& e -) const -{ - const scalar sqrtPi = sqrt(constant::mathematical::pi); - - volScalarField lamda - ( - scalar(1) + da/(6.0*sqrt(2.0)*(alpha1 + scalar(1.0e-5)))/L_ - ); - - return da*sqrt(Theta)* - ( - (4.0/5.0)*sqr(alpha1)*g0*(1.0 + e)/sqrtPi - + (1.0/15.0)*sqrtPi*g0*(1.0 + e)*(3.0*e - 1)*sqr(alpha1)/(3.0-e) - + (1.0/6.0)*sqrtPi*alpha1*(0.5*lamda + 0.25*(3.0*e - 1.0)) - /(0.5*(3.0 - e)*lamda) - + (10/96.0)*sqrtPi/((1.0 + e)*0.5*(3.0 - e)*g0*lamda) - ); -} - - -bool Foam::kineticTheoryModels::viscosityModels::HrenyaSinclair::read() -{ - coeffDict_ <<= dict_.optionalSubDict(typeName + "Coeffs"); - - L_.readIfPresent(coeffDict_); - - return true; -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/viscosityModel/HrenyaSinclair/HrenyaSinclairViscosity.H b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/viscosityModel/HrenyaSinclair/HrenyaSinclairViscosity.H deleted file mode 100644 index fde3e04283..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/viscosityModel/HrenyaSinclair/HrenyaSinclairViscosity.H +++ /dev/null @@ -1,106 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::kineticTheoryModels::viscosityModels::HrenyaSinclair - -Description - -SourceFiles - HrenyaSinclairViscosity.C - -\*---------------------------------------------------------------------------*/ - -#ifndef HrenyaSinclairViscosity_H -#define HrenyaSinclairViscosity_H - -#include "viscosityModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ -namespace kineticTheoryModels -{ -namespace viscosityModels -{ - -/*---------------------------------------------------------------------------*\ - Class HrenyaSinclair Declaration -\*---------------------------------------------------------------------------*/ - -class HrenyaSinclair -: - public viscosityModel -{ - // Private Data - - dictionary coeffDict_; - - //- Characteristic length of geometry - dimensionedScalar L_; - - -public: - - //- Runtime type information - TypeName("HrenyaSinclair"); - - - // Constructors - - //- Construct from components - HrenyaSinclair(const dictionary& dict); - - - //- Destructor - virtual ~HrenyaSinclair(); - - - // Member Functions - - tmp nu - ( - const volScalarField& alpha1, - const volScalarField& Theta, - const volScalarField& g0, - const volScalarField& rho1, - const volScalarField& da, - const dimensionedScalar& e - ) const; - - virtual bool read(); -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace viscosityModels -} // End namespace kineticTheoryModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/viscosityModel/Syamlal/SyamlalViscosity.C b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/viscosityModel/Syamlal/SyamlalViscosity.C deleted file mode 100644 index a5aa5fb4ae..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/viscosityModel/Syamlal/SyamlalViscosity.C +++ /dev/null @@ -1,86 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "SyamlalViscosity.H" -#include "mathematicalConstants.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace kineticTheoryModels -{ -namespace viscosityModels -{ - defineTypeNameAndDebug(Syamlal, 0); - addToRunTimeSelectionTable(viscosityModel, Syamlal, dictionary); -} -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::kineticTheoryModels::viscosityModels::Syamlal::Syamlal -( - const dictionary& dict -) -: - viscosityModel(dict) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::kineticTheoryModels::viscosityModels::Syamlal::~Syamlal() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp -Foam::kineticTheoryModels::viscosityModels::Syamlal::nu -( - const volScalarField& alpha1, - const volScalarField& Theta, - const volScalarField& g0, - const volScalarField& rho1, - const volScalarField& da, - const dimensionedScalar& e -) const -{ - const scalar sqrtPi = sqrt(constant::mathematical::pi); - - return da*sqrt(Theta)* - ( - (4.0/5.0)*sqr(alpha1)*g0*(1.0 + e)/sqrtPi - + (1.0/15.0)*sqrtPi*g0*(1.0 + e)*(3.0*e - 1.0)*sqr(alpha1)/(3.0 - e) - + (1.0/6.0)*alpha1*sqrtPi/(3.0 - e) - ); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/viscosityModel/Syamlal/SyamlalViscosity.H b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/viscosityModel/Syamlal/SyamlalViscosity.H deleted file mode 100644 index 0d9b819dc1..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/viscosityModel/Syamlal/SyamlalViscosity.H +++ /dev/null @@ -1,97 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::kineticTheoryModels::viscosityModels::Syamlal - -Description - -SourceFiles - SyamlalViscosity.C - -\*---------------------------------------------------------------------------*/ - -#ifndef SyamlalViscosity_H -#define SyamlalViscosity_H - -#include "viscosityModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ -namespace kineticTheoryModels -{ -namespace viscosityModels -{ - -/*---------------------------------------------------------------------------*\ - Class Syamlal Declaration -\*---------------------------------------------------------------------------*/ - -class Syamlal -: - public viscosityModel -{ - -public: - - //- Runtime type information - TypeName("Syamlal"); - - - // Constructors - - //- Construct from components - Syamlal(const dictionary& dict); - - - //- Destructor - virtual ~Syamlal(); - - - // Member Functions - - tmp nu - ( - const volScalarField& alpha1, - const volScalarField& Theta, - const volScalarField& g0, - const volScalarField& rho1, - const volScalarField& da, - const dimensionedScalar& e - ) const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace viscosityModels -} // End namespace kineticTheoryModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/viscosityModel/none/noneViscosity.C b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/viscosityModel/none/noneViscosity.C deleted file mode 100644 index 3e267d6ec8..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/viscosityModel/none/noneViscosity.C +++ /dev/null @@ -1,75 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "noneViscosity.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace kineticTheoryModels -{ - defineTypeNameAndDebug(noneViscosity, 0); - addToRunTimeSelectionTable(viscosityModel, noneViscosity, dictionary); -} -} - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::kineticTheoryModels::noneViscosity::noneViscosity(const dictionary& dict) -: - viscosityModel(dict) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::kineticTheoryModels::noneViscosity::~noneViscosity() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp Foam::kineticTheoryModels::noneViscosity::nu -( - const volScalarField& alpha1, - const volScalarField& Theta, - const volScalarField& g0, - const volScalarField& rho1, - const volScalarField& da, - const dimensionedScalar& e -) const -{ - return dimensionedScalar - ( - "0", - dimensionSet(0, 2, -1, 0, 0, 0, 0), - 0.0 - )*alpha1; -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/viscosityModel/none/noneViscosity.H b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/viscosityModel/none/noneViscosity.H deleted file mode 100644 index a37f59d606..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/viscosityModel/none/noneViscosity.H +++ /dev/null @@ -1,94 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::kineticTheoryModels::noneViscosity - -Description - -SourceFiles - noneViscosity.C - -\*---------------------------------------------------------------------------*/ - -#ifndef noneViscosity_H -#define noneViscosity_H - -#include "viscosityModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ -namespace kineticTheoryModels -{ - -/*---------------------------------------------------------------------------*\ - Class noneViscosity Declaration -\*---------------------------------------------------------------------------*/ - -class noneViscosity -: - public viscosityModel -{ - -public: - - //- Runtime type information - TypeName("none"); - - - // Constructors - - //- Construct from components - noneViscosity(const dictionary& dict); - - - //- Destructor - virtual ~noneViscosity(); - - - // Member Functions - - tmp nu - ( - const volScalarField& alpha1, - const volScalarField& Theta, - const volScalarField& g0, - const volScalarField& rho1, - const volScalarField& da, - const dimensionedScalar& e - ) const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace kineticTheoryModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/viscosityModel/viscosityModel/newViscosityModel.C b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/viscosityModel/viscosityModel/newViscosityModel.C deleted file mode 100644 index cd98323d50..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/viscosityModel/viscosityModel/newViscosityModel.C +++ /dev/null @@ -1,59 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "viscosityModel.H" - -// * * * * * * * * * * * * * * * * Selectors * * * * * * * * * * * * * * * * // - -Foam::autoPtr -Foam::kineticTheoryModels::viscosityModel::New -( - const dictionary& dict -) -{ - word viscosityModelType(dict.lookup("viscosityModel")); - - Info<< "Selecting viscosityModel " - << viscosityModelType << endl; - - dictionaryConstructorTable::iterator cstrIter = - dictionaryConstructorTablePtr_->find(viscosityModelType); - - if (cstrIter == dictionaryConstructorTablePtr_->end()) - { - FatalError - << "viscosityModel::New(const dictionary&) : " << endl - << " unknown viscosityModelType type " - << viscosityModelType - << ", constructor not in hash table" << endl << endl - << " Valid viscosityModelType types are :" << endl; - Info<< dictionaryConstructorTablePtr_->sortedToc() << abort(FatalError); - } - - return autoPtr(cstrIter()(dict)); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/viscosityModel/viscosityModel/viscosityModel.C b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/viscosityModel/viscosityModel/viscosityModel.C deleted file mode 100644 index 66047a1abd..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/viscosityModel/viscosityModel/viscosityModel.C +++ /dev/null @@ -1,57 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "viscosityModel.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace kineticTheoryModels -{ - defineTypeNameAndDebug(viscosityModel, 0); - defineRunTimeSelectionTable(viscosityModel, dictionary); -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::kineticTheoryModels::viscosityModel::viscosityModel -( - const dictionary& dict -) -: - dict_(dict) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::kineticTheoryModels::viscosityModel::~viscosityModel() -{} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/viscosityModel/viscosityModel/viscosityModel.H b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/viscosityModel/viscosityModel/viscosityModel.H deleted file mode 100644 index e11d0590b5..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/kineticTheoryModels/viscosityModel/viscosityModel/viscosityModel.H +++ /dev/null @@ -1,135 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::kineticTheoryModels::viscosityModel - -Description - -SourceFiles - viscosityModel.C - -\*---------------------------------------------------------------------------*/ - -#ifndef viscosityModel_H -#define viscosityModel_H - -#include "dictionary.H" -#include "volFields.H" -#include "dimensionedTypes.H" -#include "runTimeSelectionTables.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ -namespace kineticTheoryModels -{ - -/*---------------------------------------------------------------------------*\ - Class viscosityModel Declaration -\*---------------------------------------------------------------------------*/ - -class viscosityModel -{ -protected: - - // Protected data - - const dictionary& dict_; - - -public: - - //- Runtime type information - TypeName("viscosityModel"); - - // Declare runtime constructor selection table - declareRunTimeSelectionTable - ( - autoPtr, - viscosityModel, - dictionary, - ( - const dictionary& dict - ), - (dict) - ); - - - // Constructors - - //- Construct from components - viscosityModel(const dictionary& dict); - - //- Disallow default bitwise copy construction - viscosityModel(const viscosityModel&) = delete; - - - // Selectors - - static autoPtr New - ( - const dictionary& dict - ); - - - //- Destructor - virtual ~viscosityModel(); - - - // Member Functions - - virtual tmp nu - ( - const volScalarField& alpha1, - const volScalarField& Theta, - const volScalarField& g0, - const volScalarField& rho1, - const volScalarField& da, - const dimensionedScalar& e - ) const = 0; - - virtual bool read() - { - return true; - } - - - // Member Operators - - //- Disallow default bitwise assignment - void operator=(const viscosityModel&) = delete; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace kineticTheoryModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/phaseCompressibleMomentumTransportModel.H b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/phaseCompressibleMomentumTransportModel.H deleted file mode 100644 index 245e1a5e92..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/phaseCompressibleMomentumTransportModel.H +++ /dev/null @@ -1,71 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2015-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Typedef - Foam::phaseCompressibleMomentumTransportModel - -Description - Typedef for phaseCompressibleMomentumTransportModel - -\*---------------------------------------------------------------------------*/ - -#ifndef phaseCompressibleMomentumTransportModel_H -#define phaseCompressibleMomentumTransportModel_H - -#include "phaseCompressibleMomentumTransportModelFwd.H" -#include "PhaseCompressibleMomentumTransportModel.H" -#include "phaseModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -typedef PhaseCompressibleMomentumTransportModel - phaseCompressibleMomentumTransportModel; - -// template specialisation for TransportTraits -template<> -class TransportTraits -{ -public: - - typedef fluidThermo thermoModel; - - static const thermoModel& thermo(const phaseModel& pm) - { - return pm.thermo(); - } -}; - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/phaseCompressibleMomentumTransportModelFwd.H b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/phaseCompressibleMomentumTransportModelFwd.H deleted file mode 100644 index 18d0365849..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/phaseCompressibleMomentumTransportModelFwd.H +++ /dev/null @@ -1,52 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2015-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Typedef - Foam::phaseCompressibleMomentumTransportModel - -Description - Forward declaration of typedef for phaseCompressibleMomentumTransportModel - -\*---------------------------------------------------------------------------*/ - -#ifndef phaseCompressibleMomentumTransportModelFwd_H -#define phaseCompressibleMomentumTransportModelFwd_H - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - class phaseModel; - - template - class PhaseCompressibleMomentumTransportModel; - - typedef PhaseCompressibleMomentumTransportModel - phaseCompressibleMomentumTransportModel; -} - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/phaseCompressibleMomentumTransportModels.C b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/phaseCompressibleMomentumTransportModels.C deleted file mode 100644 index dd770c9ff1..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/phaseCompressibleMomentumTransportModels.C +++ /dev/null @@ -1,108 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "phaseCompressibleMomentumTransportModel.H" -#include "twoPhaseSystem.H" -#include "addToRunTimeSelectionTable.H" -#include "makeMomentumTransportModel.H" - -#include "laminarModel.H" -#include "RASModel.H" -#include "LESModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -makeMomentumTransportModelTypes -( - volScalarField, - volScalarField, - compressibleMomentumTransportModel, - PhaseCompressibleMomentumTransportModel, - phaseModel -); - -makeBaseMomentumTransportModel -( - volScalarField, - volScalarField, - compressibleMomentumTransportModel, - PhaseCompressibleMomentumTransportModel, - phaseModel -); - -#define makeLaminarModel(Type) \ - makeTemplatedLaminarModel \ - (phaseModelPhaseCompressibleMomentumTransportModel, laminar, Type) - -#define makeRASModel(Type) \ - makeTemplatedMomentumTransportModel \ - (phaseModelPhaseCompressibleMomentumTransportModel, RAS, Type) - -#define makeLESModel(Type) \ - makeTemplatedMomentumTransportModel \ - (phaseModelPhaseCompressibleMomentumTransportModel, LES, Type) - -#include "Stokes.H" -makeLaminarModel(Stokes); - -#include "kEpsilon.H" -makeRASModel(kEpsilon); - -#include "kOmegaSST.H" -makeRASModel(kOmegaSST); - -#include "mixtureKEpsilon.H" -makeRASModel(mixtureKEpsilon); - -#include "LaheyKEpsilon.H" -makeRASModel(LaheyKEpsilon); - -#include "continuousGasKEpsilon.H" -makeRASModel(continuousGasKEpsilon); - -#include "Smagorinsky.H" -makeLESModel(Smagorinsky); - -#include "kEqn.H" -makeLESModel(kEqn); - -#include "SmagorinskyZhang.H" -makeLESModel(SmagorinskyZhang); - -#include "NicenoKEqn.H" -makeLESModel(NicenoKEqn); - -#include "continuousGasKEqn.H" -makeLESModel(continuousGasKEqn); - -#include "kineticTheoryModel.H" -makeMomentumTransportModel -(phaseModelPhaseCompressibleMomentumTransportModel, RAS, kineticTheoryModel); - -#include "phasePressureModel.H" -makeMomentumTransportModel -(phaseModelPhaseCompressibleMomentumTransportModel, RAS, phasePressureModel); - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/phasePressureModel/phasePressureModel.C b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/phasePressureModel/phasePressureModel.C deleted file mode 100644 index 3ac914dcff..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/phasePressureModel/phasePressureModel.C +++ /dev/null @@ -1,225 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2013-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "phasePressureModel.H" -#include "twoPhaseSystem.H" - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::RASModels::phasePressureModel::phasePressureModel -( - const volScalarField& alpha, - const volScalarField& rho, - const volVectorField& U, - const surfaceScalarField& alphaRhoPhi, - const surfaceScalarField& phi, - const phaseModel& phase, - const word& type -) -: - eddyViscosity>> - ( - type, - alpha, - rho, - U, - alphaRhoPhi, - phi, - phase - ), - - alphaMax_(coeffDict_.lookup("alphaMax")), - preAlphaExp_(coeffDict_.lookup("preAlphaExp")), - expMax_(coeffDict_.lookup("expMax")), - g0_ - ( - "g0", - dimensionSet(1, -1, -2, 0, 0), - coeffDict_.lookup("g0") - ) -{ - nut_ == dimensionedScalar(nut_.dimensions(), 0); - - if (type == typeName) - { - printCoeffs(type); - } -} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::RASModels::phasePressureModel::~phasePressureModel() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -bool Foam::RASModels::phasePressureModel::read() -{ - if - ( - eddyViscosity - < - RASModel> - >::read() - ) - { - coeffDict().lookup("alphaMax") >> alphaMax_; - coeffDict().lookup("preAlphaExp") >> preAlphaExp_; - coeffDict().lookup("expMax") >> expMax_; - g0_.readIfPresent(coeffDict()); - - return true; - } - else - { - return false; - } -} - - -Foam::tmp -Foam::RASModels::phasePressureModel::k() const -{ - NotImplemented; - return nut_; -} - - -Foam::tmp -Foam::RASModels::phasePressureModel::epsilon() const -{ - NotImplemented; - return nut_; -} - - -Foam::tmp -Foam::RASModels::phasePressureModel::sigma() const -{ - return volSymmTensorField::New - ( - IOobject::groupName("R", U_.group()), - mesh_, - dimensioned(dimensionSet(0, 2, -2, 0, 0), Zero) - ); -} - - -Foam::tmp -Foam::RASModels::phasePressureModel::pPrime() const -{ - tmp tpPrime - ( - g0_ - *min - ( - exp(preAlphaExp_*(alpha_ - alphaMax_)), - expMax_ - ) - ); - - volScalarField::Boundary& bpPrime = - tpPrime.ref().boundaryFieldRef(); - - forAll(bpPrime, patchi) - { - if (!bpPrime[patchi].coupled()) - { - bpPrime[patchi] == 0; - } - } - - return tpPrime; -} - - -Foam::tmp -Foam::RASModels::phasePressureModel::pPrimef() const -{ - tmp tpPrime - ( - g0_ - *min - ( - exp(preAlphaExp_*(fvc::interpolate(alpha_) - alphaMax_)), - expMax_ - ) - ); - - surfaceScalarField::Boundary& bpPrime = - tpPrime.ref().boundaryFieldRef(); - - forAll(bpPrime, patchi) - { - if (!bpPrime[patchi].coupled()) - { - bpPrime[patchi] == 0; - } - } - - return tpPrime; -} - - -Foam::tmp -Foam::RASModels::phasePressureModel::devTau() const -{ - return volSymmTensorField::New - ( - IOobject::groupName("devTau", U_.group()), - mesh_, - dimensioned - ( - rho_.dimensions()*dimensionSet(0, 2, -2, 0, 0), - Zero - ) - ); -} - - -Foam::tmp -Foam::RASModels::phasePressureModel::divDevTau -( - volVectorField& U -) const -{ - return tmp - ( - new fvVectorMatrix - ( - U, - rho_.dimensions()*dimensionSet(0, 4, -2, 0, 0) - ) - ); -} - - -void Foam::RASModels::phasePressureModel::correct() -{} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/phasePressureModel/phasePressureModel.H b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/phasePressureModel/phasePressureModel.H deleted file mode 100644 index 5adb793996..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleMomentumTransportModels/phasePressureModel/phasePressureModel.H +++ /dev/null @@ -1,188 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2013-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::RASModels::phasePressureModel - -Description - Particle-particle phase-pressure RAS model - - The derivative of the phase-pressure with respect to the phase-fraction - is evaluated as - - g0*min(exp(preAlphaExp*(alpha - alphaMax)), expMax) - - The default model coefficients correspond to the following: - \verbatim - phasePressureCoeffs - { - preAlphaExp 500; - expMax 1000; - alphaMax 0.62; - g0 1000; - } - \endverbatim - -SourceFiles - phasePressureModel.C - -\*---------------------------------------------------------------------------*/ - -#ifndef phasePressureModel_H -#define phasePressureModel_H - -#include "RASModel.H" -#include "eddyViscosity.H" -#include "PhaseCompressibleMomentumTransportModel.H" -#include "phaseModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ -namespace RASModels -{ - -/*---------------------------------------------------------------------------*\ - Class phasePressureModel Declaration -\*---------------------------------------------------------------------------*/ - -class phasePressureModel -: - public eddyViscosity - < - RASModel> - > -{ - // Private Data - - // Kinetic Theory Model coefficients - - //- Maximum packing phase-fraction - scalar alphaMax_; - - //- Pre-exponential factor - scalar preAlphaExp_; - - //- Maximum limit of the exponential - scalar expMax_; - - //- g0 - dimensionedScalar g0_; - - - // Private Member Functions - - void correctNut() - {} - - -public: - - //- Runtime type information - TypeName("phasePressure"); - - - // Constructors - - //- Construct from components - phasePressureModel - ( - const volScalarField& alpha, - const volScalarField& rho, - const volVectorField& U, - const surfaceScalarField& alphaRhoPhi, - const surfaceScalarField& phi, - const phaseModel& transport, - const word& type = typeName - ); - - //- Disallow default bitwise copy construction - phasePressureModel(const phasePressureModel&) = delete; - - - //- Destructor - virtual ~phasePressureModel(); - - - // Member Functions - - //- Re-read model coefficients if they have changed - virtual bool read(); - - //- Return the effective viscosity - virtual tmp nuEff() const - { - return this->nut(); - } - - //- Return the effective viscosity on patch - virtual tmp nuEff(const label patchi) const - { - return this->nut(patchi); - } - - //- Return the turbulence kinetic energy - virtual tmp k() const; - - //- Return the turbulence kinetic energy dissipation rate - virtual tmp epsilon() const; - - //- Return the stress tensor [m^2/s^2] - virtual tmp sigma() const; - - //- Return the phase-pressure' - // (derivative of phase-pressure w.r.t. phase-fraction) - virtual tmp pPrime() const; - - //- Return the face-phase-pressure' - // (derivative of phase-pressure w.r.t. phase-fraction) - virtual tmp pPrimef() const; - - //- Return the effective stress tensor - virtual tmp devTau() const; - - //- Return the source term for the momentum equation - virtual tmp divDevTau(volVectorField& U) const; - - //- Solve the kinetic theory equations and correct the viscosity - virtual void correct(); - - - // Member Operators - - //- Disallow default bitwise assignment - void operator=(const phasePressureModel&) = delete; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace RASModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseThermophysicalTransportModels/Make/files b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseThermophysicalTransportModels/Make/files deleted file mode 100644 index 109b4eca89..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseThermophysicalTransportModels/Make/files +++ /dev/null @@ -1,3 +0,0 @@ -phaseThermophysicalTransportModels.C - -LIB = $(FOAM_LIBBIN)/libphaseTherophysicalTransportModels diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseThermophysicalTransportModels/Make/options b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseThermophysicalTransportModels/Make/options deleted file mode 100644 index 6843760d54..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseThermophysicalTransportModels/Make/options +++ /dev/null @@ -1,16 +0,0 @@ -EXE_INC = \ - -I../twoPhaseSystem/lnInclude \ - -I../interfacialModels/lnInclude \ - -I../phaseCompressibleMomentumTransportModels/lnInclude \ - -I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \ - -I$(LIB_SRC)/MomentumTransportModels/compressible/lnInclude \ - -I$(LIB_SRC)/MomentumTransportModels/momentumTransportModels/lnInclude \ - -I$(LIB_SRC)/MomentumTransportModels/phaseCompressible/lnInclude \ - -I$(LIB_SRC)/ThermophysicalTransportModels/lnInclude \ - -I$(LIB_SRC)/finiteVolume/lnInclude \ - -I$(LIB_SRC)/meshTools/lnInclude - -LIB_LIBS = \ - -lphaseCompressibleMomentumTransportModels \ - -lthermophysicalTransportModels \ - -lfiniteVolume diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseThermophysicalTransportModels/phaseThermophysicalTransportModels.C b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseThermophysicalTransportModels/phaseThermophysicalTransportModels.C deleted file mode 100644 index 6572a21d65..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseThermophysicalTransportModels/phaseThermophysicalTransportModels.C +++ /dev/null @@ -1,119 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "PhaseThermophysicalTransportModel.H" - -#include "phaseCompressibleMomentumTransportModel.H" -#include "addToRunTimeSelectionTable.H" -#include "makeThermophysicalTransportModel.H" - -#include "laminarThermophysicalTransportModel.H" -#include "RASThermophysicalTransportModel.H" -#include "LESThermophysicalTransportModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -makeThermophysicalTransportModelTypes -( - PhaseThermophysicalTransportModel, - phaseCompressibleMomentumTransportModel, - fluidThermo -); - - -makeThermophysicalTransportModels -( - PhaseThermophysicalTransportModel, - phaseCompressibleMomentumTransportModel, - fluidThermo -); - - -#define makeLaminarThermophysicalTransportModel(Type) \ - makeThermophysicalTransportModel \ - ( \ - PhaseThermophysicalTransportModel, \ - phaseCompressibleMomentumTransportModel, \ - fluidThermo, \ - laminar, \ - Type \ - ) - -#define makeRASLESThermophysicalTransportModel(SType, Type) \ - makeTurbulenceThermophysicalTransportModel \ - ( \ - PhaseThermophysicalTransportModel, \ - phaseCompressibleMomentumTransportModel, \ - fluidThermo, \ - SType, \ - Type \ - ) - -#define makeRASThermophysicalTransportModel(Type) \ - makeThermophysicalTransportModel \ - ( \ - PhaseThermophysicalTransportModel, \ - phaseCompressibleMomentumTransportModel, \ - fluidThermo, \ - RAS, \ - Type \ - ) - -#define makeLESThermophysicalTransportModel(Type) \ - makeThermophysicalTransportModel \ - ( \ - PhaseThermophysicalTransportModel, \ - phaseCompressibleMomentumTransportModel, \ - fluidThermo, \ - LES, \ - Type \ - ) - - -// -------------------------------------------------------------------------- // -// Laminar models -// -------------------------------------------------------------------------- // - -#include "Fourier.H" -makeLaminarThermophysicalTransportModel(Fourier); - - -// -------------------------------------------------------------------------- // -// RAS models -// -------------------------------------------------------------------------- // - -#include "eddyDiffusivity.H" -makeRASLESThermophysicalTransportModel(RAS, eddyDiffusivity); - - -// -------------------------------------------------------------------------- // -// LES models -// -------------------------------------------------------------------------- // - -#include "eddyDiffusivity.H" -makeRASLESThermophysicalTransportModel(LES, eddyDiffusivity); - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseEulerFoam.C b/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseEulerFoam.C deleted file mode 100644 index c1040924f3..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseEulerFoam.C +++ /dev/null @@ -1,127 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Application - twoPhaseEulerFoam - -Description - Solver for a system of 2 compressible fluid phases with one phase - dispersed, e.g. gas bubbles in a liquid including heat-transfer. - -\*---------------------------------------------------------------------------*/ - -#include "fvCFD.H" -#include "twoPhaseSystem.H" -#include "PhaseCompressibleMomentumTransportModel.H" -#include "pimpleControl.H" -#include "fvOptions.H" -#include "fixedValueFvsPatchFields.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -int main(int argc, char *argv[]) -{ - #include "postProcess.H" - - #include "setRootCaseLists.H" - #include "createTime.H" - #include "createMesh.H" - #include "createControl.H" - #include "createFields.H" - #include "createFieldRefs.H" - #include "createTimeControls.H" - #include "CourantNos.H" - #include "setInitialDeltaT.H" - - Switch faceMomentum - ( - pimple.dict().lookupOrDefault("faceMomentum", false) - ); - - Switch implicitPhasePressure - ( - mesh.solverDict(alpha1.name()).lookupOrDefault - ( - "implicitPhasePressure", false - ) - ); - - #include "pUf/createDDtU.H" - #include "pU/createDDtU.H" - - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - - Info<< "\nStarting time loop\n" << endl; - - while (pimple.run(runTime)) - { - #include "readTimeControls.H" - #include "CourantNos.H" - #include "setDeltaT.H" - - runTime++; - Info<< "Time = " << runTime.timeName() << nl << endl; - - // --- Pressure-velocity PIMPLE corrector loop - while (pimple.loop()) - { - fluid.solve(); - fluid.correct(); - - #include "contErrs.H" - - if (faceMomentum) - { - #include "pUf/UEqns.H" - #include "EEqns.H" - #include "pUf/pEqn.H" - #include "pUf/DDtU.H" - } - else - { - #include "pU/UEqns.H" - #include "EEqns.H" - #include "pU/pEqn.H" - #include "pU/DDtU.H" - } - - if (pimple.turbCorr()) - { - fluid.correctTurbulence(); - } - } - - #include "write.H" - - Info<< "ExecutionTime = " - << runTime.elapsedCpuTime() - << " s\n\n" << endl; - } - - Info<< "End\n" << endl; - - return 0; -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/BlendedInterfacialModel/BlendedInterfacialModel.C b/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/BlendedInterfacialModel/BlendedInterfacialModel.C deleted file mode 100644 index 423aa5ca50..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/BlendedInterfacialModel/BlendedInterfacialModel.C +++ /dev/null @@ -1,430 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2019 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "BlendedInterfacialModel.H" -#include "fixedValueFvsPatchFields.H" -#include "surfaceInterpolate.H" - -// * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // - -template -template -void Foam::BlendedInterfacialModel::correctFixedFluxBCs -( - GeometricField& field -) const -{ - typename GeometricField::Boundary& fieldBf = - field.boundaryFieldRef(); - - forAll(pair_.phase1().phi().boundaryField(), patchi) - { - if - ( - isA - ( - pair_.phase1().phi().boundaryField()[patchi] - ) - ) - { - fieldBf[patchi] = Zero; - } - } -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -template -Foam::BlendedInterfacialModel::BlendedInterfacialModel -( - const phasePair::dictTable& modelTable, - const blendingMethod& blending, - const phasePair& pair, - const orderedPhasePair& pair1In2, - const orderedPhasePair& pair2In1, - const bool correctFixedFluxBCs -) -: - pair_(pair), - pair1In2_(pair1In2), - pair2In1_(pair2In1), - blending_(blending), - correctFixedFluxBCs_(correctFixedFluxBCs) -{ - if (modelTable.found(pair_)) - { - model_.set - ( - modelType::New - ( - modelTable[pair_], - pair_ - ).ptr() - ); - } - - if (modelTable.found(pair1In2_)) - { - model1In2_.set - ( - modelType::New - ( - modelTable[pair1In2_], - pair1In2_ - ).ptr() - ); - } - - if (modelTable.found(pair2In1_)) - { - model2In1_.set - ( - modelType::New - ( - modelTable[pair2In1_], - pair2In1_ - ).ptr() - ); - } -} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -template -Foam::BlendedInterfacialModel::~BlendedInterfacialModel() -{} - - -// * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * * // - -template -Foam::tmp -Foam::BlendedInterfacialModel::K() const -{ - tmp f1, f2; - - if (model_.valid() || model1In2_.valid()) - { - f1 = blending_.f1(pair1In2_.dispersed(), pair2In1_.dispersed()); - } - - if (model_.valid() || model2In1_.valid()) - { - f2 = blending_.f2(pair1In2_.dispersed(), pair2In1_.dispersed()); - } - - tmp x - ( - volScalarField::New - ( - modelType::typeName + ":K", - pair_.phase1().mesh(), - dimensionedScalar(modelType::dimK, 0) - ) - ); - - if (model_.valid()) - { - x.ref() += model_->K()*(f1() - f2()); - } - - if (model1In2_.valid()) - { - x.ref() += model1In2_->K()*(1 - f1); - } - - if (model2In1_.valid()) - { - x.ref() += model2In1_->K()*f2; - } - - if - ( - correctFixedFluxBCs_ - && (model_.valid() || model1In2_.valid() || model2In1_.valid()) - ) - { - correctFixedFluxBCs(x.ref()); - } - - return x; -} - - -template -Foam::tmp -Foam::BlendedInterfacialModel::Kf() const -{ - tmp f1, f2; - - if (model_.valid() || model1In2_.valid()) - { - f1 = fvc::interpolate - ( - blending_.f1(pair1In2_.dispersed(), pair2In1_.dispersed()) - ); - } - - if (model_.valid() || model2In1_.valid()) - { - f2 = fvc::interpolate - ( - blending_.f2(pair1In2_.dispersed(), pair2In1_.dispersed()) - ); - } - - tmp x - ( - surfaceScalarField::New - ( - modelType::typeName + ":Kf", - pair_.phase1().mesh(), - dimensionedScalar(modelType::dimK, 0) - ) - ); - - if (model_.valid()) - { - x.ref() += model_->Kf()*(f1() - f2()); - } - - if (model1In2_.valid()) - { - x.ref() += model1In2_->Kf()*(1 - f1); - } - - if (model2In1_.valid()) - { - x.ref() += model2In1_->Kf()*f2; - } - - if - ( - correctFixedFluxBCs_ - && (model_.valid() || model1In2_.valid() || model2In1_.valid()) - ) - { - correctFixedFluxBCs(x.ref()); - } - - return x; -} - - -template -template -Foam::tmp> -Foam::BlendedInterfacialModel::F() const -{ - tmp f1, f2; - - if (model_.valid() || model1In2_.valid()) - { - f1 = blending_.f1(pair1In2_.dispersed(), pair2In1_.dispersed()); - } - - if (model_.valid() || model2In1_.valid()) - { - f2 = blending_.f2(pair1In2_.dispersed(), pair2In1_.dispersed()); - } - - tmp> x - ( - GeometricField::New - ( - modelType::typeName + ":F", - pair_.phase1().mesh(), - dimensioned("zero", modelType::dimF, Zero) - ) - ); - - if (model_.valid()) - { - x.ref() += model_->F()*(f1() - f2()); - } - - if (model1In2_.valid()) - { - x.ref() += model1In2_->F()*(1 - f1); - } - - if (model2In1_.valid()) - { - x.ref() -= model2In1_->F()*f2; // note : subtraction - } - - if - ( - correctFixedFluxBCs_ - && (model_.valid() || model1In2_.valid() || model2In1_.valid()) - ) - { - correctFixedFluxBCs(x.ref()); - } - - return x; -} - - -template -Foam::tmp -Foam::BlendedInterfacialModel::Ff() const -{ - tmp f1, f2; - - if (model_.valid() || model1In2_.valid()) - { - f1 = fvc::interpolate - ( - blending_.f1(pair1In2_.dispersed(), pair2In1_.dispersed()) - ); - } - - if (model_.valid() || model2In1_.valid()) - { - f2 = fvc::interpolate - ( - blending_.f2(pair1In2_.dispersed(), pair2In1_.dispersed()) - ); - } - - tmp x - ( - surfaceScalarField::New - ( - modelType::typeName + ":Ff", - pair_.phase1().mesh(), - dimensionedScalar(modelType::dimF*dimArea, 0) - ) - ); - - if (model_.valid()) - { - x.ref() += model_->Ff()*(f1() - f2()); - } - - if (model1In2_.valid()) - { - x.ref() += model1In2_->Ff()*(1 - f1); - } - - if (model2In1_.valid()) - { - x.ref() -= model2In1_->Ff()*f2; // note : subtraction - } - - if - ( - correctFixedFluxBCs_ - && (model_.valid() || model1In2_.valid() || model2In1_.valid()) - ) - { - correctFixedFluxBCs(x.ref()); - } - - return x; -} - - -template -Foam::tmp -Foam::BlendedInterfacialModel::D() const -{ - tmp f1, f2; - - if (model_.valid() || model1In2_.valid()) - { - f1 = blending_.f1(pair1In2_.dispersed(), pair2In1_.dispersed()); - } - - if (model_.valid() || model2In1_.valid()) - { - f2 = blending_.f2(pair1In2_.dispersed(), pair2In1_.dispersed()); - } - - tmp x - ( - volScalarField::New - ( - modelType::typeName + ":D", - pair_.phase1().mesh(), - dimensionedScalar(modelType::dimD, 0) - ) - ); - - if (model_.valid()) - { - x.ref() += model_->D()*(f1() - f2()); - } - - if (model1In2_.valid()) - { - x.ref() += model1In2_->D()*(1 - f1); - } - - if (model2In1_.valid()) - { - x.ref() += model2In1_->D()*f2; - } - - if - ( - correctFixedFluxBCs_ - && (model_.valid() || model1In2_.valid() || model2In1_.valid()) - ) - { - correctFixedFluxBCs(x.ref()); - } - - return x; -} - - -template -bool Foam::BlendedInterfacialModel::hasModel -( - const class phaseModel& phase -) const -{ - return - &phase == &(pair_.phase1()) - ? model1In2_.valid() - : model2In1_.valid(); -} - - -template -const modelType& Foam::BlendedInterfacialModel::phaseModel -( - const class phaseModel& phase -) const -{ - return &phase == &(pair_.phase1()) ? model1In2_ : model2In1_; -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/BlendedInterfacialModel/BlendedInterfacialModel.H b/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/BlendedInterfacialModel/BlendedInterfacialModel.H deleted file mode 100644 index 7eb5012e97..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/BlendedInterfacialModel/BlendedInterfacialModel.H +++ /dev/null @@ -1,161 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2019 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::BlendedInterfacialModel - -Description - -SourceFiles - BlendedInterfacialModel.C - -\*---------------------------------------------------------------------------*/ - -#ifndef BlendedInterfacialModel_H -#define BlendedInterfacialModel_H - -#include "blendingMethod.H" -#include "phasePair.H" -#include "orderedPhasePair.H" - -#include "geometricZeroField.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - -/*---------------------------------------------------------------------------*\ - Class BlendedInterfacialModel Declaration -\*---------------------------------------------------------------------------*/ - -template -class BlendedInterfacialModel -{ - // Private Data - - //- Unordered phase pair - const phasePair& pair_; - - //- Ordered phase pair for dispersed phase 1 in continuous phase 2 - const orderedPhasePair& pair1In2_; - - //- Ordered phase pair for dispersed phase 2 in continuous phase 1 - const orderedPhasePair& pair2In1_; - - //- Model for region with no obvious dispersed phase - autoPtr model_; - - //- Model for dispersed phase 1 in continuous phase 2 - autoPtr model1In2_; - - //- Model for dispersed phase 2 in continuous phase 1 - autoPtr model2In1_; - - //- Blending model - const blendingMethod& blending_; - - //- If true set coefficients and forces to 0 at fixed-flux BCs - bool correctFixedFluxBCs_; - - - // Private Member Functions - - //- Correct coeff/value on fixed flux boundary conditions - template - void correctFixedFluxBCs(GeometricField& field) const; - - -public: - - // Constructors - - //- Construct from the model table, dictionary and pairs - BlendedInterfacialModel - ( - const phasePair::dictTable& modelTable, - const blendingMethod& blending, - const phasePair& pair, - const orderedPhasePair& pair1In2, - const orderedPhasePair& pair2In1, - const bool correctFixedFluxBCs = true - ); - - //- Disallow default bitwise copy construction - BlendedInterfacialModel - ( - const BlendedInterfacialModel& - ) = delete; - - - //- Destructor - ~BlendedInterfacialModel(); - - - // Member Functions - - //- Return true if a model is specified for the supplied phase - bool hasModel(const phaseModel& phase) const; - - //- Return the model for the supplied phase - const modelType& phaseModel(const phaseModel& phase) const; - - //- Return the blended force coefficient - tmp K() const; - - //- Return the face blended force coefficient - tmp Kf() const; - - //- Return the blended force - template - tmp> F() const; - - //- Return the face blended force - tmp Ff() const; - - //- Return the blended diffusivity - tmp D() const; - - - // Member Operators - - //- Disallow default bitwise assignment - void operator=(const BlendedInterfacialModel&) = delete; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#ifdef NoRepository - #include "BlendedInterfacialModel.C" -#endif - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/BlendedInterfacialModel/blendingMethods/blendingMethod/blendingMethod.C b/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/BlendedInterfacialModel/blendingMethods/blendingMethod/blendingMethod.C deleted file mode 100644 index 6313247a5f..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/BlendedInterfacialModel/blendingMethods/blendingMethod/blendingMethod.C +++ /dev/null @@ -1,52 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "blendingMethod.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ - defineTypeNameAndDebug(blendingMethod, 0); - defineRunTimeSelectionTable(blendingMethod, dictionary); -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::blendingMethod::blendingMethod -( - const dictionary& dict -) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::blendingMethod::~blendingMethod() -{} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/BlendedInterfacialModel/blendingMethods/blendingMethod/blendingMethod.H b/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/BlendedInterfacialModel/blendingMethods/blendingMethod/blendingMethod.H deleted file mode 100644 index 40bade85d0..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/BlendedInterfacialModel/blendingMethods/blendingMethod/blendingMethod.H +++ /dev/null @@ -1,120 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::blendingMethod - -Description - -SourceFiles - blendingMethod.C - -\*---------------------------------------------------------------------------*/ - -#ifndef blendingMethod_H -#define blendingMethod_H - -#include "dictionary.H" -#include "runTimeSelectionTables.H" -#include "phaseModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - -/*---------------------------------------------------------------------------*\ - Class blendingMethod Declaration -\*---------------------------------------------------------------------------*/ - -class blendingMethod -{ -public: - - //- Runtime type information - TypeName("blendingMethod"); - - - // Declare runtime construction - declareRunTimeSelectionTable - ( - autoPtr, - blendingMethod, - dictionary, - ( - const dictionary& dict, - const wordList& phaseNames - ), - (dict, phaseNames) - ); - - - // Constructors - - //- Construct from a dictionary - blendingMethod - ( - const dictionary& dict - ); - - - // Selector - - static autoPtr New - ( - const dictionary& dict, - const wordList& phaseNames - ); - - - //- Destructor - virtual ~blendingMethod(); - - - // Member Functions - - //- Factor for first phase - virtual tmp f1 - ( - const phaseModel& phase1, - const phaseModel& phase2 - ) const = 0; - - //- Factor for second phase - virtual tmp f2 - ( - const phaseModel& phase1, - const phaseModel& phase2 - ) const = 0; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/BlendedInterfacialModel/blendingMethods/blendingMethod/newBlendingMethod.C b/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/BlendedInterfacialModel/blendingMethods/blendingMethod/newBlendingMethod.C deleted file mode 100644 index f6e59677be..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/BlendedInterfacialModel/blendingMethods/blendingMethod/newBlendingMethod.C +++ /dev/null @@ -1,58 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "blendingMethod.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -Foam::autoPtr Foam::blendingMethod::New -( - const dictionary& dict, - const wordList& phaseNames -) -{ - word blendingMethodType(dict.lookup("type")); - - Info<< "Selecting " << dict.dictName() << " blending method: " - << blendingMethodType << endl; - - dictionaryConstructorTable::iterator cstrIter = - dictionaryConstructorTablePtr_->find(blendingMethodType); - - if (cstrIter == dictionaryConstructorTablePtr_->end()) - { - FatalErrorInFunction - << "Unknown blendingMethodType type " - << blendingMethodType << endl << endl - << "Valid blendingMethod types are : " << endl - << dictionaryConstructorTablePtr_->sortedToc() - << exit(FatalError); - } - - return cstrIter()(dict, phaseNames); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/BlendedInterfacialModel/blendingMethods/hyperbolic/hyperbolic.C b/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/BlendedInterfacialModel/blendingMethods/hyperbolic/hyperbolic.C deleted file mode 100644 index fb8ee7c3cf..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/BlendedInterfacialModel/blendingMethods/hyperbolic/hyperbolic.C +++ /dev/null @@ -1,124 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "hyperbolic.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace blendingMethods -{ - defineTypeNameAndDebug(hyperbolic, 0); - - addToRunTimeSelectionTable - ( - blendingMethod, - hyperbolic, - dictionary - ); -} -} - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::blendingMethods::hyperbolic::hyperbolic -( - const dictionary& dict, - const wordList& phaseNames -) -: - blendingMethod(dict), - transitionAlphaScale_ - ( - "transitionAlphaScale", - dimless, - dict.lookup("transitionAlphaScale") - ) -{ - forAllConstIter(wordList, phaseNames, iter) - { - const word name(IOobject::groupName("maxDispersedAlpha", *iter)); - - maxDispersedAlpha_.insert - ( - *iter, - dimensionedScalar - ( - name, - dimless, - dict.lookup(name) - ) - ); - } -} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::blendingMethods::hyperbolic::~hyperbolic() -{} - - -// * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * * // - -Foam::tmp Foam::blendingMethods::hyperbolic::f1 -( - const phaseModel& phase1, - const phaseModel& phase2 -) const -{ - return - ( - 1 - + tanh - ( - (4/transitionAlphaScale_) - *(phase1 - maxDispersedAlpha_[phase1.name()]) - ) - )/2; -} - - -Foam::tmp Foam::blendingMethods::hyperbolic::f2 -( - const phaseModel& phase1, - const phaseModel& phase2 -) const -{ - return - ( - 1 - + tanh - ( - (4/transitionAlphaScale_) - *(maxDispersedAlpha_[phase2.name()] - phase2) - ) - )/2; -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/BlendedInterfacialModel/blendingMethods/hyperbolic/hyperbolic.H b/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/BlendedInterfacialModel/blendingMethods/hyperbolic/hyperbolic.H deleted file mode 100644 index a6b4545e5f..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/BlendedInterfacialModel/blendingMethods/hyperbolic/hyperbolic.H +++ /dev/null @@ -1,110 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2019 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::blendingMethods::hyperbolic - -Description - -SourceFiles - hyperbolic.C - -\*---------------------------------------------------------------------------*/ - -#ifndef hyperbolic_H -#define hyperbolic_H - -#include "blendingMethod.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ -namespace blendingMethods -{ - -/*---------------------------------------------------------------------------*\ - Class hyperbolic Declaration -\*---------------------------------------------------------------------------*/ - -class hyperbolic -: - public blendingMethod -{ - // Private Data - - //- Maximum fraction of phases which can be considered dispersed - HashTable maxDispersedAlpha_; - - //- Width of the transition - const dimensionedScalar transitionAlphaScale_; - - -public: - - //- Runtime type information - TypeName("hyperbolic"); - - - // Constructors - - //- Construct from a dictionary and a list of phase names - hyperbolic - ( - const dictionary& dict, - const wordList& phaseNames - ); - - - //- Destructor - ~hyperbolic(); - - - // Member Functions - - //- Factor for first phase - virtual tmp f1 - ( - const phaseModel& phase1, - const phaseModel& phase2 - ) const; - - //- Factor for second phase - virtual tmp f2 - ( - const phaseModel& phase1, - const phaseModel& phase2 - ) const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace blendingMethods -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/BlendedInterfacialModel/blendingMethods/linear/linear.C b/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/BlendedInterfacialModel/blendingMethods/linear/linear.C deleted file mode 100644 index 8b9f690e93..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/BlendedInterfacialModel/blendingMethods/linear/linear.C +++ /dev/null @@ -1,164 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "linear.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace blendingMethods -{ - defineTypeNameAndDebug(linear, 0); - - addToRunTimeSelectionTable - ( - blendingMethod, - linear, - dictionary - ); -} -} - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::blendingMethods::linear::linear -( - const dictionary& dict, - const wordList& phaseNames -) -: - blendingMethod(dict) -{ - forAllConstIter(wordList, phaseNames, iter) - { - const word nameFull - ( - IOobject::groupName("maxFullyDispersedAlpha", *iter) - ); - - maxFullyDispersedAlpha_.insert - ( - *iter, - dimensionedScalar - ( - nameFull, - dimless, - dict.lookup(nameFull) - ) - ); - - const word namePart - ( - IOobject::groupName("maxPartlyDispersedAlpha", *iter) - ); - - maxPartlyDispersedAlpha_.insert - ( - *iter, - dimensionedScalar - ( - namePart, - dimless, - dict.lookup(namePart) - ) - ); - - if - ( - maxFullyDispersedAlpha_[*iter] - > maxPartlyDispersedAlpha_[*iter] - ) - { - FatalErrorInFunction - << "The supplied fully dispersed volume fraction for " - << *iter - << " is greater than the partly dispersed value." - << endl << exit(FatalError); - } - } -} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::blendingMethods::linear::~linear() -{} - - -// * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * * // - -Foam::tmp Foam::blendingMethods::linear::f1 -( - const phaseModel& phase1, - const phaseModel& phase2 -) const -{ - const dimensionedScalar - maxFullAlpha(maxFullyDispersedAlpha_[phase1.name()]); - const dimensionedScalar - maxPartAlpha(maxPartlyDispersedAlpha_[phase1.name()]); - - return - min - ( - max - ( - (phase1 - maxFullAlpha) - /(maxPartAlpha - maxFullAlpha + small), - scalar(0) - ), - scalar(1) - ); -} - - -Foam::tmp Foam::blendingMethods::linear::f2 -( - const phaseModel& phase1, - const phaseModel& phase2 -) const -{ - const dimensionedScalar - maxFullAlpha(maxFullyDispersedAlpha_[phase2.name()]); - const dimensionedScalar - maxPartAlpha(maxPartlyDispersedAlpha_[phase2.name()]); - - return - min - ( - max - ( - (maxPartAlpha - phase2) - /(maxPartAlpha - maxFullAlpha + small), - scalar(0) - ), - scalar(1) - ); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/BlendedInterfacialModel/blendingMethods/linear/linear.H b/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/BlendedInterfacialModel/blendingMethods/linear/linear.H deleted file mode 100644 index d262cf6ba7..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/BlendedInterfacialModel/blendingMethods/linear/linear.H +++ /dev/null @@ -1,112 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2019 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::blendingMethods::linear - -Description - -SourceFiles - linear.C - -\*---------------------------------------------------------------------------*/ - -#ifndef linear_H -#define linear_H - -#include "blendingMethod.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ -namespace blendingMethods -{ - -/*---------------------------------------------------------------------------*\ - Class linear Declaration -\*---------------------------------------------------------------------------*/ - -class linear -: - public blendingMethod -{ - // Private Data - - //- Maximum fraction of phases which can be considered fully dispersed - HashTable - maxFullyDispersedAlpha_; - - //- Maximum fraction of phases which can be considered partly dispersed - HashTable - maxPartlyDispersedAlpha_; - - -public: - - //- Runtime type information - TypeName("linear"); - - - // Constructors - - //- Construct from a dictionary and two phases - linear - ( - const dictionary& dict, - const wordList& phaseNames - ); - - - //- Destructor - ~linear(); - - - // Member Functions - - //- Factor for primary phase - virtual tmp f1 - ( - const phaseModel& phase1, - const phaseModel& phase2 - ) const; - - //- Factor for secondary phase - virtual tmp f2 - ( - const phaseModel& phase1, - const phaseModel& phase2 - ) const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace blendingMethods -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/BlendedInterfacialModel/blendingMethods/noBlending/noBlending.C b/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/BlendedInterfacialModel/blendingMethods/noBlending/noBlending.C deleted file mode 100644 index df10ab2e15..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/BlendedInterfacialModel/blendingMethods/noBlending/noBlending.C +++ /dev/null @@ -1,101 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "noBlending.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace blendingMethods -{ - defineTypeNameAndDebug(noBlending, 0); - - addToRunTimeSelectionTable - ( - blendingMethod, - noBlending, - dictionary - ); -} -} - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::blendingMethods::noBlending::noBlending -( - const dictionary& dict, - const wordList& phaseNames -) -: - blendingMethod(dict), - continuousPhase_(dict.lookup("continuousPhase")) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::blendingMethods::noBlending::~noBlending() -{} - - -// * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * * // - -Foam::tmp Foam::blendingMethods::noBlending::f1 -( - const phaseModel& phase1, - const phaseModel& phase2 -) const -{ - const fvMesh& mesh(phase1.mesh()); - - return volScalarField::New - ( - "f", - mesh, - dimensionedScalar(dimless, phase2.name() != continuousPhase_) - ); -} - - -Foam::tmp Foam::blendingMethods::noBlending::f2 -( - const phaseModel& phase1, - const phaseModel& phase2 -) const -{ - const fvMesh& mesh(phase1.mesh()); - - return volScalarField::New - ( - "f", - mesh, - dimensionedScalar(dimless, phase1.name() == continuousPhase_) - ); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/BlendedInterfacialModel/blendingMethods/noBlending/noBlending.H b/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/BlendedInterfacialModel/blendingMethods/noBlending/noBlending.H deleted file mode 100644 index 7f47391fc9..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/BlendedInterfacialModel/blendingMethods/noBlending/noBlending.H +++ /dev/null @@ -1,107 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2019 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::blendingMethods::noBlending - -Description - -SourceFiles - noBlending.C - -\*---------------------------------------------------------------------------*/ - -#ifndef noBlending_H -#define noBlending_H - -#include "blendingMethod.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ -namespace blendingMethods -{ - -/*---------------------------------------------------------------------------*\ - Class noBlending Declaration -\*---------------------------------------------------------------------------*/ - -class noBlending -: - public blendingMethod -{ - // Private Data - - //- Name of the continuous phase - const word continuousPhase_; - - -public: - - //- Runtime type information - TypeName("none"); - - - // Constructors - - //- Construct from a dictionary and two phases - noBlending - ( - const dictionary& dict, - const wordList& phaseNames - ); - - - //- Destructor - ~noBlending(); - - - // Member Functions - - //- Factor for primary phase - virtual tmp f1 - ( - const phaseModel& phase1, - const phaseModel& phase2 - ) const; - - //- Factor for secondary phase - virtual tmp f2 - ( - const phaseModel& phase1, - const phaseModel& phase2 - ) const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace blendingMethods -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/Make/files b/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/Make/files deleted file mode 100644 index 8ca75b46ee..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/Make/files +++ /dev/null @@ -1,25 +0,0 @@ -phaseModel/phaseModel.C -diameterModels/diameterModel/diameterModel.C -diameterModels/diameterModel/newDiameterModel.C -diameterModels/constantDiameter/constantDiameter.C -diameterModels/isothermalDiameter/isothermalDiameter.C - -diameterModels/IATE/IATE.C -diameterModels/IATE/IATEsources/IATEsource/IATEsource.C -diameterModels/IATE/IATEsources/wakeEntrainmentCoalescence/wakeEntrainmentCoalescence.C -diameterModels/IATE/IATEsources/turbulentBreakUp/turbulentBreakUp.C -diameterModels/IATE/IATEsources/randomCoalescence/randomCoalescence.C - -BlendedInterfacialModel/blendingMethods/blendingMethod/blendingMethod.C -BlendedInterfacialModel/blendingMethods/blendingMethod/newBlendingMethod.C -BlendedInterfacialModel/blendingMethods/noBlending/noBlending.C -BlendedInterfacialModel/blendingMethods/linear/linear.C -BlendedInterfacialModel/blendingMethods/hyperbolic/hyperbolic.C - -phasePair/phasePairKey/phasePairKey.C -phasePair/phasePair/phasePair.C -phasePair/orderedPhasePair/orderedPhasePair.C - -twoPhaseSystem.C - -LIB = $(FOAM_LIBBIN)/libcompressibleTwoPhaseSystem diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/Make/options b/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/Make/options deleted file mode 100644 index 85d7b698e4..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/Make/options +++ /dev/null @@ -1,14 +0,0 @@ -EXE_INC = \ - -I../interfacialModels/lnInclude \ - -I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \ - -I$(LIB_SRC)/MomentumTransportModels/momentumTransportModels/lnInclude \ - -I$(LIB_SRC)/MomentumTransportModels/compressible/lnInclude \ - -I$(LIB_SRC)/MomentumTransportModels/phaseCompressible/lnInclude \ - -I$(LIB_SRC)/finiteVolume/lnInclude \ - -I$(LIB_SRC)/meshTools/lnInclude \ - -I$(LIB_SRC)/sampling/lnInclude - -LIB_LIBS = \ - -lincompressibleTransportModels \ - -lfluidThermophysicalModels \ - -lspecie diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATE.C b/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATE.C deleted file mode 100644 index f49e07f057..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATE.C +++ /dev/null @@ -1,201 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2013-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "IATE.H" -#include "IATEsource.H" -#include "twoPhaseSystem.H" -#include "fvmDdt.H" -#include "fvmDiv.H" -#include "fvmSup.H" -#include "fvcDdt.H" -#include "fvcDiv.H" -#include "fvcAverage.H" -#include "fvOptions.H" -#include "mathematicalConstants.H" -#include "fundamentalConstants.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace diameterModels -{ - defineTypeNameAndDebug(IATE, 0); - - addToRunTimeSelectionTable - ( - diameterModel, - IATE, - dictionary - ); -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::diameterModels::IATE::IATE -( - const dictionary& diameterProperties, - const phaseModel& phase -) -: - diameterModel(diameterProperties, phase), - kappai_ - ( - IOobject - ( - IOobject::groupName("kappai", phase.name()), - phase_.U().time().timeName(), - phase_.U().mesh(), - IOobject::MUST_READ, - IOobject::AUTO_WRITE - ), - phase_.U().mesh() - ), - dMax_("dMax", dimLength, diameterProperties_), - dMin_("dMin", dimLength, diameterProperties_), - residualAlpha_ - ( - "residualAlpha", - dimless, - diameterProperties_ - ), - d_ - ( - IOobject - ( - IOobject::groupName("d", phase.name()), - phase_.U().time().timeName(), - phase_.U().mesh(), - IOobject::NO_READ, - IOobject::AUTO_WRITE - ), - dsm() - ), - sources_ - ( - diameterProperties_.lookup("sources"), - IATEsource::iNew(*this) - ) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::diameterModels::IATE::~IATE() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp Foam::diameterModels::IATE::dsm() const -{ - return max(6/max(kappai_, 6/dMax_), dMin_); -} - -// Placeholder for the nucleation/condensation model -// Foam::tmp Foam::diameterModels::IATE::Rph() const -// { -// const volScalarField& T = phase_.thermo().T(); -// const volScalarField& p = phase_.thermo().p(); -// -// scalar A, B, C, sigma, vm, Rph; -// -// volScalarField ps(1e5*pow(10, A - B/(T + C))); -// volScalarField Dbc -// ( -// 4*sigma*vm/(constant::physicoChemical::k*T*log(p/ps)) -// ); -// -// return constant::mathematical::pi*sqr(Dbc)*Rph; -// } - -void Foam::diameterModels::IATE::correct() -{ - // Initialise the accumulated source term to the dilatation effect - volScalarField R - ( - ( - (1.0/3.0) - /max - ( - 0.5*fvc::average(phase_ + phase_.oldTime()), - residualAlpha_ - ) - ) - *(fvc::ddt(phase_) + fvc::div(phase_.alphaPhi())) - ); - - // Accumulate the run-time selectable sources - forAll(sources_, j) - { - R -= sources_[j].R(); - } - - fv::options& fvOptions(fv::options::New(phase_.mesh())); - - // Construct the interfacial curvature equation - fvScalarMatrix kappaiEqn - ( - fvm::ddt(kappai_) + fvm::div(phase_.phi(), kappai_) - - fvm::Sp(fvc::div(phase_.phi()), kappai_) - == - - fvm::SuSp(R, kappai_) - //+ Rph() // Omit the nucleation/condensation term - + fvOptions(kappai_) - ); - - kappaiEqn.relax(); - - fvOptions.constrain(kappaiEqn); - - kappaiEqn.solve(); - - // Update the Sauter-mean diameter - d_ = dsm(); -} - - -bool Foam::diameterModels::IATE::read(const dictionary& phaseProperties) -{ - diameterModel::read(phaseProperties); - - diameterProperties_.lookup("dMax") >> dMax_; - diameterProperties_.lookup("dMin") >> dMin_; - - // Re-create all the sources updating number, type and coefficients - PtrList - ( - diameterProperties_.lookup("sources"), - IATEsource::iNew(*this) - ).transfer(sources_); - - return true; -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATE.H b/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATE.H deleted file mode 100644 index 1db6256eee..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATE.H +++ /dev/null @@ -1,155 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2013-2019 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::diameterModels::IATE - -Description - IATE (Interfacial Area Transport Equation) bubble diameter model. - - Solves for the interfacial curvature per unit volume of the phase rather - than interfacial area per unit volume to avoid stability issues relating to - the consistency requirements between the phase fraction and interfacial area - per unit volume. In every other respect this model is as presented in the - paper: - - \verbatim - "Development of Interfacial Area Transport Equation" - Ishii, M., Kim, S. and Kelly, J., - Nuclear Engineering and Technology, Vol.37 No.6 December 2005 - \endverbatim - -SourceFiles - IATE.C - -\*---------------------------------------------------------------------------*/ - -#ifndef IATE_H -#define IATE_H - -#include "diameterModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ -namespace diameterModels -{ - -// Forward declaration of classes -class IATEsource; - -/*---------------------------------------------------------------------------*\ - Class IATE Declaration -\*---------------------------------------------------------------------------*/ - -class IATE -: - public diameterModel -{ - // Private Data - - //- Interfacial curvature (alpha*interfacial area) - volScalarField kappai_; - - //- Maximum diameter used for stabilisation in the limit kappai->0 - dimensionedScalar dMax_; - - //- Minimum diameter used for stabilisation in the limit kappai->inf - dimensionedScalar dMin_; - - //- Residual phase fraction - dimensionedScalar residualAlpha_; - - //- The Sauter-mean diameter of the phase - volScalarField d_; - - //- IATE sources - PtrList sources_; - - - // Private Member Functions - - tmp dsm() const; - - -public: - - friend class IATEsource; - - //- Runtime type information - TypeName("IATE"); - - - // Constructors - - //- Construct from components - IATE - ( - const dictionary& diameterProperties, - const phaseModel& phase - ); - - - //- Destructor - virtual ~IATE(); - - - // Member Functions - - //- Return the interfacial curvature - const volScalarField& kappai() const - { - return kappai_; - } - - //- Return the interfacial area - tmp a() const - { - return phase_*kappai_; - } - - //- Return the Sauter-mean diameter - virtual tmp d() const - { - return d_; - } - - //- Correct the diameter field - virtual void correct(); - - //- Read phaseProperties dictionary - virtual bool read(const dictionary& phaseProperties); -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace diameterModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/IATEsource/IATEsource.C b/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/IATEsource/IATEsource.C deleted file mode 100644 index 459389209d..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/IATEsource/IATEsource.C +++ /dev/null @@ -1,144 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "IATEsource.H" -#include "twoPhaseSystem.H" -#include "fvMatrix.H" -#include "PhaseCompressibleMomentumTransportModel.H" -#include "uniformDimensionedFields.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace diameterModels -{ - defineTypeNameAndDebug(IATEsource, 0); - defineRunTimeSelectionTable(IATEsource, dictionary); -} -} - - -// * * * * * * * * * * * * * * * * * Selectors * * * * * * * * * * * * * * * // - -Foam::autoPtr -Foam::diameterModels::IATEsource::New -( - const word& type, - const IATE& iate, - const dictionary& dict -) -{ - dictionaryConstructorTable::iterator cstrIter = - dictionaryConstructorTablePtr_->find(type); - - if (cstrIter == dictionaryConstructorTablePtr_->end()) - { - FatalErrorInFunction - << "Unknown IATE source type " - << type << nl << nl - << "Valid IATE source types : " << endl - << dictionaryConstructorTablePtr_->sortedToc() - << exit(FatalError); - } - - return autoPtr(cstrIter()(iate, dict)); -} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp Foam::diameterModels::IATEsource::Ur() const -{ - const uniformDimensionedVectorField& g = - phase().U().db().lookupObject("g"); - - return - sqrt(2.0) - *pow025 - ( - fluid().sigma()*mag(g) - *(otherPhase().rho() - phase().rho()) - /sqr(otherPhase().rho()) - ) - *pow(max(1 - phase(), scalar(0)), 1.75); -} - -Foam::tmp Foam::diameterModels::IATEsource::Ut() const -{ - return sqrt(2*otherPhase().turbulence().k()); -} - -Foam::tmp Foam::diameterModels::IATEsource::Re() const -{ - return max(Ur()*phase().d()/otherPhase().nu(), scalar(1.0e-3)); -} - -Foam::tmp Foam::diameterModels::IATEsource::CD() const -{ - const volScalarField Eo(this->Eo()); - const volScalarField Re(this->Re()); - - return - max - ( - min - ( - (16/Re)*(1 + 0.15*pow(Re, 0.687)), - 48/Re - ), - 8*Eo/(3*(Eo + 4)) - ); -} - -Foam::tmp Foam::diameterModels::IATEsource::Mo() const -{ - const uniformDimensionedVectorField& g = - phase().U().db().lookupObject("g"); - - return - mag(g)*pow4(otherPhase().nu())*sqr(otherPhase().rho()) - *(otherPhase().rho() - phase().rho()) - /pow3(fluid().sigma()); -} - -Foam::tmp Foam::diameterModels::IATEsource::Eo() const -{ - const uniformDimensionedVectorField& g = - phase().U().db().lookupObject("g"); - - return - mag(g)*sqr(phase().d()) - *(otherPhase().rho() - phase().rho()) - /fluid().sigma(); -} - -Foam::tmp Foam::diameterModels::IATEsource::We() const -{ - return otherPhase().rho()*sqr(Ur())*phase().d()/fluid().sigma(); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/IATEsource/IATEsource.H b/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/IATEsource/IATEsource.H deleted file mode 100644 index d390f0b4d7..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/IATEsource/IATEsource.H +++ /dev/null @@ -1,192 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2013-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::diameterModels::IATEsource - -Description - IATE (Interfacial Area Transport Equation) bubble diameter model - run-time selectable sources. - -SourceFiles - IATEsource.C - -\*---------------------------------------------------------------------------*/ - -#ifndef IATEsource_H -#define IATEsource_H - -#include "IATE.H" -#include "mathematicalConstants.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ -namespace diameterModels -{ - -/*---------------------------------------------------------------------------*\ - Class IATEsource Declaration -\*---------------------------------------------------------------------------*/ - -class IATEsource -{ - -protected: - - // Protected data - - //- Reference to the IATE this source applies to - const IATE& iate_; - - -public: - - //- Runtime type information - TypeName("IATEsource"); - - - // Declare run-time constructor selection table - - declareRunTimeSelectionTable - ( - autoPtr, - IATEsource, - dictionary, - ( - const IATE& iate, - const dictionary& dict - ), - (iate, dict) - ); - - - //- Class used for the read-construction of - // PtrLists of IATE sources - class iNew - { - const IATE& iate_; - - public: - - iNew(const IATE& iate) - : - iate_(iate) - {} - - autoPtr operator()(Istream& is) const - { - word type(is); - dictionary dict(is); - return IATEsource::New(type, iate_, dict); - } - }; - - - // Constructors - - IATEsource(const IATE& iate) - : - iate_(iate) - {} - - autoPtr clone() const - { - NotImplemented; - return autoPtr(nullptr); - } - - - // Selectors - - static autoPtr New - ( - const word& type, - const IATE& iate, - const dictionary& dict - ); - - - //- Destructor - virtual ~IATEsource() - {} - - - // Member Functions - - const phaseModel& phase() const - { - return iate_.phase(); - } - - const twoPhaseSystem& fluid() const - { - return iate_.phase().fluid(); - } - - const phaseModel& otherPhase() const - { - return phase().otherPhase(); - } - - scalar phi() const - { - return 1.0/(36*constant::mathematical::pi); - } - - //- Return the bubble relative velocity - tmp Ur() const; - - //- Return the bubble turbulent velocity - tmp Ut() const; - - //- Return the bubble Reynolds number - tmp Re() const; - - //- Return the bubble drag coefficient - tmp CD() const; - - //- Return the bubble Morton number - tmp Mo() const; - - //- Return the bubble Eotvos number - tmp Eo() const; - - //- Return the bubble Webber number - tmp We() const; - - virtual tmp R() const = 0; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace diameterModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/dummy/dummy.C b/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/dummy/dummy.C deleted file mode 100644 index 37141844b8..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/dummy/dummy.C +++ /dev/null @@ -1,58 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2013-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "dummy.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace diameterModels -{ -namespace IATEsources -{ - defineTypeNameAndDebug(dummy, 0); - addToRunTimeSelectionTable(IATEsource, dummy, word); -} -} -} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp -Foam::diameterModels::IATEsources::dummy::R() const -{ - return volScalarField::New - ( - "R", - iate_.phase().U().mesh(), - dimensionedScalar(dimless/dimTime, 0) - ); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/dummy/dummy.H b/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/dummy/dummy.H deleted file mode 100644 index 43fec9abe5..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/dummy/dummy.H +++ /dev/null @@ -1,96 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2013-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::diameterModels::IATEsources::dummy - -Description - -SourceFiles - dummy.C - -\*---------------------------------------------------------------------------*/ - -#ifndef dummy_H -#define dummy_H - -#include "IATEsource.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ -namespace diameterModels -{ -namespace IATEsources -{ - -/*---------------------------------------------------------------------------*\ - Class dummy Declaration -\*---------------------------------------------------------------------------*/ - -class dummy -: - public IATEsource -{ - -public: - - //- Runtime type information - TypeName("dummy"); - - // Constructors - - dummy - ( - const word& name, - const IATE& iate, - const dictionary& dict - ) - : - IATEsource(iate) - {} - - - //- Destructor - virtual ~dummy() - {} - - - // Member Functions - - virtual tmp R() const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace IATEsources -} // End namespace diameterModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/randomCoalescence/randomCoalescence.C b/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/randomCoalescence/randomCoalescence.C deleted file mode 100644 index 35404338c1..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/randomCoalescence/randomCoalescence.C +++ /dev/null @@ -1,104 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2013-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "randomCoalescence.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace diameterModels -{ -namespace IATEsources -{ - defineTypeNameAndDebug(randomCoalescence, 0); - addToRunTimeSelectionTable(IATEsource, randomCoalescence, dictionary); -} -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::diameterModels::IATEsources::randomCoalescence:: -randomCoalescence -( - const IATE& iate, - const dictionary& dict -) -: - IATEsource(iate), - Crc_("Crc", dimless, dict), - C_("C", dimless, dict), - alphaMax_("alphaMax", dimless, dict) -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp -Foam::diameterModels::IATEsources::randomCoalescence::R() const -{ - tmp tR - ( - volScalarField::New - ( - "R", - iate_.phase().U().mesh(), - dimensionedScalar(dimless/dimTime, 0) - ) - ); - - volScalarField R = tR(); - - scalar Crc = Crc_.value(); - scalar C = C_.value(); - scalar alphaMax = alphaMax_.value(); - volScalarField Ut(this->Ut()); - const volScalarField& alpha = phase(); - const volScalarField& kappai = iate_.kappai(); - scalar cbrtAlphaMax = cbrt(alphaMax); - - forAll(R, celli) - { - if (alpha[celli] < alphaMax - small) - { - scalar cbrtAlphaMaxMAlpha = cbrtAlphaMax - cbrt(alpha[celli]); - - R[celli] = - (-12)*phi()*kappai[celli]*alpha[celli] - *Crc - *Ut[celli] - *(1 - exp(-C*cbrt(alpha[celli]*alphaMax)/cbrtAlphaMaxMAlpha)) - /(cbrtAlphaMax*cbrtAlphaMaxMAlpha); - } - } - - return tR; -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/randomCoalescence/randomCoalescence.H b/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/randomCoalescence/randomCoalescence.H deleted file mode 100644 index dba94fd3ad..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/randomCoalescence/randomCoalescence.H +++ /dev/null @@ -1,106 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2013-2019 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::diameterModels::IATEsources::randomCoalescence - -Description - Random coalescence IATE source as defined in paper: - - \verbatim - "Development of Interfacial Area Transport Equation" - Ishii, M., Kim, S. and Kelly, J., - Nuclear Engineering and Technology, Vol.37 No.6 December 2005 - \endverbatim - - -SourceFiles - randomCoalescence.C - -\*---------------------------------------------------------------------------*/ - -#ifndef randomCoalescence_H -#define randomCoalescence_H - -#include "IATEsource.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ -namespace diameterModels -{ -namespace IATEsources -{ - -/*---------------------------------------------------------------------------*\ - Class randomCoalescence Declaration -\*---------------------------------------------------------------------------*/ - -class randomCoalescence -: - public IATEsource -{ - // Private Data - - dimensionedScalar Crc_; - dimensionedScalar C_; - dimensionedScalar alphaMax_; - - -public: - - //- Runtime type information - TypeName("randomCoalescence"); - - // Constructors - - randomCoalescence - ( - const IATE& iate, - const dictionary& dict - ); - - - //- Destructor - virtual ~randomCoalescence() - {} - - - // Member Functions - - virtual tmp R() const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace IATEsources -} // End namespace diameterModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/turbulentBreakUp/turbulentBreakUp.C b/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/turbulentBreakUp/turbulentBreakUp.C deleted file mode 100644 index 2a36013084..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/turbulentBreakUp/turbulentBreakUp.C +++ /dev/null @@ -1,99 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2013-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "turbulentBreakUp.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace diameterModels -{ -namespace IATEsources -{ - defineTypeNameAndDebug(turbulentBreakUp, 0); - addToRunTimeSelectionTable(IATEsource, turbulentBreakUp, dictionary); -} -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::diameterModels::IATEsources::turbulentBreakUp:: -turbulentBreakUp -( - const IATE& iate, - const dictionary& dict -) -: - IATEsource(iate), - Cti_("Cti", dimless, dict), - WeCr_("WeCr", dimless, dict) -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp -Foam::diameterModels::IATEsources::turbulentBreakUp::R() const -{ - tmp tR - ( - volScalarField::New - ( - "R", - iate_.phase().U().mesh(), - dimensionedScalar(dimless/dimTime, 0) - ) - ); - - volScalarField R = tR(); - - scalar Cti = Cti_.value(); - scalar WeCr = WeCr_.value(); - volScalarField Ut(this->Ut()); - volScalarField We(this->We()); - const volScalarField& d(iate_.d()()); - - forAll(R, celli) - { - if (We[celli] > WeCr) - { - R[celli] = - (1.0/3.0) - *Cti/d[celli] - *Ut[celli] - *sqrt(1 - WeCr/We[celli]) - *exp(-WeCr/We[celli]); - } - } - - return tR; -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/turbulentBreakUp/turbulentBreakUp.H b/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/turbulentBreakUp/turbulentBreakUp.H deleted file mode 100644 index 455fe03397..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/turbulentBreakUp/turbulentBreakUp.H +++ /dev/null @@ -1,104 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2013-2019 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::diameterModels::IATEsources::turbulentBreakUp - -Description - Turbulence-induced break-up IATE source as defined in paper: - - \verbatim - "Development of Interfacial Area Transport Equation" - Ishii, M., Kim, S. and Kelly, J., - Nuclear Engineering and Technology, Vol.37 No.6 December 2005 - \endverbatim - -SourceFiles - turbulentBreakUp.C - -\*---------------------------------------------------------------------------*/ - -#ifndef turbulentBreakUp_H -#define turbulentBreakUp_H - -#include "IATEsource.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ -namespace diameterModels -{ -namespace IATEsources -{ - -/*---------------------------------------------------------------------------*\ - Class turbulentBreakUp Declaration -\*---------------------------------------------------------------------------*/ - -class turbulentBreakUp -: - public IATEsource -{ - // Private Data - - dimensionedScalar Cti_; - dimensionedScalar WeCr_; - - -public: - - //- Runtime type information - TypeName("turbulentBreakUp"); - - // Constructors - - turbulentBreakUp - ( - const IATE& iate, - const dictionary& dict - ); - - - //- Destructor - virtual ~turbulentBreakUp() - {} - - - // Member Functions - - virtual tmp R() const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace IATEsources -} // End namespace diameterModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/wakeEntrainmentCoalescence/wakeEntrainmentCoalescence.C b/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/wakeEntrainmentCoalescence/wakeEntrainmentCoalescence.C deleted file mode 100644 index 96b9cd9f9c..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/wakeEntrainmentCoalescence/wakeEntrainmentCoalescence.C +++ /dev/null @@ -1,72 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2013-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "wakeEntrainmentCoalescence.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace diameterModels -{ -namespace IATEsources -{ - defineTypeNameAndDebug(wakeEntrainmentCoalescence, 0); - addToRunTimeSelectionTable - ( - IATEsource, - wakeEntrainmentCoalescence, - dictionary - ); -} -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::diameterModels::IATEsources::wakeEntrainmentCoalescence:: -wakeEntrainmentCoalescence -( - const IATE& iate, - const dictionary& dict -) -: - IATEsource(iate), - Cwe_("Cwe", dimless, dict) -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp -Foam::diameterModels::IATEsources::wakeEntrainmentCoalescence::R() const -{ - return (-12)*phi()*Cwe_*cbrt(CD())*iate_.a()*Ur(); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/wakeEntrainmentCoalescence/wakeEntrainmentCoalescence.H b/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/wakeEntrainmentCoalescence/wakeEntrainmentCoalescence.H deleted file mode 100644 index 6b3bea9486..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE/IATEsources/wakeEntrainmentCoalescence/wakeEntrainmentCoalescence.H +++ /dev/null @@ -1,103 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2013-2019 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::diameterModels::IATEsources::wakeEntrainmentCoalescence - -Description - Bubble coalescence due to wake entrainment IATE source as defined in paper: - - \verbatim - "Development of Interfacial Area Transport Equation" - Ishii, M., Kim, S. and Kelly, J., - Nuclear Engineering and Technology, Vol.37 No.6 December 2005 - \endverbatim - -SourceFiles - wakeEntrainmentCoalescence.C - -\*---------------------------------------------------------------------------*/ - -#ifndef wakeEntrainmentCoalescence_H -#define wakeEntrainmentCoalescence_H - -#include "IATEsource.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ -namespace diameterModels -{ -namespace IATEsources -{ - -/*---------------------------------------------------------------------------*\ - Class wakeEntrainmentCoalescence Declaration -\*---------------------------------------------------------------------------*/ - -class wakeEntrainmentCoalescence -: - public IATEsource -{ - // Private Data - - dimensionedScalar Cwe_; - - -public: - - //- Runtime type information - TypeName("wakeEntrainmentCoalescence"); - - // Constructors - - wakeEntrainmentCoalescence - ( - const IATE& iate, - const dictionary& dict - ); - - - //- Destructor - virtual ~wakeEntrainmentCoalescence() - {} - - - // Member Functions - - virtual tmp R() const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace IATEsources -} // End namespace diameterModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/constantDiameter/constantDiameter.C b/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/constantDiameter/constantDiameter.C deleted file mode 100644 index a3d30c3ba5..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/constantDiameter/constantDiameter.C +++ /dev/null @@ -1,89 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "constantDiameter.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace diameterModels -{ - defineTypeNameAndDebug(constant, 0); - - addToRunTimeSelectionTable - ( - diameterModel, - constant, - dictionary - ); -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::diameterModels::constant::constant -( - const dictionary& diameterProperties, - const phaseModel& phase -) -: - diameterModel(diameterProperties, phase), - d_("d", dimLength, diameterProperties_) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::diameterModels::constant::~constant() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp Foam::diameterModels::constant::d() const -{ - return volScalarField::New - ( - "d", - phase_.U().mesh(), - d_ - ); -} - - -bool Foam::diameterModels::constant::read(const dictionary& phaseProperties) -{ - diameterModel::read(phaseProperties); - - diameterProperties_.lookup("d") >> d_; - - return true; -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/constantDiameter/constantDiameter.H b/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/constantDiameter/constantDiameter.H deleted file mode 100644 index 2006d6c7d2..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/constantDiameter/constantDiameter.H +++ /dev/null @@ -1,100 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2019 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::diameterModels::constant - -Description - Constant dispersed-phase particle diameter model. - -SourceFiles - constant.C - -\*---------------------------------------------------------------------------*/ - -#ifndef constantDiameter_H -#define constantDiameter_H - -#include "diameterModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ -namespace diameterModels -{ - -/*---------------------------------------------------------------------------*\ - Class constant Declaration -\*---------------------------------------------------------------------------*/ - -class constant -: - public diameterModel -{ - // Private Data - - //- The constant diameter of the phase - dimensionedScalar d_; - - -public: - - //- Runtime type information - TypeName("constant"); - - - // Constructors - - //- Construct from components - constant - ( - const dictionary& diameterProperties, - const phaseModel& phase - ); - - - //- Destructor - virtual ~constant(); - - - // Member Functions - - //- Return the diameter as a field - virtual tmp d() const; - - //- Read diameterProperties dictionary - virtual bool read(const dictionary& diameterProperties); -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace diameterModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/diameterModel/diameterModel.C b/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/diameterModel/diameterModel.C deleted file mode 100644 index d63b91af48..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/diameterModel/diameterModel.C +++ /dev/null @@ -1,70 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "diameterModel.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ - defineTypeNameAndDebug(diameterModel, 0); - defineRunTimeSelectionTable(diameterModel, dictionary); -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::diameterModel::diameterModel -( - const dictionary& diameterProperties, - const phaseModel& phase -) -: - diameterProperties_(diameterProperties), - phase_(phase) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::diameterModel::~diameterModel() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -void Foam::diameterModel::correct() -{} - - -bool Foam::diameterModel::read(const dictionary& phaseProperties) -{ - diameterProperties_ = phaseProperties.optionalSubDict(type() + "Coeffs"); - - return true; -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/diameterModel/diameterModel.H b/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/diameterModel/diameterModel.H deleted file mode 100644 index c0c89fbd5a..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/diameterModel/diameterModel.H +++ /dev/null @@ -1,139 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2019 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::diameterModel - -Description - Abstract base-class for dispersed-phase particle diameter models. - -SourceFiles - diameterModel.C - newDiameterModel.C - -\*---------------------------------------------------------------------------*/ - -#ifndef diameterModel_H -#define diameterModel_H - -#include "dictionary.H" -#include "phaseModel.H" -#include "runTimeSelectionTables.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - -/*---------------------------------------------------------------------------*\ - Class diameterModel Declaration -\*---------------------------------------------------------------------------*/ - -class diameterModel -{ - -protected: - - // Protected data - - dictionary diameterProperties_; - const phaseModel& phase_; - - -public: - - //- Runtime type information - TypeName("diameterModel"); - - - // Declare runtime construction - - declareRunTimeSelectionTable - ( - autoPtr, - diameterModel, - dictionary, - ( - const dictionary& diameterProperties, - const phaseModel& phase - ), - (diameterProperties, phase) - ); - - - // Constructors - - diameterModel - ( - const dictionary& diameterProperties, - const phaseModel& phase - ); - - - //- Destructor - virtual ~diameterModel(); - - - // Selectors - - static autoPtr New - ( - const dictionary& diameterProperties, - const phaseModel& phase - ); - - - // Member Functions - - //- Return the phase diameter properties dictionary - const dictionary& diameterProperties() const - { - return diameterProperties_; - } - - //- Return the phase - const phaseModel& phase() const - { - return phase_; - } - - //- Return the phase mean diameter field - virtual tmp d() const = 0; - - //- Correct the diameter field - virtual void correct(); - - //- Read phaseProperties dictionary - virtual bool read(const dictionary& phaseProperties) = 0; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/diameterModel/newDiameterModel.C b/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/diameterModel/newDiameterModel.C deleted file mode 100644 index ac20183f37..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/diameterModel/newDiameterModel.C +++ /dev/null @@ -1,67 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "diameterModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -Foam::autoPtr Foam::diameterModel::New -( - const dictionary& dict, - const phaseModel& phase -) -{ - word diameterModelType - ( - dict.lookup("diameterModel") - ); - - Info << "Selecting diameterModel for phase " - << phase.name() - << ": " - << diameterModelType << endl; - - dictionaryConstructorTable::iterator cstrIter = - dictionaryConstructorTablePtr_->find(diameterModelType); - - if (cstrIter == dictionaryConstructorTablePtr_->end()) - { - FatalErrorInFunction - << "Unknown diameterModelType type " - << diameterModelType << endl << endl - << "Valid diameterModel types are : " << endl - << dictionaryConstructorTablePtr_->sortedToc() - << exit(FatalError); - } - - return cstrIter() - ( - dict.optionalSubDict(diameterModelType + "Coeffs"), - phase - ); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/isothermalDiameter/isothermalDiameter.C b/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/isothermalDiameter/isothermalDiameter.C deleted file mode 100644 index 5dff6f28ae..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/isothermalDiameter/isothermalDiameter.C +++ /dev/null @@ -1,91 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "isothermalDiameter.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ -namespace diameterModels -{ - defineTypeNameAndDebug(isothermal, 0); - - addToRunTimeSelectionTable - ( - diameterModel, - isothermal, - dictionary - ); -} -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::diameterModels::isothermal::isothermal -( - const dictionary& diameterProperties, - const phaseModel& phase -) -: - diameterModel(diameterProperties, phase), - d0_("d0", dimLength, diameterProperties_), - p0_("p0", dimPressure, diameterProperties_) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::diameterModels::isothermal::~isothermal() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::tmp Foam::diameterModels::isothermal::d() const -{ - const volScalarField& p = phase_.U().db().lookupObject - ( - "p" - ); - - return d0_*pow(p0_/p, 1.0/3.0); -} - - -bool Foam::diameterModels::isothermal::read(const dictionary& phaseProperties) -{ - diameterModel::read(phaseProperties); - - diameterProperties_.lookup("d0") >> d0_; - diameterProperties_.lookup("p0") >> p0_; - - return true; -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/isothermalDiameter/isothermalDiameter.H b/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/isothermalDiameter/isothermalDiameter.H deleted file mode 100644 index 885a96de40..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/diameterModels/isothermalDiameter/isothermalDiameter.H +++ /dev/null @@ -1,103 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2019 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::diameterModels::isothermal - -Description - Isothermal dispersed-phase particle diameter model. - -SourceFiles - isothermal.C - -\*---------------------------------------------------------------------------*/ - -#ifndef isothermalDiameter_H -#define isothermalDiameter_H - -#include "diameterModel.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ -namespace diameterModels -{ - -/*---------------------------------------------------------------------------*\ - Class isothermal Declaration -\*---------------------------------------------------------------------------*/ - -class isothermal -: - public diameterModel -{ - // Private Data - - //- Reference diameter for the isothermal expansion - dimensionedScalar d0_; - - //- Reference pressure for the isothermal expansion - dimensionedScalar p0_; - - -public: - - //- Runtime type information - TypeName("isothermal"); - - - // Constructors - - //- Construct from components - isothermal - ( - const dictionary& diameterProperties, - const phaseModel& phase - ); - - - //- Destructor - virtual ~isothermal(); - - - // Member Functions - - //- Return the diameter field - virtual tmp d() const; - - //- Read phaseProperties dictionary - virtual bool read(const dictionary& phaseProperties); -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace diameterModels -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/phaseModel/phaseModel.C b/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/phaseModel/phaseModel.C deleted file mode 100644 index 87caac8515..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/phaseModel/phaseModel.C +++ /dev/null @@ -1,269 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "phaseModel.H" -#include "twoPhaseSystem.H" -#include "diameterModel.H" -#include "fvMatrix.H" -#include "PhaseCompressibleMomentumTransportModel.H" -#include "dragModel.H" -#include "heatTransferModel.H" -#include "fixedValueFvsPatchFields.H" -#include "fixedValueFvPatchFields.H" -#include "slipFvPatchFields.H" -#include "partialSlipFvPatchFields.H" -#include "fvcFlux.H" -#include "surfaceInterpolate.H" - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::phaseModel::phaseModel -( - const twoPhaseSystem& fluid, - const dictionary& phaseProperties, - const word& phaseName -) -: - volScalarField - ( - IOobject - ( - IOobject::groupName("alpha", phaseName), - fluid.mesh().time().timeName(), - fluid.mesh(), - IOobject::READ_IF_PRESENT, - IOobject::AUTO_WRITE - ), - fluid.mesh(), - dimensionedScalar(dimless, 0) - ), - fluid_(fluid), - name_(phaseName), - phaseDict_ - ( - phaseProperties.subDict(name_) - ), - residualAlpha_ - ( - "residualAlpha", - dimless, - fluid.subDict(phaseName).lookup("residualAlpha") - ), - alphaMax_(phaseDict_.lookupOrDefault("alphaMax", 1.0)), - thermo_(rhoThermo::New(fluid.mesh(), name_)), - U_ - ( - IOobject - ( - IOobject::groupName("U", name_), - fluid.mesh().time().timeName(), - fluid.mesh(), - IOobject::MUST_READ, - IOobject::AUTO_WRITE - ), - fluid.mesh() - ), - alphaPhi_ - ( - IOobject - ( - IOobject::groupName("alphaPhi", name_), - fluid.mesh().time().timeName(), - fluid.mesh() - ), - fluid.mesh(), - dimensionedScalar(dimensionSet(0, 3, -1, 0, 0), 0) - ), - alphaRhoPhi_ - ( - IOobject - ( - IOobject::groupName("alphaRhoPhi", name_), - fluid.mesh().time().timeName(), - fluid.mesh() - ), - fluid.mesh(), - dimensionedScalar(dimensionSet(1, 0, -1, 0, 0), 0) - ) -{ - thermo_->validate("phaseModel " + name_, "h", "e"); - - const word phiName = IOobject::groupName("phi", name_); - - IOobject phiHeader - ( - phiName, - fluid_.mesh().time().timeName(), - fluid_.mesh(), - IOobject::NO_READ - ); - - if (phiHeader.typeHeaderOk(true)) - { - Info<< "Reading face flux field " << phiName << endl; - - phiPtr_.reset - ( - new surfaceScalarField - ( - IOobject - ( - phiName, - fluid_.mesh().time().timeName(), - fluid_.mesh(), - IOobject::MUST_READ, - IOobject::AUTO_WRITE - ), - fluid_.mesh() - ) - ); - } - else - { - Info<< "Calculating face flux field " << phiName << endl; - - wordList phiTypes - ( - U_.boundaryField().size(), - calculatedFvPatchScalarField::typeName - ); - - forAll(U_.boundaryField(), i) - { - if - ( - isA(U_.boundaryField()[i]) - || isA(U_.boundaryField()[i]) - || isA(U_.boundaryField()[i]) - ) - { - phiTypes[i] = fixedValueFvsPatchScalarField::typeName; - } - } - - phiPtr_.reset - ( - new surfaceScalarField - ( - IOobject - ( - phiName, - fluid_.mesh().time().timeName(), - fluid_.mesh(), - IOobject::NO_READ, - IOobject::AUTO_WRITE - ), - fvc::flux(U_), - phiTypes - ) - ); - } - - dPtr_ = diameterModel::New - ( - phaseDict_, - *this - ); - - turbulence_ = - PhaseCompressibleMomentumTransportModel::New - ( - *this, - thermo_->rho(), - U_, - alphaRhoPhi_, - phi(), - *this - ); -} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::phaseModel::~phaseModel() -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -const Foam::phaseModel& Foam::phaseModel::otherPhase() const -{ - return fluid_.otherPhase(*this); -} - - -Foam::tmp Foam::phaseModel::d() const -{ - return dPtr_().d(); -} - - -Foam::PhaseCompressibleMomentumTransportModel& -Foam::phaseModel::turbulence() -{ - return turbulence_(); -} - - -const Foam::PhaseCompressibleMomentumTransportModel& -Foam::phaseModel::turbulence() const -{ - return turbulence_(); -} - - -void Foam::phaseModel::correct() -{ - return dPtr_->correct(); -} - - -bool Foam::phaseModel::read(const dictionary& phaseProperties) -{ - phaseDict_ = phaseProperties.subDict(name_); - return dPtr_->read(phaseDict_); -} - - -void Foam::phaseModel::correctInflowOutflow(surfaceScalarField& alphaPhi) const -{ - surfaceScalarField::Boundary& alphaPhiBf = alphaPhi.boundaryFieldRef(); - const volScalarField::Boundary& alphaBf = boundaryField(); - const surfaceScalarField::Boundary& phiBf = phi().boundaryField(); - - forAll(alphaPhiBf, patchi) - { - fvsPatchScalarField& alphaPhip = alphaPhiBf[patchi]; - - if (!alphaPhip.coupled()) - { - alphaPhip = phiBf[patchi]*alphaBf[patchi]; - } - } -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/phaseModel/phaseModel.H b/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/phaseModel/phaseModel.H deleted file mode 100644 index 299b80eaf9..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/phaseModel/phaseModel.H +++ /dev/null @@ -1,360 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::phaseModel - -SourceFiles - phaseModel.C - -\*---------------------------------------------------------------------------*/ - -#ifndef phaseModel_H -#define phaseModel_H - -#include "dictionary.H" -#include "dimensionedScalar.H" -#include "volFields.H" -#include "surfaceFields.H" -#include "rhoThermo.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - -// Forward declarations -class twoPhaseSystem; -class diameterModel; - -template -class PhaseCompressibleMomentumTransportModel; - - -/*---------------------------------------------------------------------------*\ - Class phaseModel Declaration -\*---------------------------------------------------------------------------*/ - -class phaseModel -: - public volScalarField -{ - // Private Data - - //- Reference to the twoPhaseSystem to which this phase belongs - const twoPhaseSystem& fluid_; - - //- Name of phase - word name_; - - dictionary phaseDict_; - - //- Return the residual phase-fraction for given phase - // Used to stabilize the phase momentum as the phase-fraction -> 0 - dimensionedScalar residualAlpha_; - - //- Optional maximum phase-fraction (e.g. packing limit) - scalar alphaMax_; - - //- Thermophysical properties - autoPtr thermo_; - - //- Velocity - volVectorField U_; - - //- Volumetric flux of the phase - surfaceScalarField alphaPhi_; - - //- Mass flux of the phase - surfaceScalarField alphaRhoPhi_; - - //- Volumetric flux of the phase - autoPtr phiPtr_; - - //- Diameter model - autoPtr dPtr_; - - //- Turbulence model - autoPtr> - turbulence_; - - -public: - - // Constructors - - phaseModel - ( - const twoPhaseSystem& fluid, - const dictionary& phaseProperties, - const word& phaseName - ); - - - //- Destructor - virtual ~phaseModel(); - - - // Member Functions - - //- Return the name of this phase - const word& name() const - { - return name_; - } - - //- Return the twoPhaseSystem to which this phase belongs - const twoPhaseSystem& fluid() const - { - return fluid_; - } - - //- Return the other phase in this two-phase system - const phaseModel& otherPhase() const; - - //- Return the residual phase-fraction for given phase - // Used to stabilize the phase momentum as the phase-fraction -> 0 - const dimensionedScalar& residualAlpha() const - { - return residualAlpha_; - } - - //- Optional maximum phase-fraction (e.g. packing limit) - // Defaults to 1 - scalar alphaMax() const - { - return alphaMax_; - } - - //- Return the Sauter-mean diameter - tmp d() const; - - //- Return the turbulence model - const PhaseCompressibleMomentumTransportModel& - turbulence() const; - - //- Return non-const access to the turbulence model - // for correction - PhaseCompressibleMomentumTransportModel& - turbulence(); - - //- Return the thermophysical model - const rhoThermo& thermo() const - { - return thermo_(); - } - - //- Return non-const access to the thermophysical model - // for correction - rhoThermo& thermo() - { - return thermo_(); - } - - //- Return the laminar viscosity - tmp nu() const - { - return thermo_->nu(); - } - - //- Return the laminar viscosity for patch - tmp nu(const label patchi) const - { - return thermo_->nu(patchi); - } - - //- Return the laminar dynamic viscosity - tmp mu() const - { - return thermo_->mu(); - } - - //- Return the laminar dynamic viscosity for patch - tmp mu(const label patchi) const - { - return thermo_->mu(patchi); - } - - //- Thermal diffusivity for enthalpy of mixture [kg/m/s] - tmp alpha() const - { - return thermo_->alpha(); - } - - //- Thermal diffusivity for enthalpy of mixture for patch [kg/m/s] - tmp alpha(const label patchi) const - { - return thermo_->alpha(patchi); - } - - //- Thermal diffusivity for temperature of mixture - // for patch [W/m/K] - tmp kappa(const label patchi) const - { - return thermo_->kappa(patchi); - } - - //- Thermal diffusivity for temperature of mixture [W/m/K] - tmp kappa() const - { - return thermo_->kappa(); - } - - //- Thermal diffusivity for energy of mixture [kg/m/s] - tmp alphahe() const - { - return thermo_->alphahe(); - } - - //- Thermal diffusivity for energy of mixture for patch [kg/m/s] - tmp alphahe(const label patchi) const - { - return thermo_->alphahe(patchi); - } - - //- Effective thermal turbulent diffusivity for temperature - // of mixture [W/m/K] - tmp kappaEff - ( - const volScalarField& alphat - ) const - { - return thermo_->kappaEff(alphat); - } - - //- Effective thermal turbulent diffusivity for temperature - // of mixture for patch [W/m/K] - tmp kappaEff - ( - const scalarField& alphat, - const label patchi - ) const - { - return thermo_->kappaEff(alphat, patchi); - } - - //- Effective thermal turbulent diffusivity of mixture [kg/m/s] - tmp alphaEff - ( - const volScalarField& alphat - ) const - { - return thermo_->alphaEff(alphat); - } - - //- Effective thermal turbulent diffusivity of mixture - // for patch [kg/m/s] - tmp alphaEff - ( - const scalarField& alphat, - const label patchi - ) const - { - return thermo_->alphaEff(alphat, patchi); - } - - //- Return the specific heat capacity - tmp Cp() const - { - return thermo_->Cp(); - } - - //- Return the density - const volScalarField& rho() const - { - return thermo_->rho(); - } - - //- Return the velocity - const volVectorField& U() const - { - return U_; - } - - //- Return non-const access to the velocity - // Used in the momentum equation - volVectorField& U() - { - return U_; - } - - //- Return the volumetric flux - const surfaceScalarField& phi() const - { - return phiPtr_(); - } - - //- Return non-const access to the volumetric flux - surfaceScalarField& phi() - { - return phiPtr_(); - } - - //- Return the volumetric flux of the phase - const surfaceScalarField& alphaPhi() const - { - return alphaPhi_; - } - - //- Return non-const access to the volumetric flux of the phase - surfaceScalarField& alphaPhi() - { - return alphaPhi_; - } - - //- Return the mass flux of the phase - const surfaceScalarField& alphaRhoPhi() const - { - return alphaRhoPhi_; - } - - //- Return non-const access to the mass flux of the phase - surfaceScalarField& alphaRhoPhi() - { - return alphaRhoPhi_; - } - - //- Ensure that the flux at inflow/outflow BCs is preserved - void correctInflowOutflow(surfaceScalarField& alphaPhi) const; - - //- Correct the phase properties - // other than the thermodynamics and turbulence - // which have special treatment - void correct(); - - using volScalarField::read; - - //- Read phaseProperties dictionary - virtual bool read(const dictionary& phaseProperties); -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/phasePair/orderedPhasePair/orderedPhasePair.C b/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/phasePair/orderedPhasePair/orderedPhasePair.C deleted file mode 100644 index 8841ce2056..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/phasePair/orderedPhasePair/orderedPhasePair.C +++ /dev/null @@ -1,97 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "orderedPhasePair.H" -#include "aspectRatioModel.H" - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::orderedPhasePair::orderedPhasePair -( - const phaseModel& dispersed, - const phaseModel& continuous, - const dimensionedVector& g, - const scalarTable& sigmaTable, - const dictTable& aspectRatioTable -) -: - phasePair(dispersed, continuous, g, sigmaTable, true) -{ - if (aspectRatioTable.found(*this)) - { - aspectRatio_.set - ( - aspectRatioModel::New - ( - aspectRatioTable[*this], - *this - ).ptr() - ); - } -} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::orderedPhasePair::~orderedPhasePair() -{} - - -// * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * * // - -const Foam::phaseModel& Foam::orderedPhasePair::dispersed() const -{ - return phase1(); -} - - -const Foam::phaseModel& Foam::orderedPhasePair::continuous() const -{ - return phase2(); -} - - -Foam::word Foam::orderedPhasePair::name() const -{ - word namec(continuous().name()); - namec[0] = toupper(namec[0]); - return dispersed().name() + "In" + namec; -} - - -Foam::tmp Foam::orderedPhasePair::E() const -{ - if (!aspectRatio_.valid()) - { - FatalErrorInFunction - << "Aspect ratio model not specified for " << *this << "." - << exit(FatalError); - } - - return aspectRatio_->E(); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/phasePair/orderedPhasePair/orderedPhasePair.H b/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/phasePair/orderedPhasePair/orderedPhasePair.H deleted file mode 100644 index 46c263a776..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/phasePair/orderedPhasePair/orderedPhasePair.H +++ /dev/null @@ -1,104 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2019 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::orderedPhasePair - -Description - -SourceFiles - orderedPhasePair.C - -\*---------------------------------------------------------------------------*/ - -#ifndef orderedPhasePair_H -#define orderedPhasePair_H - -#include "phasePair.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - -class aspectRatioModel; - -/*---------------------------------------------------------------------------*\ - Class orderedPhasePair Declaration -\*---------------------------------------------------------------------------*/ - -class orderedPhasePair -: - public phasePair -{ - // Private Data - - //- Aspect ratio model - autoPtr aspectRatio_; - - -public: - - // Constructors - - //- Construct from two phases, gravity, surface tension and aspect - // ratio tables - orderedPhasePair - ( - const phaseModel& dispersed, - const phaseModel& continuous, - const dimensionedVector& g, - const scalarTable& sigmaTable, - const dictTable& aspectRatioTable - ); - - - //- Destructor - virtual ~orderedPhasePair(); - - - // Member Functions - - //- Dispersed phase - virtual const phaseModel& dispersed() const; - - //- Continuous phase - virtual const phaseModel& continuous() const; - - //- Pair name - virtual word name() const; - - //- Aspect ratio - virtual tmp E() const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/phasePair/phasePair/phasePair.C b/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/phasePair/phasePair/phasePair.C deleted file mode 100644 index 5259d4b14f..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/phasePair/phasePair/phasePair.C +++ /dev/null @@ -1,196 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "phasePair.H" - -// * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // - -Foam::tmp Foam::phasePair::EoH -( - const volScalarField& d -) const -{ - return - mag(dispersed().rho() - continuous().rho()) - *mag(g()) - *sqr(d) - /sigma(); -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::phasePair::phasePair -( - const phaseModel& phase1, - const phaseModel& phase2, - const dimensionedVector& g, - const scalarTable& sigmaTable, - const bool ordered -) -: - phasePairKey(phase1.name(), phase2.name(), ordered), - phase1_(phase1), - phase2_(phase2), - g_(g), - sigma_ - ( - "sigma", - dimensionSet(1, 0, -2, 0, 0), - sigmaTable - [ - phasePairKey - ( - phase1.name(), - phase2.name(), - false - ) - ] - ) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::phasePair::~phasePair() -{} - - -// * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * * // - -const Foam::phaseModel& Foam::phasePair::dispersed() const -{ - FatalErrorInFunction - << "Requested dispersed phase from an unordered pair." - << exit(FatalError); - - return phase1_; -} - - -const Foam::phaseModel& Foam::phasePair::continuous() const -{ - FatalErrorInFunction - << "Requested continuous phase from an unordered pair." - << exit(FatalError); - - return phase1_; -} - - -Foam::word Foam::phasePair::name() const -{ - word name2(phase2().name()); - name2[0] = toupper(name2[0]); - return phase1().name() + "And" + name2; -} - - -Foam::tmp Foam::phasePair::rho() const -{ - return phase1()*phase1().rho() + phase2()*phase2().rho(); -} - - -Foam::tmp Foam::phasePair::magUr() const -{ - return mag(phase1().U() - phase2().U()); -} - - -Foam::tmp Foam::phasePair::Ur() const -{ - return dispersed().U() - continuous().U(); -} - - -Foam::tmp Foam::phasePair::Re() const -{ - return magUr()*dispersed().d()/continuous().nu(); -} - - -Foam::tmp Foam::phasePair::Pr() const -{ - return - continuous().nu()*continuous().Cp()*continuous().rho() - /continuous().kappa(); -} - - -Foam::tmp Foam::phasePair::Eo() const -{ - return EoH(dispersed().d()); -} - - -Foam::tmp Foam::phasePair::EoH1() const -{ - return - EoH - ( - dispersed().d() - *cbrt(1 + 0.163*pow(Eo(), 0.757)) - ); -} - - -Foam::tmp Foam::phasePair::EoH2() const -{ - return - EoH - ( - dispersed().d() - /cbrt(E()) - ); -} - - -Foam::tmp Foam::phasePair::Mo() const -{ - return - mag(g()) - *continuous().nu() - *pow3(continuous().nu()*continuous().rho()/sigma()); -} - - -Foam::tmp Foam::phasePair::Ta() const -{ - return Re()*pow(Mo(), 0.23); -} - - -Foam::tmp Foam::phasePair::E() const -{ - FatalErrorInFunction - << "Requested aspect ratio of the dispersed phase in an unordered pair" - << exit(FatalError); - - return phase1(); -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/phasePair/phasePair/phasePair.H b/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/phasePair/phasePair/phasePair.H deleted file mode 100644 index 6429bcd774..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/phasePair/phasePair/phasePair.H +++ /dev/null @@ -1,179 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2019 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::phasePair - -Description - -SourceFiles - phasePair.C - -\*---------------------------------------------------------------------------*/ - -#ifndef phasePair_H -#define phasePair_H - -#include "phaseModel.H" -#include "phasePairKey.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - -/*---------------------------------------------------------------------------*\ - Class phasePair Declaration -\*---------------------------------------------------------------------------*/ - -class phasePair -: - public phasePairKey -{ -public: - - // Hash table types - - //- Dictionary hash table - typedef HashTable - dictTable; - - //- Scalar hash table - typedef HashTable - scalarTable; - - -private: - - // Private Data - - //- Phase 1 - const phaseModel& phase1_; - - //- Phase 2 - const phaseModel& phase2_; - - //- Gravitational acceleration - const dimensionedVector& g_; - - //- Surface tension coefficient - const dimensionedScalar sigma_; - - - // Private Member Functions - - // Etvos number for given diameter - tmp EoH(const volScalarField& d) const; - -public: - - // Constructors - - //- Construct from two phases, gravity and surface tension table - phasePair - ( - const phaseModel& phase1, - const phaseModel& phase2, - const dimensionedVector& g, - const scalarTable& sigmaTable, - const bool ordered = false - ); - - - //- Destructor - virtual ~phasePair(); - - - // Member Functions - - //- Dispersed phase - virtual const phaseModel& dispersed() const; - - //- Continuous phase - virtual const phaseModel& continuous() const; - - //- Pair name - virtual word name() const; - - //- Average density - tmp rho() const; - - //- Relative velocity magnitude - tmp magUr() const; - - //- Relative velocity - tmp Ur() const; - - //- Reynolds number - tmp Re() const; - - //- Prandtl number - tmp Pr() const; - - //- Eotvos number - tmp Eo() const; - - //- Eotvos number based on hydraulic diameter type 1 - tmp EoH1() const; - - //- Eotvos number based on hydraulic diameter type 2 - tmp EoH2() const; - - //- Morton Number - tmp Mo() const; - - //- Takahashi Number - tmp Ta() const; - - //- Aspect ratio - virtual tmp E() const; - - // Access - - // Phase 1 - inline const phaseModel& phase1() const; - - // Phase 2 - inline const phaseModel& phase2() const; - - // Gravitational acceleration - inline const dimensionedVector& g() const; - - // Surface tension coefficient - inline const dimensionedScalar& sigma() const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "phasePairI.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/phasePair/phasePair/phasePairI.H b/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/phasePair/phasePair/phasePairI.H deleted file mode 100644 index aa963b62c5..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/phasePair/phasePair/phasePairI.H +++ /dev/null @@ -1,52 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -inline const Foam::phaseModel& Foam::phasePair::phase1() const -{ - return phase1_; -} - - -inline const Foam::phaseModel& Foam::phasePair::phase2() const -{ - return phase2_; -} - - -inline const Foam::dimensionedVector& Foam::phasePair::g() const -{ - return g_; -} - - -inline const Foam::dimensionedScalar& Foam::phasePair::sigma() const -{ - return sigma_; -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/phasePair/phasePairKey/phasePairKey.C b/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/phasePair/phasePairKey/phasePairKey.C deleted file mode 100644 index cfb77b0d79..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/phasePair/phasePairKey/phasePairKey.C +++ /dev/null @@ -1,158 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "phasePairKey.H" - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::phasePairKey::hash::hash() -{} - - -Foam::phasePairKey::phasePairKey() -{} - - -Foam::phasePairKey::phasePairKey -( - const word& name1, - const word& name2, - const bool ordered -) -: - Pair(name1, name2), - ordered_(ordered) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::phasePairKey::~phasePairKey() -{} - - -// * * * * * * * * * * * * * * Member Operators * * * * * * * * * * * * * * // - -Foam::label Foam::phasePairKey::hash::operator() -( - const phasePairKey& key -) const -{ - if (key.ordered_) - { - return - word::hash() - ( - key.first(), - word::hash()(key.second()) - ); - } - else - { - return - word::hash()(key.first()) - + word::hash()(key.second()); - } -} - - -// * * * * * * * * * * * * * * Friend Operators * * * * * * * * * * * * * * // - -bool Foam::operator== -( - const phasePairKey& a, - const phasePairKey& b -) -{ - const label c = Pair::compare(a,b); - - return - (a.ordered_ == b.ordered_) - && ( - (a.ordered_ && (c == 1)) - || (!a.ordered_ && (c != 0)) - ); -} - - -bool Foam::operator!= -( - const phasePairKey& a, - const phasePairKey& b -) -{ - return !(a == b); -} - - -// * * * * * * * * * * * * * * Istream Operator * * * * * * * * * * * * * * // - -Foam::Istream& Foam::operator>>(Istream& is, phasePairKey& key) -{ - const FixedList temp(is); - - key.first() = temp[0]; - - if (temp[1] == "and") - { - key.ordered_ = false; - } - else if(temp[1] == "in") - { - key.ordered_ = true; - } - else - { - FatalErrorInFunction - << "Phase pair type is not recognised. " - << temp - << "Use (phaseDispersed in phaseContinuous) for an ordered" - << "pair, or (phase1 and pase2) for an unordered pair." - << exit(FatalError); - } - - key.second() = temp[2]; - - return is; -} - - -// * * * * * * * * * * * * * * Ostream Operator * * * * * * * * * * * * * * // - -Foam::Ostream& Foam::operator<<(Ostream& os, const phasePairKey& key) -{ - os << token::BEGIN_LIST - << key.first() - << token::SPACE - << (key.ordered_ ? "in" : "and") - << token::SPACE - << key.second() - << token::END_LIST; - - return os; -} - - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/phasePair/phasePairKey/phasePairKey.H b/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/phasePair/phasePairKey/phasePairKey.H deleted file mode 100644 index 4b283fb064..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/phasePair/phasePairKey/phasePairKey.H +++ /dev/null @@ -1,130 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2014-2019 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::phasePairKey - -Description - -SourceFiles - -\*---------------------------------------------------------------------------*/ - -#ifndef phasePairKey_H -#define phasePairKey_H - -#include "Pair.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - -// Forward declaration of friend functions and operators - -class phasePairKey; - -bool operator==(const phasePairKey&, const phasePairKey&); -bool operator!=(const phasePairKey&, const phasePairKey&); - -Istream& operator>>(Istream&, phasePairKey&); -Ostream& operator<<(Ostream&, const phasePairKey&); - - -/*---------------------------------------------------------------------------*\ - Class phasePairKey Declaration -\*---------------------------------------------------------------------------*/ - -class phasePairKey -: - public Pair -{ -public: - - class hash - : - public Hash - { - public: - - // Constructors - - // Construct null - hash(); - - - // Member Operators - - // Generate a hash from a phase pair key - label operator()(const phasePairKey& key) const; - }; - - -private: - - // Private Data - - //- Flag to indicate whether ordering is important - bool ordered_; - - -public: - - // Constructors - - //- Construct null - phasePairKey(); - - //- Construct from names and the ordering flag - phasePairKey(const word& name1, const word& name2, const bool ordered); - - - // Destructor - virtual ~phasePairKey(); - - - // Friend Operators - - //- Test if keys are equal - friend bool operator==(const phasePairKey& a, const phasePairKey& b); - - //- Test if keys are unequal - friend bool operator!=(const phasePairKey& a, const phasePairKey& b); - - //- Read from stdin - friend Istream& operator>>(Istream& is, phasePairKey& key); - - //- Write to stdout - friend Ostream& operator<<(Ostream& os, const phasePairKey& key); -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/twoPhaseSystem.C b/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/twoPhaseSystem.C deleted file mode 100644 index 41a305d4fa..0000000000 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseSystem/twoPhaseSystem.C +++ /dev/null @@ -1,578 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2013-2020 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "twoPhaseSystem.H" -#include "PhaseCompressibleMomentumTransportModel.H" -#include "BlendedInterfacialModel.H" -#include "virtualMassModel.H" -#include "heatTransferModel.H" -#include "liftModel.H" -#include "wallLubricationModel.H" -#include "turbulentDispersionModel.H" -#include "fvMatrix.H" -#include "surfaceInterpolate.H" -#include "MULES.H" -#include "subCycle.H" -#include "fvcDdt.H" -#include "fvcDiv.H" -#include "fvcSnGrad.H" -#include "fvcFlux.H" -#include "fvcCurl.H" -#include "fvmDdt.H" -#include "fvmLaplacian.H" -#include "fixedValueFvsPatchFields.H" -#include "blendingMethod.H" -#include "HashPtrTable.H" -#include "UniformField.H" - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::twoPhaseSystem::twoPhaseSystem -( - const fvMesh& mesh, - const dimensionedVector& g -) -: - IOdictionary - ( - IOobject - ( - "phaseProperties", - mesh.time().constant(), - mesh, - IOobject::MUST_READ_IF_MODIFIED, - IOobject::NO_WRITE - ) - ), - - mesh_(mesh), - - phase1_ - ( - *this, - *this, - wordList(lookup("phases"))[0] - ), - - phase2_ - ( - *this, - *this, - wordList(lookup("phases"))[1] - ), - - phi_ - ( - IOobject - ( - "phi", - mesh.time().timeName(), - mesh, - IOobject::NO_READ, - IOobject::AUTO_WRITE - ), - this->calcPhi() - ), - - dgdt_ - ( - IOobject - ( - "dgdt", - mesh.time().timeName(), - mesh, - IOobject::READ_IF_PRESENT, - IOobject::AUTO_WRITE - ), - mesh, - dimensionedScalar(dimless/dimTime, 0) - ) -{ - phase2_.volScalarField::operator=(scalar(1) - phase1_); - - - // Blending - forAllConstIter(dictionary, subDict("blending"), iter) - { - blendingMethods_.insert - ( - iter().dict().dictName(), - blendingMethod::New - ( - iter().dict(), - wordList(lookup("phases")) - ) - ); - } - - - // Pairs - - phasePair::scalarTable sigmaTable(lookup("sigma")); - phasePair::dictTable aspectRatioTable(lookup("aspectRatio")); - - pair_.set - ( - new phasePair - ( - phase1_, - phase2_, - g, - sigmaTable - ) - ); - - pair1In2_.set - ( - new orderedPhasePair - ( - phase1_, - phase2_, - g, - sigmaTable, - aspectRatioTable - ) - ); - - pair2In1_.set - ( - new orderedPhasePair - ( - phase2_, - phase1_, - g, - sigmaTable, - aspectRatioTable - ) - ); - - - // Models - - drag_.set - ( - new BlendedInterfacialModel - ( - lookup("drag"), - ( - blendingMethods_.found("drag") - ? blendingMethods_["drag"] - : blendingMethods_["default"] - ), - pair_, - pair1In2_, - pair2In1_, - false // Do not zero drag coefficient at fixed-flux BCs - ) - ); - - virtualMass_.set - ( - new BlendedInterfacialModel - ( - lookup("virtualMass"), - ( - blendingMethods_.found("virtualMass") - ? blendingMethods_["virtualMass"] - : blendingMethods_["default"] - ), - pair_, - pair1In2_, - pair2In1_ - ) - ); - - heatTransfer_.set - ( - new BlendedInterfacialModel - ( - lookup("heatTransfer"), - ( - blendingMethods_.found("heatTransfer") - ? blendingMethods_["heatTransfer"] - : blendingMethods_["default"] - ), - pair_, - pair1In2_, - pair2In1_ - ) - ); - - lift_.set - ( - new BlendedInterfacialModel - ( - lookup("lift"), - ( - blendingMethods_.found("lift") - ? blendingMethods_["lift"] - : blendingMethods_["default"] - ), - pair_, - pair1In2_, - pair2In1_ - ) - ); - - wallLubrication_.set - ( - new BlendedInterfacialModel - ( - lookup("wallLubrication"), - ( - blendingMethods_.found("wallLubrication") - ? blendingMethods_["wallLubrication"] - : blendingMethods_["default"] - ), - pair_, - pair1In2_, - pair2In1_ - ) - ); - - turbulentDispersion_.set - ( - new BlendedInterfacialModel - ( - lookup("turbulentDispersion"), - ( - blendingMethods_.found("turbulentDispersion") - ? blendingMethods_["turbulentDispersion"] - : blendingMethods_["default"] - ), - pair_, - pair1In2_, - pair2In1_ - ) - ); -} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::twoPhaseSystem::~twoPhaseSystem() -{} - - -// * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * * // - -Foam::tmp Foam::twoPhaseSystem::rho() const -{ - return phase1_*phase1_.thermo().rho() + phase2_*phase2_.thermo().rho(); -} - - -Foam::tmp Foam::twoPhaseSystem::U() const -{ - return phase1_*phase1_.U() + phase2_*phase2_.U(); -} - - -Foam::tmp Foam::twoPhaseSystem::calcPhi() const -{ - return - fvc::interpolate(phase1_)*phase1_.phi() - + fvc::interpolate(phase2_)*phase2_.phi(); -} - - -Foam::tmp Foam::twoPhaseSystem::Kd() const -{ - return drag_->K(); -} - - -Foam::tmp Foam::twoPhaseSystem::Kdf() const -{ - return drag_->Kf(); -} - - -Foam::tmp Foam::twoPhaseSystem::Vm() const -{ - return virtualMass_->K(); -} - - -Foam::tmp Foam::twoPhaseSystem::Vmf() const -{ - return virtualMass_->Kf(); -} - - -Foam::tmp Foam::twoPhaseSystem::Kh() const -{ - return heatTransfer_->K(); -} - - -Foam::tmp Foam::twoPhaseSystem::F() const -{ - return lift_->F() + wallLubrication_->F(); -} - - -Foam::tmp Foam::twoPhaseSystem::Ff() const -{ - return lift_->Ff() + wallLubrication_->Ff(); -} - - -Foam::tmp Foam::twoPhaseSystem::D() const -{ - return turbulentDispersion_->D(); -} - - -void Foam::twoPhaseSystem::solve() -{ - const Time& runTime = mesh_.time(); - - volScalarField& alpha1 = phase1_; - volScalarField& alpha2 = phase2_; - - const surfaceScalarField& phi1 = phase1_.phi(); - const surfaceScalarField& phi2 = phase2_.phi(); - - const dictionary& alphaControls = mesh_.solverDict - ( - alpha1.name() - ); - - label nAlphaSubCycles(alphaControls.lookup