Я оптимизировал функцию exponential
exp. Я проверяю свой вывод на соответствие стандартным математическим функциям exp
.
Res_opt
и Res_std
- это два выхода, которые у меня есть.
Сначала я проверил с абсолютной ошибкой:
Abs_error = abs(Res_opt - Res_std )
Я положил MAX_DEV = 0.500000
(УЧИТЫВАЯ МОЙ АЛГОРИТМ)
и проверив:
if(Abs_error > MAX_DEV){
printf("Error message").
return 0;
}
В некоторых случаях это Abs_error
оказывается больше 0.50000
значение, и мой тестовый пример терпит неудачу (но я чувствовал, что для этого ввода полученный результат в порядке, поскольку это угловой случай).
Поэтому я решил проверить относительную ошибку.
Но мой запрос: должен ли я проверять относительную ошибку или относительную ошибку в процентах с помощью ниже logi c -
ACC_BAND = 0.400000000000000;
double min_acc_range = 1 - ACC_BAND;
double max_acc_range = 1 + ACC_BAND;
Relative_error = abs(Res_opt - Res_std)/Res_std ;
if ((Relative_error < min_acc_range) || (Relative_error > max_acc_range)) {
printf("Error message");
}
OR
Percentage_Relative_error = 1 - (abs(Res_opt - Res_std)/Res_std)*100 ;
if ((Percentage_Relative_error < min_acc_range) || (Percentage_Relative_error > max_acc_range)) {
printf("Error message");
}