Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Образовательный студенческий форум _ Информатика / Программирование _ Maple+функц. анализ

Автор: Arinka 14.6.2010, 17:44

дана система,решить ее методом последовательных приближений.
объясните пожалуйста,что такое х1 и х2?я так понимаю,что это вектора значений решения системы.1-й я ввожу,чтобы с каждым последующим шагом от него отталкиваться,так?или что-то неверно понимаю?объясните,пожалуйста!
и еще вопрос-с какой точностью я нахожу решение?с точностью до 4 знака?

Автор: tig81 14.6.2010, 17:49

Цитата(Arinka @ 14.6.2010, 20:44) *

дана система,решить ее методом последовательных приближений.
объясните пожалуйста,что такое х1 и х2?я так понимаю,что это вектора значений решения системы.1-й я ввожу,чтобы с каждым последующим шагом от него отталкиваться,так?или что-то неверно понимаю?объясните,пожалуйста!

В каком Maple делали?
В чем заключается метод последовательных приближений?
Цитата
и еще вопрос-с какой точностью я нахожу решение?с точностью до 4 знака?

А с какой точностью в задании требуется?

Автор: Arinka 14.6.2010, 17:57

в 12 мэпле.
требуется с 0,0001.причем преподаватель меня так спросил,как будто нужно обосновать,хотя в задании и так указано.
я беру произвольный вектор,составляю такую послдовательность приближений,что к этому моему х1 буду прибавлять шаг,то есть каждое следующее получаю из предыдущего.так?

Автор: tig81 14.6.2010, 18:03

Цитата(Arinka @ 14.6.2010, 20:57) *

в 12 мэпле.

у меня 10. пакет лучше подключать так: with(linalg)
Когда вводите матрицу, то оператор пишите с маленькой буквы: a:=matrix([...])
И т.д.: transpose. В том виде, как вы написали, он у меня не работает.
Вы решаете вроде систему? Погуглите как выглядит данный метод в этом случае. Там вроде какие-то рекуррентные формулы есть. Точно не помню.
Цитата
требуется с 0,0001.причем преподаватель меня так спросил,как будто нужно обосновать,хотя в задании и так указано.

В этом случае не разность между двумя последовательными значениями должна быть меньше, чем 0,0001?

Автор: Arinka 14.6.2010, 18:08

Цитата(tig81 @ 14.6.2010, 22:03) *

у меня 10. пакет лучше подключать так: with(linalg)
Когда вводите матрицу, то оператор пишите с маленькой буквы: a:=matrix([...])
И т.д.: transpose. В том виде, как вы написали, он у меня не работает.
Вы решаете вроде систему? Погуглите как выглядит данный метод в этом случае. Там вроде какие-то рекуррентные формулы есть. Точно не помню.

В этом случае не разность между двумя последовательными значениями должна быть меньше, чем 0,0001?

спасибо,но насчет самой программы вопросов не возникало.Объясните мне,пожалуйста,чем являются эти вектора х1 и х2 в задании.Преподавателю нужен внятный ответ,а до меня не доходит.пожалуйста,объясните))

насчет последнего вопроса-пожалуй,да разность,но проверяя мои значения,получатся,что точность везде разная-где 2 знака,где4.как с этим быть?

Автор: Vahappaday 14.6.2010, 18:43

о, раз тема такая открылась, нет хорошего учебничка по Maple?

Автор: Arinka 14.6.2010, 18:49

Цитата(Vahappaday @ 14.6.2010, 22:43) *

о, раз тема такая открылась, нет хорошего учебничка по Maple?

только в обмен на умную мысль)))шучу))есть какая-то скачанная часть методы по ортог-е многочлены и учебник по 6 мэплу.пойдет?

Автор: tig81 14.6.2010, 19:02

Цитата(Vahappaday @ 14.6.2010, 21:43) *

о, раз тема такая открылась, нет хорошего учебничка по Maple?

1. Дьяконов
2. С. Е. Савотченко, Т.Г. Кузьмичева "Методы решения математических задач в Maple" (ели не найдете, то есть в электронном варианте, могу скинуть)
и многое др.

Если интересует, давайте ящик, набросаю. smile.gif




Автор: Arinka 14.6.2010, 19:05

давайте все же вернемся к теме blush.gif

Автор: tig81 14.6.2010, 19:13

Цитата(Arinka @ 14.6.2010, 22:05) *

давайте все же вернемся к теме blush.gif

давайте.
По каким формулам будете считать? Как выглядит условие?

Автор: Arinka 14.6.2010, 19:19

что именно считать?вот условие в цикле
> i := 0;
0
> x1 := Vector(4, [1, 2, 3, 4]);

> x2 := MatrixVectorMultiply(C2, x1)+D2; NormC*Norm(x1-x2)/(1-NormC);

> while NormC*Norm(x1-x2)/(1-NormC) > .1 do x1 := x2; i := i+1; x2 := MatrixVectorMultiply(C2, x1)+D2 end do;


Автор: Vahappaday 15.6.2010, 5:21

а что такое C2, D2 и NormC?

Автор: Arinka 15.6.2010, 6:55

Цитата(Vahappaday @ 15.6.2010, 9:21) *

а что такое C2, D2 и NormC?

С2 это нормированная матрица,D2 нормированный вектор-столбец.NormC-норма матрицы.
если нет 12 мэпла,вот прикрепляю скрины

Автор: Vahappaday 15.6.2010, 9:41

http://www.math.ru/lib/files/plm/v35.djvu (стр. 74) - вот тут как-то значительно проще весь процесс описан)
Если я правильно понял, мы решаем систему линейных алгебрических ур-й. (или матрицей А задаётся что-то более сложное?).
Тогда x1 - приближенное значение вектора решения на (i-1)-й итерации, x2 - приближенное значение вектора решения на i-й итерации.
Когда они отличаются на величину меньшую погрешности, то процесс решения можно считать завершенным успешно.

Автор: Arinka 15.6.2010, 10:04

о,большое спасибо за справку)))да-да,все правильно,А-это изначальная матрица.

Русская версия Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)