From 51d19318bbfcdac43db0b422a58a15b92425569a Mon Sep 17 00:00:00 2001 From: Kohei Yamamoto <kohei.yamamoto@aei.mpg.de> Date: Sun, 3 Jul 2022 11:38:00 +0200 Subject: [PATCH] 1st version of hexagon --- lisainstrument/hexagon.py | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/lisainstrument/hexagon.py b/lisainstrument/hexagon.py index 9c2d537..48ba7db 100644 --- a/lisainstrument/hexagon.py +++ b/lisainstrument/hexagon.py @@ -25,7 +25,7 @@ class Hexagon(): Args: size (int): numer of samples in the simulation dt (float): sampling period [s] - freerunning_laser_asd (float): ASD of free-running laser 1 [Hz/sqrt(Hz)] + primary_laser_asd (float): ASD of primary laser 1 [Hz/sqrt(Hz)] locked_laser_asd (float): ASD added to locked lasers 2 & 3 [Hz/sqrt(Hz)] """ @@ -33,8 +33,8 @@ class Hexagon(): BEATNOTES = [12, 23, 31] def __init__(self, - size=100, dt=1 / 3.4, - freerunning_laser_asd=100, + size=100, dt=1 / (80e6/2**17/10/6/3), + primary_laser_asd=100, locked_laser_asd=60, offset_freqs='default', central_freq=2.816E14): @@ -43,8 +43,9 @@ class Hexagon(): self.dt = float(dt) self.fs = 1.0 / self.dt self.duration = self.size * self.dt + self.time = np.linspace(0, self.duration-self.dt, self.size) - self.freerunning_laser_asd = freerunning_laser_asd + self.primary_laser_asd = primary_laser_asd self.locked_laser_asd = locked_laser_asd self.central_freq = float(central_freq) @@ -59,7 +60,7 @@ class Hexagon(): self.laser_noises = np.empty((self.size, 3)) # (size, laser) [Hz] # Laser 1 is free-running - self.laser_noises[:, 0] = noises.laser(self.fs, self.size, self.freerunning_laser_asd) + self.laser_noises[:, 0] = noises.laser(self.fs, self.size, self.primary_laser_asd) # Laser 2 replicated laser 1 with added locking noise self.laser_noises[:, 1] = self.laser_noises[:, 0] \ + noises.white(self.fs, self.size, self.locked_laser_asd) @@ -83,5 +84,9 @@ class Hexagon(): self.carrier_flucuations[:, int(str(ij)[1]) - 1] - self.carrier_flucuations[:, int(str(ij)[0]) - 1] for ij in self.BEATNOTES ], axis=-1) # (size, beatnote) [Hz] + self.carrier_beatnote = self.carrier_beatnote_offsets + self.carrier_beatnote_fluctuations + + # Three-signal combination + self.three_signal_combination = self.carrier_beatnote[:,0] + self.carrier_beatnote[:,1] + self.carrier_beatnote[:,2] + - # ... -- GitLab