
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.235000e+02, 1.430000e+02, 1.635000e+02, 1.850000e+02, 2.080000e+02,
                                                 2.325000e+02, 2.585000e+02, 2.860000e+02, 3.150000e+02, 3.460000e+02,
                                                 3.785000e+02, 4.125000e+02, 4.490000e+02, 4.875000e+02, 5.275000e+02,
                                                 5.700000e+02, 6.150000e+02, 6.620000e+02, 7.115000e+02, 7.635000e+02,
                                                 8.180000e+02, 8.755000e+02, 9.360000e+02, 9.995000e+02, 1.066500e+03,
                                                 1.136500e+03, 1.210000e+03, 1.287500e+03, 1.368500e+03],
       'Analysis_CSS_FragNone_UENone.yoda.gz' : [1.235000e+02, 1.430000e+02, 1.635000e+02, 1.850000e+02, 2.080000e+02,
                                                 2.325000e+02, 2.585000e+02, 2.860000e+02, 3.150000e+02, 3.460000e+02,
                                                 3.785000e+02, 4.125000e+02, 4.490000e+02, 4.875000e+02, 5.275000e+02,
                                                 5.700000e+02, 6.150000e+02, 6.620000e+02, 7.115000e+02, 7.635000e+02,
                                                 8.180000e+02, 8.755000e+02, 9.360000e+02, 9.995000e+02, 1.066500e+03,
                                                 1.136500e+03, 1.210000e+03, 1.287500e+03, 1.368500e+03],
    'Analysis_Alaric_FragNone_UENone.yoda.gz' : [1.235000e+02, 1.430000e+02, 1.635000e+02, 1.850000e+02, 2.080000e+02,
                                                 2.325000e+02, 2.585000e+02, 2.860000e+02, 3.150000e+02, 3.460000e+02,
                                                 3.785000e+02, 4.125000e+02, 4.490000e+02, 4.875000e+02, 5.275000e+02,
                                                 5.700000e+02, 6.150000e+02, 6.620000e+02, 7.115000e+02, 7.635000e+02,
                                                 8.180000e+02, 8.755000e+02, 9.360000e+02, 9.995000e+02, 1.066500e+03,
                                                 1.136500e+03, 1.210000e+03, 1.287500e+03, 1.368500e+03],
}

