GNU Scientific Library | это... Что такое GNU Scientific Library? (original) (raw)
GNU Scientific Library
Тип | математическая библиотека |
---|---|
Разработчик | GNU Project |
Написана на | C |
Последняя версия | 1.15 (6 мая 2011) |
Лицензия | GNU General Public License |
Сайт | http://www.gnu.org/software/gsl/ |
GNU Scientific Library (или GSL) это библиотека, написанная на языке программирования C для численных вычислений в прикладной математике и науке. GSL является частью проекта GNU и распространяется на условиях лицензии GPL.
GSL используется, в частности, в таком программном обеспечении как PSPP и Perl Data Language.
Содержание
Пример
Следующая программа вычисляет значение функции Бесселя для 5:
#include <stdio.h> #include <gsl/gsl_sf_bessel.h>
int main(void) { double x = 5.0; double y = gsl_sf_bessel_J0(x); printf("J0(%g) = %.18e\n", x, y); return 0; }
Программа должна быть скомпонована с библиотекой GSL после завершения компиляции:
gcc (gsl−config−−cflags)example.c(gsl-config --cflags) example.c (gsl−config−−cflags)example.c(gsl-config --libs)
Вывод программы:
J0(5) = -1.775967713143382920e-01
Возможности
- Элементарные функции
- Комплексные числа
- Полиномы
- Специальные функции
- Векторы и матрицы
- Перестановки
- Сочетания
- Сортировка
- Линейная алгебра
- Собственные векторы, значения и пространства
- Быстрые преобразования Фурье
- Численное интегрирование
- Генераторы псевдослучайных чисел
- Генераторы квазислучайных чисел
- Распределения вероятностей
- Статистика
- Гистограммы
- Кортежи
- Интегрирование методом Монте-Карло
- Алгоритм имитации отжига
- Обыкновенные дифференциальные уравнения
- Интерполяция
- Численное дифференцирование
- Разложение по полиномам Чебышёва
- Суммирование рядов
- Преобразование Ханкеля
- Поиск корней
- Оптимизация
- Метод наименьших квадратов
- Алгоритм Левенберга — Маркардта
- Физические константы
- Операции с числами с плавающей запятой в формате IEEE
Поддержка C++
GSL может использоваться в классах C++, исключая использование указателей на методы, потому что тип указатель на метод отличается от типа указатель на функцию. Вместо этого должны использоваться указатели на статические функции.
Ссылки
Проект GNU | ||
---|---|---|
История | Манифест GNU • Проект GNU • Фонд свободного программного обеспечения (история) | |
Лицензии | GNU GPL • GNU LGPL • Affero GPL • GNU FDL • GPL linking exception | |
Программноеобеспечение | GNU (варианты) • Hurd • GNOME • Bash • GCC • GNU Emacs • glibc • GNU Coreutils • Autotools • GNUnet • GNUzilla (IceCat) • Gnash • другие пакеты | |
Персоналии | Александре Олива • Бенджамин Хилл • Брэдли Кун • Эбен Моглен • Федерико Хейнц • Джордж Грив • Георг Греве • Джошуа Гэй • Лоис Дечэри • Мэтт Ли • Рикардо Галли • Ричард Столлман • Роберт Часселл • Вильям Джон Салливан | |
Другие темы | Спор об именовании GNU/Linux • Revolution OS • BadVista • Defective by Design |