Не возможно. Чтобы упорядочить по вычисленным значениям, предварительно вычислите значения и сохраните их в поле. Предварительное вычисление значений даст дополнительное преимущество гораздо более эффективного и отзывчивого поиска.
Имейте в виду, что DQL отображается на SQL. Чтобы выполнить то, что вы просите, DQL должен будет извлечь каждую соответствующую запись из всей таблицы, объединить их в объекты сущности, запустить ваши функции и затем отсортировать в памяти (или повторно выполнить запрос). Это хорошая идея, но она просто не сработает.
Если вам не нравится идея предварительного вычисления значений, для большинства из этих вычислений вы, вероятно, могли бы также рассчитать их встроенными в порядке DQL - т.е. по разнице между двумя значениями поля. Важным моментом является то, что он должен быть встроенным в DQL, а не вызывать вычислительную функцию для объекта сущности.