-
Introduction of scalarTransport models as a unified framework to handle fog/aerosol/noble gas transport. Major refactoring of the condensationModels library. # condensation library * Condensation library (`condensationModels`) completely refactored to provide a general and logical framework for condensation handling. - Fields like `massTransferRate` and `qcond` are shared between both wall and bulk condensation models, where internal field values represent bulk condensation values and boundary values represent wall condenation values. - The fields are only created if wall or bulk condensation is ON. - The fields like `condSucVelocity` are defined as boundary fields to save memory - The DtKader and DtJayatilleke wall condensation models are replaced with a generic wall condensation model named `diffusionLayer` which is selected by default. - The Dt calculation are moved to boundaryConditions named `compressible::DtKaderWallFunction` and `compressible::DtJayatillekeWallFunction` which are dynamically created based on the entries in the `condensationProperties`. - The Dt wall functions gets corrected by the multiSpeciesDiffusivity class - BCs: `condensingWallVelcoity` and `nonCondensableMassFraction` modified to work well with new condensationModel library. - Bulk condensation model for H2O is renamed to `saturationEquilibrium` model - This model now calculates only source terms due to bulk condensation and does not perform fog transport - The fog transport is now taken care by the `scalarTransportModel` in which the fog is one of the scalars which will have source terms coming from the bulk condensation model - The name of the scalar to be transported as fog is defined as dictionary entry in the `condensationProperties` as `scalarName`. - The `containmentFluid` module is now has a simplified way of adding condensation source terms, in which all the conditions for adding source terms are now handled by the condensationModel class * `fvModels` named `tubrulenceSourceSink` added include the bulk condensation source terms in the k and omega fields. * All the condensation [testCases](testCases/bulkCondensation) updated to fit with the new library sturcture. # scalar transport library * New library named `scalarTransportModels` added for handling different kinds of scalars. - It provides a general framework for handling different types and arbitary number of scalars like aerosols, fog and noble (tracer) gases. - The aerosol and fog scalars can be mono or poly dispersed. - The noble gases are not dispersed and hence does not contain terms related to diameter, but has additional molecular diffusivty term. - The framework also allows the scalars interaction to be segregated or aggregated. - The `segregated` interaction approach considers each scalar (aerosol or fog) as a distinct entity, each with its own drift velocity and Brownian diffusion coefficient, allowing them to be transported independently. - In contrast, the `mixture` interaction approach treats all scalars (aerosols and fog) as a single entity, sharing a common drift velocity and Browninan diffusion coeffient. - The noble gas scalars are always segregated. - The `multiScalarTransportModel` class combines all scalarTransports to a unified framework. - The `aerosol` scalars have to option to add `decay heat` to the gas mixture. - The properties and model selection for scalars are specified in the `scalarProperties` [dictionary](doc/files/scalarTransport.md). - Added scalarTransportSizeDistribution and depositionEfficiency function objects for scalar fields post processing. - Added `testCases/scalarTransport` to demonstrate and test the scalarTransport model library. * `fvModels` named `fieldEqnStabilisation` added prevent failure of single cell simulation test cases. # Generic models library * New library named `genericModels` added for all common models which are shared by other libraries. - These include Brownian diffusion models, drift velocity models, population balance models and thermophysical models. - The drift velocity model has submodels for including drag, thermophoresis and diffusionphoresis models into the drift velocity formulation. - The population balance model comprises of submodels for nucleation, coalescence and growth or shrink. - The thermophysical model consists of latent heat and saturation condition calculation models which currently features formulations for steam. # containmentFoam template executables * Added executables for generated template files with containmentFOAM headers. - This is an alternative of openfoam template file generation executables. - containmentFOAM template generation executables - cfNewSource, cfNewApp, cfNewBC, cfNewFunctionObject, cfNewTemplate. - The `Allwmake.sh` will add these executables to the APPBIN for usage within containmentFOAM.
Introduction of scalarTransport models as a unified framework to handle fog/aerosol/noble gas transport. Major refactoring of the condensationModels library. # condensation library * Condensation library (`condensationModels`) completely refactored to provide a general and logical framework for condensation handling. - Fields like `massTransferRate` and `qcond` are shared between both wall and bulk condensation models, where internal field values represent bulk condensation values and boundary values represent wall condenation values. - The fields are only created if wall or bulk condensation is ON. - The fields like `condSucVelocity` are defined as boundary fields to save memory - The DtKader and DtJayatilleke wall condensation models are replaced with a generic wall condensation model named `diffusionLayer` which is selected by default. - The Dt calculation are moved to boundaryConditions named `compressible::DtKaderWallFunction` and `compressible::DtJayatillekeWallFunction` which are dynamically created based on the entries in the `condensationProperties`. - The Dt wall functions gets corrected by the multiSpeciesDiffusivity class - BCs: `condensingWallVelcoity` and `nonCondensableMassFraction` modified to work well with new condensationModel library. - Bulk condensation model for H2O is renamed to `saturationEquilibrium` model - This model now calculates only source terms due to bulk condensation and does not perform fog transport - The fog transport is now taken care by the `scalarTransportModel` in which the fog is one of the scalars which will have source terms coming from the bulk condensation model - The name of the scalar to be transported as fog is defined as dictionary entry in the `condensationProperties` as `scalarName`. - The `containmentFluid` module is now has a simplified way of adding condensation source terms, in which all the conditions for adding source terms are now handled by the condensationModel class * `fvModels` named `tubrulenceSourceSink` added include the bulk condensation source terms in the k and omega fields. * All the condensation [testCases](testCases/bulkCondensation) updated to fit with the new library sturcture. # scalar transport library * New library named `scalarTransportModels` added for handling different kinds of scalars. - It provides a general framework for handling different types and arbitary number of scalars like aerosols, fog and noble (tracer) gases. - The aerosol and fog scalars can be mono or poly dispersed. - The noble gases are not dispersed and hence does not contain terms related to diameter, but has additional molecular diffusivty term. - The framework also allows the scalars interaction to be segregated or aggregated. - The `segregated` interaction approach considers each scalar (aerosol or fog) as a distinct entity, each with its own drift velocity and Brownian diffusion coefficient, allowing them to be transported independently. - In contrast, the `mixture` interaction approach treats all scalars (aerosols and fog) as a single entity, sharing a common drift velocity and Browninan diffusion coeffient. - The noble gas scalars are always segregated. - The `multiScalarTransportModel` class combines all scalarTransports to a unified framework. - The `aerosol` scalars have to option to add `decay heat` to the gas mixture. - The properties and model selection for scalars are specified in the `scalarProperties` [dictionary](doc/files/scalarTransport.md). - Added scalarTransportSizeDistribution and depositionEfficiency function objects for scalar fields post processing. - Added `testCases/scalarTransport` to demonstrate and test the scalarTransport model library. * `fvModels` named `fieldEqnStabilisation` added prevent failure of single cell simulation test cases. # Generic models library * New library named `genericModels` added for all common models which are shared by other libraries. - These include Brownian diffusion models, drift velocity models, population balance models and thermophysical models. - The drift velocity model has submodels for including drag, thermophoresis and diffusionphoresis models into the drift velocity formulation. - The population balance model comprises of submodels for nucleation, coalescence and growth or shrink. - The thermophysical model consists of latent heat and saturation condition calculation models which currently features formulations for steam. # containmentFoam template executables * Added executables for generated template files with containmentFOAM headers. - This is an alternative of openfoam template file generation executables. - containmentFOAM template generation executables - cfNewSource, cfNewApp, cfNewBC, cfNewFunctionObject, cfNewTemplate. - The `Allwmake.sh` will add these executables to the APPBIN for usage within containmentFOAM.
Loading