Implementations of different static and adaptive filtering techniques for the prediction of a correlated signal component from witness signals.
Project description
saftig – Static & Adaptive Filtering Techniques In Gravitational-wave-research
Python implementations of different static and adaptive filtering techniques for the prediction of a correlated signal component from witness signals. The main goal is to provide a unified interface for the different filtering techniques.
Features
Static:
- Wiener Filter (WF)
Adaptive
- Updating Wiener Fitler (UWF)
- Least-Mean-Squares Filter (LMS)
Non-Linear:
- Experimental non-linear LMS Filter variant (PolynomialLMS)
Install
From pypi: pip install saftig
From repository: pip install .
From repository (editable): make ie
Minimal example
>>> import saftig as sg
>>>
>>> # generate data
>>> n_channel = 2
>>> witness, target = sg.eval.TestDataGenerator([0.1]*n_channel).generate(int(1e5))
>>>
>>> # instantiate the filter and apply it
>>> filt = sg.filt.LMSFilter(n_filter=128, idx_target=0, n_channel=n_channel)
>>> filt.condition(witness, target)
>>> prediction = filt.apply(witness, target) # check on the data used for conditioning
>>>
>>> # success
>>> sg.eval.RMS(target-prediction) / sg.eval.RMS(prediction)
0.08221177645361015
Terminology
- Witness signal w: One or multiple sensors that are used to make a prediction
- Target signal s: The goal for the prediction
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file saftig-0.2.0.tar.gz.
File metadata
- Download URL: saftig-0.2.0.tar.gz
- Upload date:
- Size: 42.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bfc77ff5800cfdbb4852c2591b8804bbc477a0b0132348a9ecda2fe6c6f38123
|
|
| MD5 |
8921de1d2b5a855aba93d9c360c9fafe
|
|
| BLAKE2b-256 |
f670de02491d8558da6f2ea6d956cd42b198f63500b9574af9ce7400b4a5082a
|
Provenance
The following attestation bundles were made for saftig-0.2.0.tar.gz:
Publisher:
python-publish.yml on timbk/saftig
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
saftig-0.2.0.tar.gz -
Subject digest:
bfc77ff5800cfdbb4852c2591b8804bbc477a0b0132348a9ecda2fe6c6f38123 - Sigstore transparency entry: 431205697
- Sigstore integration time:
-
Permalink:
timbk/saftig@5420272c19ea9a225509c4519cd14a32a3c64121 -
Branch / Tag:
refs/tags/v0.2.0 - Owner: https://github.com/timbk
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-publish.yml@5420272c19ea9a225509c4519cd14a32a3c64121 -
Trigger Event:
release
-
Statement type: