
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' : [2.850000e+02, 3.400000e+02, 4.050000e+02, 4.750000e+02, 5.500000e+02,
                                                 6.300000e+02, 7.150000e+02, 8.050000e+02, 9.000000e+02, 1.005000e+03,
                                                 1.120000e+03, 1.245000e+03, 1.380000e+03, 1.525000e+03, 1.680000e+03,
                                                 1.850000e+03, 2.030000e+03, 2.225000e+03, 2.440000e+03, 2.665000e+03,
                                                 2.910000e+03, 3.175000e+03, 3.460000e+03, 3.770000e+03, 4.100000e+03,
                                                 4.455000e+03, 4.840000e+03, 6.020000e+03],
       'Analysis_CSS_FragNone_UENone.yoda.gz' : [2.850000e+02, 3.400000e+02, 4.050000e+02, 4.750000e+02, 5.500000e+02,
                                                 6.300000e+02, 7.150000e+02, 8.050000e+02, 9.000000e+02, 1.005000e+03,
                                                 1.120000e+03, 1.245000e+03, 1.380000e+03, 1.525000e+03, 1.680000e+03,
                                                 1.850000e+03, 2.030000e+03, 2.225000e+03, 2.440000e+03, 2.665000e+03,
                                                 2.910000e+03, 3.175000e+03, 3.460000e+03, 3.770000e+03, 4.100000e+03,
                                                 4.455000e+03, 4.840000e+03, 6.020000e+03],
    'Analysis_Alaric_FragNone_UENone.yoda.gz' : [2.850000e+02, 3.400000e+02, 4.050000e+02, 4.750000e+02, 5.500000e+02,
                                                 6.300000e+02, 7.150000e+02, 8.050000e+02, 9.000000e+02, 1.005000e+03,
                                                 1.120000e+03, 1.245000e+03, 1.380000e+03, 1.525000e+03, 1.680000e+03,
                                                 1.850000e+03, 2.030000e+03, 2.225000e+03, 2.440000e+03, 2.665000e+03,
                                                 2.910000e+03, 3.175000e+03, 3.460000e+03, 3.770000e+03, 4.100000e+03,
                                                 4.455000e+03, 4.840000e+03, 6.020000e+03],
}

