
import numpy as np
from numpy import nan, inf

add_legend_handle = [
  'Data',
  'Analysis_CSS_FragNone_UENone.yoda.gz',
  'Analysis_Alaric_FragNone_UENone.yoda.gz'
]

xpoints = {
                                       'Data' : [1.666665e-01, 5.000000e-01, 8.333335e-01, 1.166665e+00, 1.500000e+00,
                                                 1.833335e+00, 2.166665e+00, 2.500000e+00, 2.833335e+00, 3.166665e+00,
                                                 3.500000e+00, 3.833335e+00, 4.166665e+00],
       'Analysis_CSS_FragNone_UENone.yoda.gz' : [1.666665e-01, 5.000000e-01, 8.333335e-01, 1.166665e+00, 1.500000e+00,
                                                 1.833335e+00, 2.166665e+00, 2.500000e+00, 2.833335e+00, 3.166665e+00,
                                                 3.500000e+00, 3.833335e+00, 4.166665e+00],
    'Analysis_Alaric_FragNone_UENone.yoda.gz' : [1.666665e-01, 5.000000e-01, 8.333335e-01, 1.166665e+00, 1.500000e+00,
                                                 1.833335e+00, 2.166665e+00, 2.500000e+00, 2.833335e+00, 3.166665e+00,
                                                 3.500000e+00, 3.833335e+00, 4.166665e+00],
}

xedges = {
                                       'Data' : [0.000000e+00, 3.333330e-01, 6.666670e-01, 1.000000e+00, 1.333330e+00,
                                                 1.666670e+00, 2.000000e+00, 2.333330e+00, 2.666670e+00, 3.000000e+00,
                                                 3.333330e+00, 3.666670e+00, 4.000000e+00, 4.333330e+00],
       'Analysis_CSS_FragNone_UENone.yoda.gz' : [0.000000e+00, 3.333330e-01, 6.666670e-01, 1.000000e+00, 1.333330e+00,
                                                 1.666670e+00, 2.000000e+00, 2.333330e+00, 2.666670e+00, 3.000000e+00,
                                                 3.333330e+00, 3.666670e+00, 4.000000e+00, 4.333330e+00],
    'Analysis_Alaric_FragNone_UENone.yoda.gz' : [0.000000e+00, 3.333330e-01, 6.666670e-01, 1.000000e+00, 1.333330e+00,
                                                 1.666670e+00, 2.000000e+00, 2.333330e+00, 2.666670e+00, 3.000000e+00,
                                                 3.333330e+00, 3.666670e+00, 4.000000e+00, 4.333330e+00],
}

ref_xerrs = [
  [abs(xpoints['Data'][i]   - xedges['Data'][i]) for i in range(len(xpoints['Data']))],
  [abs(xedges['Data'][i+1] - xpoints['Data'][i]) for i in range(len(xpoints['Data']))]
]

yvals = {
                                       'Data' : [3.524840e-01, 3.899590e-01, 3.938020e-01, 4.568770e-01, 4.960900e-01,
                                                 5.032400e-01, 4.610950e-01, 3.733100e-01, 2.617210e-01, 1.579110e-01,
                                                 8.394390e-02, 4.127560e-02, 1.993790e-02],
       'Analysis_CSS_FragNone_UENone.yoda.gz' : [8.852797e-02, 9.462402e-02, 7.038815e-02, 5.566601e-02, 4.323551e-02,
                                                 3.778946e-02, 1.667178e-02, 2.968854e-02, 5.772305e-03, 1.351854e-02,
                                                 2.338671e-03, 4.621735e-04, 1.352374e-04],
    'Analysis_Alaric_FragNone_UENone.yoda.gz' : [3.445604e-02, 3.585537e-02, 3.869084e-02, 2.073462e-02, 8.546828e-03,
                                                 7.718356e-04, 2.739030e-03, 2.988435e-03, 1.639613e-04, 4.766977e-04,
                                                 0.000000e+00, 0.000000e+00, 0.000000e+00],
}

