Пример #1
0
from utils.dict_tools import DotDict
from utils.dict_tools import ArgumentError
from utils.dict_tools import ParameterError
from functools import wraps
from utils.contexts import silence

try:
    # Python 2
    from ConfigParser import ConfigParser
    from inspect import getargspec as getfullargspec
except ImportError:
    # Python 3
    from configparser import ConfigParser
    from inspect import getfullargspec

LOG = logtools.get_logger(__name__)


ID_CONFIG = "entry_cfg"
ID_DICT = "entry_dict"
ID_JSON = "entry_json"
ID_SECTION = "section"


# EntryPoint Class #############################################################


class EntryPoint(object):
    def __init__(self, parameter, strict=False):
        """ Initialize decoration: Handle the desired input parameter. """
        self.strict = strict
import numpy as np
import pandas as pd

import madx_wrapper
from correction.fullresponse import response_twiss
from model import manager
from segment_by_segment.segment_by_segment import GetLlmMeasurement
from twiss_optics.optics_class import TwissOptics
from utils import logging_tools
from utils import tfs_pandas as tfs, iotools
from utils.dict_tools import DotDict
from utils.entrypoint import entrypoint, EntryPointParameters
from utils.logging_tools import log_pandas_settings_with_copy

LOG = logging_tools.get_logger(__name__)

DEV_NULL = os.devnull


# Configuration ##################################################################