xedges = {
                                       'Data' : [2.600000e+02, 3.100000e+02, 3.700000e+02, 4.400000e+02, 5.100000e+02,
                                                 5.900000e+02, 6.700000e+02, 7.600000e+02, 8.500000e+02, 9.500000e+02,
                                                 1.060000e+03, 1.180000e+03, 1.310000e+03, 1.450000e+03, 1.600000e+03,
                                                 1.760000e+03, 1.940000e+03, 2.120000e+03, 2.330000e+03, 2.550000e+03,
                                                 2.780000e+03, 3.040000e+03, 3.310000e+03, 3.610000e+03, 3.930000e+03,
                                                 4.270000e+03, 4.640000e+03, 5.040000e+03, 7.000000e+03],
       'Analysis_CSS_FragNone_UENone.yoda.gz' : [2.600000e+02, 3.100000e+02, 3.700000e+02, 4.400000e+02, 5.100000e+02,
                                                 5.900000e+02, 6.700000e+02, 7.600000e+02, 8.500000e+02, 9.500000e+02,
                                                 1.060000e+03, 1.180000e+03, 1.310000e+03, 1.450000e+03, 1.600000e+03,
                                                 1.760000e+03, 1.940000e+03, 2.120000e+03, 2.330000e+03, 2.550000e+03,
                                                 2.780000e+03, 3.040000e+03, 3.310000e+03, 3.610000e+03, 3.930000e+03,
                                                 4.270000e+03, 4.640000e+03, 5.040000e+03, 7.000000e+03],
    'Analysis_Alaric_FragNone_UENone.yoda.gz' : [2.600000e+02, 3.100000e+02, 3.700000e+02, 4.400000e+02, 5.100000e+02,
                                                 5.900000e+02, 6.700000e+02, 7.600000e+02, 8.500000e+02, 9.500000e+02,
                                                 1.060000e+03, 1.180000e+03, 1.310000e+03, 1.450000e+03, 1.600000e+03,
                                                 1.760000e+03, 1.940000e+03, 2.120000e+03, 2.330000e+03, 2.550000e+03,
                                                 2.780000e+03, 3.040000e+03, 3.310000e+03, 3.610000e+03, 3.930000e+03,
                                                 4.270000e+03, 4.640000e+03, 5.040000e+03, 7.000000e+03],
}

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' : [2.259080e+03, 9.546700e+02, 3.960370e+02, 1.693000e+02, 7.667000e+01,
                                                 3.614800e+01, 1.806800e+01, 9.177000e+00, 4.867200e+00, 2.549740e+00,
                                                 1.345600e+00, 7.086800e-01, 3.761000e-01, 2.018200e-01, 1.072900e-01,
                                                 5.649000e-02, 3.070500e-02, 1.652700e-02, 8.404000e-03, 4.523000e-03,
                                                 2.290000e-03, 1.230000e-03, 5.723000e-04, 3.149000e-04, 1.349000e-04,
                                                 5.620000e-05, 2.270000e-05, 3.700000e-06],
       'Analysis_CSS_FragNone_UENone.yoda.gz' : [2.128416e+03, 9.016317e+02, 3.527276e+02, 1.624094e+02, 7.161184e+01,
                                                 3.371003e+01, 1.621537e+01, 8.877229e+00, 4.895766e+00, 2.528480e+00,
                                                 1.208372e+00, 6.738191e-01, 3.566942e-01, 1.880786e-01, 9.955831e-02,
                                                 5.119667e-02, 3.230684e-02, 1.469664e-02, 7.282150e-03, 4.730640e-03,
                                                 2.070708e-03, 1.124644e-03, 6.065464e-04, 2.757494e-04, 1.230115e-04,
                                                 5.275352e-05, 1.856437e-05, 3.545709e-06],
    'Analysis_Alaric_FragNone_UENone.yoda.gz' : [2.117717e+03, 8.709876e+02, 3.734592e+02, 1.494306e+02, 6.986858e+01,
                                                 3.373325e+01, 1.657453e+01, 8.522868e+00, 4.480014e+00, 2.449791e+00,
                                                 1.234562e+00, 6.237719e-01, 3.356680e-01, 1.933333e-01, 9.773483e-02,
                                                 5.232334e-02, 2.862575e-02, 1.372228e-02, 6.963278e-03, 3.938012e-03,
                                                 2.353516e-03, 9.968753e-04, 5.948596e-04, 2.641583e-04, 1.183759e-04,
                                                 4.675870e-05, 1.620123e-05, 3.349390e-06],
}