xedges = {
                                       'Data' : [1.140000e+02, 1.330000e+02, 1.530000e+02, 1.740000e+02, 1.960000e+02,
                                                 2.200000e+02, 2.450000e+02, 2.720000e+02, 3.000000e+02, 3.300000e+02,
                                                 3.620000e+02, 3.950000e+02, 4.300000e+02, 4.680000e+02, 5.070000e+02,
                                                 5.480000e+02, 5.920000e+02, 6.380000e+02, 6.860000e+02, 7.370000e+02,
                                                 7.900000e+02, 8.460000e+02, 9.050000e+02, 9.670000e+02, 1.032000e+03,
                                                 1.101000e+03, 1.172000e+03, 1.248000e+03, 1.327000e+03, 1.410000e+03],
       'Analysis_CSS_FragNone_UENone.yoda.gz' : [1.140000e+02, 1.330000e+02, 1.530000e+02, 1.740000e+02, 1.960000e+02,
                                                 2.200000e+02, 2.450000e+02, 2.720000e+02, 3.000000e+02, 3.300000e+02,
                                                 3.620000e+02, 3.950000e+02, 4.300000e+02, 4.680000e+02, 5.070000e+02,
                                                 5.480000e+02, 5.920000e+02, 6.380000e+02, 6.860000e+02, 7.370000e+02,
                                                 7.900000e+02, 8.460000e+02, 9.050000e+02, 9.670000e+02, 1.032000e+03,
                                                 1.101000e+03, 1.172000e+03, 1.248000e+03, 1.327000e+03, 1.410000e+03],
    'Analysis_Alaric_FragNone_UENone.yoda.gz' : [1.140000e+02, 1.330000e+02, 1.530000e+02, 1.740000e+02, 1.960000e+02,
                                                 2.200000e+02, 2.450000e+02, 2.720000e+02, 3.000000e+02, 3.300000e+02,
                                                 3.620000e+02, 3.950000e+02, 4.300000e+02, 4.680000e+02, 5.070000e+02,
                                                 5.480000e+02, 5.920000e+02, 6.380000e+02, 6.860000e+02, 7.370000e+02,
                                                 7.900000e+02, 8.460000e+02, 9.050000e+02, 9.670000e+02, 1.032000e+03,
                                                 1.101000e+03, 1.172000e+03, 1.248000e+03, 1.327000e+03, 1.410000e+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' : [4.653990e+03, 2.445520e+03, 1.260360e+03, 6.118200e+02, 3.615500e+02,
                                                 2.003160e+02, 1.089090e+02, 5.737130e+01, 3.338280e+01, 2.179430e+01,
                                                 1.327040e+01, 7.367880e+00, 4.460130e+00, 2.896840e+00, 1.765870e+00,
                                                 1.115790e+00, 7.069310e-01, 4.035860e-01, 2.383070e-01, 1.513890e-01,
                                                 9.454940e-02, 5.514910e-02, 3.356390e-02, 2.280690e-02, 1.637020e-02,
                                                 9.982800e-03, 5.072370e-03, 2.470520e-03, 1.654250e-03],
       'Analysis_CSS_FragNone_UENone.yoda.gz' : [5.693661e+03, 2.602444e+03, 1.249593e+03, 7.004896e+02, 3.543386e+02,
                                                 1.900157e+02, 1.106194e+02, 6.267278e+01, 3.690374e+01, 2.191614e+01,
                                                 1.295566e+01, 7.688455e+00, 4.725757e+00, 3.026493e+00, 1.781228e+00,
                                                 1.063622e+00, 7.415896e-01, 4.162723e-01, 2.451580e-01, 1.711074e-01,
                                                 9.191700e-02, 6.192344e-02, 4.330089e-02, 3.000754e-02, 1.463322e-02,
                                                 9.423480e-03, 4.674522e-03, 2.349857e-03, 1.569936e-03],
    'Analysis_Alaric_FragNone_UENone.yoda.gz' : [5.200709e+03, 2.484430e+03, 1.296964e+03, 6.266458e+02, 3.564025e+02,
                                                 1.806188e+02, 1.068935e+02, 6.057442e+01, 3.492113e+01, 1.989715e+01,
                                                 1.271572e+01, 7.150148e+00, 4.918505e+00, 2.572654e+00, 1.897537e+00,
                                                 1.010424e+00, 6.169522e-01, 4.439118e-01, 2.503393e-01, 1.843077e-01,
                                                 9.331421e-02, 5.846925e-02, 3.384249e-02, 2.276727e-02, 1.098848e-02,
                                                 7.739842e-03, 4.100745e-03, 2.234274e-03, 2.419832e-03],
}

xerrs = {
                                       'Data' : [
                                                   [9.500000e+00, 1.000000e+01, 1.050000e+01, 1.100000e+01, 1.200000e+01,
                                                    1.250000e+01, 1.350000e+01, 1.400000e+01, 1.500000e+01, 1.600000e+01,
                                                    1.650000e+01, 1.750000e+01, 1.900000e+01, 1.950000e+01, 2.050000e+01,
                                                    2.200000e+01, 2.300000e+01, 2.400000e+01, 2.550000e+01, 2.650000e+01,
                                                    2.800000e+01, 2.950000e+01, 3.100000e+01, 3.250000e+01, 3.450000e+01,
                                                    3.550000e+01, 3.800000e+01, 3.950000e+01, 4.150000e+01],
                                                   [9.500000e+00, 1.000000e+01, 1.050000e+01, 1.100000e+01, 1.200000e+01,
                                                    1.250000e+01, 1.350000e+01, 1.400000e+01, 1.500000e+01, 1.600000e+01,
                                                    1.650000e+01, 1.750000e+01, 1.900000e+01, 1.950000e+01, 2.050000e+01,
                                                    2.200000e+01, 2.300000e+01, 2.400000e+01, 2.550000e+01, 2.650000e+01,
                                                    2.800000e+01, 2.950000e+01, 3.100000e+01, 3.250000e+01, 3.450000e+01,
                                                    3.550000e+01, 3.800000e+01, 3.950000e+01, 4.150000e+01],
                                                ],
       'Analysis_CSS_FragNone_UENone.yoda.gz' : [
                                                   [9.500000e+00, 1.000000e+01, 1.050000e+01, 1.100000e+01, 1.200000e+01,
                                                    1.250000e+01, 1.350000e+01, 1.400000e+01, 1.500000e+01, 1.600000e+01,
                                                    1.650000e+01, 1.750000e+01, 1.900000e+01, 1.950000e+01, 2.050000e+01,
                                                    2.200000e+01, 2.300000e+01, 2.400000e+01, 2.550000e+01, 2.650000e+01,
                                                    2.800000e+01, 2.950000e+01, 3.100000e+01, 3.250000e+01, 3.450000e+01,
                                                    3.550000e+01, 3.800000e+01, 3.950000e+01, 4.150000e+01],
                                                   [9.500000e+00, 1.000000e+01, 1.050000e+01, 1.100000e+01, 1.200000e+01,
                                                    1.250000e+01, 1.350000e+01, 1.400000e+01, 1.500000e+01, 1.600000e+01,
                                                    1.650000e+01, 1.750000e+01, 1.900000e+01, 1.950000e+01, 2.050000e+01,
                                                    2.200000e+01, 2.300000e+01, 2.400000e+01, 2.550000e+01, 2.650000e+01,
                                                    2.800000e+01, 2.950000e+01, 3.100000e+01, 3.250000e+01, 3.450000e+01,
                                                    3.550000e+01, 3.800000e+01, 3.950000e+01, 4.150000e+01],
                                                ],
    'Analysis_Alaric_FragNone_UENone.yoda.gz' : [
                                                   [9.500000e+00, 1.000000e+01, 1.050000e+01, 1.100000e+01, 1.200000e+01,
                                                    1.250000e+01, 1.350000e+01, 1.400000e+01, 1.500000e+01, 1.600000e+01,
                                                    1.650000e+01, 1.750000e+01, 1.900000e+01, 1.950000e+01, 2.050000e+01,
                                                    2.200000e+01, 2.300000e+01, 2.400000e+01, 2.550000e+01, 2.650000e+01,
                                                    2.800000e+01, 2.950000e+01, 3.100000e+01, 3.250000e+01, 3.450000e+01,
                                                    3.550000e+01, 3.800000e+01, 3.950000e+01, 4.150000e+01],
                                                   [9.500000e+00, 1.000000e+01, 1.050000e+01, 1.100000e+01, 1.200000e+01,
                                                    1.250000e+01, 1.350000e+01, 1.400000e+01, 1.500000e+01, 1.600000e+01,
                                                    1.650000e+01, 1.750000e+01, 1.900000e+01, 1.950000e+01, 2.050000e+01,
                                                    2.200000e+01, 2.300000e+01, 2.400000e+01, 2.550000e+01, 2.650000e+01,
                                                    2.800000e+01, 2.950000e+01, 3.100000e+01, 3.250000e+01, 3.450000e+01,
                                                    3.550000e+01, 3.800000e+01, 3.950000e+01, 4.150000e+01],
                                                ],
}

