Форум врачей-аспирантов

Здравствуйте, гость ( Вход | Регистрация )

 
Добавить ответ в эту темуОткрыть тему
> Матричная и линейная алгебра, ПО в помощь исследователям
Игорь
сообщение 15.08.2010 - 14:36
Сообщение #1





Группа: Пользователи
Сообщений: 1114
Регистрация: 10.04.2007
Пользователь №: 4040



Для конструирования статистических алгоритмов может оказаться полезным пакет программ "Математические и инженерные компоненты ME.com". Как и ПО AtteStat, данный пакет бесплатен и доступен для загрузки с сайта AtteStat. Он также работает в Excel всех версий. В его отладке также принимали участие заинтересованные специалисты, благодаря чему точность матричных расчетов неплоха. Доступны полные исходные тексты.

Приведем пример. Дана плохо обусловленная матрица. Найти обратную. Перемножить с исходной. Должна получиться единичная матрица. Первый расчет сделан ME.com. Второй расчет сделан с помощью известной программы Mathematica. Можно сравнить.

Сообщение отредактировал Игорь - 15.08.2010 - 14:42
Прикрепленные файлы
Прикрепленный файл  Mathematica.zip ( 4 килобайт ) Кол-во скачиваний: 344
 


Signature
Ebsignasnan prei wissant Deiws ainat! As gijwans! Sta ast stas arwis!
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
100$
сообщение 21.12.2011 - 20:24
Сообщение #2





Группа: Пользователи
Сообщений: 902
Регистрация: 23.08.2010
Пользователь №: 22694



Цитата(Игорь @ 15.08.2010 - 14:36) *
Для конструирования статистических алгоритмов может оказаться полезным пакет программ "Математические и инженерные компоненты ME.com". Как и ПО AtteStat, данный пакет бесплатен и доступен для загрузки с сайта AtteStat. Он также работает в Excel всех версий. В его отладке также принимали участие заинтересованные специалисты, благодаря чему точность матричных расчетов неплоха. Доступны полные исходные тексты.

Приведем пример. Дана плохо обусловленная матрица. Найти обратную. Перемножить с исходной. Должна получиться единичная матрица. Первый расчет сделан ME.com. Второй расчет сделан с помощью известной программы Mathematica. Можно сравнить.



Давно собираюсь вам отписать: дельная вещь! Спасибо. Сам, правда, использую в основном, матричные вычисления, и в связи с этим заметил у программы косметический дефект: спектральный анализ матрицы ("стандартная собственная проблема" в терминологии программы) часто и густо выполняется некорректно (итераций, поди, мало). Надо что-то делать.

Сообщение отредактировал 100$ - 21.12.2011 - 23:09
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
p2004r
сообщение 21.12.2011 - 22:03
Сообщение #3





Группа: Пользователи
Сообщений: 1091
Регистрация: 26.08.2010
Пользователь №: 22699



Цитата(Игорь @ 15.08.2010 - 14:36) *
Для конструирования статистических алгоритмов может оказаться полезным пакет программ "Математические и инженерные компоненты ME.com". Как и ПО AtteStat, данный пакет бесплатен и доступен для загрузки с сайта AtteStat. Он также работает в Excel всех версий. В его отладке также принимали участие заинтересованные специалисты, благодаря чему точность матричных расчетов неплоха. Доступны полные исходные тексты.

Приведем пример. Дана плохо обусловленная матрица. Найти обратную. Перемножить с исходной. Должна получиться единичная матрица. Первый расчет сделан ME.com. Второй расчет сделан с помощью известной программы Mathematica. Можно сравнить.


А чем не устраивают стандартные библиотеки? Ну вот например LAPACK включен в R.

Код
> solve(a)
         [,1]        [,2]        [,3]       [,4]       [,5]        [,6]