xerrs = {
                                       'Data' : [
                                                   [2.500000e+01, 3.000000e+01, 3.500000e+01, 3.500000e+01, 4.000000e+01,
                                                    4.000000e+01, 4.500000e+01, 4.500000e+01, 5.000000e+01, 5.500000e+01,
                                                    6.000000e+01, 6.500000e+01, 7.000000e+01, 7.500000e+01, 8.000000e+01,
                                                    9.000000e+01, 9.000000e+01, 1.050000e+02, 1.100000e+02, 1.150000e+02,
                                                    1.300000e+02, 1.350000e+02, 1.500000e+02, 1.600000e+02, 1.700000e+02,
                                                    1.850000e+02, 2.000000e+02, 9.800000e+02],
                                                   [2.500000e+01, 3.000000e+01, 3.500000e+01, 3.500000e+01, 4.000000e+01,
                                                    4.000000e+01, 4.500000e+01, 4.500000e+01, 5.000000e+01, 5.500000e+01,
                                                    6.000000e+01, 6.500000e+01, 7.000000e+01, 7.500000e+01, 8.000000e+01,
                                                    9.000000e+01, 9.000000e+01, 1.050000e+02, 1.100000e+02, 1.150000e+02,
                                                    1.300000e+02, 1.350000e+02, 1.500000e+02, 1.600000e+02, 1.700000e+02,
                                                    1.850000e+02, 2.000000e+02, 9.800000e+02],
                                                ],
       'Analysis_CSS_FragNone_UENone.yoda.gz' : [
                                                   [2.500000e+01, 3.000000e+01, 3.500000e+01, 3.500000e+01, 4.000000e+01,
                                                    4.000000e+01, 4.500000e+01, 4.500000e+01, 5.000000e+01, 5.500000e+01,
                                                    6.000000e+01, 6.500000e+01, 7.000000e+01, 7.500000e+01, 8.000000e+01,
                                                    9.000000e+01, 9.000000e+01, 1.050000e+02, 1.100000e+02, 1.150000e+02,
                                                    1.300000e+02, 1.350000e+02, 1.500000e+02, 1.600000e+02, 1.700000e+02,
                                                    1.850000e+02, 2.000000e+02, 9.800000e+02],
                                                   [2.500000e+01, 3.000000e+01, 3.500000e+01, 3.500000e+01, 4.000000e+01,
                                                    4.000000e+01, 4.500000e+01, 4.500000e+01, 5.000000e+01, 5.500000e+01,
                                                    6.000000e+01, 6.500000e+01, 7.000000e+01, 7.500000e+01, 8.000000e+01,
                                                    9.000000e+01, 9.000000e+01, 1.050000e+02, 1.100000e+02, 1.150000e+02,
                                                    1.300000e+02, 1.350000e+02, 1.500000e+02, 1.600000e+02, 1.700000e+02,
                                                    1.850000e+02, 2.000000e+02, 9.800000e+02],
                                                ],
    'Analysis_Alaric_FragNone_UENone.yoda.gz' : [
                                                   [2.500000e+01, 3.000000e+01, 3.500000e+01, 3.500000e+01, 4.000000e+01,
                                                    4.000000e+01, 4.500000e+01, 4.500000e+01, 5.000000e+01, 5.500000e+01,
                                                    6.000000e+01, 6.500000e+01, 7.000000e+01, 7.500000e+01, 8.000000e+01,
                                                    9.000000e+01, 9.000000e+01, 1.050000e+02, 1.100000e+02, 1.150000e+02,
                                                    1.300000e+02, 1.350000e+02, 1.500000e+02, 1.600000e+02, 1.700000e+02,
                                                    1.850000e+02, 2.000000e+02, 9.800000e+02],
                                                   [2.500000e+01, 3.000000e+01, 3.500000e+01, 3.500000e+01, 4.000000e+01,
                                                    4.000000e+01, 4.500000e+01, 4.500000e+01, 5.000000e+01, 5.500000e+01,
                                                    6.000000e+01, 6.500000e+01, 7.000000e+01, 7.500000e+01, 8.000000e+01,
                                                    9.000000e+01, 9.000000e+01, 1.050000e+02, 1.100000e+02, 1.150000e+02,
                                                    1.300000e+02, 1.350000e+02, 1.500000e+02, 1.600000e+02, 1.700000e+02,
                                                    1.850000e+02, 2.000000e+02, 9.800000e+02],
                                                ],
}

