В CGAL видел классы алгебраических чисел (на сколько я понимаю, это сочетание символьных вычислений и интервальных). Так вот там были классы с корнями и не более того. Если мне нужны логарифмы, экспоненты и вообще трансцендентные числа, то не помогут мне алгебраические таких классов? Хотя вряд ли в геометрических приложениях такое встречается.
Я настоял на эпсилон именно потому, что не имею возможности сделать такую цепочку из фильтров. Именно корректность существующего подхода хотел бы "улучшить".
Есть обобщения понятия "диаграмма Вороного". Необходимо лишь определение расстояния до точки. Здесь я рассматривал самое классическое определение, которое оперирует понятиями: плоскость, точки, Евклидова метрика.
Как раз только что прочитал вашу статью. Я не уверен, что для плоского случая быстрее будет делать преобразования стартуя с выпуклой оболочки (проекция с D3 параболоида, потом пересекать серединные перпендикуляры и т.п.).
Так и написал, что "те же самые" сложности, то есть везде логарифмические. Однако позволяют удалять элементы и из середины. Причём удаление по итератору — за константное время.
Не вижу вообще точки, где его можно распараллелить. Ни единой. Если конечно не иметь в арсенале операцию сшивки из алгоритма разделяй и властвуй.
Вы пишете, что дерево является сбалансированным: "у узла либо два сына, либо ноль". Но это лишь говорит о том, что дерево двоичное. Балансировка всё равно необходима.
Может быть сбил с толку порядок. Я имел ввиду if constexpr конструкцию из грядущего C++17, которая уже реализована if constexpr в clang, например. Интересно услышать как (в технических терминах) звучит описание требуемых действий для расширения грамматики поддерживаемой линтером. Просто охота прочувствовать сложность.
Интересует техническая сторона (если это возможно описать без раскрытия ваших know-how, конечно): сильно сложно будет поддержать constexpr if и ConceptsLite?
В CGAL видел классы алгебраических чисел (на сколько я понимаю, это сочетание символьных вычислений и интервальных). Так вот там были классы с корнями и не более того. Если мне нужны логарифмы, экспоненты и вообще трансцендентные числа, то не помогут мне алгебраические таких классов? Хотя вряд ли в геометрических приложениях такое встречается.
Можно все промежуточные результаты сохранять в
volatile double
, кстати.Вы — кладезь полезной информации для меня =). Спасибо.
Я настоял на эпсилон именно потому, что не имею возможности сделать такую цепочку из фильтров. Именно корректность существующего подхода хотел бы "улучшить".
С интересом ознакомлюсь.
То, что будет работать в пространстве любой размерности, звучит привлекательно.
Есть обобщения понятия "диаграмма Вороного". Необходимо лишь определение расстояния до точки. Здесь я рассматривал самое классическое определение, которое оперирует понятиями: плоскость, точки, Евклидова метрика.
Подскажите, как будет корень квадратный влиять на эпсилон?
Как раз только что прочитал вашу статью. Я не уверен, что для плоского случая быстрее будет делать преобразования стартуя с выпуклой оболочки (проекция с D3 параболоида, потом пересекать серединные перпендикуляры и т.п.).
Реализую алгоритм "разделяй и властвуй" — сравню по скорости. Пока нет референтной имплементации на руках.
Удалил ссылку.
Так и написал, что "те же самые" сложности, то есть везде логарифмические. Однако позволяют удалять элементы и из середины. Причём удаление по итератору — за константное время.
Не вижу вообще точки, где его можно распараллелить. Ни единой. Если конечно не иметь в арсенале операцию сшивки из алгоритма разделяй и властвуй.
И вам спасибо за доброе слово.
Вы пишете, что дерево является сбалансированным: "у узла либо два сына, либо ноль". Но это лишь говорит о том, что дерево двоичное. Балансировка всё равно необходима.
А константа где больше — в алгортме Форчуна или в "разделяй и властвуй"?
Может быть сбил с толку порядок. Я имел ввиду
if constexpr
конструкцию из грядущего C++17, которая уже реализована if constexpr в clang, например. Интересно услышать как (в технических терминах) звучит описание требуемых действий для расширения грамматики поддерживаемой линтером. Просто охота прочувствовать сложность.P.S.: А по-моему самое важное всегда — это рабочий пример.