V1  5.9423828  -7.6658676   2.9783857   0.998317  -1.088559   0.8329743
V2 -7.6658676  15.6679084 -11.4539454   1.828775   2.221923  -1.9974300
V3  2.9783857 -11.4539454  17.1428029 -10.999301   1.342929   2.5846205
V4  0.9983170   1.8287748 -10.9993006  17.193757 -11.029589   1.3429289
V5 -1.0885589   2.2219229   1.3429289 -11.029589  17.193757 -10.9993006
V6  0.8329743  -1.9974300   2.5846205   1.342929 -10.999301  17.1428029
V7  0.3261795   0.9065214  -1.9974300   2.221923   1.828775 -11.4539454
V8 -0.9862706   0.3261795   0.8329743  -1.088559   0.998317   2.9783857
          [,7]       [,8]
V1   0.3261795 -0.9862706
V2   0.9065214  0.3261795
V3  -1.9974300  0.8329743
V4   2.2219229 -1.0885589
V5   1.8287748  0.9983170
V6 -11.4539454  2.9783857
V7  15.6679084 -7.6658676
V8  -7.6658676  5.9423828
> solve(a)%*%a
              V1            V2            V3            V4            V5
V1  1.000000e+00  1.926546e-15  2.216272e-15  1.935409e-15  7.110435e-16
V2 -1.888812e-15  1.000000e+00 -4.195429e-15 -3.546940e-15 -8.228061e-16
V3  1.142471e-15  2.554001e-15  1.000000e+00  9.004028e-16 -1.101858e-15
V4  2.745878e-16  1.018012e-15  2.932631e-15  1.000000e+00  2.841826e-15
V5 -1.561725e-16 -1.451205e-15 -2.817110e-15 -3.282693e-15  1.000000e+00
V6  1.182865e-16  1.244339e-15  1.519184e-15  2.062695e-15  1.074953e-15
V7 -1.716834e-16 -8.788543e-16 -6.847821e-16 -9.181024e-16 -3.026279e-17
V8  1.943974e-16  3.184302e-16  2.146720e-16  6.483529e-17 -2.621330e-16
              V6            V7            V8
V1 -1.686748e-16 -9.538811e-16 -1.202055e-15
V2 -3.488827e-16  8.561131e-16  1.262174e-15
V3  8.449459e-16  1.421606e-15  1.381599e-15
V4 -3.301125e-16 -2.735279e-15 -3.393986e-15
V5 -1.997290e-15  1.086262e-15  1.846505e-15
V6  1.000000e+00 -7.958044e-17 -3.707971e-16
V7 -1.192622e-16  1.000000e+00  2.602085e-16
V8 -7.715183e-16 -3.300311e-16  1.000000e+00


Signature
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
100$
сообщение 21.12.2011 - 23:11
Сообщение #4





Группа: Пользователи
Сообщений: 902
Регистрация: 23.08.2010
Пользователь №: 22694



Цитата
А чем не устраивают стандартные библиотеки? Ну вот например LAPACK включен в R.


Дык, для Экселя же! Такое на дороге не валяется. Особенно, если дорога от MC smile.gif

Сообщение отредактировал 100$ - 21.12.2011 - 23:30
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
Игорь
сообщение 22.12.2011 - 05:43
Сообщение #5





Группа: Пользователи
Сообщений: 1114
Регистрация: 10.04.2007
Пользователь №: 4040



Цитата(100$ @ 21.12.2011 - 21:24) *
Давно собираюсь вам отписать: дельная вещь! Спасибо. Сам, правда, использую в основном, матричные вычисления, и в связи с этим заметил у программы косметический дефект: спектральный анализ матрицы ("стандартная собственная проблема" в терминологии программы) часто и густо выполняется некорректно (итераций, поди, мало). Надо что-то делать.

Вы уверены, что точно поняли, какая именно проблема решается программой? Терминологию Уилкинсона и Гантмахера не считаю возможным обсуждать - это истина в последней инстанции (в данной области науки). Данные неверного примера разместите, пожалуйста, здесь - проверим.

Сообщение отредактировал Игорь - 22.12.2011 - 05:51


Signature
Ebsignasnan prei wissant Deiws ainat! As gijwans! Sta ast stas arwis!
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
100$
сообщение 22.12.2011 - 11:36
Сообщение #6





Группа: Пользователи
Сообщений: 902
Регистрация: 23.08.2010
Пользователь №: 22694



