def _get_model_norm_disp(model, meas, key):
    col = key[1:]
    beta = "BET" + key[-1]
    with log_pandas_settings_with_copy(LOG.debug):
        meas.loc[:, 'MODEL'] = (
            model.loc[meas.index.values, col].values /
            np.sqrt(model.loc[meas.index.values, beta].values))
        meas.loc[:, 'DIFF'] = meas['VALUE'] - meas['MODEL']
    return meas
def _get_model_tunes(model, meas, key):
    # We want just fractional tunes
    with log_pandas_settings_with_copy(LOG.debug):
        meas.loc[:, 'MODEL'] = np.remainder([model['Q1'], model['Q2']], [1, 1])
        meas.loc[:, 'DIFF'] = meas['VALUE'] - meas['MODEL']
    return meas
def _get_model_betabeat(model, meas, key):
    col = "BETX" if key == "BBX" else "BETY"
    with log_pandas_settings_with_copy(LOG.debug):
        meas.loc[:, 'MODEL'] = model.loc[meas.index.values, col].values
        meas.loc[:, 'DIFF'] = (meas['VALUE'] - meas['MODEL']) / meas['MODEL']
    return meas
def _get_model_phases(model, meas, key):
    with log_pandas_settings_with_copy(LOG.debug):
        meas.loc[:, 'MODEL'] = (model.loc[meas['NAME2'].values, key].values -
                             model.loc[meas.index.values, key].values)
        meas.loc[:, 'DIFF'] = meas['VALUE'] - meas['MODEL']
    return meas
def _get_model_generic(model, meas, key):
    with log_pandas_settings_with_copy(LOG.debug):
        meas.loc[:, 'MODEL'] = model.loc[meas.index.values, key].values
        meas.loc[:, 'DIFF'] = meas['VALUE'] - meas['MODEL']
    return meas