Skip to content

Instantly share code, notes, and snippets.

View arnobaer's full-sized avatar

Bernhard Arnold arnobaer

  • Institute of High Energy Physics, OeAW
View GitHub Profile
# run instrument emulations
gnome-terminal --tab -- /bin/bash -c '. env/bin/activate; python -m comet.emulator.keithley.k707 -p 11001'
gnome-terminal --tab -- /bin/bash -c '. env/bin/activate; python -m comet.emulator.keithley.k2410 -p 11002'
gnome-terminal --tab -- /bin/bash -c '. env/bin/activate; python -m comet.emulator.keithley.k2657a -p 11003'
gnome-terminal --tab -- /bin/bash -c '. env/bin/activate; python -m comet.emulator.keithley.k6517b -p 11004'
gnome-terminal --tab -- /bin/bash -c '. env/bin/activate; python -m comet_pqc.emulator.e4980a -p 11005'
gnome-terminal --tab -- /bin/bash -c '. env/bin/activate; python -m comet_pqc.emulator.environmentbox -p 11006'
gnome-terminal --tab -- /bin/bash -c '. env/bin/activate; python -m comet.emulator.corvus.venus1 -p 11007'
@arnobaer
arnobaer / import_utm.pl
Created August 20, 2020 12:35
Fixes for CMSSW
#! /usr/bin/env perl
use File::Basename;
# get the complete list of class names for replacement:
my @src = ();
my @rep = ();
open FILELIST, "L1Trigger/L1TGlobal/scripts/files.txt";
while($fullfile = <FILELIST>){
set -e
version="$1"
if [ -z "$1" ]
then
echo "usage: build-longterm <version>"
exit 1
fi
@arnobaer
arnobaer / query_cut.py
Last active March 23, 2020 16:04
A quest digging into level-1 menu details...
import re
import sys
import tmGrammar
import tmTable
def parse(expression):
tmGrammar.Algorithm_Logic.clear()
if not tmGrammar.Algorithm_parser(expression):
raise ValueError("Failed to parse algorithm expression")
@arnobaer
arnobaer / xml2json.py
Created December 5, 2019 15:36
Example in parsing XML menus
# Parsing XML menu to JSON
#
# Usage:
# python xml2json.py sample.xml
#
# Example data:
# https://raw.githubusercontent.com/cms-l1-globaltrigger/cms-l1-menu/master/2019/L1Menu_Collisions2018_v2_1_0-d2/xml/L1Menu_Collisions2018_v2_1_0-d2.xml
#
import json
@arnobaer
arnobaer / firmware.c
Last active November 19, 2019 17:16
caen-firmware-version
// gcc -DLINUX -I/opt/xdaq/include -L/opt/xdaq/lib -lCAENVME firmware.c -o firmware
#include <stdio.h>
#include <stdlib.h>
#include <CAENVMElib.h>
int main()
{
char version[256];
@arnobaer
arnobaer / utm_create_venv.sh
Last active October 3, 2019 13:26
Creating a virtual environment for UTM Python bindings
#!/bin/bash
#
# An example workflow for setting up a virtual environment for UTM Python bindings.
#
# Select UTM version
UTM_VERSION="0.7.3"
# Select Python version
PYTHON_MAJOR=3
@arnobaer
arnobaer / utm-manylinux.sh
Last active November 21, 2019 15:23
Build script for universal utm python bindings for Linux
#
# Build script for distribution independent binary Python wheels
# for utm library on Linux.
#
# Install Docker
#
# sudo apt install docker
# sudo usermod -a -G docker $USER # logout required
#
# Pull manylinux image
@arnobaer
arnobaer / fractional_prescale_bocci.py
Created September 25, 2019 13:10
Yet another fixed point fractional prescale calculation
# Fixed point fractional prescale calculation using add and sub
# Proposed by Andrea Bocci, Sept. 2019
import argparse
class PrescaleCounter(object):
precision = 1
def __init__(self, prescale):
@arnobaer
arnobaer / worker.py
Created September 17, 2019 08:00
Qt5 worker using QRunnable
import sys
import time
import traceback
from PyQt5 import QtCore, QtGui, QtWidgets
class WorkerSignals(QtCore.QObject):
"""Signals provided by class `Worker`."""
finished = QtCore.pyqtSignal()