Цитата(Игорь @ 22.12.2011 - 05:43) *
Вы уверены, что точно поняли, какая именно проблема решается программой? Терминологию Уилкинсона и Гантмахера не считаю возможным обсуждать - это истина в последней инстанции (в данной области науки). Данные неверного примера разместите, пожалуйста, здесь - проверим.


Мы уверены.
Прикрепленные файлы
Прикрепленный файл  Книга1.rar ( 3 килобайт ) Кол-во скачиваний: 244
 
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
Игорь
сообщение 22.12.2011 - 12:24
Сообщение #7





Группа: Пользователи
Сообщений: 1114
Регистрация: 10.04.2007
Пользователь №: 4040



Цитата(100$ @ 22.12.2011 - 12:36) *
Мы уверены.

В том и прелесть науки - всегда открывать что-то новое, даже если был абсолютно уверен.

Если конкретно, ME.com решает стандартную проблему только для симметрических матриц. Об этом сказано в Справке. Для несимметрических реализации в программе нет. Просто не было необходимости. Если есть такая необходимость, можно попробовать реализовать. Авторы программы пока еще живы.

Сообщение отредактировал Игорь - 22.12.2011 - 12:25


Signature
Ebsignasnan prei wissant Deiws ainat! As gijwans! Sta ast stas arwis!
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
100$
сообщение 22.12.2011 - 12:59
Сообщение #8





Группа: Пользователи
Сообщений: 902
Регистрация: 23.08.2010
Пользователь №: 22694



Цитата(Игорь @ 22.12.2011 - 12:24) *
В том и прелесть науки - всегда открывать что-то новое, даже если был абсолютно уверен.

Если конкретно, ME.com решает стандартную проблему только для симметрических матриц. Об этом сказано в Справке. Для несимметрических реализации в программе нет. Просто не было необходимости. Если есть такая необходимость, можно попробовать реализовать. Авторы программы пока еще живы.


Про симметрию действительно забыл. Прошу извинить великодушно. Тогда из всего сказанного остается только "дельная вещь" и "спасибо". smile.gif

Сообщение отредактировал 100$ - 22.12.2011 - 13:00
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
Игорь
сообщение 22.12.2011 - 17:03
Сообщение #9





Группа: Пользователи
Сообщений: 1114
Регистрация: 10.04.2007
Пользователь №: 4040



Цитата(p2004r @ 21.12.2011 - 23:03) *
А чем не устраивают стандартные библиотеки? Ну вот например LAPACK включен в R.

Что означает в данном случае "стандартные"? Кем она стандартизована? Чем LAPACK более стандартен, чем ME.com или ESSL, или библиотека З. Брандта?

Если имеете в виду "стандарт де-факто", то и это спорно. Ибо математические функции Excel тиражированы в составе MS Office и самого Excel так широко, как ни один пакет в мире.

Сообщение отредактировал Игорь - 22.12.2011 - 17:11


Signature
Ebsignasnan prei wissant Deiws ainat! As gijwans! Sta ast stas arwis!
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
p2004r
сообщение 22.12.2011 - 23:26
Сообщение #10





Группа: Пользователи
Сообщений: 1091
Регистрация: 26.08.2010
Пользователь №: 22699



Цитата(Игорь @ 22.12.2011 - 17:03) *
Что означает в данном случае "стандартные"? Кем она стандартизована? Чем LAPACK более стандартен, чем ME.com или ESSL, или библиотека З. Брандта?

Если имеете в виду "стандарт де-факто", то и это спорно. Ибо математические функции Excel тиражированы в составе MS Office и самого Excel так широко, как ни один пакет в мире.


LAPACK основан на BLAS ( Basic Linear Algebra Subprograms) говорить что это стандарт дефакто "спорно" можно только шутя.

Про "математические функции" Excek еще забавнее smile.gif Первый вопрос --- какой версии этого самого Excel (он меняется (с моей точки зрения) чаще чем курс партии) и где референсная реализация? Пока нет кода программы никаким стандартом такой "черный ящик" вообще являться не может по определению.

Так что надеюсь что Вы шутите.

PS ну а библиотека ESSL всего навсего дополнение к BLAS для процессоров поверпц от IBM