DEFAULT_ARGS = {
    "optics_file": None,
    "output_path": None,
    "output_filename": "changeparameters_iter",
    "svd_cut": 0.01,
    "optics_params": ['MUX', 'MUY', 'BBX', 'BBY', 'NDX', 'Q'],
    "variables": ["MQM", "MQT", "MQTL", "MQY"],
    "beta_file_name": "getbeta",
    "method": "pinv",
Пример #3
0
"""

import os
import numpy as np
import pandas as pd
from math import factorial
import matplotlib.pyplot as plt
from utils.plotting import plot_style as pstyle
from utils import logging_tools as logtool
from utils import tfs_pandas as tfs
from utils.contexts import timeit
from utils.dict_tools import DotDict
from twiss_optics.twiss_functions import get_phase_advances, tau, dphi
from twiss_optics.twiss_functions import assertion, regex_in, get_all_rdts

LOG = logtool.get_logger(__name__)

PLOT_DEFAULTS = {
    "style": 'standard',
    "manual": {
        u'lines.linestyle': '-',
        u'lines.marker': '',
    }
}

################################
#        TwissOptics
################################


class TwissOptics(object):
Пример #4
0
"""
Entrypoint Extract Online Model
---------------------

Entrypoint for the online model extractor wrapper.
"""
from online_model import extractor_wrapper
from utils import logging_tools, iotools
from utils.entrypoint import entrypoint, EntryPointParameters, ArgumentError

LOG = logging_tools.get_logger(__name__)

FUNCTION_OVERVIEW = 'overview'
FUNCTION_DEFINITION = 'definition'


def get_params():
    return EntryPointParameters({
        "function": dict(
            flags=["-f", "--functionality"],
            type=str,
            required=True,
            choices=["overview", "definition"],
            help="Which functionality to run."
        ),
        "knob_names": dict(
            flags=["-k", "--knobs", "--knobnames"],
            type=str,
            nargs="+",
            default=[],
            help="Names of the knobs to show."
Пример #5
0
 def __init__(self):
     logging_tools.getLogger("").handlers = [
     ]  # remove all handlers from root-logger
     logging_tools.get_logger("__main__", fmt="%(message)s")  # set up new
Пример #6
0
from math import sqrt
import re
import logging
from matplotlib import rc
from collections import OrderedDict

import matplotlib.pyplot as plt
import matplotlib.mlab as mlab
import matplotlib
import pandas as pd

BW = False
LEN = 20
TWOPI = 2.0 * np.pi

LOG = logging_tools.get_logger(__name__, level_console=logging.INFO)

# =============================================================================
# ======== function definitions ===============================================
# =============================================================================

OMC_LOGO = """
     ######    ##L          ##      ######
   d##   ##b   ###L        ###    ####   ##
  ###     ###  ####L      ####  ###
  ##       ##  ## ##L    ## ##  ##
  ###     ###  ##  ##L  ##  ##  ###
   T##_  ##P   ##   ##L##   ##    ###
     #####     ##    ###    ##      ######
"""
Пример #7
0
@version: 0.0.1

GetLLM.algorithms.resonant_driving_terms.py stores helper functions for RDT calculations for GetLLM.
This module is not intended to be executed. It stores only functions.
'''

import sys

import utils.bpm
import helper
import numpy as np

from utils import logging_tools

LogRdt = logging_tools.get_logger(__name__)

exist_curve_fit = True

try:
    from scipy.optimize import curve_fit
except ImportError:
    exist_curve_fit = False


DEBUG = sys.flags.debug # True with python option -d! ("python -d GetLLM.py...") (vimaier)


RDT_LIST = ['f1001H', 'f1010H', 'f0110V', 'f1010V',  #Quadrupolar
            'f3000H', 'f1200H', 'f1020H', 'f1002H',  #Normal Sextupolar
            'f0111V', 'f1020V', 'f0120V', 'f1011V', 
Пример #8
0
import pickle
from utils.logging_tools import get_logger

pickle_logger = get_logger("Pickle", "INFO")


def pickle_save(data, pickle_file_name):
    with open(pickle_file_name, 'wb') as pickle_file:
        pickle.dump(data, pickle_file)
    pickle_logger.info("Pickle file {} saved".format(pickle_file_name))


def pickle_load(pickle_file_name):
    pickle_file = open(pickle_file_name, 'rb')
    pickle_logger.info("Pickle file {} loaded".format(pickle_file_name))
    return pickle.load(pickle_file)
import os

# noinspection PyUnresolvedReferences
import __init__
from utils import logging_tools
from utils.dict_tools import print_dict_tree
from utils.entrypoint import ArgumentError
from utils.entrypoint import EntryPoint
from utils.entrypoint import EntryPointParameters
from utils.entrypoint import entrypoint

from model import manager
manager._get_params()

LOG = logging_tools.get_logger(__name__, level_console=0, fmt="%(levelname)7s | %(message)s")
THISDIR = os.path.dirname(os.path.abspath(__file__))


# Example Parameter Definitions ################################################


def _get_params_arguments():
    """ Parameters defined with EntryPointArguments (which is a dict *cough*) """
    args = EntryPointParameters()
    args.add_parameter(name="accel",
                       flags=["-a", "--accel"],
                       help="Which accelerator: LHCB1 LHCB2 LHCB4? SPS RHIC TEVATRON",
                       choices=["LHCB1","LHCB2","LHCB5"],
                       default="LHCB1")
    args.add_parameter(name="dict",
Пример #10
0
from shutil import copyfile

from os.path import abspath, join, dirname, pardir
sys.path.append(abspath(join(dirname(__file__), pardir)))

from model import manager, creator
from utils import logging_tools
from optics_measurements.io_filehandler import OpticsMeasurement
from tfs_files.tfs_collection import TfsCollection, Tfs
from tfs_files import tfs_pandas
import sbs_propagables

# TODO: Remove debug and set up log file
import logging
DEBUG = logging.DEBUG
LOGGER = logging_tools.get_logger(__name__, level_console=DEBUG)

PLANES = ("x", "y")


def _parse_args(args=None):
    '''
    Parses the arguments, checks for valid input and returns tuple
    It needs also the input needed to define the accelerator:
    --accel=<accel_name>
    and all the rest of the parameters needed to define given accelerator.
    e.g. for LHC runII 2017 beam 1
    --accel lhc --lhcmode lhc_runII_2017 --beam 1
    '''
    parser = argparse.ArgumentParser()
    parser.add_argument("--measurement",
Пример #11
0
import os
from os.path import abspath, join, dirname, pardir
new_path = abspath(join(dirname(abspath(__file__)), pardir, pardir))
if new_path not in sys.path:
    sys.path.append(new_path)
from utils import logging_tools
from utils.dict_tools import print_dict_tree
from utils.entrypoint import ArgumentError
from utils.entrypoint import EntryPoint
from utils.entrypoint import EntryPointParameters
from utils.entrypoint import entrypoint

# from model import manager
# manager._get_params()

LOG = logging_tools.get_logger(__name__, level_console=0, fmt="%(levelname)7s | %(message)s")
THISDIR = os.path.dirname(os.path.abspath(__file__))


# Example Parameter Definitions ################################################


def _get_params_arguments():
    """ Parameters defined with EntryPointArguments (which is a dict *cough*) """
    args = EntryPointParameters()
    args.add_parameter(name="accel",
                       flags=["-a", "--accel"],
                       help="Which accelerator: LHCB1 LHCB2 LHCB4? SPS RHIC TEVATRON",
                       choices=["LHCB1","LHCB2","LHCB5"],
                       default="LHCB1")
    args.add_parameter(name="dict",
Пример #12
0
def main(level_console=0):
    log = logging_tools.get_logger(__name__, level_console=level_console)
    _write_messages(log)
Пример #13
0
#gc.set_debug(gc.DEBUG_LEAK)
tracker = SummaryTracker()

run_dir = get_run_dir()

## parameters
from utils.params import callbacks_params, params

keys = list(params)
for params_index, values in enumerate(
        itertools.product(*map(params.get, keys))):
    tracker.print_diff()
    current_params = dict(zip(keys, values))
    params_dir = run_dir + str(params_index) + '/'
    makedirs(params_dir)
    logger = get_logger(params_dir)
    logger.info("{}".format(current_params))
    logger.info("index {}".format(params_index))
    check_seed = 42
    scale_data = False
    fit_params_dict = {
        'batch_size': 16,
        'epochs': current_params['epoch_num'],
        'validation_split': 0.0,
        'verbose': 0
    }
    kfold_params_dict = {'n_splits': 10, 'shuffle': False, 'random_state': 42}

    logger.info("scale data {}".format(scale_data))
    logger.info("{}".format(fit_params_dict))
    logger.info("{}".format(callbacks_params))
Пример #14
0
 def __init__(self, root_file_name, region_prefix, masses):
     self.root_file_name = root_file_name
     self.region_prefix = region_prefix
     self.masses = masses
     self._data = dict()
     self.logger = get_logger("SB", "INFO")
Пример #15
0
def build_data(args):
    # logger
    logger = get_logger("MAIN", "INFO")

    # PRE-DEFINITIONS
    region_prefix = "2tag2pjet_0ptv_SRLRJwindow"
    disc = "subsmhh"
    signal_prefix = "Hhhbbtautau"
    masses = [1000, 1100, 1200, 1400, 1600, 1800, 2000, 2500, 3000]
    binning = [0., 4000.]

    # histograms data
    logger.info("# 1 - Histograms")
    sbh = SBHistograms(args.input, region_prefix, masses)
    sbh.disc = disc
    sbh.signal_prefix = signal_prefix
    sbh.masscut = {
        "1000": "",
        "1100": "", 
        "1200": "",
        "1400": "",
        "1600": "MHH900",
        "1800": "MHH900",
        "2000": "MHH900",
        "2500": "MHH1200",
        "3000": "MHH1200",
    }

    """ 
    for discontinuity 
    """
    # sbh.masscut = {
    #     "1000": "",
    #     "1100": "", 
    #     "1200": "",
    #     "1400": "",
    #     "1600": "",
    #     "1800": "MHH900",
    #     "2000": "MHH900",
    #     "2500": "MHH900",
    #     "3000": "MHH1200",
    # }

    sbh.save_data(args.histograms)

    # yields data
    logger.info("# 2 - Yields")
    sby = SBYields(args.input, region_prefix, masses, binning)

    # sby.shape_systs = ['SysFATJET_Medium_JET_Comb_Baseline_Kin',
    #                  'SysFATJET_Medium_JET_Comb_TotalStat_Kin',
    #                  'SysFATJET_Medium_JET_Comb_Modelling_Kin',
    #                  'SysFATJET_Medium_JET_Comb_Tracking_Kin',
    #                  'SysFATJET_JER', 'SysFATJET_JMR',
    #                  'SysTAUS_TRUEHADDITAU_EFF_JETID_TOTAL',
    #                  'SysTAUS_TRUEHADDITAU_SME_TES_TOTAL',
    #                  'SysMET_SoftTrk_ResoPerp', 'SysMET_SoftTrk_ResoPara',
    #                  'SysMET_JetTrk_Scale', 'SysMET_SoftTrk_Scale',
    #                  'SysPRW_DATASF', ]

    """
    try those two
    """
    sby.ditauSF_highPt = 0.1
    # sby.ditauSF_highPt = 0.2

    sby.diboson = ['WWPw', 'WZPw', 'ZZPw']
    sby.Wjets = ['Wbb', 'Wbc', 'Wbl', 'Wcc', 'Wcl', 'Wl']
    sby.Zhf = ['Zbb', 'Zbc', 'Zbl', 'Zcc']
    sby.Zlf = ['Zcl', 'Zl']
    sby.Zee = ['ZeeSh221']
    sby.top = ['ttbar', 'stop', 'stops', 'stopt', 'stopWt', 'ttbar_allhad', 'ttbar_nonallhad']
    sby.VH  = ['VHtautau', 'WHtautau', 'ZHtautau', 'qqWlvH125', 'qqZllH125', 'qqZvvH125', 'ggZllH125', 'ggZvvH125']
    
    sby.ignore = ['ttH', 'Hhhbbtautau1000lephad', 'Hhhbbtautau2000lephad']

    sby.others = sby.diboson + sby.Wjets + sby.Zee + sby.top
    sby.for_histfitter = True
    sby.do_merging = True

    sby.disc = disc
    sby.signal_prefix = signal_prefix
    sby.cache_name = args.histograms

    sby.save_data(args.yields)