yerrs = {
                                       'Data' : [
                                                   [1.370578e+02, 5.345914e+01, 2.028692e+01, 8.629853e+00, 3.829048e+00,
                                                    1.780778e+00, 8.949135e-01, 4.683054e-01, 2.619990e-01, 1.391567e-01,
                                                    7.492088e-02, 4.129581e-02, 2.264765e-02, 1.250752e-02, 6.887819e-03,
                                                    3.858026e-03, 2.264332e-03, 1.293464e-03, 6.967397e-04, 4.018164e-04,
                                                    2.260791e-04, 1.371770e-04, 7.441731e-05, 4.880493e-05, 2.614522e-05,
                                                    1.370805e-05, 7.461351e-06, 1.651218e-06],
                                                   [1.306423e+02, 5.338443e+01, 2.157713e+01, 8.930057e+00, 3.869648e+00,
                                                    1.806173e+00, 9.225769e-01, 4.742044e-01, 2.595496e-01, 1.414999e-01,
                                                    7.739085e-02, 4.175860e-02, 2.274670e-02, 1.270367e-02, 7.062703e-03,
                                                    3.878772e-03, 2.214949e-03, 1.259360e-03, 6.837381e-04, 3.939336e-04,
                                                    2.204733e-04, 1.340399e-04, 7.298205e-05, 4.773511e-05, 2.553049e-05,
                                                    1.342345e-05, 7.361714e-06, 1.575397e-06],
                                                ],
       'Analysis_CSS_FragNone_UENone.yoda.gz' : [
                                                   [4.245652e+01, 1.884309e+01, 7.354849e+00, 3.992173e+00, 1.764299e+00,
                                                    8.594093e-01, 4.489387e-01, 2.603121e-01, 1.517612e-01, 9.107606e-02,
                                                    4.073331e-02, 2.560552e-02, 1.379096e-02, 8.184408e-03, 4.902269e-03,
                                                    2.681630e-03, 1.820209e-03, 9.052122e-04, 5.179461e-04, 3.840420e-04,
                                                    1.956265e-04, 1.216752e-04, 7.732633e-05, 5.029203e-05, 2.473084e-05,
                                                    8.549551e-06, 3.913872e-06, 7.918781e-07],
                                                   [4.245652e+01, 1.884309e+01, 7.354849e+00, 3.992173e+00, 1.764299e+00,
                                                    8.594093e-01, 4.489387e-01, 2.603121e-01, 1.517612e-01, 9.107606e-02,
                                                    4.073331e-02, 2.560552e-02, 1.379096e-02, 8.184408e-03, 4.902269e-03,
                                                    2.681630e-03, 1.820209e-03, 9.052122e-04, 5.179461e-04, 3.840420e-04,
                                                    1.956265e-04, 1.216752e-04, 7.732633e-05, 5.029203e-05, 2.473084e-05,
                                                    8.549551e-06, 3.913872e-06, 7.918781e-07],
                                                ],
    'Analysis_Alaric_FragNone_UENone.yoda.gz' : [
                                                   [3.897055e+01, 1.598953e+01, 7.533996e+00, 3.369032e+00, 1.668946e+00,
                                                    9.019743e-01, 4.879451e-01, 2.417947e-01, 1.402520e-01, 8.011274e-02,
                                                    4.271387e-02, 2.319968e-02, 1.299412e-02, 8.747492e-03, 4.647507e-03,
                                                    2.571531e-03, 1.757843e-03, 8.294790e-04, 4.677458e-04, 3.142921e-04,
                                                    2.389713e-04, 1.149612e-04, 7.849510e-05, 3.667626e-05, 1.903508e-05,
                                                    9.435692e-06, 4.524262e-06, 7.845685e-07],
                                                   [3.897055e+01, 1.598953e+01, 7.533996e+00, 3.369032e+00, 1.668946e+00,
                                                    9.019743e-01, 4.879451e-01, 2.417947e-01, 1.402520e-01, 8.011274e-02,
                                                    4.271387e-02, 2.319968e-02, 1.299412e-02, 8.747492e-03, 4.647507e-03,
                                                    2.571531e-03, 1.757843e-03, 8.294790e-04, 4.677458e-04, 3.142921e-04,
                                                    2.389713e-04, 1.149612e-04, 7.849510e-05, 3.667626e-05, 1.903508e-05,
                                                    9.435692e-06, 4.524262e-06, 7.845685e-07],
                                                ],
}

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, 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, 1.000000e+00, 1.000000e+00],
       'Analysis_CSS_FragNone_UENone.yoda.gz' : [9.421605e-01, 9.444433e-01, 8.906430e-01, 9.592995e-01, 9.340269e-01,
                                                 9.325559e-01, 8.974635e-01, 9.673345e-01, 1.005869e+00, 9.916619e-01,
                                                 8.980172e-01, 9.508087e-01, 9.484026e-01, 9.319126e-01, 9.279365e-01,
                                                 9.062962e-01, 1.052169e+00, 8.892503e-01, 8.665100e-01, 1.045908e+00,
                                                 9.042393e-01, 9.143447e-01, 1.059840e+00, 8.756729e-01, 9.118718e-01,
                                                 9.386747e-01, 8.178137e-01, 9.582997e-01],
    'Analysis_Alaric_FragNone_UENone.yoda.gz' : [9.374245e-01, 9.123442e-01, 9.429907e-01, 8.826379e-01, 9.112897e-01,
                                                 9.331982e-01, 9.173417e-01, 9.287205e-01, 9.204500e-01, 9.608003e-01,
                                                 9.174807e-01, 8.801884e-01, 8.924967e-01, 9.579492e-01, 9.109407e-01,
                                                 9.262408e-01, 9.322830e-01, 8.302947e-01, 8.285671e-01, 8.706637e-01,
                                                 1.027736e+00, 8.104677e-01, 1.039419e+00, 8.388641e-01, 8.775085e-01,
                                                 8.320053e-01, 7.137106e-01, 9.052405e-01],
}

