|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
05.10.2012, 09:18 | #1 |
Пользователь
Регистрация: 01.02.2009
Сообщений: 52
|
Метод простой итерации, ошибка при реализации
Добрый день! Третий день бьюсь, с казалось бы простейшей задачей, подскажите, пожалуйста, незамыленным взглядом, в чем не прав
Суть в следующем: Решаю уравнение f(x)=(18/19)*(x+2*x^2+3*x^3)*(cos(sqrt(x)))-3,3783 методом простой итерации, по методу данное уравнение необходимо заменить на эквивалентное x=f(x), заменяю: x = 3,566/cos(sqrt(x))-2*x^2-3*x^3 в качестве отрезка можно выбрать [1; 1,1], корень точно находится там и его значение 1,064 (это решено в MathCAD, но он не показывает ход решения, также решено методом половинного деления, корень верный), можно выбрать больший отрезок, не суть. Проверяю уравнение на сходимость, для этого нахожу производную (использую MathCAD, также находил в ручную) значение производной при x=1, получается -7,8, казалось бы, условия сходимости "модуль производной должен быть меньше единицы" не выполняется (но в методичке нашел, что это не обязательное условие). Когда начинаю реализовывать этот метод в Паскале, под корнем получается отрицательное число и видимо из-за этого выдает ошибку. Уравнение имеет решение и решается этим методом, т.к. это задание выдается не первый год. Код:
"Ошибка выполнения 205 по адресу 0000:0095"
Машины должны работать! Люди должны думать!
|
05.10.2012, 12:25 | #2 |
Пользователь
Регистрация: 21.12.2011
Сообщений: 54
|
(18/19)*(x+2*x^2+3*x^3)*(cos(sqrt(x)))-3,3783
не сжимающее отображение на [1,1.1] (напр, для х=1.05). 3,566/cos(sqrt(x))-2*x^2-3*x^3 тоже не сжимающее (хотя не понятен принцип замены) А метод простых итераций применяется к сжимающим отображениям... |
05.10.2012, 12:44 | #3 |
Пользователь
Регистрация: 01.02.2009
Сообщений: 52
|
отрезок можно выбрать другой, этот приведен в качестве примера.
Замена производилась, путем выражения "x", который находится (18/19)*(x+2*x^2+3*x^3)*(cos(sqrt(x)))-3,3783 В данный момент пытаюсь выразить другой "х", посмотрим что получится
Машины должны работать! Люди должны думать!
Последний раз редактировалось ИВэТэшка; 05.10.2012 в 12:47. |
05.10.2012, 13:23 | #4 |
Пользователь
Регистрация: 21.12.2011
Сообщений: 54
|
Отрезок выбирается такой, чтоб предполагаемый корень пренадлежал данному отрезку.
Ваша функция зависит только от икса. О каком "другом Х" речь? |
05.10.2012, 18:05 | #5 |
Пользователь
Регистрация: 01.02.2009
Сообщений: 52
|
Насчет отрезка, я понимаю каким он должен быть, имел ввиду что можно отрезок больше взять [1;2] или [0;2] и т.д. корень ведь примерно известен и он в них во всех попадает.
Я выразил следующий "х" (18/19)*(x+2*x^2+3*x^3)*(cos(sqrt(x)))-3,3783 и между прочим получилось, хотя с погрешностью. Вот так всегда, как только создам тему на форуме, сразу самостоятельно все получается :-)
Машины должны работать! Люди должны думать!
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
простой метод итерации | serj-07 | Помощь студентам | 3 | 27.06.2010 19:34 |
Решение СЛАУ. Метод простой итерации | Alexander886 | Помощь студентам | 5 | 24.03.2010 18:43 |
Метод простой итерации | Nikolai17 | Помощь студентам | 4 | 17.11.2009 09:39 |
Метод простой итерации. (ЧМ) | Rise | Помощь студентам | 2 | 05.11.2009 18:00 |
Метод простой итерации | Artemm | Общие вопросы C/C++ | 17 | 31.05.2009 14:06 |