xerrs = {
                                       'Data' : [
                                                   [1.666665e-01, 1.666670e-01, 1.666665e-01, 1.666650e-01, 1.666700e-01,
                                                    1.666650e-01, 1.666650e-01, 1.666700e-01, 1.666650e-01, 1.666650e-01,
                                                    1.666700e-01, 1.666650e-01, 1.666650e-01],
                                                   [1.666665e-01, 1.666670e-01, 1.666665e-01, 1.666650e-01, 1.666700e-01,
                                                    1.666650e-01, 1.666650e-01, 1.666700e-01, 1.666650e-01, 1.666650e-01,
                                                    1.666700e-01, 1.666650e-01, 1.666650e-01],
                                                ],
       'Analysis_CSS_FragNone_UENone.yoda.gz' : [
                                                   [1.666665e-01, 1.666670e-01, 1.666665e-01, 1.666650e-01, 1.666700e-01,
                                                    1.666650e-01, 1.666650e-01, 1.666700e-01, 1.666650e-01, 1.666650e-01,
                                                    1.666700e-01, 1.666650e-01, 1.666650e-01],
                                                   [1.666665e-01, 1.666670e-01, 1.666665e-01, 1.666650e-01, 1.666700e-01,
                                                    1.666650e-01, 1.666650e-01, 1.666700e-01, 1.666650e-01, 1.666650e-01,
                                                    1.666700e-01, 1.666650e-01, 1.666650e-01],
                                                ],
    'Analysis_Alaric_FragNone_UENone.yoda.gz' : [
                                                   [1.666665e-01, 1.666670e-01, 1.666665e-01, 1.666650e-01, 1.666700e-01,
                                                    1.666650e-01, 1.666650e-01, 1.666700e-01, 1.666650e-01, 1.666650e-01,
                                                    1.666700e-01, 1.666650e-01, 1.666650e-01],
                                                   [1.666665e-01, 1.666670e-01, 1.666665e-01, 1.666650e-01, 1.666700e-01,
                                                    1.666650e-01, 1.666650e-01, 1.666700e-01, 1.666650e-01, 1.666650e-01,
                                                    1.666700e-01, 1.666650e-01, 1.666650e-01],
                                                ],
}

yerrs = {
                                       'Data' : [
                                                   [3.763484e-02, 2.269291e-02, 2.761434e-02, 2.750304e-02, 2.942629e-02,
                                                    3.416659e-02, 3.881543e-02, 4.008685e-02, 3.117564e-02, 2.124306e-02,
                                                    1.016665e-02, 3.406986e-03, 1.082231e-03],
                                                   [3.776031e-02, 2.288397e-02, 2.774503e-02, 2.791776e-02, 2.971413e-02,
                                                    3.442089e-02, 3.905146e-02, 4.022125e-02, 3.118965e-02, 2.129768e-02,
                                                    1.018878e-02, 3.415874e-03, 1.075764e-03],
                                                ],
       'Analysis_CSS_FragNone_UENone.yoda.gz' : [
                                                   [1.343921e-02, 1.517840e-02, 1.047436e-02, 8.262064e-03, 7.790115e-03,
                                                    6.557742e-03, 3.489878e-03, 9.163600e-03, 1.901284e-03, 1.176141e-02,
                                                    1.556599e-03, 3.610989e-04, 1.352374e-04],
                                                   [1.343921e-02, 1.517840e-02, 1.047436e-02, 8.262064e-03, 7.790115e-03,
                                                    6.557742e-03, 3.489878e-03, 9.163600e-03, 1.901284e-03, 1.176141e-02,
                                                    1.556599e-03, 3.610989e-04, 1.352374e-04],
                                                ],
    'Analysis_Alaric_FragNone_UENone.yoda.gz' : [
                                                   [5.698655e-03, 6.903358e-03, 8.054624e-03, 4.298105e-03, 3.291963e-03,
                                                    3.052644e-04, 1.197593e-03, 1.399894e-03, 1.332536e-04, 4.766977e-04,
                                                    0.000000e+00, 0.000000e+00, 0.000000e+00],
                                                   [5.698655e-03, 6.903358e-03, 8.054624e-03, 4.298105e-03, 3.291963e-03,
                                                    3.052644e-04, 1.197593e-03, 1.399894e-03, 1.332536e-04, 4.766977e-04,
                                                    0.000000e+00, 0.000000e+00, 0.000000e+00],
                                                ],
}

