Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.64/64: Рейтинг темы: голосов - 64, средняя оценка - 4.64
5 / 6 / 4
Регистрация: 18.11.2009
Сообщений: 661

Работа с alglib

03.11.2011, 22:53. Показов 13503. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте. Пытаюсь начать работу с библиотекой alglib.
Из поверхностного знакомства понял, что никаких настроек проекта на библиотеку не надо
просто кидаешь в папку проекта основной хэдер linalg.h и связанные с ним хэдеры
ap.h, alglibmisc.h,alglibinternal.h
Первым делом попытался объявить библиотечный тип alglib::real_1d_array
Добился только включив ap.cpp в состав проекта
Далее проблема - не нашел готовых примеров работы с библиотекой
В частности, есть типы alglib::real_1d_array и alglib::real_2d_array
а как например задать размеры вектора и матрицы?
Основная цель - попробовать вызвать программу расчета собственных частот и значений smatrixevd из субпакеджа eig.
Не хватает примеров - что- то у нее хреново с документацией в отличие скажем от IMSL
Может кто примером кода поделится

Добавлено через 40 минут
как работать с массивами типов real_1d, real_2d ? если объявить
C++
1
2
const int n=3;
alglib::real_2d_array A[n][n];   alglib::real_2d_array Z[n];
то это проходит, но как инициализировать массивы?
Инициализация по обращению по индексам типа
A[0][0]=1; A[0][1]=1; A[0][2]=0; не проходит.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
03.11.2011, 22:53
Ответы с готовыми решениями:

Работа с библиотекой AlgLib
Всем доброе время суток. Подскажите пожалуйста, можно ли использовать библиотеку ALGLIB в C++Builder 6 ? а то при компиляции...

Alglib C++ Qt
Пытаюсь запустить простой пример по мануалу с официального сайта http://www.alglib.net/translator/man/manual.cpp.html#example_nn_cls2 ...

ALGLIB. Интерполяция.
Здравствуйте! Необходимо проинтерполировать массив. Для такого дела подключил библиотеку ALGLIB. Я рассматриваю вариант...

4
 Аватар для alkagolik
1599 / 622 / 113
Регистрация: 15.07.2011
Сообщений: 3,548
04.11.2011, 00:17
C++
1
2
3
4
alglib::real_2d_array r2("[[2,3],[3,4]]");
alglib::real_2d_array r2_1("[[]]");
alglib::real_2d_array r2_2(r2);
r2_1 = r2;
Добавлено через 17 минут
eugrita, чем boost не устраивает? по крайней мере на офсайте я не нашел даже лицензии, в то время как в вашем варианте условия GPL тыкают на всех документах.
0
5 / 6 / 4
Регистрация: 18.11.2009
Сообщений: 661
05.11.2011, 01:44  [ТС]
lда пытался как-то boost настроить - не пошла.
Собственно с alglib вроде разобрался.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
int n=3;
alglib::real_2d_array A,V;
alglib::real_1d_array Lm;//Lm -собств знач, V - собств векторы
alglib::real_1d_array a,b;//диагонали 3-диаг матрицы
A.setlength(n,n);
V.setlength(n,n);Lm.setlength(n);
A[0][0]=-2; A[0][1]=1; A[0][2]=0;
A[1][1]=-2; A[1][2]=1; A[2][2]=2;
alglib::smatrixevd(A,n,1,1,Lm,V);
for (int j=0;j<n;j++) {
 printf("\nEig=%7.3f V=",Lm[j]);
 for (int i=0;i<n;i++)
   printf("%5.2f ",V[i][j]);
                      }
Но неприятно что пакет сделан так, что для пользования одной программой в проект должен кидать несколько библиотечных *.cpp и *.h
Мне в идеале из всех математич библиотек нужны только 2 проги но хорошего качества:
1)решение СЛАУ с контролем (диагностикой)плохой обусловленности матрицы
2)прогр нахожд собств векторов и значений симметричной и лучше всего 3-диагональной матрицы
(хотя нужны бывают и другие формы)
Если бы у меня были эти пара исходников - проблема была бы закрыта.
Одно время думал переписать с фортрановских SIMQ, NROOT
Потом хотел найти IMSL CNL
Потом пытался (и не довел до конца) подключение к математическим б-кам Matlab6.5 -
там известная проблема - длинные строки в хэдерах и не до конца читаются редактором C++Builder
-начал как рекомендовано делить строки, вроде все сделал - наткнулся на ошибку компилятора
двойное определение. (но это тема отдельного поста)
1
0 / 0 / 0
Регистрация: 06.04.2012
Сообщений: 2
10.12.2013, 12:37
Всем доброго времени суток. Надеюсь, что мой вопрос не останется без ответа и не придется создавать новую тему.
Использую функцию rmatrixsolvels из пакета alglib. Сделал, как и автор темы. Закинул в папку с проектом все хедеры и сишники alglib. Из 13 файлов пришлось подключить 6 для вызова лишь одной функции. exe подрос заметно в размерах, время компиляции увеличилось заметно, ну да ладно, главное цель достигнута. Решается система линейных уравнений с прямоугольной матрицей - число уравнений превышает число неизвестных. Минимизируется невязка. Но чувствую, не хватает точности. В alglib есть возможность работы с арифметикой высокой точности http://alglib.sources.ru/equations/linear.php Но как ее подключить ? Что-то я не соображу... Так все запутано в этом alglib. Использую компилятор MinGW-W64. Буду признателен за любые подсказки.
0
0 / 0 / 0
Регистрация: 12.04.2015
Сообщений: 3
30.07.2018, 09:30
eugrita,
Благодарю вас! Ваш пример очень помог мне.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
30.07.2018, 09:30
Помогаю со студенческими работами здесь

Аппроксимация с alglib
Всем добрый день. Решила поразвлечься с пакетом alglib и попыталась опробовать пример аппроксимации методом Левенберга-Марквардта с...

Установка ALGLIB
Пишу на с# Для диплома необходима работа с матрицами. А именно SVD преобразование. Пытался установить AlGLIB по иструкции с сайта...

Проверка библиотеки alglib
В общем, мне необходимо выполнить проверку библиотеки alglib на C#, чтобы двигаться дальше по курсовой. Предисловие: построил синусоиду,...

ALGLIB собственные векторы
Здравствуйте, может, кто пользовался библиотекой ALGLIB, никак не могу понять, как собственные векторы вывести. Пользуюсь функцией...

Апроксимация spline1dfitpenalized из ALGLIB
Здравствуйте! Необходимо было почистить сигнал аппроксимацией, выбрал spline1dfitpenalized. Всё прогоняется нормуль, вот только ну...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет значение производной при заданном х Логарифм записывается как: (x-2)log(x^2+2) -. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru