From 7eedc43746e5fb19edf6404be904268da8a8885d Mon Sep 17 00:00:00 2001
From: Jean-Baptiste Bayle <j2b.bayle@gmail.com>
Date: Thu, 27 Oct 2022 15:54:25 +0100
Subject: [PATCH] Update TTL coefficient distributions

---
 lisainstrument/instrument.py | 32 ++++++++++++++++----------------
 1 file changed, 16 insertions(+), 16 deletions(-)

diff --git a/lisainstrument/instrument.py b/lisainstrument/instrument.py
index 75d8d74..f208a38 100755
--- a/lisainstrument/instrument.py
+++ b/lisainstrument/instrument.py
@@ -160,8 +160,9 @@ class Instrument:
             oms_fknees: dictionary of cutoff frequencies for OMS noise
             ttl_coeffs: tuple (local_phi, distant_phi, local_eta, distant_eta) of dictionaries of
                 tilt-to-length coefficients on each MOSA [m/rad], 'default' for a default set of
-                coefficients, or 'random' to randomly generate a set of coefficients in a uniform
-                distribution [-2.3, 2.3] mm/rad
+                coefficients, or 'random' to draw a set of coefficients from uniform distributions
+                (LISA-UKOB-INST-ML-0001-i2 LISA TTL STOP Model, summary table, 2.4 mm/rad and
+                2.2mm/rad for distant and local coefficients, respectively)
             sc_jitter_asds: tuple of dictionaries of angular jitter amplitude spectral densities
                 for spacecraft, ordered as (yaw, pitch, roll) [rad/sqrt(Hz)]
             sc_jitter_fknees: tuple of dictionaries of cutoff frequencies for spacecraft angular jitter,
@@ -347,29 +348,28 @@ class Instrument:
 
         # Tilt-to-length
         if ttl_coeffs == 'default':
-            # Default values drawn from uniform distribution [-2.3, 2.3] mm/rad
-            # for local and distant coeffs using `np.random.uniform()`
+            # Default values drawn from distributions set in 'random'
             self.ttl_coeffs_local_phis = ForEachMOSA({
-                '12': -3.79868389e-04, '23': 1.27445665e-03, '31': -8.19115231e-04,
-                '13': -5.03792762e-05, '32': 8.24348407e-04, '21': 1.80772079e-03,
+                '12': 2.005835e-03, '23': 2.105403e-04, '31': -1.815399e-03,
+                '13': -2.865050e-04, '32': -1.986657e-03, '21': 9.368319e-04,
             })
             self.ttl_coeffs_distant_phis = ForEachMOSA({
-                '12': -1.24812926e-03, '23': 7.49010812e-04, '31': -6.50959027e-05,
-                '13': -1.33360362e-03, '32': 6.12997141e-04, '21': -2.53955346e-04,
+                '12': 1.623910e-03, '23': 1.522873e-04, '31': -1.842871e-03,
+                '13': -2.091585e-03, '32': 1.300866e-03, '21': -8.445374e-04,
             })
             self.ttl_coeffs_local_etas = ForEachMOSA({
-                '12': -6.26115149e-04, '23': -2.13028857e-04, '31': 6.62915985e-04,
-                '13': 5.46940002e-04, '32': -9.50450080e-04, '21': 2.72098575e-04,
+                '12': -1.670389e-03, '23': 1.460681e-03, '31': -1.039064e-03,
+                '13': 1.640473e-04, '32': 1.205353e-03, '21': -9.205764e-04,
             })
             self.ttl_coeffs_distant_etas = ForEachMOSA({
-                '12': 1.87659513e-03, '23': -1.26813952e-03, '31': 8.64052482e-04,
-                '13': -4.54433476e-04, '32': -1.46396776e-03, '21': -2.06925864e-04,
+                '12': -1.076470e-03, '23': 5.228848e-04, '31': -5.662766e-05,
+                '13': 1.960050e-03, '32': 9.021890e-04, '21': 1.908239e-03,
             })
         elif ttl_coeffs == 'random':
-            self.ttl_coeffs_local_phis = ForEachMOSA(lambda _: np.random.uniform(-2.3E-3, 2.3E-3))
-            self.ttl_coeffs_distant_phis = ForEachMOSA(lambda _: np.random.uniform(-2.3E-3, 2.3E-3))
-            self.ttl_coeffs_local_etas = ForEachMOSA(lambda _: np.random.uniform(-2.3E-3, 2.3E-3))
-            self.ttl_coeffs_distant_etas = ForEachMOSA(lambda _: np.random.uniform(-2.3E-3, 2.3E-3))
+            self.ttl_coeffs_local_phis = ForEachMOSA(lambda _: np.random.uniform(-2.2E-3, 2.2E-3))
+            self.ttl_coeffs_distant_phis = ForEachMOSA(lambda _: np.random.uniform(-2.4E-3, 2.4E-3))
+            self.ttl_coeffs_local_etas = ForEachMOSA(lambda _: np.random.uniform(-2.2E-3, 2.2E-3))
+            self.ttl_coeffs_distant_etas = ForEachMOSA(lambda _: np.random.uniform(-2.4E-3, 2.4E-3))
         else:
             self.ttl_coeffs_local_phis = ForEachMOSA(ttl_coeffs[0])
             self.ttl_coeffs_distant_phis = ForEachMOSA(ttl_coeffs[1])
-- 
GitLab