ratio0_yerrs = {
                                       'Data' : [
                                                   [6.066972e-02, 5.599751e-02, 5.122481e-02, 5.097373e-02, 4.994193e-02,
                                                    4.926352e-02, 4.953030e-02, 5.103034e-02, 5.382951e-02, 5.457683e-02,
                                                    5.567842e-02, 5.827145e-02, 6.021710e-02, 6.197362e-02, 6.419815e-02,
                                                    6.829573e-02, 7.374475e-02, 7.826372e-02, 8.290572e-02, 8.883847e-02,
                                                    9.872451e-02, 1.115260e-01, 1.300320e-01, 1.549855e-01, 1.938119e-01,
                                                    2.439155e-01, 3.286939e-01, 4.462750e-01],
                                                   [5.782987e-02, 5.591925e-02, 5.448262e-02, 5.274694e-02, 5.047147e-02,
                                                    4.996606e-02, 5.106137e-02, 5.167314e-02, 5.332626e-02, 5.549583e-02,
                                                    5.751401e-02, 5.892448e-02, 6.048045e-02, 6.294554e-02, 6.582815e-02,
                                                    6.866299e-02, 7.213642e-02, 7.620018e-02, 8.135865e-02, 8.709565e-02,
                                                    9.627653e-02, 1.089755e-01, 1.275241e-01, 1.515881e-01, 1.892549e-01,
                                                    2.388514e-01, 3.243046e-01, 4.257830e-01],
                                                ],
       'Analysis_CSS_FragNone_UENone.yoda.gz' : [
                                                   [1.879372e-02, 1.973780e-02, 1.857112e-02, 2.358047e-02, 2.301160e-02,
                                                    2.377474e-02, 2.484717e-02, 2.836571e-02, 3.118039e-02, 3.571974e-02,
                                                    3.027148e-02, 3.613129e-02, 3.666833e-02, 4.055301e-02, 4.569176e-02,
                                                    4.747088e-02, 5.928054e-02, 5.477172e-02, 6.163090e-02, 8.490869e-02,
                                                    8.542642e-02, 9.892293e-02, 1.351150e-01, 1.597079e-01, 1.833272e-01,
                                                    1.521272e-01, 1.724173e-01, 2.140211e-01],
                                                   [1.879372e-02, 1.973780e-02, 1.857112e-02, 2.358047e-02, 2.301160e-02,
                                                    2.377474e-02, 2.484717e-02, 2.836571e-02, 3.118039e-02, 3.571974e-02,
                                                    3.027148e-02, 3.613129e-02, 3.666833e-02, 4.055301e-02, 4.569176e-02,
                                                    4.747088e-02, 5.928054e-02, 5.477172e-02, 6.163090e-02, 8.490869e-02,
                                                    8.542642e-02, 9.892293e-02, 1.351150e-01, 1.597079e-01, 1.833272e-01,
                                                    1.521272e-01, 1.724173e-01, 2.140211e-01],
                                                ],
    'Analysis_Alaric_FragNone_UENone.yoda.gz' : [
                                                   [1.725063e-02, 1.674875e-02, 1.902346e-02, 1.989978e-02, 2.176791e-02,
                                                    2.495226e-02, 2.700604e-02, 2.634790e-02, 2.881575e-02, 3.141996e-02,
                                                    3.174336e-02, 3.273647e-02, 3.454964e-02, 4.334304e-02, 4.331724e-02,
                                                    4.552188e-02, 5.724941e-02, 5.018933e-02, 5.565752e-02, 6.948753e-02,
                                                    1.043543e-01, 9.346439e-02, 1.371573e-01, 1.164695e-01, 1.411051e-01,
                                                    1.678949e-01, 1.993067e-01, 2.120455e-01],
                                                   [1.725063e-02, 1.674875e-02, 1.902346e-02, 1.989978e-02, 2.176791e-02,
                                                    2.495226e-02, 2.700604e-02, 2.634790e-02, 2.881575e-02, 3.141996e-02,
                                                    3.174336e-02, 3.273647e-02, 3.454964e-02, 4.334304e-02, 4.331724e-02,
                                                    4.552188e-02, 5.724941e-02, 5.018933e-02, 5.565752e-02, 6.948753e-02,
                                                    1.043543e-01, 9.346439e-02, 1.371573e-01, 1.164695e-01, 1.411051e-01,
                                                    1.678949e-01, 1.993067e-01, 2.120455e-01],
                                                ],
}

ratio0_variation_vals = {
}

ratio_band_edges = {
}
