0 / 0 / 0
Регистрация: 20.06.2014
Сообщений: 5
|
|||||||||||
1 | |||||||||||
Реализация QL-алгоритма в scilab20.06.2014, 12:08. Показов 1096. Ответов 8
Метки нет (Все метки)
Пытаюсь реализовать QL-алгоритм в scilab
Использовал текст программы на языке C из статьи http://www.cyberguru.ru/progra... age10.html
0
|
20.06.2014, 12:08 | |
Ответы с готовыми решениями:
8
JavaScript to Scilab ( and Algorithm Pseudocode) Перевод с JavaScript в Scilab. C псевдокода в Scilab Реализация алгоритма Реализация алгоритма Реализация алгоритма МТ |
50 / 16 / 8
Регистрация: 01.10.2010
Сообщений: 77
|
||||||
20.06.2014, 19:24 | 2 | |||||
Может так:
0
|
0 / 0 / 0
Регистрация: 20.06.2014
Сообщений: 5
|
||||||||||||||||
21.06.2014, 02:15 [ТС] | 3 | |||||||||||||||
Таким образом ошибка не возникает, но результаты совершенно другие.
Результаты вызова на C:
0
|
50 / 16 / 8
Регистрация: 01.10.2010
Сообщений: 77
|
|||||||||||
21.06.2014, 11:53 | 4 | ||||||||||
Правильного результата у меня не получается, но по сравнению с описанием на c нашел две ошибки :
1
|
0 / 0 / 0
Регистрация: 20.06.2014
Сообщений: 5
|
||||||
21.06.2014, 12:06 [ТС] | 5 | |||||
Вторую ошибку я нашел, а вот по поводу первой не понял, в чем проблема...
Немного переделал код в соответствии с http://beige.ucs.indiana.edu/B673/node38.html
0
|
50 / 16 / 8
Регистрация: 01.10.2010
Сообщений: 77
|
||||||
21.06.2014, 12:20 | 6 | |||||
Скобок у Вас в строке 15 не хватает: (2*e(l))
Добавлено через 11 минут Будет появляться деление на 0 - против этого предлагаю переделать фрагмент:
0
|
0 / 0 / 0
Регистрация: 20.06.2014
Сообщений: 5
|
|
21.06.2014, 12:21 [ТС] | 7 |
Спасибо. Подставил скобки, в результате деление на нуль, т.к. вектор e=[5.34,9.05,0.98,0];
Снова вопрос, почему такой ошибки нету в C, при тех же входных данных?
0
|
50 / 16 / 8
Регистрация: 01.10.2010
Сообщений: 77
|
|
21.06.2014, 12:23 | 8 |
Я честно говоря с си знаком очень поверхностно, но там деление на 0 для действительных чисел не является ошибкой. А в последующем цикле эти данные (после деления н 0) не используются (по моему)
0
|
0 / 0 / 0
Регистрация: 20.06.2014
Сообщений: 5
|
||||||
21.06.2014, 18:33 [ТС] | 9 | |||||
Итак, дополнительное условие помогло избавиться от ошибки, собственные значения довольно близки к полученным встроенной функцией (но на С точность лучше), но собственные вектора считает не верно.
[d,z]=ql(d,e,z)
0
|
21.06.2014, 18:33 | |
21.06.2014, 18:33 | |
Помогаю со студенческими работами здесь
9
Реализация алгоритма Реализация алгоритма Реализация алгоритма Реализация алгоритма Адлемана Реализация алгоритма Rinjdael на VB Реализация алгоритма M-последовательности Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |