Maintenance will be performed on git.ligo.org, chat.ligo.org, containers.ligo.org, and docs.ligo.org on Tuesday 22nd September 2020 starting at approximately 9am MST.It is expected to take around 15 minutes and there will be a short period of downtime towards the end of the maintenance window. Please address any comments, questions, or concerns to computing-help@igwn.org.

Commit 1b39c15a authored by Lee McCuller's avatar Lee McCuller

Merge branch 'setuppy' of git.ligo.org:lee-mcculler/pygwinc into setuppy

parents bd2132bc 3cf91677
Pipeline #20729 passed with stages
in 2 minutes and 24 seconds
......@@ -9,18 +9,19 @@
`pygwinc` creates noise budgets based on detector descriptions
provided in either .yml or .mat files (see below). Once the detector
description is loaded, the noise budget can be calculated with the
`gwinc` command:
description is loaded, the noise budget can be calculated and plotted:
```python
>>> import gwinc
>>> import numpy as np
>>> ifo = gwinc.load_ifo('aLIGO')
>>> freq = np.logspace(1, 3, 1000)
>>> score, data, ifo = gwinc.gwinc(freq, ifo)
>>> ifo = gwinc.load_ifo('aLIGO')
>>> ifo = gwinc.precompIFO(ifo)
>>> noises = gwinc.noise_calc(ifo, freq)
>>> gwinc.plot_noise(ifo, noises)
```
A convenience function to plot the resulting noise budget is included:
Or the `gwinc` convenience function can be used to handle it all:
```
>>> gwinc.plot_noise(data)
>>> score, data, ifo = gwinc.gwinc(freq, ifo, plot=True)
```
......@@ -71,9 +72,9 @@ YAML .yaml format, the original MATLAB gwinc .mat format, or even from
a MATLAB .m file. `pygwinc` includes .yaml detector descriptions for
various detectors:
* gwinc/ifo/aLIGO.yaml
* gwinc/ifo/A+.yaml
* gwinc/ifo/Voyager.yaml
* [aLIGO.yaml](https://git.ligo.org/gwinc/pygwinc/blob/master/gwinc/ifo/aLIGO.yaml)
* [A+.yaml](https://git.ligo.org/gwinc/pygwinc/blob/master/gwinc/ifo/A+.yaml)
* [Voyager.yaml](https://git.ligo.org/gwinc/pygwinc/blob/master/gwinc/ifo/Voyager.yaml)
## comparison with MATLAB gwinc
......@@ -88,7 +89,14 @@ a local installation of MATLAB and it's python interface (at
e.g. /opt/matlab/python/lib/python3.6/site-packages) you can run the
comparison as so:
$ GWINCPATH=/path/to/gwinc PYTHONPATH=/opt/matlab/python/lib/python3.6/site-packages python3 -m gwinc.test -p aLIGO
$ export GWINCPATH=/path/to/gwinc
$ export PYTHONPATH=/opt/matlab/python/lib/python3.6/site-packages
$ python3 -m gwinc.test -p aLIGO
This will produce a summary page of the various noise spectra that
differ between matgwinc and pygwinc.
Latest comparison plots from continuous integration:
* [aLIGO comparison](https://gwinc.docs.ligo.org/pygwinc/aLIGO_test.png)
* [A+ comparison](https://gwinc.docs.ligo.org/pygwinc/A+_test.png)
......@@ -106,7 +106,7 @@ def noise_calc(ifo, f):
return noises
def gwinc(freq, ifoin, source=None, fig=False, PRfixed=True):
def gwinc(freq, ifoin, source=None, plot=False, PRfixed=True):
"""Calculate strain noise budget for a specified interferometer model.
Argument `freq` is the frequency array for which the noises will
......@@ -117,7 +117,7 @@ def gwinc(freq, ifoin, source=None, fig=False, PRfixed=True):
the detector to several potential gravitational wave
sources.
If `fig` is specified a plot of the budget will be created.
If `plot` is True a plot of the budget will be created.
Returns tuple of (score, noises, ifo)
......@@ -146,7 +146,7 @@ def gwinc(freq, ifoin, source=None, fig=False, PRfixed=True):
# --------------------------------------------------------
# output graphics
if fig:
if plot:
# Report input parameters
if ifo.Optics.Type == 'DualCarrier_new': #include the case for Dual carrier
finesseA = 2*pi/ifo.Optics.ITM.TransmittanceD1
......
......@@ -13,7 +13,7 @@ setup_args = dict(
url = 'https://git.ligo.org/gwinc/pygwinc',
author = 'LIGO Laboratory',
author_email = 'jrollins@ligo.caltech.edu ',
description = "Gravitation Wave Interferometer Noice Calculator",
description = "Gravitation Wave Interferometer Noise Calculator",
license = 'Copyright 2017 LIGO Laboratory',
install_requires = [
'numpy',
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment