diff --git a/lisainstrument/instrument.py b/lisainstrument/instrument.py index ad24027bc9d58b0a146f63408f461eb225195b17..b3b3e01c837109ce06b2a3a4ee50fb297591cfa0 100644 --- a/lisainstrument/instrument.py +++ b/lisainstrument/instrument.py @@ -688,14 +688,41 @@ class Instrument: / (1 + self.clock_noise_offsets[mosa[0]])**2, mosa[0]) ) + ## Total frequencies + + logging.info("Computing inter-spacecraft beatnote total frequencies") + self.the_isc_carriers = ForEachMOSA(lambda mosa: + self.the_isc_carrier_offsets[mosa] + self.the_isc_carrier_fluctuations[mosa] + ) + self.the_isc_usbs = ForEachMOSA(lambda mosa: + self.the_isc_usb_offsets[mosa] + self.the_isc_usb_fluctuations[mosa] + ) + + logging.info("Computing test-mass beatnote total frequencies") + self.the_tm_carriers = ForEachMOSA(lambda mosa: + self.the_tm_carrier_offsets[mosa] + self.the_tm_carrier_fluctuations[mosa] + ) + self.the_tm_usbs = ForEachMOSA(lambda mosa: + self.the_tm_usb_offsets[mosa] + self.the_tm_usb_fluctuations[mosa] + ) + + logging.info("Computing reference beatnote total frequencies") + self.the_ref_carriers = ForEachMOSA(lambda mosa: + self.the_ref_carrier_offsets[mosa] + self.the_ref_carrier_fluctuations[mosa] + ) + self.the_ref_usbs = ForEachMOSA(lambda mosa: + self.the_ref_usb_offsets[mosa] + self.the_ref_usb_fluctuations[mosa] + ) + ## Antialiasing filtering logging.info("Filtering inter-spacecraft beatnotes") self.filtered_isc_carrier_offsets = self.the_isc_carrier_offsets.transformed(self.aafilter) self.filtered_isc_carrier_fluctuations = self.the_isc_carrier_fluctuations.transformed(self.aafilter) + self.filtered_isc_carriers = self.the_isc_carriers.transformed(self.aafilter) self.filtered_isc_usb_offsets = self.the_isc_usb_offsets.transformed(self.aafilter) self.filtered_isc_usb_fluctuations = self.the_isc_usb_fluctuations.transformed(self.aafilter) - + self.filtered_isc_usbs = self.the_isc_usbs.transformed(self.aafilter) logging.info("Filtering measured pseudo-ranges") self.filtered_mprs = self.the_mprs.transformed(self.aafilter) @@ -703,22 +730,28 @@ class Instrument: logging.info("Filtering test-mass beatnotes") self.filtered_tm_carrier_offsets = self.the_tm_carrier_offsets.transformed(self.aafilter) self.filtered_tm_carrier_fluctuations = self.the_tm_carrier_fluctuations.transformed(self.aafilter) + self.filtered_tm_carriers = self.the_tm_carriers.transformed(self.aafilter) self.filtered_tm_usb_offsets = self.the_tm_usb_offsets.transformed(self.aafilter) self.filtered_tm_usb_fluctuations = self.the_tm_usb_fluctuations.transformed(self.aafilter) + self.filtered_tm_usbs = self.the_tm_usbs.transformed(self.aafilter) logging.info("Filtering reference beatnotes") self.filtered_ref_carrier_offsets = self.the_ref_carrier_offsets.transformed(self.aafilter) self.filtered_ref_carrier_fluctuations = self.the_ref_carrier_fluctuations.transformed(self.aafilter) + self.filtered_ref_carriers = self.the_ref_carriers.transformed(self.aafilter) self.filtered_ref_usb_offsets = self.the_ref_usb_offsets.transformed(self.aafilter) self.filtered_ref_usb_fluctuations = self.the_ref_usb_fluctuations.transformed(self.aafilter) + self.filtered_ref_usbs = self.the_ref_usbs.transformed(self.aafilter) ## Downsampling filtering logging.info("Downsampling inter-spacecraft beatnotes") self.isc_carrier_offsets = self.filtered_isc_carrier_offsets.transformed(self.downsampled) self.isc_carrier_fluctuations = self.filtered_isc_carrier_fluctuations.transformed(self.downsampled) + self.isc_carriers = self.filtered_isc_carriers.transformed(self.downsampled) self.isc_usb_offsets = self.filtered_isc_usb_offsets.transformed(self.downsampled) self.isc_usb_fluctuations = self.filtered_isc_usb_fluctuations.transformed(self.downsampled) + self.isc_usbs = self.filtered_isc_usbs.transformed(self.downsampled) logging.info("Filtering and downsampling measured pseudo-ranges") self.mprs = self.filtered_mprs.transformed(self.downsampled) @@ -726,40 +759,18 @@ class Instrument: logging.info("Filtering and downsampling test-mass beatnotes") self.tm_carrier_offsets = self.filtered_tm_carrier_offsets.transformed(self.downsampled) self.tm_carrier_fluctuations = self.filtered_tm_carrier_fluctuations.transformed(self.downsampled) + self.tm_carriers = self.filtered_tm_carriers.transformed(self.downsampled) self.tm_usb_offsets = self.filtered_tm_usb_offsets.transformed(self.downsampled) self.tm_usb_fluctuations = self.filtered_tm_usb_fluctuations.transformed(self.downsampled) + self.tm_usbs = self.filtered_tm_usbs.transformed(self.downsampled) logging.info("Filtering and downsampling reference beatnotes") self.ref_carrier_offsets = self.filtered_ref_carrier_offsets.transformed(self.downsampled) self.ref_carrier_fluctuations = self.filtered_ref_carrier_fluctuations.transformed(self.downsampled) + self.ref_carriers = self.filtered_ref_carriers.transformed(self.downsampled) self.ref_usb_offsets = self.filtered_ref_usb_offsets.transformed(self.downsampled) self.ref_usb_fluctuations = self.filtered_ref_usb_fluctuations.transformed(self.downsampled) - - ## Total frequencies - - logging.info("Computing inter-spacecraft beatnote total frequencies") - self.isc_carriers = ForEachMOSA(lambda mosa: - self.isc_carrier_offsets[mosa] + self.isc_carrier_fluctuations[mosa] - ) - self.isc_usbs = ForEachMOSA(lambda mosa: - self.isc_usb_offsets[mosa] + self.isc_usb_fluctuations[mosa] - ) - - logging.info("Computing test-mass beatnote total frequencies") - self.tm_carriers = ForEachMOSA(lambda mosa: - self.tm_carrier_offsets[mosa] + self.tm_carrier_fluctuations[mosa] - ) - self.tm_usbs = ForEachMOSA(lambda mosa: - self.tm_usb_offsets[mosa] + self.tm_usb_fluctuations[mosa] - ) - - logging.info("Computing reference beatnote total frequencies") - self.ref_carriers = ForEachMOSA(lambda mosa: - self.ref_carrier_offsets[mosa] + self.ref_carrier_fluctuations[mosa] - ) - self.ref_usbs = ForEachMOSA(lambda mosa: - self.ref_usb_offsets[mosa] + self.ref_usb_fluctuations[mosa] - ) + self.ref_usbs = self.filtered_ref_usbs.transformed(self.downsampled) ## Closing simulation logging.info("Simulation complete")