The lethe v1.0 release marks the transition of lethe to a numbered released format. Following numbered releases will be generated more often and we aim to release a numbered version 4 to 6 times per year or when sufficient changes have been realized.
The lethe v1.0 release comes with a structured and stable syntax. All of the examples and test provided with lethe were re-ran with this v1.0 release to ensure that all of the results provided online are up to date. This version is production-ready and has been tested and validated extensively.
The lethe v1.0 was made possible from contributions of many people, including but not limited to:
Amishga Alphonius Antoine Avrit Lucka Barbeau Valérie Bibeau Bianca Bugeaud Audrey Collard-Daigneault Carole-Anne Daunais Toni El Geitani Olivier Gaboriault Simon Gauvin Shahab Golshan Olivier Guévremont Marion Hanne Jeanne Joachim Rajeshwari Kamble Martin Kronbichler Maxime Landry Pierre Laurentin Charles Le Pailleur Oreste Marquis Ghazaleh Mirakhori Thomas Monatte Peter Munch Victor Oliveira Ferreira Hélène Papillon-Laroche Paul Patience Laura Prieto Saavedra Catherine Radburn Philippe Rivest Mikael Vaillant
What's Changed
[Master] - 2024-11-28
Changed
- MINOR The squared term that was added in the correction direction vector of the VOF DCDD stabilization #1103 has been removed after observing regression in computed results of VOF examples. #1390
[Master] - 2024-11-21
Changed
- MINOR The default value for the particle weight for the load balancing was changed from 10K to 2K. #1347
[Master] - 2024-11-18
Fixed
-
MINOR Time step can now be changed after a restart if adaptive time stepping is disabled. #1343
-
MINOR Application of the immersed solid tanh diffusivity model is now faster thanks to using optimizations from the Shape class. #1343
-
MINOR The specific heat model in BDF2 was not protected against a division by zero (dH/dT). A tolerance is now added to the denominator (dH/(dT+tol)) to avoid this problem. #1367
[Master] - 2024-11-11
Changed
- MAJOR The time step in the simulation control class is no longer modified by default to be exactly the end time of the simulation. Moreover, the time step is no longer modified to output Paraview files at certain times, therefore, the time output for transient simulations was refactored. #1336
Added
- MINOR Added bubble detachment in liquid shear flow example to the documentation #1334
[Master] - 2024-11-04
Changed
- MINOR Curvature L2 projection within the VOF auxiliary physics now go through the VOF subequations interface. #1336
Added
- MINOR Added capillary rise example to the documentation #1328
[Master] - 2024-11-03
Fix
- MINOR Force chains between local-ghost particle were being written multiple time when running in parallel. An arbitrary rule was added so that only one of the process is writing the force chain.#1342
Fix
- MINOR It was not possible to differentiate cohesive and repulsive forces with the force chains since the code was using the ".norm()" function. Now, the force chain calculation uses the scalar product between the normal force and the normal unit vector. #1339
[Master] - 2024-11-02
Fix
- MINOR The checkpoint files generated from the lethe-particles solver were now incompatible with the CFD-DEM solvers (lethe-fluid-particles and lethe-fluid-vans) since the prefix are now ending with a "_0" or "_1". The "read_dem" function now reads the ".checkpoint_controller" file at first. #1338
[Master] - 2024-10-31
Changed
- MAJOR The way Lethe manages boundary conditions was changed dramatically. As of this change, every boundary condition defined in the triangulation (the mesh), but have a corresponding boundary condition defined in the parameter file for every physics that is enabled. This will be tested by the solver at run time. For example, if a mesh containing four boundary conditions (id 0, 1, 2, 3) is used, then a boundary condition must be defined for all of these ids. In the past, a default boundary condition was automatically applied to these boundaries. As of this change, there is no default boundary condition. Although this change requires more work and slightly longer parameter files, it has enabled us to extensively refactor and simplify the way boundary conditions are managed. It also greatly enhances the sanity checks we can do with boundary conditions.
[Master] - 2024-10-28
Added
- MINOR The DEM solver generates two versions of checkpoint files alternately, so that at least one version is not corrupted when the simulation stops during a checkpoint procedure. #1327
[Master] - 2024-10-22
Changed
-
MAJOR Secondary equations (subequations) solved within the VOF auxiliary physics now go through a subequations interface similarly to how auxiliary physics go through the multiphysics interface. At the moment, only the implementation for the L2 projection of the phase fraction gradient has been refactored. Furthermore, only a linear equation solver has been implemented so far. #1318
-
MAJOR All scratch data objects now inherit from a base class, namely PhysicsScratchDataBase. In a similar manner, all base assemblers are now specialized types of the PhysicsAssemblerBase. #1318
[Master] - 2024-10-18
Added
- MINOR Create compiler flag to use float precision for the geometric multigrid preconditioner in the matrix-free application. #1319
[Master] - 2024-10-16
Changed
- MINOR Change default coarse grid solver to a direct solver for the geometric multigrid preconditioner in the matrix application. #1322
Fixed
- MINOR Added missing flag to update quadrature points for the FEFaceValues of the tracer physics. #1323
Added
- MAJOR Tracer physics can now be solved by using a discontinuous Galerkin method instead of a continuous Galerkin method. #1320
[Master] - 2024-10-15
Added
- MINOR Five examples of the Cahn-Hilliard-Navier-Stokes solver were added to keep a trace of the work made with this solver. #1307
[Master] - 2024-10-11
Fixed
- MAJOR Unexpected segmentation faults were occurring when using large simulation with a periodic boundary condition. The cause of this bug was identified and fixed. It was related to the resizing of the force, torque and displacement vectors that were not considering the ghost particles when resized. #1316
[Master] - 2024-10-09
Changed
- MAJOR The boundary conditions for the fluid dynamics applications: matrix-based, matrix-free and block applications are now implemented only in the NavierStokesBase class. #1313
[Master] - 2024-10-04
Changed
- MINOR Values outputted on the terminal have been uniformized using the log precision parameter. #1310
[Master] - 2024-10-03
Fixed
- MINOR Simulations with time-dependent boundary conditions would not restart correctly in the matrix-free solver because the initial guess of the solution was reset to zero. This is fixed now, and the initial guess of the solution is identical. #1302
Changed
- MINOR The parameter "Lagrangian post-processing" has been renamed "lagrangian post-processing" to ensure that our parameter nomenclature (all lowercase) is homogenous. #1303
[Master] - 2024-09-30
Fixed
- MINOR Simulations with time-averaging of the velocity fields were unable to restart when the domain was very large due to the fact that the restart vectors were read into the wrong vectors (locally_owned instead of locally_relevant). This PR fixes this. This also ensures that Lethe is able to restart with a different core-count than what was used to generate the restart file. #1300
[Master] - 2024-09-26
Changed
- MINOR Made discontinuity-capturing directional dissipation (DCDD) stabilization optional for the VOF auxiliary physics. #1296
[Master] - 2024-09-25
Changed
- MINOR The solutions for the mulitphysics are updated right after the non linear solve of the fluid dynamics matrix free solver. This ensures that the physics solved after the fluid dynamics have the most recent solution. #1294
Changed
- MINOR The tracer gradient used for DCDD stabilization calculations is now from the previous solution, which reduces the number of non-linear iterations. #1293
[Master] - 2024-09-25
Changed
- MINOR Remove the GIFs from the repository to reduce its size. #1289
Added
- MINOR Added verbosity for the interface thickness in the CHNS solver. An application test was added to verify the feature resists to future changes made in the code. The documentation was updated to display the new feature in the Cahn-Hilliard section of the documentation. #1291
[Master] - 2024-09-24
Added
- MINOR The outlet boundary condition was implemented in the matrix-free operators. A test in 2D with a cylinder close to the outlet was added to test this boundary condition for both the matrix-based and the matrix-free application. #1287
[Master] - 2024-09-23
Fixed
- MINOR In the PR #994, BDF extrapolation of the velocity in the VOF auxiliary physics was moved to the scratch data. However, the implementation was bypassed by an if condition. This bug is fixed with this PR, and an application test was added to ensure that the feature remains intact with future implementations. #1286
[Master] - 2024-09-20
Added
- MINOR Added dimensionality for the mobility and interface thickness in the CHNS solver, and surface tension related parameters in the VOF solver. #1274
[Master] - 2024-09-12
Fixed
- MINOR The previous implementation to calculate cell diameter used the
measure
function which assumed a linear mapping. A function that calculates the volume by summing JxW values returned by the FEValues object now replaces themeasure
function. #1279
[Master] - 2024-09-10
Fixed
- MINOR A bug in the tracer physics where non-zero constraints were not reinitialized with the locally relevant DOFs made it that processes ran out of memory in large scale simulations. This is fixed. #1278
[Master] - 2024-09-09
Added
- MINOR Added missing documentation entries regarding mesh parameters for the DEM solver and geometrical manipulations at initialization. #1277
[Master] - 2024-08-29
Changed
- MINOR Rendered discontinuity-capturing directional dissipation optional for the heat transfer. #1268
[Master] - 2024-08-27
Changed
- MINOR Refactored cell diameter computation as an inline function in the utilities. #1265
[Master] - 2024-08-23
Added
- MINOR Added the capacity to print the parameter from the parameter file that were changed compared to the default parameters as well as the lethe and deal.II commit hash. This is achieved by adding the runtime argument --print-parameters to the command line arguments. #1255 and #1257
[Master] - 2024-08-09
Changed
- MINOR Renamed the main file related to the
lethe-fluid
application:gls_navier_stokes
tofluid_dynamics_matrix_based
. The name of theGLSNavierStokesSolver
class was changed toFluidDynamicsMatrixBased
. #1236
[Master] - 2024-08-07
Changed
- MINOR Renamed the main file related to the
lethe-fluid-sharp
application:gls_sharp_navier_stokes
tofluid_dynamics_sharp
. The name of theGLSSharpNavierStokesSolver
class was changed toFluidDynamicsSharp
. #1231
Changed
- MINOR Renamed the main file related to the
lethe-fluid-nitsche
application:gls_nitsche_navier_stokes
tofluid_dynamics_nitsche
. The name of theGLSNitscheNavierStokesSolver
class was changed toFluidDynamicsNitsche
. #1228
[Master] - 2024-08-06
Changed
- MINOR Renamed the main file related to the
lethe-fluid-block
application:gd_navier_stokes
tofluid_dynamics_block
. The name of theGDNavierStokesAssembler...
classes were changed toBlockNavierStokesAssembler...
, and the main classGDNavierStokesSolver
was also renamed toFluidDynamicsBlock
. #1226
[Master] - 2024-08-05
Changed
- MINOR Renamed the main file related to the
lethe-fluid-vans
application:gls_vans
tofluid_dynamics_vans
. The name of theGLSVansAssembler...
classes were changed toVANSAssembler...
, and the main classGLSVANSSolver
was also renamed toFluidDynamicsVANS
. #1225
Changed
- MINOR Renamed all the files related to the
lethe-fluid-matrix-free
application:mf_navier_stokes
tofluid_dynamics_matrix_free
andmf_navier_stokes_operators
tofluid_dynamics_matrix_free_operators
. The main classMFNavierStokesSolver
was also renamed toFluidDynamicsMatrixFree
. #1222
Added
- MINOR A post-processing feature for the tracer flow rate through boundaries is added. This allows to produce data useful for residence time distribution analyses. #1197
Fixed
- MINOR Conditions for whether a boundary condition should be updated were made less restrictive. Now, each physics is responsible for updating or not their boundary conditions. #1197
Removed
- MINOR Removed the gear3 DEM integrator. It was never used, it did not possess any unit test and it was not even clear if it still worked. #1221
[Master] - 2024-08-01
Added
- MINOR The possibility to specify an intermediate level as coarse grid solver for the gcmg preconditioner was added as a parameter. It allows to perform several v-cycles at the level chosen. #1211
[Master] - 2024-07-31
Fixed
- MINOR The Coulomb's criterion was wrong in the particle-particle contact force for Hertz-Mindlin with limit force, Hertz and Linear in DEM. The normal force norm was explicitly positive when doing normal_force.norm(), making the Coulomb's criterion always positive even if the particles are in repulsion, so in slidling. This has been fixed using the same method as for Hertz-Mindlin with limit overlap is calculated. #1216
Added
- MINOR P-multigrid was added to the gcmg preconditioner of the lethe-fluid-matrix-free application. It supports three different coarsening strategies to define the degree p of the different levels. It also allows to use hybrid hp- and ph-multigrid strategies. #1209
[Master] - 2024-07-24
Changed
- MINOR Forces a contact search at the last DEM iteration of a CFD iteration for more robustness related to the update of the reference location of the particles prior the void fraction calculation #1205
[Master] - 2024-07-23
Changed
- MINOR PBC with QCM in CFD-DEM are working without forcing the particle displacement at the last DEM iteration of the CFD iteration. It is removed. #1204
[Master] - 2024-07-21
Changed
- MINOR The load balancing functions of the DEM and coupling CFD-DEM solvers are encapsulated in a new class, removing the duplicated code. #1199
Fixed
- MINOR The load balancing is fixed and working for the coupling CFD-DEM solver. It was not working after a small refactoring. An application test is also added. #1199
[Master] - 2024-07-20
Fixed
- MINOR The ratio of the critical Rayleigh time step was wrong in CFD-DEM and was modified as done in DEM. #1203
[Master] - 2024-07-14
Added
- MINOR Following the implementation of temperature-dependent solid domain constraint for both single-phase and two-phase flows, a need for an additional condition was identified. Indeed, in some simulations, splatters may happen, and with the previous implementation, splatter could freeze "mid-air" which is non-physical and therefore undesired. A plane to divide the domain in two parts and only the one in the opposite direction to the normal vector is considered for stasis constraints to be applied. The plane is defined through a point and an outward pointing normal vector. #1193
Fixed
- MINOR Previously, the pressure DOFs were also constrained with the "constrain stasis" feature, but this resulted in an ill-posed problem when sources terms in the momentum equation were pressure-dependent. Therefore, the constraints on pressure DOFs are now removed. #1193
[Master] - 2024-07-12
Added
- MINOR A tracer diffusivity model is added, to be used with the
lethe-fluid-sharp
solver. It makes it possible to assign distance-based (depth) diffusivity to the immersed solids. #1185
[Master] - 2024-07-09
Added
- MINOR The multigrid output now also prints the workload imbalance and vertical communication efficiency of the multigrid hierarchy being used. In addition, the mulrigrid timers now print the min max and average times correctly with the appropriate rank. #1194
Fixed
- MINOR The lethe-fluid-nitsche solver could not checkpoint once it had been restarted. This has been fixed by ensuring that the particles are properly checkpointed and read from the restart files. #1192
[Master] - 2024-07-08
Changed
- MINOR The timer output for the lethe-fluid and lethe-fluid-matrix-free applications contains now more detailed elements. Including post-processing capabilities that were not timed, the time spent in reading mesh and manifolds, and setting the initial conditions. #1187
[Master] - 2024-07-05
Changed
- MINOR The NS-VOF assembler was not optimized as the NS assembler. The if conditions on the dof components were added to not compute multiplications that are a priori 0 in the matrix and rhs assembly. #1188
[Master] - 2024-07-04
Changed
- MINOR The
entry_string_to_tensor
functions were duplicated; they were inutilities.h
andparameters.h
. In one case, it was templated withspacedim
and the other not. This PR merges both functions inutilities.h
asvalue_string_to_tensor
. Since these are small functions, they are now inline functions. #1186
[Master] - 2024-07-03
Fixed
- MINOR The term associated with the viscosity jump in the strong residual for the NS-VOF assembler added in [#1049] (#1149) led to an ill-posed formulation in solid-liquid phase change cases where the solid is represented by a highly viscous fluid. Hence, this term was removed from the current formulation. #1180
Changed
- MINOR LPBF benchmark example prm files are up to date with the current working version. #1180
Added
- MINOR There was no appropriate application test for lpbf/phase change with vof cases that could have allowed us to identify this ill-posed formulation prior to the merge of [#1049] (#1149). A new application test is now included to avoid future mistake in lpbf/phase change with vof cases. #1180
[Master] - 2024-07-02
Fixed
- MINOR Box refinement was applied when restarting simulations, changing the restarting triangulation and leading to undesirable behavior. A boolean stating if the simulation restarts is now checked before applying the box refinement. #1184
[Master] - 2024-06-16
Changed
- MINOR Some application-test restart files have been updated using p4est 2.3.6. Some test results have changed for lethe-fluid-particles and lethe-fluid-vans, since the DEM solver has slightly changed since the previous restart files generation, and it is now impossible to regenerate the exact same initial condition. #1181
[Master] - 2024-06-16
Changed
- MINOR A new subsection
solid surfaces
needs to be used when defining solid objects in the parameter file. For more information, see the solid object documentation. #1169 - MINOR The center of rotation of a solid object is no longer being defined using a subsection and three parameters. It is now defined with one parameter and a list of doubles. For more information, see the solid object documentation. #1169
[Master] - 2024-06-13
Added
- MINOR The DEM solver supports deprecated parameters when 3 individual component parameters are changed to a list of values parameter. #1171
Changed
- MINOR The parameters , and of the DEM solver are changed to the parameter . #1171
[Master] - 2024-06-05
Added
- MINOR A cylindrical manifold type has been added in the manifold parameter file option. Input arguments arg1, arg2, arg3, etc. used to describe the manifold geometry were modified to point coordinates and direction vector. A manifold section has been added to the documentation #1167
[Master] - 2024-05-27
Changed
- MINOR The "insertion file name" parameter has been renamed to "list of input files". It now supports a list of input files that will be used in order when inserting particles. #1135
[Master] - 2024-05-26
Fixed
- MINOR Simulation restart would not work adequately when a boundary condition was time-dependent and this would lead unstable simulation restarts. #1158
[Master] - 2024-05-23
Added
- MINOR dependency on muParser. This requires to load an additional module "muparser/2.3.2" when compiling deal.II and Lethe on clusters. #1143
[Master] - 2024-05-20
Removed
- MINOR The initial conditions executable which could be used to test some initial conditions has now been removed completely. This executable was never used and was unstable to the multiphysics interface. #1148
[Master] - 2024-05-13
Changed
- MAJOR The source term specifications for the Navier-Stokes equations were using the label "xyz" which made no sense. This has been changed to "fluid dynamics" #1130
[Master] - 2024-05-09
Added
- MAJOR Added advection of particles in the Adaptive Sparse Contacts (ASC) feature in DEM and CFD-DEM (Disabling Contacts is renamed Adaptive Sparse Contacts). #1113
[Master] - 2024-05-09
Added
- MINOR Added a condition to the generation of .vtu and .pvd files in addition to the output generation frequency. If specified in the parameter file, only the results within the specified simulation time interval will be generated. [#1120] (#1120)
[Master] - 2024-05-02
Fixed
- MAJOR Periodic boundary conditions for the DEM were not working if they weren't the last boundary conditions being declare in the parameter file. Now, every boundary condition work in which even order they are being declared. #1110
[Master] - 2024-04-30
Fixed
- MINOR The lethe-fluid-nitsche solver was unable to restart when the immersed triangulation was made of simplices. This has been fixed, however, mesh adaptation crashes when it is done after the restart process. I (problembär) have an idea why (the previous particle_handler of the previous checkpoint is still registered somehow in the triangulation), but I will need more time to come up with an adequate solution. #1106
[Master] - 2024-04-24
Added
- MAJOR A new parameter to reuse the preconditioner between Newton iterations was added. Therefore, the logic of the Newton solver was also modified as it required a different call for the assembly of the matrix and the set up of the preconditioner. These calls were separated for all relevant physics solvers. #1102
[Master] - 2024-04-24
Changed
- MAJOR For the multigrid preconditioners of the matrix-free application a new class was added, where the constructor sets the operators, constraints and transfers, and the initialize function sets the smoother, coarse-grid solver and final multigrid object. This allows to reuse the operators, constraints and transfers whenever possible reducing computational cost. #1102
[Master] - 2024-04-18
Fixed
- MINOR Checkpoints were not established correctly with the lethe-fluid-particles solver. The void fraction was delayed in time and the restart file would not yield the same result because of this, resulting in crashes when the time derivative of the void fraction was used in the calculations. #1096
[Master] - 2024-04-17
Added
- MINOR Added Cahn-Hilliard equations energy computation and output. The documentation was updated accordingly. #1095
[Master] - 2024-04-16
Fixed
- MINOR Simulations with adaptive time-stepping would checkpoint correctly, but would not restart with the correct time-step due to the way the time-step was read from the checkpointing files. This is now fixed and tested. #1093
[Master] - 2024-04-15
Fixed
- MINOR The previous flow rate post processing tool would add a line to the .dat file for each defined boundary (in the boundary condition subsection of the .prm file) for every time iteration. This is not the expected output as one would expect a single line to be added for each time step with the flow rates of every boundary. This is now fixed. #1092
[Master] - 2024-04-07
Added
- MINOR The lethe-fluid-matrix-free solver would not work adequately on mesh that were not refined homogenously if all the boundary conditions of the domain were periodic or dirichlet boundary condition. This is fixed by adding a new parameter to fix the pressure constant in the coarse grid solver. This prevents the coarse grid linear solver from failing. #1089
[Master] - 2024-04-05
Changed
- MINOR The output at every iteration in the terminal of the non-linear solver now displays the norms of the correction for both the velocity and pressure contributions for the Navier-Stokes solver when
verbosity
in thenon-linear solver
subsection is set toverbose
. #1076
[Master] - 2024-04-04
Added
- MINOR Added the turbulent Taylor-Couette incompressible flow example. #1083
[Master] - 2024-03-28
Changed
- MINOR The
velocity x/y/z
parameters have been replaced by one parameter namedinitial velocity
. Theomega x/y/z
parameters have been replaced by one parameter namedinitial angular velocity
. #1078
#1078
[Master] - 2024-03-20
Changed
- MINOR The
insertion box minimum/maximum x/y/z
parameters have been replaced by one parameter namedinsertion box points coordinates
. Theinsertion first/second/third direction
parameters have been replaced by one parameter namedinsertion direction sequence
. #1074
[Master] - 2024-03-19
Added
- MINOR The mass conservation feature of the VOF model now also monitors the momentum of both phases. This should be useful for some cases and improve the sharpening mechanism. #1073
[Master] - 2024-03-16
Fixed
- MINOR The recently implemented VOF stasis constraint (#1048) was not compatible with adaptive mesh refinements and checkpointing system. When refining the mesh or when restarting a simulation, the filtered phase fraction was reinitialized, but not filled with the appropriate values. This issue is now solved by adding
apply_phase_filter()
topost_mesh_adaptation()
andread_checkpoint()
VOF functions. #1072
[Master] - 2024-03-13
Changed
-
MINOR In a similar way to "VOF Barycenter", the output of the "VOF Mass Conservation" is now displayed at every time iteration on the terminal when
calculate mass conservation
in thepost-processing
is enabled (default) and theverbosity
is set toverbose
. #1062 -
MINOR A new boolean argument in
make_table
functions has been added, namelydisplay_scientific_notation
to decide if the display of table values is displayed at a fixed decimal or in scientific notation. #1062
Added
-
MINOR Assertion on fields required for physical property models were added to the code. This is done to ensure that if a physical property model necessitating a certain field is employed and that field is not defined, the exception message thrown is comprehensible. #1065
-
MINOR A new
make_table_scalars_vectors
function has been added inutilities.h
(.cc
). #1062
[Master] - 2024-03-11
Changed
- MINOR The eigenvalue estimation for the multigrid preconditioners in the lethe-fluid-matrix-free solver is now done internally by the PreconditionRelaxation class instead of using a PreconditionChebyshev and an estimate omega function #1064.
[Master] - 2024-03-11
Added
- MINOR Temperature-dependent
stasis constraint
is now featured in the Melting Cavity heat transfer example. #1061
[Master] - 2024-03-05
Added
-
MINOR The new temperature-dependent solid domain constraints for two-phase Volume of Fluid (VOF) simulations has been implemented (
constrain_stasis_with_temperature_vof()
). To select cells on which the constraints are applied, we check if the filtered phase fraction at quadrature points in the cell are within a range of accepted values. This range of accepted values is defined with thephase fraction tolerance
parameter. This parameter defines an absolute tolerance on filtered phase fraction. Related documentation was updated and a new application test was also added. #1048 -
MINOR Added the capability to locally refine the mesh in the vicinity of the boundary conditions as specified by a list of boundary conditions. #1056
Changed
-
MINOR Previously implemented temperature-dependant solid domain constraints for one-fluid simulations (
constrain_solid_domain()
) was renamed toconstrain_stasis_with_temperature()
and its content changed a bit to avoid copied lines inconstrain_stasis_with_temperature_vof()
. #1048 -
MINOR The parameter subsection
constrain solid domain
was renamed toconstrain stasis
. Related documentation was also updated. #1048
Added - 2024-03-04
- MINOR The "file" insertion method has been added to the DEM and CFD-DEM solvers.#1054
Fixed
- MINOR In LPBF simulations, recoil pressure formulation
$p_\mathrm{rec} = 0.55p_\mathrm{sat} + [1/\rho]m_\mathrm{dot}^2$ was accounting 2 times for the term$[1/\rho]m_\mathrm{dot}^2$ because the latter is included in the term$0.55p_\mathrm{sat}$ . The formulation is now corrected and reads$p_\mathrm{rec} = 0.55p_\mathrm{sat}$ .
[Master] - 2024-03-02
Fixed
- MINOR The previously implemented weak compressibility (#815) was not working with the heat transfer (HT) physic. The missing pressure field was added to scratch data. Two application tests were added to test the compressibility with HT for single-fluid and VOF simulations. #1051
[Master] - 2024-02-27
Added
- MINOR Temperature-dependant solid domain constraints were added for one-fluid simulations. In order to improve calculation time and linear system conditioning, homogeneous constraints are imposed on velocity DOFs in a defined solid domain through a temperature range. Additionally, pressure DOFs in the same solid domain that are not connected to fluid cells are also imposed with homogeneous constraints. The temperature range is specified through a new parameter subsection, namely
constrain solid domain
. The use of adynamic_zero_constraints
AffineConstraints object, rather than reconstruction of thezero_constraints
one at every time step was determined to be optimal after some profiling tests. Documentation and a new application test have been also added. #1038
Changed
- MINOR The
Variable
enum class was moved fromparameters.h
tomultiphysics.h
. Using variables from theVariable
enum class, the constrained and constraining fields could be parametrized in the future according to user needs. #1038
Fixed
- MINOR In
establish_solid_domain()
the pressure was not constrained in solid cells that were not connected to a fluid due to a small logic mistake. This was corrected. #1038
[Master] - 2024-02-26
Fixed
- MAJOR The first level of the fine search candidates for particle-particle, particle-wall and particle-floating walls was never cleared even when the value of the unordered_map became an empty unordered_map. In simulations with load balancing or particles that were moving significantly, this could potentially lead to a scenario where the size of the first level of the fine search candidate became equal to the number of total particles in the simulation, potentially leading to a crash.
[Master] - 2024-02-09
Fixed
- MAJOR Restarts using lethe-fluid-particles with "void fraction time derivative = true" would be incoherent because the void fraction was reinitialized when restarting, leading to a wrong time derivative of the void fraction. This has been patched.
[Master] - 2024-01-31
Changed
- MAJOR Robin boundary condition was renamed to incorporate the imposed heat flux (Neumann). The corresponding type parameter was
convection-radiation
and the current isconvection-radiation-flux
. All application tests were updated accordingly.
[Master] - 2024-01-28
Fixed
- MAJOR All application_tests that use files have now mpirun=1 in their output to ensure that they are run from a mpirun=1 folder. Since dealii/dealii#16551 deal.II 9.6 uses a serial folder for serial tests. However, deal.II 9.5 does not. To maintain portability between the two versions, we manually force a folder called mpirun=1 when running tests and adapt the copy of the files to this folder. This is a temporary fix that can be reverted once we drop support for deal.II 9.5
[Master] - 2024-01-24
Added
-
MINOR Darcy-like penalization is now extended to two-fluid VOF simulations with the
PhaseChangeDarcyVOFAssembler
assembler class. Related documentation has been updated and a new application test was added. #990 -
MINOR Extrapolation in time of temperature and temperature gradient values has been added. This is used for source terms in the Navier-Stokes equations requiring them (Marangoni and evaporation recoil force terms). #994
Changed
- MINOR Velocity extrapolation has been moved to
include/solvers/vof_scratch_data.h
. Solution extrapolations are now located inScratchData
to avoid constraint on assemblers order. #994
[Master] - 2024-01-24
Fixed
- MINOR In the previous implementation of the heat flux postprocessor (#953), there was a confusion related to the
material_id
of a cell. As a cell'smaterial_id
is defined in the mesh, fluids moving from a cell to another did not have the rightmaterial_id
when outputted. Furthermore, some deal.II meshes have an intrinsic way of numberingmaterial_ids
(e.g. colorized subdivided_hyper_rectangle) that were leading to inadequate comparison of thematerial_ids
. As of now, in the heat flux postprocessor, thematerial_id
is only used to indentify cell material when solids are present. When simulating with fluids and solids, cells of the mesh in which the fluids lie should have amaterial_id
of0
. For fluids-only simulations, their heat fluxes are outputted on the entire domain, as the currentDataPostprocessor
can only hold 1dof_handler
. During postprocessing, the user could clip the domain of interest of each fluid using thephase
orfiltered_phase
fields outputted. #988
[Master] - 2023-12-27
Changed
- MINOR Phase change thermal expansion now considers the solid thermal expansion within the mushy zone (between Tsolidus and Tliquidus) instead of using a blending rule. This leads to more stable results in the melting cavity benchmark
[Master] - 2023-12-22
Fixed
- MINOR PVD handles for solid DEM objects were written with the wrong text format ("_" separators instead of ".")
[Master] - Changed - 2023-12-17
- MINOR The "insertion random number range" and "insertion random number seed" parameters got renamed to "insertion maximum offset" and "insertion prn seed" respectively. The old names didn't make sense, as they're not random because they're defined in the parameter file. #970
[Master] - 2023-12-11
Fixed
- MINOR The number of remaining particle to insert of each type is being checkpointed adequately. This means that no modification are required to the "number of particle" parameter after restarting a simulation. #964
Fixed
- MINOR Solid objects can now be restarted adequately in DEM. They will resume at the position they had at the end of the simulation #959
[Master] - 2023-11-27
Added
- MINOR A few tables were omitted from being "checkpointed" causing a lost of valuable information when simulations were restarted (Issue: #916). The missing tables have been added to the
write_checkpoint()
andread_checkpoint()
of each physic. #938
[Master] - 2023-11-27
Removed
- MINOR The average diameter of the uniform size distribution with the DEM module was specified with an "average diameter" parameter. It is now specified directly from the diameter parameter. This is correctly documented. #940.
Fixed
- MINOR The DEM time step verification was outputting the most permissive time step (the biggest) and not the most restrictive (the smallest). This bugfix doesn't affect the uniform particle size simulation. #939.
[Master] - 2023-11-23
Fixed
- MINOR The plane insertion for the DEM was only supporting the uniform diameter distribution. Now it supports all types of distribution.
[Master] - 2023-11-16
Changed
-
MINOR The maximum number of boundary conditions for all physics was fixed to 14 since the boundary conditions had to be declared before being parsed. A new mechanism is now in place which parses the "number" parameter for each physics and keeps the maximal value. Then, this maximal value is used to pre-declare the boundary conditions. This enables much more robust sanity checking of the input parameter. The major drawback of this (and this is a major one) is that if we ever have another parameter with the name "number" then this parameter would also be parsed and used to establish the maximum number of boundary conditions. In this case, the best approach would be to replace "number" with "number of boundary conditions" in the parameter file. I (B-saurus-rex) did not want to do this at the time of this change to not have a massive PR which breaks every parameter files.
-
MAJOR The "number" parameter within "subsection lagrangian physical properties" and "particle type n" was changed to "number of particles" to prevent confusions with the "number" used for boundary conditions. The "number" for boundary conditions will be changed to "number of boundary conditions" in the near future.
[Master] - 2023-11-12
Deprecated
- MINOR The uniform insertion method had been removed. The non-uniform insertion method has been renamed to volume method to remain coherent with the plane method. If you want to use an insertion method equivalent to the uniform insertion method, use the volume method with an "insertion random number range " equal to zero. #926
[Master] - 2023-10-01
Fixed
- MINOR The calculation of the velocity on rotating walls was calculated inadequately #896: The velocity of rotating boundary conditions (e.g. boundaries of the mesh) was calculated inadequately in the case where the normal vector of the wall was aligned with the rotation axis. The whole calculation procedure was slightly messed up and only worked for cylinders. This has been fixed and made general, paving the way for a full refactor of the calculation of the particle-wall contact force.
[Master] - 2023-09-30
Fixed
- MINOR Affine constraints used to bound the void fraction and used as boundary conditions within the heat transfer and the block Navier-stokes solver were corrected #885: There was an error in the application of the affine constraints used to clip the void fraction in the lethe-fluid-vans and lethe-fluid-particles solvers. This led to assertions being thrown in debug. This has been corrected by reiniting the constraints with the appropriate size. For the heat transfer and the block Navier-stokes, the issue was that the constraints were never reinited with the correct size, so they contained ghosted elements. This was caught by a new assert introduced in 2023-09 within deal.II master.
[Master] - 2023-09-20
Deprecated
- MINOR The calculation of the source term was enabled using a parameter called "enable". This parameter was used in some physics, not in others and was poorly implemented. We deprecate the usage of this parameter and always enable source term, considering the fact that the default value of the source term is zero anyway. This prevents the false perception that source terms could be enabled or disabled, while the behavior was inconsistent across physics.
[Master] - 2023-09-19
Changed
- MAJOR All the applications were renamed #882:
gls_navier_stokes
is nowlethe-fluid
,gd_navier_stokes
is nowlethe-fluid-block
,nitsche_navier_stokes
is nowlethe-fluid-nitsche
,gls_sharp_navier_stokes
is nowlethe-fluid-sharp
,gls_vans
is nowlethe-fluid-vans
,mf_navier_stokes
is nowlethe-fluid-matrix-free
,dem
is nowlethe-particles
,cfd_dem_coupling
is nowlethe-fluid-particles
,rpt3d
is nowlethe-rpt-3d
,rpt_cell_reconstruction_3d
is nowlethe-rpt-cell-reconstruction-3d
,rpt_fem_reconstruction_3d
is nowlethe-rpt-fem-reconstruction-3d
, andrpt_l2_projection_3d
is nowlethe-rpt-l2-projection-3d
.
[Master] - 2023-10-30
- MINOR The rotational vector for the rotational boundary condition in the lethe-particles solver is now define with one line in the parameters file. #920