diff --git a/GUI/Model/Axis/PointwiseAxisItem.cpp b/GUI/Model/Axis/PointwiseAxisItem.cpp
index d9a524c11397b013917d38739bfc8c2dfb38eb65..3d06631b4248eaa6a13c1ee1ef6a7a6b15ef9a34 100644
--- a/GUI/Model/Axis/PointwiseAxisItem.cpp
+++ b/GUI/Model/Axis/PointwiseAxisItem.cpp
@@ -63,7 +63,7 @@ QByteArray PointwiseAxisItem::serializeBinaryData() const
 
     std::stringstream ss;
     Util::RW::writeBAInt(axisData, ss);
-    return QByteArray(ss.str().c_str(), static_cast<int>(ss.str().size()));
+    return {ss.str().c_str(), static_cast<int>(ss.str().size())};
 }
 
 void PointwiseAxisItem::deserializeBinaryData(const QByteArray& data)
diff --git a/GUI/Model/Beam/GrazingScanItem.cpp b/GUI/Model/Beam/GrazingScanItem.cpp
index 6e79425b910fe7342fdd50cd43e0bd1fe7926fc4..136207042f044a65cd4670e7adbf51b2f42b1cbd 100644
--- a/GUI/Model/Beam/GrazingScanItem.cpp
+++ b/GUI/Model/Beam/GrazingScanItem.cpp
@@ -67,7 +67,7 @@ GrazingScanItem::GrazingScanItem()
     m_distribution.initWithInitializer("Distribution", "",
                                        DistributionItemCatalog::symmetricTypes(), initDistribution);
 
-    m_uniformAlphaAxis.reset(new BasicAxisItem());
+    m_uniformAlphaAxis = std::make_unique<BasicAxisItem>();
     setAxisPresentationDefaults(m_uniformAlphaAxis.get());
     m_currentAxisIsUniformAxis = true;
 }
@@ -155,7 +155,7 @@ BasicAxisItem* GrazingScanItem::alphaAxisItem() const
 
 bool GrazingScanItem::pointwiseAlphaAxisDefined() const
 {
-    return m_pointwiseAlphaAxis.get() != nullptr;
+    return (bool)m_pointwiseAlphaAxis;
 }
 
 bool GrazingScanItem::pointwiseAlphaAxisSelected() const