yerrs = {
                                       'Data' : [
                                                   [7.205767e+02, 2.695689e+02, 1.666815e+02, 8.928201e+01, 6.199503e+01,
                                                    2.151393e+01, 1.275462e+01, 6.731063e+00, 3.141371e+00, 2.090878e+00,
                                                    1.306371e+00, 7.555029e-01, 4.405146e-01, 3.084503e-01, 1.800176e-01,
                                                    1.194576e-01, 7.882496e-02, 4.366026e-02, 2.675140e-02, 1.752519e-02,
                                                    1.151749e-02, 7.173953e-03, 4.732860e-03, 3.454590e-03, 2.679956e-03,
                                                    1.837275e-03, 1.141276e-03, 7.022405e-04, 5.398296e-04],
                                                   [7.205767e+02, 2.695689e+02, 1.666815e+02, 8.928201e+01, 6.199503e+01,
                                                    2.151393e+01, 1.275462e+01, 6.731063e+00, 3.141371e+00, 2.090878e+00,
                                                    1.306371e+00, 7.555029e-01, 4.405146e-01, 3.084503e-01, 1.800176e-01,
                                                    1.194576e-01, 7.882496e-02, 4.366026e-02, 2.675140e-02, 1.752519e-02,
                                                    1.151749e-02, 7.173953e-03, 4.732860e-03, 3.454590e-03, 2.679956e-03,
                                                    1.837275e-03, 1.141276e-03, 7.022405e-04, 5.398296e-04],
                                                ],
       'Analysis_CSS_FragNone_UENone.yoda.gz' : [
                                                   [1.545384e+02, 7.107580e+01, 3.316616e+01, 3.243035e+01, 9.763544e+00,
                                                    6.095017e+00, 3.421403e+00, 2.024204e+00, 1.241444e+00, 8.241996e-01,
                                                    4.657706e-01, 3.044137e-01, 2.385070e-01, 1.375988e-01, 9.978327e-02,
                                                    5.080241e-02, 4.294368e-02, 2.562215e-02, 1.513739e-02, 1.725517e-02,
                                                    6.787760e-03, 5.138599e-03, 3.782056e-03, 5.106001e-03, 1.686771e-03,
                                                    1.121208e-03, 7.056527e-04, 3.406634e-04, 2.738065e-04],
                                                   [1.545384e+02, 7.107580e+01, 3.316616e+01, 3.243035e+01, 9.763544e+00,
                                                    6.095017e+00, 3.421403e+00, 2.024204e+00, 1.241444e+00, 8.241996e-01,
                                                    4.657706e-01, 3.044137e-01, 2.385070e-01, 1.375988e-01, 9.978327e-02,
                                                    5.080241e-02, 4.294368e-02, 2.562215e-02, 1.513739e-02, 1.725517e-02,
                                                    6.787760e-03, 5.138599e-03, 3.782056e-03, 5.106001e-03, 1.686771e-03,
                                                    1.121208e-03, 7.056527e-04, 3.406634e-04, 2.738065e-04],
                                                ],
    'Analysis_Alaric_FragNone_UENone.yoda.gz' : [
                                                   [1.141453e+02, 5.652359e+01, 3.358011e+01, 1.599365e+01, 1.025653e+01,
                                                    5.272940e+00, 3.071415e+00, 1.992999e+00, 1.295566e+00, 7.269799e-01,
                                                    5.401968e-01, 3.003014e-01, 3.181574e-01, 1.224037e-01, 1.084262e-01,
                                                    5.063246e-02, 3.782513e-02, 2.818136e-02, 1.657166e-02, 1.762724e-02,
                                                    7.138891e-03, 6.286204e-03, 3.050965e-03, 2.709907e-03, 1.318001e-03,
                                                    9.169514e-04, 4.962647e-04, 3.924102e-04, 6.787127e-04],
                                                   [1.141453e+02, 5.652359e+01, 3.358011e+01, 1.599365e+01, 1.025653e+01,
                                                    5.272940e+00, 3.071415e+00, 1.992999e+00, 1.295566e+00, 7.269799e-01,
                                                    5.401968e-01, 3.003014e-01, 3.181574e-01, 1.224037e-01, 1.084262e-01,
                                                    5.063246e-02, 3.782513e-02, 2.818136e-02, 1.657166e-02, 1.762724e-02,
                                                    7.138891e-03, 6.286204e-03, 3.050965e-03, 2.709907e-03, 1.318001e-03,
                                                    9.169514e-04, 4.962647e-04, 3.924102e-04, 6.787127e-04],
                                                ],
}

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, 1.000000e+00],
       'Analysis_CSS_FragNone_UENone.yoda.gz' : [1.223393e+00, 1.064168e+00, 9.914572e-01, 1.144928e+00, 9.800542e-01,
                                                 9.485797e-01, 1.015705e+00, 1.092406e+00, 1.105472e+00, 1.005590e+00,
                                                 9.762826e-01, 1.043510e+00, 1.059556e+00, 1.044757e+00, 1.008697e+00,
                                                 9.532457e-01, 1.049027e+00, 1.031434e+00, 1.028749e+00, 1.130250e+00,
                                                 9.721585e-01, 1.122837e+00, 1.290103e+00, 1.315722e+00, 8.938938e-01,
                                                 9.439716e-01, 9.215657e-01, 9.511589e-01, 9.490319e-01],
    'Analysis_Alaric_FragNone_UENone.yoda.gz' : [1.117473e+00, 1.015911e+00, 1.029042e+00, 1.024232e+00, 9.857627e-01,
                                                 9.016694e-01, 9.814937e-01, 1.055831e+00, 1.046082e+00, 9.129520e-01,
                                                 9.582017e-01, 9.704485e-01, 1.102772e+00, 8.880898e-01, 1.074562e+00,
                                                 9.055683e-01, 8.727191e-01, 1.099919e+00, 1.050491e+00, 1.217444e+00,
                                                 9.869360e-01, 1.060203e+00, 1.008300e+00, 9.982624e-01, 6.712490e-01,
                                                 7.753177e-01, 8.084475e-01, 9.043740e-01, 1.462797e+00],
}

ratio0_yerrs = {
                                       'Data' : [
                                                   [1.548299e-01, 1.102297e-01, 1.322491e-01, 1.459286e-01, 1.714701e-01,
                                                    1.074000e-01, 1.171126e-01, 1.173246e-01, 9.410148e-02, 9.593692e-02,
                                                    9.844247e-02, 1.025401e-01, 9.876721e-02, 1.064782e-01, 1.019427e-01,
                                                    1.070610e-01, 1.115030e-01, 1.081808e-01, 1.122560e-01, 1.157626e-01,
                                                    1.218145e-01, 1.300829e-01, 1.410104e-01, 1.514713e-01, 1.637094e-01,
                                                    1.840441e-01, 2.249986e-01, 2.842481e-01, 3.263289e-01],
                                                   [1.548299e-01, 1.102297e-01, 1.322491e-01, 1.459286e-01, 1.714701e-01,
                                                    1.074000e-01, 1.171126e-01, 1.173246e-01, 9.410148e-02, 9.593692e-02,
                                                    9.844247e-02, 1.025401e-01, 9.876721e-02, 1.064782e-01, 1.019427e-01,
                                                    1.070610e-01, 1.115030e-01, 1.081808e-01, 1.122560e-01, 1.157626e-01,
                                                    1.218145e-01, 1.300829e-01, 1.410104e-01, 1.514713e-01, 1.637094e-01,
                                                    1.840441e-01, 2.249986e-01, 2.842481e-01, 3.263289e-01],
                                                ],
       'Analysis_CSS_FragNone_UENone.yoda.gz' : [
                                                   [3.320557e-02, 2.906368e-02, 2.631483e-02, 5.300636e-02, 2.700469e-02,
                                                    3.042701e-02, 3.141525e-02, 3.528252e-02, 3.718813e-02, 3.781721e-02,
                                                    3.509846e-02, 4.131632e-02, 5.347535e-02, 4.749962e-02, 5.650658e-02,
                                                    4.553044e-02, 6.074664e-02, 6.348622e-02, 6.352054e-02, 1.139790e-01,
                                                    7.179062e-02, 9.317648e-02, 1.126823e-01, 2.238797e-01, 1.030391e-01,
                                                    1.123140e-01, 1.391170e-01, 1.378914e-01, 1.655170e-01],
                                                   [3.320557e-02, 2.906368e-02, 2.631483e-02, 5.300636e-02, 2.700469e-02,
                                                    3.042701e-02, 3.141525e-02, 3.528252e-02, 3.718813e-02, 3.781721e-02,
                                                    3.509846e-02, 4.131632e-02, 5.347535e-02, 4.749962e-02, 5.650658e-02,
                                                    4.553044e-02, 6.074664e-02, 6.348622e-02, 6.352054e-02, 1.139790e-01,
                                                    7.179062e-02, 9.317648e-02, 1.126823e-01, 2.238797e-01, 1.030391e-01,
                                                    1.123140e-01, 1.391170e-01, 1.378914e-01, 1.655170e-01],
                                                ],
    'Analysis_Alaric_FragNone_UENone.yoda.gz' : [
                                                   [2.452633e-02, 2.311312e-02, 2.664327e-02, 2.614110e-02, 2.836822e-02,
                                                    2.632311e-02, 2.820166e-02, 3.473861e-02, 3.880939e-02, 3.335642e-02,
                                                    4.070690e-02, 4.075818e-02, 7.133366e-02, 4.225421e-02, 6.140101e-02,
                                                    4.537813e-02, 5.350611e-02, 6.982740e-02, 6.953912e-02, 1.164367e-01,
                                                    7.550435e-02, 1.139856e-01, 9.090019e-02, 1.188196e-01, 8.051221e-02,
                                                    9.185313e-02, 9.783685e-02, 1.588371e-01, 4.102842e-01],
                                                   [2.452633e-02, 2.311312e-02, 2.664327e-02, 2.614110e-02, 2.836822e-02,
                                                    2.632311e-02, 2.820166e-02, 3.473861e-02, 3.880939e-02, 3.335642e-02,
                                                    4.070690e-02, 4.075818e-02, 7.133366e-02, 4.225421e-02, 6.140101e-02,
                                                    4.537813e-02, 5.350611e-02, 6.982740e-02, 6.953912e-02, 1.164367e-01,
                                                    7.550435e-02, 1.139856e-01, 9.090019e-02, 1.188196e-01, 8.051221e-02,
                                                    9.185313e-02, 9.783685e-02, 1.588371e-01, 4.102842e-01],
                                                ],
}

ratio0_variation_vals = {
}

ratio_band_edges = {
}