Сообщение отредактировал p2004r - 22.12.2011 - 23:32


Signature
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
Игорь
сообщение 23.12.2011 - 09:01
Сообщение #11





Группа: Пользователи
Сообщений: 1114
Регистрация: 10.04.2007
Пользователь №: 4040



Цитата(p2004r @ 23.12.2011 - 00:26) *
LAPACK основан на BLAS ( Basic Linear Algebra Subprograms) говорить что это стандарт дефакто "спорно" можно только шутя.

Вполне серьезно. Цитирую: "BLAS (англ. Basic Linear Algebra Subprograms - базовые подпрограммы линейной алгебры) - стандарт де-факто интерфейса программирования приложений..." http://ru.wikipedia.org/wiki/Basic_Linear_...bra_Subprograms "Де-факто" именно и означает, что применяют все, но стандартом это не является. Кстати, иногда стандартами объявляют IMSL, NAG и прочее. И это тоже неверно.

Цитата(p2004r @ 23.12.2011 - 00:26) *
Про "математические функции" Excek еще забавнее smile.gif Первый вопрос --- какой версии этого самого Excel (он меняется (с моей точки зрения) чаще чем курс партии) и где референсная реализация? Пока нет кода программы никаким стандартом такой "черный ящик" вообще являться не может по определению.

Так что надеюсь что Вы шутите.

Правильно надеетесь. Т.к. о математических способностях Excel можно только шутя... Ну зато масштабы... Кстати, и Excel часто объявляют стандартной программой, хотя не стандартизован не только сам Excel, но даже формат его файлов.

Цитата(p2004r @ 23.12.2011 - 00:26) *
PS ну а библиотека ESSL всего навсего дополнение к BLAS для процессоров поверпц от IBM

Не могу согласиться с формулировкой, хотя понимаю, что Вы имеете в виду - а именно: BLAS входит в ESSL. А то, пользуясь такой логикой, можно объявить автомобиль дополнением к его колесам или, ладно, согласен на большее, к его мотору.

Предлагаю точнее формулировать свою точку зрения.

Есть просьба. Не имею информации, как соотносятся SSP и ESSL. Если имеете сведения по конкретно данному вопросу, прошу поделиться.

Сообщение отредактировал Игорь - 23.12.2011 - 09:04


Signature
Ebsignasnan prei wissant Deiws ainat! As gijwans! Sta ast stas arwis!
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
p2004r
сообщение 23.12.2011 - 11:24
Сообщение #12





Группа: Пользователи
Сообщений: 1091
Регистрация: 26.08.2010
Пользователь №: 22699



Цитата(Игорь @ 23.12.2011 - 09:01) *
Есть просьба. Не имею информации, как соотносятся SSP и ESSL. Если имеете сведения по конкретно данному вопросу, прошу поделиться.


вряд ли окажу конструктивную помощь, я думаю что оригинальная библиотека представляет скорее археологический интерес smile.gif

http://www.ebyte.it/library/codesnippets/I...tem360_SSP.html

конечно для старого софта ищут многие

http://permalink.gmane.org/gmane.comp.emul...ules390.vm/2713
http://forum.academ.org/lofiversion/index.php?t209547.html


Signature
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
Игорь
сообщение 23.12.2011 - 12:24
Сообщение #13





Группа: Пользователи
Сообщений: 1114
Регистрация: 10.04.2007
Пользователь №: 4040



Цитата(p2004r @ 23.12.2011 - 11:24) *
вряд ли окажу конструктивную помощь, я думаю что оригинальная библиотека представляет скорее археологический интерес smile.gif

http://www.ebyte.it/library/codesnippets/I...tem360_SSP.html

Спасибо, это хорошая ссылка. У меня есть по SSP русский двухтомник (качественная ксерокопия). Но нигде нет определенной информации, является ли ESSL обновленной или переписанной SSP или, напротив, ESSL - совершенно новый продукт. Что ESSL включает в себя известные библиотеки BLAS и LAPACK - такая информация есть. С другой стороны, у IBM есть руководство по переходу с LAPACK на ESSL. Документального подтверждения ни одной точки зрения не обнаружено.