variation_yvals = {
}



# lists for ratio plot
ratio0_yvals = {
                                       'Data' : [1.000000e+00, 1.000000e+00, 1.000000e+00, 1.000000e+00, 1.000000e+00,
                                                 1.000000e+00, 1.000000e+00, 1.000000e+00, 1.000000e+00, 1.000000e+00,
                                                 1.000000e+00, 1.000000e+00, 1.000000e+00],
       'Analysis_CSS_FragNone_UENone.yoda.gz' : [2.511546e-01, 2.426512e-01, 1.787400e-01, 1.218403e-01, 8.715255e-02,
                                                 7.509232e-02, 3.615693e-02, 7.952785e-02, 2.205518e-02, 8.560860e-02,
                                                 2.785993e-02, 1.119726e-02, 6.782931e-03],
    'Analysis_Alaric_FragNone_UENone.yoda.gz' : [9.775207e-02, 9.194651e-02, 9.824948e-02, 4.538337e-02, 1.722838e-02,
                                                 1.533733e-03, 5.940273e-03, 8.005237e-03, 6.264736e-04, 3.018774e-03,
                                                 0.000000e+00, 0.000000e+00, 0.000000e+00],
}

ratio0_yerrs = {
                                       'Data' : [
                                                   [1.067703e-01, 5.819307e-02, 7.012240e-02, 6.019790e-02, 5.931644e-02,
                                                    6.789322e-02, 8.418098e-02, 1.073822e-01, 1.191178e-01, 1.345255e-01,
                                                    1.211124e-01, 8.254236e-02, 5.428011e-02],
                                                   [1.071263e-01, 5.868300e-02, 7.045427e-02, 6.110563e-02, 5.989665e-02,
                                                    6.839857e-02, 8.469287e-02, 1.077422e-01, 1.191714e-01, 1.348714e-01,
                                                    1.213761e-01, 8.275771e-02, 5.395572e-02],
                                                ],
       'Analysis_CSS_FragNone_UENone.yoda.gz' : [
                                                   [3.812715e-02, 3.892307e-02, 2.659804e-02, 1.808378e-02, 1.570303e-02,
                                                    1.303104e-02, 7.568675e-03, 2.454689e-02, 7.264545e-03, 7.448126e-02,
                                                    1.854332e-02, 8.748483e-03, 6.782931e-03],
                                                   [3.812715e-02, 3.892307e-02, 2.659804e-02, 1.808378e-02, 1.570303e-02,
                                                    1.303104e-02, 7.568675e-03, 2.454689e-02, 7.264545e-03, 7.448126e-02,
                                                    1.854332e-02, 8.748483e-03, 6.782931e-03],
                                                ],
    'Analysis_Alaric_FragNone_UENone.yoda.gz' : [
                                                   [1.616713e-02, 1.770278e-02, 2.045349e-02, 9.407576e-03, 6.635818e-03,
                                                    6.065980e-04, 2.597280e-03, 3.749950e-03, 5.091437e-04, 3.018774e-03,
                                                    0.000000e+00, 0.000000e+00, 0.000000e+00],
                                                   [1.616713e-02, 1.770278e-02, 2.045349e-02, 9.407576e-03, 6.635818e-03,
                                                    6.065980e-04, 2.597280e-03, 3.749950e-03, 5.091437e-04, 3.018774e-03,
                                                    0.000000e+00, 0.000000e+00, 0.000000e+00],
                                                ],
}

ratio0_variation_vals = {
}

ratio_band_edges = {
}
