From 719121079ba059fc64763d088276de1b029d145f Mon Sep 17 00:00:00 2001 From: Kevin Kuns <kevin.kuns@ligo.org> Date: Thu, 14 Jan 2021 01:49:34 -0500 Subject: [PATCH] add aLIGO excess gas sub-budget for H2, N2, and H2O --- gwinc/ifo/aLIGO/__init__.py | 17 ++++++++++++ gwinc/ifo/aLIGO/ifo.yaml | 17 +++++++++--- gwinc/ifo/noises.py | 54 +++++++++++++++++++++++++++++++++++++ 3 files changed, 85 insertions(+), 3 deletions(-) diff --git a/gwinc/ifo/aLIGO/__init__.py b/gwinc/ifo/aLIGO/__init__.py index 2e299e53..821e4887 100644 --- a/gwinc/ifo/aLIGO/__init__.py +++ b/gwinc/ifo/aLIGO/__init__.py @@ -19,6 +19,23 @@ class QuantumVacuum(nb.Budget): ] +class ExcessGas(nb.Budget): + """Excess Gas + + """ + style = dict( + label='Excess Gas', + color='#add00d', + linestyle='--', + ) + + noises = [ + ExcessGasH2, + ExcessGasN2, + ExcessGasH2O, + ] + + class aLIGO(nb.Budget): name = 'Advanced LIGO' diff --git a/gwinc/ifo/aLIGO/ifo.yaml b/gwinc/ifo/aLIGO/ifo.yaml index 9ffde779..eca5e990 100644 --- a/gwinc/ifo/aLIGO/ifo.yaml +++ b/gwinc/ifo/aLIGO/ifo.yaml @@ -33,9 +33,20 @@ Infrastructure: Length: 3995 # m Temp: 290 # K ResidualGas: - pressure: 4.0e-7 # Pa - mass: 3.35e-27 # kg; Mass of H_2 (ref. 10) - polarizability: 7.8e-31 # m^3 + H2: + pressure: 4.0e-7 # Pa + mass: 3.35e-27 # kg; Mass of H_2 (ref. 10) + polarizability: 7.8e-31 # m^3 + + N2: + pressure: 1.33e-8 + mass: 4.65e-26 + polarizability: 1.79e-30 + + H2O: + pressure: 1.33e-8 + mass: 2.99e-26 + polarizability: 1.71e-30 TCS: # The presumably dominant effect of a thermal lens in the ITMs is an increased diff --git a/gwinc/ifo/noises.py b/gwinc/ifo/noises.py index 03e7a954..17f83d4a 100644 --- a/gwinc/ifo/noises.py +++ b/gwinc/ifo/noises.py @@ -777,3 +777,57 @@ class ExcessGas(nb.Noise): # should be re-evaluated at some point. dhdl_sqr, sinc_sqr = dhdl(self.freq, self.ifo.Infrastructure.Length) return n * 2 / sinc_sqr + + +class ExcessGasH2(nb.Noise): + """Excess gas for H2 + + """ + style = dict( + label='H2', + color='xkcd:red orange' + ) + + def calc(self): + cavity = arm_cavity(self.ifo) + species = self.ifo.Infrastructure.ResidualGas.H2 + n = noise.residualgas.residual_gas_cavity( + self.freq, self.ifo, cavity, species) + dhdl_sqr, sinc_sqr = dhdl(self.freq, self.ifo.Infrastructure.Length) + return n * 2 / sinc_sqr + + +class ExcessGasN2(nb.Noise): + """Excess gas for N2 + + """ + style = dict( + label='N2', + color='xkcd:emerald' + ) + + def calc(self): + cavity = arm_cavity(self.ifo) + species = self.ifo.Infrastructure.ResidualGas.N2 + n = noise.residualgas.residual_gas_cavity( + self.freq, self.ifo, cavity, species) + dhdl_sqr, sinc_sqr = dhdl(self.freq, self.ifo.Infrastructure.Length) + return n * 2 / sinc_sqr + + +class ExcessGasH2O(nb.Noise): + """Excess gas for H2O + + """ + style = dict( + label='H2O', + color='xkcd:water blue' + ) + + def calc(self): + cavity = arm_cavity(self.ifo) + species = self.ifo.Infrastructure.ResidualGas.H2O + n = noise.residualgas.residual_gas_cavity( + self.freq, self.ifo, cavity, species) + dhdl_sqr, sinc_sqr = dhdl(self.freq, self.ifo.Infrastructure.Length) + return n * 2 / sinc_sqr -- GitLab