Compare commits
4 commits
8f8396cf95
...
850c2e189f
Author | SHA1 | Date | |
---|---|---|---|
![]() |
850c2e189f | ||
![]() |
40e497297d | ||
![]() |
060d894d6c | ||
![]() |
3e005fc7d6 |
122
inject_env.yml
Normal file
122
inject_env.yml
Normal file
|
@ -0,0 +1,122 @@
|
|||
name: inject
|
||||
channels:
|
||||
- defaults
|
||||
dependencies:
|
||||
- _libgcc_mutex=0.1=main
|
||||
- _openmp_mutex=5.1=1_gnu
|
||||
- aom=3.6.0=h6a678d5_0
|
||||
- blas=1.0=mkl
|
||||
- brotli-python=1.0.9=py313h6a678d5_9
|
||||
- bzip2=1.0.8=h5eee18b_6
|
||||
- c-ares=1.19.1=h5eee18b_0
|
||||
- ca-certificates=2025.2.25=h06a4308_0
|
||||
- cairo=1.16.0=he5ede1b_6
|
||||
- contourpy=1.3.1=py313hdb19cb5_0
|
||||
- cycler=0.11.0=pyhd3eb1b0_0
|
||||
- cyrus-sasl=2.1.28=h1110e0f_3
|
||||
- dav1d=1.2.1=h5eee18b_0
|
||||
- expat=2.7.1=h6a678d5_0
|
||||
- fontconfig=2.14.1=h55d465d_3
|
||||
- fonttools=4.55.3=py313h5eee18b_0
|
||||
- freetype=2.13.3=h4a9f257_0
|
||||
- fribidi=1.0.10=h7b6447c_0
|
||||
- graphite2=1.3.14=h295c915_1
|
||||
- harfbuzz=10.2.0=hdfddeaa_1
|
||||
- icu=73.1=h6a678d5_0
|
||||
- intel-openmp=2023.1.0=hdb19cb5_46306
|
||||
- jpeg=9e=h5eee18b_3
|
||||
- kiwisolver=1.4.8=py313h6a678d5_0
|
||||
- krb5=1.20.1=h143b758_1
|
||||
- lcms2=2.16=h92b89f2_1
|
||||
- ld_impl_linux-64=2.40=h12ee557_0
|
||||
- lerc=4.0.0=h6a678d5_0
|
||||
- libabseil=20250127.0=cxx17_h6a678d5_0
|
||||
- libavif=1.1.1=h5eee18b_0
|
||||
- libcups=2.4.2=h252cb56_2
|
||||
- libcurl=8.14.1=hc1efc7f_1
|
||||
- libdeflate=1.22=h5eee18b_0
|
||||
- libedit=3.1.20230828=h5eee18b_0
|
||||
- libev=4.33=h7f8727e_1
|
||||
- libffi=3.4.4=h6a678d5_1
|
||||
- libgcc-ng=11.2.0=h1234567_1
|
||||
- libgfortran-ng=11.2.0=h00389a5_1
|
||||
- libgfortran5=11.2.0=h1234567_1
|
||||
- libgl=1.7.0=h5eee18b_2
|
||||
- libglib=2.84.2=h37c7471_0
|
||||
- libglvnd=1.7.0=h5eee18b_2
|
||||
- libglx=1.7.0=h5eee18b_2
|
||||
- libgomp=11.2.0=h1234567_1
|
||||
- libiconv=1.16=h5eee18b_3
|
||||
- libkrb5=1.21.3=h520c7b4_3
|
||||
- libmpdec=4.0.0=h5eee18b_0
|
||||
- libnghttp2=1.57.0=h2d74bed_0
|
||||
- libpng=1.6.39=h5eee18b_0
|
||||
- libpq=17.4=h02b6914_2
|
||||
- libprotobuf=5.29.3=h3cdef7c_1
|
||||
- libssh2=1.11.1=h251f7ec_0
|
||||
- libstdcxx-ng=11.2.0=h1234567_1
|
||||
- libtiff=4.7.0=hde9077f_0
|
||||
- libuuid=1.41.5=h5eee18b_0
|
||||
- libwebp-base=1.3.2=h5eee18b_1
|
||||
- libxcb=1.17.0=h9b100fa_0
|
||||
- libxkbcommon=1.9.1=h69220b7_0
|
||||
- libxml2=2.13.8=hfdd30dd_0
|
||||
- lmdb=0.9.29=h2531618_0
|
||||
- lz4-c=1.9.4=h6a678d5_1
|
||||
- matplotlib=3.10.0=py313h06a4308_1
|
||||
- matplotlib-base=3.10.0=py313h68cf311_1
|
||||
- mkl=2023.1.0=h213fc3f_46344
|
||||
- mkl-service=2.4.0=py313h5eee18b_2
|
||||
- mkl_fft=1.3.11=py313h5eee18b_0
|
||||
- mkl_random=1.2.8=py313h06d7b56_0
|
||||
- mysql=8.4.0=h721767e_2
|
||||
- ncurses=6.5=h7934f7d_0
|
||||
- numpy=2.3.1=py313h8d96ed3_0
|
||||
- numpy-base=2.3.1=py313h8e760e0_0
|
||||
- openjpeg=2.5.2=h0d4d230_1
|
||||
- openldap=2.6.4=h42fbc30_0
|
||||
- openssl=3.0.17=h5eee18b_0
|
||||
- packaging=25.0=py313h06a4308_0
|
||||
- pcre2=10.42=hebb0a14_1
|
||||
- pillow=11.3.0=py313hb1c3d2d_0
|
||||
- pip=25.1=pyhc872135_2
|
||||
- pixman=0.40.0=h7f8727e_1
|
||||
- pthread-stubs=0.3=h0ce48e5_1
|
||||
- pyparsing=3.2.0=py313h06a4308_0
|
||||
- pyqt=6.7.1=py313h8dad735_2
|
||||
- pyqt6-sip=13.9.1=py313h6ce4db3_2
|
||||
- python=3.13.5=h4612cfd_100_cp313
|
||||
- python-dateutil=2.9.0post0=py313h06a4308_2
|
||||
- python_abi=3.13=0_cp313
|
||||
- qtbase=6.7.3=hdaa5aa8_0
|
||||
- qtdeclarative=6.7.3=h7934f7d_1
|
||||
- qtsvg=6.7.3=he4bddd1_1
|
||||
- qttools=6.7.3=h5a8de97_1
|
||||
- qtwebchannel=6.7.3=h7934f7d_1
|
||||
- qtwebsockets=6.7.3=h7934f7d_1
|
||||
- readline=8.2=h5eee18b_0
|
||||
- scipy=1.16.0=py313h0cc6016_0
|
||||
- setuptools=72.1.0=py313h06a4308_0
|
||||
- sip=6.10.0=py313h6a678d5_0
|
||||
- six=1.17.0=py313h06a4308_0
|
||||
- sqlite=3.50.2=hb25bd0a_1
|
||||
- tbb=2021.8.0=hdb19cb5_0
|
||||
- tk=8.6.14=h993c535_1
|
||||
- tornado=6.5.1=py313h5eee18b_0
|
||||
- tzdata=2025b=h04d1e81_0
|
||||
- wheel=0.45.1=py313h06a4308_0
|
||||
- xcb-util=0.4.1=h5eee18b_2
|
||||
- xcb-util-cursor=0.1.5=h5eee18b_0
|
||||
- xcb-util-image=0.4.0=h5eee18b_2
|
||||
- xcb-util-renderutil=0.3.10=h5eee18b_0
|
||||
- xkeyboard-config=2.44=h5eee18b_0
|
||||
- xorg-libx11=1.8.12=h9b100fa_1
|
||||
- xorg-libxau=1.0.12=h9b100fa_0
|
||||
- xorg-libxdmcp=1.1.5=h9b100fa_0
|
||||
- xorg-libxext=1.3.6=h9b100fa_0
|
||||
- xorg-libxrender=0.9.12=h9b100fa_0
|
||||
- xorg-xorgproto=2024.1=h5eee18b_1
|
||||
- xz=5.6.4=h5eee18b_1
|
||||
- zlib=1.2.13=h5eee18b_1
|
||||
- zstd=1.5.6=hc292b87_0
|
||||
prefix: /home/dagarwal/miniconda3/envs/inject
|
30
readme.md
Normal file
30
readme.md
Normal file
|
@ -0,0 +1,30 @@
|
|||
# Signal injection and testing for GREENBURST
|
||||
|
||||
These scripts are developed to:
|
||||
1) Create and inject bursts of varying DM and width to existing FILTERBANK files (signalgen.py), and
|
||||
2) Analyze the results of running the resulting files through the GREENBURST pipeline (testanalysis.py).
|
||||
|
||||
## Environment
|
||||
|
||||
The inject_env.yml file contains the enviroment declaration necessary to run these scripts. On the GREENBURST machine, this enviroment is accessed via `conda activate inject`.
|
||||
|
||||
## Running
|
||||
|
||||
### Signal Generation
|
||||
|
||||
Signalgen has 2 modes - generation and plotting. Generation is the default, while plotting is accessed via the `-p` flag.
|
||||
|
||||
Files may be provided in three ways:
|
||||
- Directly and one at a time, via `-f`
|
||||
- Through a file containing a list of file paths, via `-l`
|
||||
- Contained in a directory via `-D`, where Signalgen will act on all `.fil` files in the directory.
|
||||
|
||||
The injected signals can be of a specified DM (`-d`) and/or width (`-w`), and the number of samples taken by the `will` package can be adjusted as well (`-n`).
|
||||
|
||||
For bulk processing, the `-r` flag should be used to randomize the pulse parameters and output the injected pulse infomation to a timestamped file.
|
||||
|
||||
By default, the resulting files will be output to `./out/`, but a different directory may be specified with `-o`. Note that `-p` will always output the plots into the same directory as the source `.fil` file.
|
||||
|
||||
### Test Analysis
|
||||
|
||||
After running the GREENBURST pipeline using the `-t` flag with stage 3, a `plotOut.txt` file will be output (by default, to `/ldata/dev_tests/repro/`). Provide the timestamped file from Signalgen and this `plotOut.txt` file to Testanalysis by editing the paths at the top of the script, and run the file. Information will be output to the log, and plots will be output to `./out/`.
|
|
@ -11,6 +11,9 @@ import pandas as pd
|
|||
logger = logging.getLogger(__name__)
|
||||
logging.basicConfig(level=logging.INFO) #change for debug prints
|
||||
|
||||
INJECTION_FILE = os.path.join(".","out","2025-07-31T17-25-54.txt")
|
||||
DETECTION_FILE = os.path.join(".","out","plotOut.txt")
|
||||
|
||||
def linesplit(line):
|
||||
"""
|
||||
Splits line of file into useful components.
|
||||
|
@ -49,14 +52,14 @@ detectedDic = {
|
|||
}
|
||||
|
||||
#load injected data into dataframe
|
||||
with open(os.path.join(".","out","2025-07-31T17-25-54.txt"), "r") as file:
|
||||
with open(INJECTION_FILE, "r") as file:
|
||||
lines = file.readlines()
|
||||
updateDic(lines, injectedDic)
|
||||
|
||||
injections = pd.DataFrame(data=injectedDic) #this is our main object for injection data
|
||||
|
||||
#load detection data into dataframe
|
||||
with open(os.path.join(".","out","plotOut.txt"), "r") as file:
|
||||
with open(DETECTION_FILE, "r") as file:
|
||||
lines = file.readlines()
|
||||
updateDic(lines, detectedDic)
|
||||
|
||||
|
|
|
@ -1,6 +0,0 @@
|
|||
/minish/keh00032/gb/2025/data_2025-05-05_07-08-36/
|
||||
/minish/keh00032/gb/2025/data_2025-05-05_07-16-59/
|
||||
/minish/keh00032/gb/2025/data_2025-05-05_07-25-22/
|
||||
/minish/keh00032/gb/2025/data_2025-05-05_07-33-46/
|
||||
/minish/keh00032/gb/2025/data_2025-05-05_07-42-09/
|
||||
/minish/keh00032/gb/2025/data_2025-05-05_07-50-32/
|
Loading…
Reference in a new issue