Metadata-Version: 2.4
Name: fscan
Version: 0.6.2
Summary: Fscan tool for monitoring narrow spectral artifacts in LIGO data
Author-email: Evan Goetz <evan.goetz@ligo.org>, Ansel Neunzert <ansel.neunzert@ligo.org>, Sudhagar Suyamprakasam <sudhagar.suyamprakasam@ligo.org>
License-Expression: GPL-3.0-or-later
Project-URL: Source Code, https://git.ligo.org/CW/instrumental/fscan
Project-URL: Bug Tracker, https://git.ligo.org/CW/instrumental/fscan/-/issues
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Science/Research
Classifier: Natural Language :: English
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Topic :: Scientific/Engineering :: Astronomy
Classifier: Topic :: Scientific/Engineering :: Physics
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: bokeh>=3.7.2
Requires-Dist: gwdetchar
Requires-Dist: gpstime
Provides-Extra: test
Requires-Dist: flake8; extra == "test"
Provides-Extra: conda
Requires-Dist: lalpulsar>=7.1.1; extra == "conda"
Requires-Dist: lalframe; extra == "conda"
Provides-Extra: docs
Requires-Dist: sphinx; extra == "docs"
Requires-Dist: sphinx-immaterial-igwn; extra == "docs"
Requires-Dist: numpydoc; extra == "docs"
Dynamic: license-file

# Fscan

[![PyPI version](https://badge.fury.io/py/fscan.svg)](https://badge.fury.io/py/fscan)
![Conda](https://img.shields.io/conda/v/conda-forge/fscan?label=conda-forge)
![PyPI - License](https://img.shields.io/pypi/l/fscan)
![PyPI - Python Version](https://img.shields.io/pypi/pyversions/fscan)

Fscan pipeline for characterizing persistent narrowband spectral artifacts in gravitational wave detector data

## Installation

On Unix systems, Fscan can be installed easily using conda:

```shell
conda install -c conda-forge fscan
```

Or from PyPI:

```shell
pip install fscan
```

`LALPulsar` and `lalframe` are required for running but optional dependencies. You may either install it into the environment using

```shell
conda install -c conda-forge fscan[conda]
```

or install `LALSuite` [from source](https://git.ligo.org/lscsoft/lalsuite). 

## Running Fscan

Fscan runs on LIGO site computing resources (LHO, LLO, or CIT) by accessing the frame files directly on-disk (not via NDS).
The main way to run Fscan is using the `FscanDriver` program on the command line together with arguments that tell Fscan how to run.

One key argument is the channel configuration file.
This file contains the information needed on how the Fscan program finds and processes data on an individual channel basis.
Example channel configuration files may be [found here](https://git.ligo.org/CW/instrumental/fscan-configuration).

### Example running Fscan

Run the `FscanDriver <args>` exectuable with appropriate arguments (see `FscanDriver -h` for additional details). For example at CIT:

```shell
FscanDriver --chan-opts=fscan-configuration/configuration/examples/example_ch_info.yml --SFTpath=. --create-sfts=1 --plot-output=1 --accounting-group=ligo.dev.o4.detchar.linefind.fscan --accounting-group-user=albert.einstein --analysisStart=20200229 --analysisDuration=1day --averageDuration=1day
```

### Another example (using a configuration file)

Running from the Fscan source directory,

```shell
FscanDriver --config configuration/example.config
```

Be sure to edit the arguments in `example.config` to reflect the locations of your lalsuite and fscan installations.