diff --git a/Img3D/Build/BuilderUtil.cpp b/Img3D/Build/BuilderUtil.cpp
index 1f044e9db3120bf7279bcae9bf8bfdea342ed9a6..3cc2db141a330f75c9f9392256875fdcc0c9a232 100644
--- a/Img3D/Build/BuilderUtil.cpp
+++ b/Img3D/Build/BuilderUtil.cpp
@@ -34,8 +34,8 @@ namespace {
 
 R3 to_kvector(const F3& origin)
 {
-    return R3(static_cast<double>(origin.x()), static_cast<double>(origin.y()),
-              static_cast<double>(origin.z()));
+    return {static_cast<double>(origin.x()), static_cast<double>(origin.y()),
+        static_cast<double>(origin.z())};
 }
 
 //! Returns the Euler angles from an IRotation object.
diff --git a/Img3D/Mesh/Sphere.cpp b/Img3D/Mesh/Sphere.cpp
index 78d34626b9ed3a0edc3218f8f0cf79791a985a26..8df5420f8553f7602c8b5073772616c82b4886ac 100644
--- a/Img3D/Mesh/Sphere.cpp
+++ b/Img3D/Mesh/Sphere.cpp
@@ -25,7 +25,7 @@ namespace Img3D {
 Geometry::Mesh Geometry::meshSphere(float cut, float baseShift, float removedTop)
 {
     if (1 <= cut)
-        return Mesh();
+        return {};
     cut = qMax(0.f, cut);
     ASSERT(0 <= cut && cut < 1);
 
diff --git a/Img3D/Model/Particles.cpp b/Img3D/Model/Particles.cpp
index 0a10e7163a039ea21fd470e5c648b41ccb0220e3..06751d236b05b77fab8dc31f13a0f0cc53eafe75 100644
--- a/Img3D/Model/Particles.cpp
+++ b/Img3D/Model/Particles.cpp
@@ -346,7 +346,7 @@ HorizontalCylinder::HorizontalCylinder(float R, float L, float s_b, float s_t)
 }
 
 PlatonicOctahedron::PlatonicOctahedron(float L)
-    : PlotParticle(Key(BaseShape::Bipyramid4, 1.0f, asin(sqrt(2.0f / 3)), 1.0f / sqrt(2.0f)))
+    : PlotParticle(Key(BaseShape::Bipyramid4, 1.0f, asin(sqrt(2.0f / 3)), 1.0f / std::sqrt(2.0f)))
 {
     isNull = (L <= 0);
     scale = F3(L, L, L);
@@ -359,7 +359,7 @@ PlatonicTetrahedron::PlatonicTetrahedron(float L)
 {
     isNull = (L <= 0);
     float D = L / sqrt3f;
-    scale = F3(D * 2, D * 2, L * sqrt(6.f) / 3);
+    scale = F3(D * 2, D * 2, L * std::sqrt(6.f) / 3);
     offset = F3(0, 0, 0);
     set();
 }
diff --git a/Img3D/Model/PlottableBody.cpp b/Img3D/Model/PlottableBody.cpp
index edadcf894dbd30f545a6de2ec54e99230fc3b296..95b1f5e8e1d2aa94c06ffbe93967e8667df41126 100644
--- a/Img3D/Model/PlottableBody.cpp
+++ b/Img3D/Model/PlottableBody.cpp
@@ -51,7 +51,7 @@ Img3D::F3 QuaternionToEuler(const QQuaternion& q)
     const float y = 2 * std::atan(std::sqrt((b * b + c * c) / (a * a + d * d)));
     const float z = term1 - term2;
 
-    return Img3D::F3(x, y, z);
+    return {x, y, z};
 }
 
 } // namespace
diff --git a/Sim/Scan/QzScan.cpp b/Sim/Scan/QzScan.cpp
index fd18edf8176c381845ecfef8fb70c553d2246de1..43d715652623f746fed05474213445e71443fd8f 100644
--- a/Sim/Scan/QzScan.cpp
+++ b/Sim/Scan/QzScan.cpp
@@ -21,9 +21,6 @@
 #include "Param/Distrib/ParameterSample.h"
 #include "Resample/Element/SpecularElement.h"
 #include <algorithm> // is_sorted
-#include <numbers>
-
-using std::numbers::pi;
 
 QzScan::QzScan(Scale* qs_nm)
     : BeamScan(qs_nm)
@@ -89,7 +86,7 @@ std::vector<SpecularElement> QzScan::generateElements() const
             const std::vector<ParameterSample> qzDistrib = m_qz_distrib->distributionSamples();
             for (size_t j = 0; j < qzDistrib.size(); ++j) {
                 double qz = q0;
-                ASSERT(m_resol_width.size() > 0);
+                ASSERT(!m_resol_width.empty());
                 if (m_relative_resolution)
                     qz += q0 * m_resol_width[0] * qzDistrib[j].value;
                 else if (m_resol_width.size() > 1)
diff --git a/Sim/Simulation/OffspecSimulation.cpp b/Sim/Simulation/OffspecSimulation.cpp
index 6c251b9c0bff08bf6906f8c6dfdbc961b844e1f8..792bd9ce4ae733a4f799dcd0facd089e3b9e4ae5 100644
--- a/Sim/Simulation/OffspecSimulation.cpp
+++ b/Sim/Simulation/OffspecSimulation.cpp
@@ -56,7 +56,7 @@ void OffspecSimulation::prepareSimulation()
 
 Frame OffspecSimulation::simCoordSystem() const
 {
-    return Frame(m_scan->coordinateAxis()->clone(), m_detector->axis(1).clone());
+    return {m_scan->coordinateAxis()->clone(), m_detector->axis(1).clone()};
 }
 
 //... Overridden executors: