def uvc_consistency_metric(x_base, x_sample, data):
    ' Returns the xi_2 consistency metric from de Sousa and Lignos 2019 using the updated Voce-Chaboche model.\n\n    :param np.array x_base: Updated Voce-Chaboche material model parameters from the base case.\n    :param np.array x_sample: Updated Voce-Chaboche material model parameters from the sample case.\n    :param list data: (pd.DataFrame) Stress-strain history for each test considered.\n    :return float: Increase in quadratic approximation from the base to the sample case.\n    '
    x_diff = (x_sample - x_base)
    hess_base = uvc_get_hessian(x_base, data)
    numerator = np.dot(x_diff, hess_base.dot(x_diff))
    denominator = test_total_area(x_base, data)
    return np.sqrt((numerator / denominator))
Returns the xi_2 consistency metric from de Sousa and Lignos 2019 using the updated Voce-Chaboche model.

:param np.array x_base: Updated Voce-Chaboche material model parameters from the base case.
:param np.array x_sample: Updated Voce-Chaboche material model parameters from the sample case.
:param list data: (pd.DataFrame) Stress-strain history for each test considered.
:return float: Increase in quadratic approximation from the base to the sample case.
def uvc_consistency_metric(x_base, x_sample, data):
    ' Returns the xi_2 consistency metric from de Sousa and Lignos 2019 using the updated Voce-Chaboche model.\n\n    :param np.array x_base: Updated Voce-Chaboche material model parameters from the base case.\n    :param np.array x_sample: Updated Voce-Chaboche material model parameters from the sample case.\n    :param list data: (pd.DataFrame) Stress-strain history for each test considered.\n    :return float: Increase in quadratic approximation from the base to the sample case.\n    '
    x_diff = (x_sample - x_base)
    hess_base = uvc_get_hessian(x_base, data)
    numerator = np.dot(x_diff, hess_base.dot(x_diff))
    denominator = test_total_area(x_base, data)
    return np.sqrt((numerator / denominator))