От SSP в свое время отказался по причине того, что большинство функций в имеющемся пакете (также и введенные вручную из упомянутого выше двухтомника) оказались нерабочими, хотя описания алгоритмов (включая формулы) - верные. Полагаю, порча программ была сделана намеренно и очень неквалифицированно, а уверения переводчиков о якобы имевшей место проверке спорны. Поэтому все необходимые для наших задач функции были написаны нами заново, позднее переписаны на Си. Добавление новых алгоритмов как своих, так и переведенных на Си программ Брандта и еще некоторых авторов послужило тому, что сейчас представляет математическая и статистическая библиотека, лежащая в основе AtteStat и ME.com.

Перевод отдельных программ на Visual Basic for Application для Excel, предпринятый нами в порядке эксперимента, успеха не имел ввиду крайней медлительности VBA и совершенной его непригодности для решения каких-либо вычислительных задач. Использование же Excel в качестве front-end для программ на Си оказалось удобным. С уходом из Windows это решение, однако, потеряло актуальность.

Сообщение отредактировал Игорь - 23.12.2011 - 12:27


Signature
Ebsignasnan prei wissant Deiws ainat! As gijwans! Sta ast stas arwis!
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
100$
сообщение 23.12.2011 - 14:32
Сообщение #14





Группа: Пользователи
Сообщений: 902
Регистрация: 23.08.2010
Пользователь №: 22694



Цитата(Игорь @ 23.12.2011 - 12:24) *
Перевод отдельных программ на Visual Basic for Application для Excel, предпринятый нами в порядке эксперимента, успеха не имел ввиду крайней медлительности VBA и совершенной его непригодности для решения каких-либо вычислительных задач. Использование же Excel в качестве front-end для программ на Си оказалось удобным. С уходом из Windows это решение, однако, потеряло актуальность.


Не желая навязывать собеседникам никому не нужные дискуссии, замечу, что мой опыт общения с VBA, похоже, чуть более успешный: выборку из 36 000 случайных чисел (больше мой Excel не выдал без объяснения причин) реализованным на VBA методом сортировки вставками отсортировал за незаметное для глаза время. Ту же выборку за мгновение проверил на нормальность опять же самодельными критериями Колмогорова и Шапиро-Уилка. Программа Statistica 6.0 работать с таким массивом наотрез отказалась.

И еще. Есть такой эконометричсекий пакет EViews (7.0) Я по нему тестирую такие серьезные в вычислительном отношении процедуры, как тесты временных рядов на стационарность, состоятельное оценивание матриц вариации-ковариации регрессоров методом Уайта и Ньюэя-Уэста, тест Йохансена на коинтеграцию временных рядов. Пока что результаты совпадают до 9-10-го знака после запятой. Не шучу.

Ну, а такие пустяки, как критерий Фридмана, etc., уж не обессудьте, SPSS'ом проверял. SVD разложения матриц - MathLab'ом. Тоже без жалоб.

Сообщение отредактировал 100$ - 23.12.2011 - 14:46
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
p2004r
сообщение 23.12.2011 - 18:38
Сообщение #15





Группа: Пользователи
Сообщений: 1091
Регистрация: 26.08.2010
Пользователь №: 22699



Цитата(Игорь @ 23.12.2011 - 12:24) *
От SSP в свое время отказался по причине того, что большинство функций в имеющемся пакете (также и введенные вручную из упомянутого выше двухтомника) оказались нерабочими, хотя описания алгоритмов (включая формулы) - верные. Полагаю, порча программ была сделана намеренно и очень неквалифицированно, а уверения переводчиков о якобы имевшей место проверке спорны.


Похоже это вечная беда frown.gif Попытался взять в свое время тексты программ для решения интегральных уравнений из Верланя-Сизикова (вариант фортран кода), так да --- тест проходит, а например автоподбор невязки как класс не функционирует. Причем взятый из другого источника листинг в электронном виде в таком же состоянии. После того как пришлось по межбибу выписывать и ждать сборник стандартных подпрограмм был несколько разочарован. Ошибкой случайной такой эффект не объяснишь.


Signature
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 

Добавить ответ в эту темуОткрыть тему