From c191c133b42e12eedc322475dbb45fceb98ca48c Mon Sep 17 00:00:00 2001
From: Mikhail Svechnikov <m.svechnikov@fz-juelich.de>
Date: Wed, 14 Jun 2023 19:48:21 +0200
Subject: [PATCH] multiply gisas by footprint factor

---
 Sim/Simulation/ScatteringSimulation.cpp | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/Sim/Simulation/ScatteringSimulation.cpp b/Sim/Simulation/ScatteringSimulation.cpp
index 931c974f1b4..5d69bb22a1f 100644
--- a/Sim/Simulation/ScatteringSimulation.cpp
+++ b/Sim/Simulation/ScatteringSimulation.cpp
@@ -18,6 +18,7 @@
 #include "Base/Progress/ProgressHandler.h"
 #include "Base/Util/Assert.h"
 #include "Device/Beam/Beam.h"
+#include "Device/Beam/IFootprint.h"
 #include "Device/Coord/CoordSystem2D.h"
 #include "Device/Data/Datafield.h"
 #include "Device/Detector/IDetector.h"
@@ -90,6 +91,9 @@ void ScatteringSimulation::runComputation(const ReSample& re_sample, size_t i, d
 
     double intensity = Compute::scattered_and_reflected(re_sample, options(), ele);
 
+    if (const auto* footprint = beam().footprint())
+        intensity *= footprint->calculate(beam().alpha_i());
+
     double sin_alpha_i = std::abs(std::sin(ele.alphaI()));
     if (sin_alpha_i == 0.0) {
         intensity = 0;
-- 
GitLab