diff --git a/src/lagrangian/intermediate/parcels/include/makeParcelCloudFunctionObjects.H b/src/lagrangian/intermediate/parcels/include/makeParcelCloudFunctionObjects.H
index 137e3ecb34..25647e25b4 100644
--- a/src/lagrangian/intermediate/parcels/include/makeParcelCloudFunctionObjects.H
+++ b/src/lagrangian/intermediate/parcels/include/makeParcelCloudFunctionObjects.H
@@ -45,6 +45,7 @@ License
#include "RemoveParcels.H"
#include "VoidFraction.H"
#include "KinematicReynoldsNumber.H"
+#include "KinematicWeberNumber.H"
#include "ParticleDose.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
@@ -67,6 +68,7 @@ License
makeCloudFunctionObjectType(RemoveParcels, CloudType); \
makeCloudFunctionObjectType(VoidFraction, CloudType); \
makeCloudFunctionObjectType(KinematicReynoldsNumber, CloudType); \
+ makeCloudFunctionObjectType(KinematicWeberNumber, CloudType); \
makeCloudFunctionObjectType(ParticleDose, CloudType);
diff --git a/src/lagrangian/intermediate/parcels/include/makeReactingParcelCloudFunctionObjects.H b/src/lagrangian/intermediate/parcels/include/makeReactingParcelCloudFunctionObjects.H
index 30bfada4de..7c029ef825 100644
--- a/src/lagrangian/intermediate/parcels/include/makeReactingParcelCloudFunctionObjects.H
+++ b/src/lagrangian/intermediate/parcels/include/makeReactingParcelCloudFunctionObjects.H
@@ -47,7 +47,7 @@ License
#include "NusseltNumber.H"
#include "HeatTransferCoeff.H"
#include "ThermoReynoldsNumber.H"
-#include "WeberNumberReacting.H"
+#include "ReactingWeberNumber.H"
#include "ParticleDose.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
@@ -72,7 +72,7 @@ License
makeCloudFunctionObjectType(NusseltNumber, CloudType); \
makeCloudFunctionObjectType(HeatTransferCoeff, CloudType); \
makeCloudFunctionObjectType(ThermoReynoldsNumber, CloudType); \
- makeCloudFunctionObjectType(WeberNumberReacting, CloudType); \
+ makeCloudFunctionObjectType(ReactingWeberNumber, CloudType); \
makeCloudFunctionObjectType(ParticleDose, CloudType);
diff --git a/src/lagrangian/intermediate/submodels/CloudFunctionObjects/KinematicWeberNumber/KinematicWeberNumber.C b/src/lagrangian/intermediate/submodels/CloudFunctionObjects/KinematicWeberNumber/KinematicWeberNumber.C
new file mode 100644
index 0000000000..2c067d6923
--- /dev/null
+++ b/src/lagrangian/intermediate/submodels/CloudFunctionObjects/KinematicWeberNumber/KinematicWeberNumber.C
@@ -0,0 +1,105 @@
+/*---------------------------------------------------------------------------*\
+ ========= |
+ \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
+ \\ / O peration |
+ \\ / A nd | www.openfoam.com
+ \\/ M anipulation |
+-------------------------------------------------------------------------------
+ Copyright (C) 2023 OpenCFD Ltd.
+-------------------------------------------------------------------------------
+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 "KinematicWeberNumber.H"
+
+// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
+
+template
+Foam::KinematicWeberNumber::KinematicWeberNumber
+(
+ const dictionary& dict,
+ CloudType& owner,
+ const word& modelName
+)
+:
+ CloudFunctionObject(dict, owner, modelName, typeName),
+ sigma_(dict.getScalar("sigma"))
+{}
+
+
+template
+Foam::KinematicWeberNumber::KinematicWeberNumber
+(
+ const KinematicWeberNumber& we
+)
+:
+ CloudFunctionObject(we),
+ sigma_(we.sigma_)
+{}
+
+
+// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
+
+template
+void Foam::KinematicWeberNumber::postEvolve
+(
+ const typename parcelType::trackingData& td
+)
+{
+ auto& c = this->owner();
+
+ auto* resultPtr = c.template getObjectPtr>("We");
+
+ if (!resultPtr)
+ {
+ resultPtr = new IOField
+ (
+ IOobject
+ (
+ "We",
+ c.time().timeName(),
+ c,
+ IOobject::NO_READ,
+ IOobject::NO_WRITE,
+ IOobject::REGISTER
+ )
+ );
+
+ resultPtr->store();
+ }
+ auto& We = *resultPtr;
+
+ We.resize(c.size());
+
+ label parceli = 0;
+ forAllConstIters(c, parcelIter)
+ {
+ const parcelType& p = parcelIter();
+
+ We[parceli++] = p.We(td, sigma_);
+ }
+
+ const bool haveParticles = c.size();
+ if (c.time().writeTime() && returnReduceOr(haveParticles))
+ {
+ We.write(haveParticles);
+ }
+}
+
+
+// ************************************************************************* //
diff --git a/src/lagrangian/intermediate/submodels/CloudFunctionObjects/KinematicWeberNumber/KinematicWeberNumber.H b/src/lagrangian/intermediate/submodels/CloudFunctionObjects/KinematicWeberNumber/KinematicWeberNumber.H
new file mode 100644
index 0000000000..92eab4ac65
--- /dev/null
+++ b/src/lagrangian/intermediate/submodels/CloudFunctionObjects/KinematicWeberNumber/KinematicWeberNumber.H
@@ -0,0 +1,175 @@
+/*---------------------------------------------------------------------------*\
+ ========= |
+ \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
+ \\ / O peration |
+ \\ / A nd | www.openfoam.com
+ \\/ M anipulation |
+-------------------------------------------------------------------------------
+ Copyright (C) 2023 OpenCFD Ltd.
+-------------------------------------------------------------------------------
+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::KinematicWeberNumber
+
+Group
+ grpLagrangianIntermediateFunctionObjects
+
+Description
+ Calculates and writes particle Weber number field on the cloud.
+
+ \f[
+ \mathrm{We}_p =
+ \frac{\rho_c \, | \mathbf{u}_\mathrm{rel} |^2 \, d_p }{\sigma}
+ \f]
+
+ \vartable
+ \mathrm{We}_p | Particle Weber number
+ \rho_c | Density of carrier
+ d_p | Particle diameter
+ \mathbf{u}_\mathrm{rel} | Relative velocity between particle and carrier
+ \endvartable
+
+ Operands:
+ \table
+ Operand | Type | Location
+ input | - | -
+ output file | - | -
+ output field | scalarField | \