Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: dimension: Библиотека математических операций
Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007 Откуда: Berlin
Помог: 707 раз(а)
Приветствую, коллеги,
Решая недавнюю задачу, так сложилось, что попутно было создано много полезного кода, который можно использовать для разных целей и далее. Я решил продолжить разработку получившейся функциональности и она достигла уровня небольшой математической библиотеки.
Сейчас я разделил библиотеку на три части - геометрический функционал, алгебраический функционал и вспомогательные сущности.
Геометрия
В текущей версии содержит только планиметрические преобразования и методы. Сущности, которые сейчас существуют в библиотеке?
* Точка
* Угол
* Отрезок, он же прямая
* Окружность
* Многоугольник
* Множество отрезков
Задачи, которые решаются в этой части:
* Определение принадлежности точки объекту
* Определение точек пересечения двух объектов
* Построение одних сущностей по другим (например, конструирование прямой по отрезку и углу, нахождение многоугольников по набору отрезков и т.п.)
* Параллельный перенос/поворот декартовых координат для сущности
Алгебра
В текущей версии эта часть появилась недавно, главным образом для разрешения эллиптических преобразовании в секции геометрии. Содержит сущности:
* Алгебраический коэффициент
* Многочлен
* Уравнение
Решает задачи:
* Нахождение корней уравнения в вещественных числах
* Нахождение сумм, разностей и произведений алгебраических коэффициентов
* Нахождение сумм, разностей и произведений многочленов
Вспомогательная часть
- на удивление, почти полностью укомплектована моими же функциями, которые я в разное время публиковал на конференции. Здесь содержатся базовые операции для работы с вещественными числами и массивами.
Предполагается, что в дальнейшем появится функционал:
* Решение системы линейных уравнений
* Решение системы квадратных уравнений: под вопросом, так как даже для двух уравнений получается крайне громоздким. Например, результирующее уравнение для коэффициентов A,B,C,D,E,F/P,Q,R,S,T,U общего вида получается как:
- и это относительно только второй переменной
* Эллиптические преобразования на плоскости
* Стереометрия. Пока не ясен круг задач, однако, вероятно, это топологические аналоги задач на плоскости.
Сама библиотека может быть найдена по адресу github[dot]com/almadomundo/dimension - недавно сделан начальный коммит, в настоящий момент я буду вести работы по комментированию достаточно большого объёма кода (пока что комментарии существуют только для алгебраического коэффициента и многочлена).
Если появится интерес или пожелания по функциональности - пишите, пожалуйста, в эту тему.
----- Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.