О goNum
goNum — это полностью основанная на языке Go открытая библиотека числовых алгоритмов, которую можно использовать так же, как и другие функции Go для выполнения числовых операций.
Из-за ограниченного времени автора в настоящее время функциональность всё ещё находится в стадии разработки, а алгоритмы постоянно добавляются. Большинство алгоритмов прошли типичные тесты состояния, но не гарантируется, что все алгоритмы безопасны и надёжны во всех состояниях. Кроме того, следует отметить, что эта библиотека алгоритмов предназначена для решения проблем, а не для реализации определённых возможностей языка, хотя автор прилагает усилия, чтобы особенности Go были полностью реализованы в ней. Если вам нравится работа автора, пожалуйста, следите за обновлениями goNum; если у вас есть предложения по работе автора, вы можете связаться с ним по электронной почте: chengfengcool@sina.com. Или, если вы хотите поддержать работу над goNum, вы также можете связаться с автором по электронной почте.
Приглашаем заинтересованных присоединиться к разработке.
Также автор надеется, что больше людей будут использовать этот код, поэтому, несмотря на то, что используется лицензия GPL v3.0, любой может свободно и бесплатно использовать этот код или фрагменты кода, оставив уведомление об авторстве (это предложение действительно только для граждан Китая или организаций, в которых граждане Китая занимают более двух третей решающих голосов; остальные должны полностью соблюдать лицензию GPL v3.0).
Среда установки
Linux или Windows:
Способ установки
go get gitee.com/chfenger/goNum
О наименовании
Основная идея дизайна
Алгоритмы (продолжение следует...)
Основные математические операции:
Структуры данных:
Матрицы:
Решение общих уравнений:
Интерполяция:
Численное интегрирование:
Решение систем линейных уравнений: — метод наименьших квадратов для решения противоречивых систем уравнений; — итеративный метод для решения строго диагонально доминирующих трёхдиагональных систем уравнений с коэффициентами; — исключение Гаусса для решения систем линейных уравнений; — итерационный метод Якоби для решения системы линейных уравнений n-порядка; — итерационный метод Зейделя для решения системы линейных уравнений n-порядка;
— Решение систем нелинейных уравнений: — многомерный метод Зейделя для решения систем нелинейных уравнений;
— Подбор данных: — полиномиальная аппроксимация; — линейная аппроксимация методом наименьших квадратов; — подгонка контрольных точек кривой Безье; — тригонометрическая аппроксимация многочленами Фурье;
— Оценка ошибок: — максимальная ошибка; — средняя ошибка; — среднеквадратичная ошибка;
— Оптимизация: — золотое сечение для поиска минимума одномерной функции с одним переменным; — поиск минимума одномерной функции с одним переменным методом Фибоначчи; — симплексный метод поиска минимума функции многих переменных;
— Обыкновенные дифференциальные уравнения: — четырёхшаговый метод Адамса (ODE); — трёхшаговый метод Адамса для внутренних формул (ODE); — метод Эйлера (ODE); — коррекция метода Эйлера (ODE); — трапециевидный метод (ODE); — двухуровневый двухэтапный метод Рунге-Кутта; — четырёхуровневый четырёхэтапный метод Рунге-Кутта; — четырёхэтапный метод Рунге-Кутты-Фельберга с переменным шагом; — метод Хейна; — комбинированный метод Адамса-Башфорта-Мултона с коррекцией; — комбинированный метод Милна-Симпсона с коррекцией; — комбинированный метод Хэмминга с коррекцией; — разностный метод;
— Уравнения в частных производных: — уравнение в частных производных гиперболического типа с разделением переменных (первый формат разделения); — уравнение в частных производных гиперболического типа с разделением переменных (второй формат разделения); — уравнение в частных производных параболического типа (явный формат); — уравнение в частных производных параболического типа (неявный формат); — уравнение в частных производных параболического типа (шеститочечный симметричный формат); — уравнение Лапласа в частных производных эллиптического типа (пятиточечный формат); — уравнение Пуассона в частных производных эллиптического типа (пятиточечный формат); — уравнение Гельмгольца в частных производных эллиптического типа (пятиточечный формат);
— Сортировка: — пузырьковая сортировка; — сортировка выбором; — вставка сортировки; — пирамидальная сортировка (сортировка Шелла); — быстрая сортировка; — сортировка кучей; — подсчёт сортировки; — корзинная сортировка; — поразрядная сортировка.
Автор: Чэн Фэн. Все права защищены. goNum является открытым исходным кодом, который вы можете публиковать или изменять в соответствии с вашими потребностями, но это должно быть сделано под лицензией GNU GPL (General Public License) версии 3.0 или более поздней версии. Содержание этой лицензии подробно описано в файле LICENSE в корневом каталоге или на веб-сайте http://www.gnu.org/licenses/. Чэн Фэн, авторское право принадлежит ему, 2018 г.
Благодарности: 00. Большое спасибо семье и друзьям за поддержку и понимание, благодаря которым я отказался от многих хобби.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )