diff --git a/src/lib/shared.svelte.ts b/src/lib/shared.svelte.ts
index 4eac4e2266117ee8284e726e718857ba7417a22d..e21dbec9a78fe1d5059a059011a06db81b708877 100644
--- a/src/lib/shared.svelte.ts
+++ b/src/lib/shared.svelte.ts
@@ -718,6 +718,11 @@ async function sendTestCasesSimulation(
       calculation.situationIndex === undefined
         ? shared.evaluationByNameArray
         : [...shared.evaluationByNameArray]
+
+    // Use an intermediate variable to avoir multiple updates of shared.valuesByCalculationNameByVariableNameArray
+    // in following loop.
+    let valuesByCalculationNameByVariableNameArray =
+      shared.valuesByCalculationNameByVariableNameArray
     for (const {
       entity: entityKey,
       name: variableName,
@@ -746,8 +751,8 @@ async function sendTestCasesSimulation(
         // Split evaluation.value vector for each situation.
         {
           let testCasesPopulationIndex = 0
-          shared.valuesByCalculationNameByVariableNameArray =
-            shared.valuesByCalculationNameByVariableNameArray.map(
+          valuesByCalculationNameByVariableNameArray =
+            valuesByCalculationNameByVariableNameArray.map(
               (
                 valuesByCalculationNameByVariableName,
                 situationIndex,
@@ -784,7 +789,7 @@ async function sendTestCasesSimulation(
         // Variable has been computed for a single test case.
 
         const updatedValuesByCalculationNameByVariableNameArray = [
-          ...shared.valuesByCalculationNameByVariableNameArray,
+          ...valuesByCalculationNameByVariableNameArray,
         ]
         const valuesByCalculationNameByVariableName = {
           ...updatedValuesByCalculationNameByVariableNameArray[
@@ -800,7 +805,7 @@ async function sendTestCasesSimulation(
         updatedValuesByCalculationNameByVariableNameArray[
           calculation.situationIndex
         ] = valuesByCalculationNameByVariableName
-        shared.valuesByCalculationNameByVariableNameArray =
+        valuesByCalculationNameByVariableNameArray =
           updatedValuesByCalculationNameByVariableNameArray
       }
 
@@ -818,7 +823,7 @@ async function sendTestCasesSimulation(
           updatedEvaluationByNameArray = updatedEvaluationByNameArray.map(
             (evaluationByName, situationIndex): EvaluationByName => {
               const situation = shared.testCases[situationIndex]
-              const values = shared.valuesByCalculationNameByVariableNameArray[
+              const values = valuesByCalculationNameByVariableNameArray[
                 situationIndex
               ][variableName][calculationName] as VariableValues
               const entitySituation =
@@ -863,7 +868,7 @@ async function sendTestCasesSimulation(
 
           // First, update delta and values of evaluations.
           const situation = shared.testCases[calculation.situationIndex]
-          const values = shared.valuesByCalculationNameByVariableNameArray[
+          const values = valuesByCalculationNameByVariableNameArray[
             calculation.situationIndex
           ][variableName][calculationName] as VariableValues
           const entitySituation = situation[entity.key_plural as string] ?? {}
@@ -902,6 +907,8 @@ async function sendTestCasesSimulation(
         }
       }
     }
+    shared.valuesByCalculationNameByVariableNameArray =
+      valuesByCalculationNameByVariableNameArray
 
     // Update deltaSums of evaluations from their new delta.
     if (calculation.situationIndex === undefined) {
diff --git a/src/routes/+layout.svelte b/src/routes/+layout.svelte
index eb18b2ba3a429d2404ef480fc63ccb8e42a6321f..1db2297d3f09047f6bc1267780d45e7125923151 100644
--- a/src/routes/+layout.svelte
+++ b/src/routes/+layout.svelte
@@ -112,11 +112,10 @@
   $effect(() => {
     updateOnSliderChange(shared.testCases)
   })
-  // TODO svelte5: find out why requestAllTestCasesCalculations makes the UI lag
-  // onMount(() => {
-  //   // Launch first simulation.
-  //   requestAllTestCasesCalculations(null)
-  // })
+  onMount(() => {
+    // Launch first simulation.
+    requestAllTestCasesCalculations(null)
+  })
   $effect(() => {
     if (
       requestedCalculations.budgetVariableName !== undefined &&