А то что у меня метод на шаге обычном, в

точности совпадает с решением ду это нормально? Просто я руками считал там довольно большая погрешность

7 ответов

18 просмотров

"Решение" имеется в виду аналитическое?

~$$7o-&$%# Автор вопроса
Vladimir Mokeev
"Решение" имеется в виду аналитическое?

А есть способ проверить работоспособность метода, на ошибки имеется ввиду?

~$$7o &$%#
А есть способ проверить работоспособность метода, ...

Как раз тут и подвох и ЕМНИП всё зависит от условий(см. условия применимости и сходимости методов). Так по сути есть условия в которых метод сходится к точному аналитическому решению, причём более того за конечное число шагов равное порядку метода, а есть условия в которых аналитического решения не существует и тут насколько знаю методы дают лишь гарантию на динамику сходимости(т.е. на разность между новой и предыдущей точкой), т.е. амплитуда изменений решения всё время уменьшается соответственно порядку метода. Хотя конечно нужно учитывать, что важно следить за размером шага и вообще желательно немного прошерстить тему и почитать об аттракторах и пр., ибо обычно на них объясняют нюансы применимости численных методов.

~$$7o &$%#
А есть способ проверить работоспособность метода, ...

Можно формально доказать корректность алгоритма. Существуют языки, на которых пишут доказательства для некоторых важных алгоритмов криптографии, протоколов и т.д. Посмотрите F* и TLA+ из того, о чем я слышал. Это зубодробительные технологии абсолютно, не для простых смертных.

George Polevoy
Можно формально доказать корректность алгоритма. ...

Но вообще нужно уметь базовые вещи самому доказывать, такие как гарантию завершения цикла, и разные инварианты алгоритма. По идее даже в школе проходят доказательство по индукции, и это хорошо применимо в доказательстве работы программ.

George Polevoy
Можно формально доказать корректность алгоритма. ...

Вы не из секты формальных верификаторов к нам пришли? ;) Так вот нет, формально доказать корректность алгоритма нельзя. Beware of bugs in the above code; I have only proved it correct, not tried it. -- Donald Knuth Можно только доказать соответствие программы (или метода вычислений) какой-то спецификации. В том числе, можно доказать какие-то свойства некоторых программ (инварианты, отсутствие какого-то вида поведения, максимальное использование каких-то ресурсов и т.п.).

Похожие вопросы

Обсуждают сегодня

Всем привет Есть достаточно базовая задача: Дан неориентированный граф. Требуется определить, есть ли в нем цикл, и, если есть, вывести его. Входные данные подаются в виде ма...
Αλeksandr
10
Привет всем. Подскажите, как можно данную задачу более менее эффективно решить? В столовой одного известного Завода вот-вот начнётся обед. На обеде есть три гарнира — макарош...
Vitaliy
6
всем привет. У меня есть неупорядоченный массив точек(в моем случае в трёхмерном пространстве). Есть критерий связанности точек: если евклидово расстояние между ними меньше за...
Павлик Ливаткин
31
Доброе утро. Такой вопрос: есть ли какие-то практически полезные меры вычислительной мощности (в смысле computational complexity) для реальных машин, с ограниченными ресурсам...
Yaroslav Schekin
15
Всем привет Пытаюсь решить следующую задачу: https://informatics.msk.ru/mod/statements/view.php?id=6992&chapterid=101#1 Строка S была записана много раз подряд, после чего из ...
Αλeksandr
10
Здравствуйте. Есть задача нужно найти наименшое число P где фактриал P делиться на 10^N. Ограничения 10^9. Знаю что нужно найти такой P в конце как минимум N нулей. Решение с ...
. Azmiddin
20
Друзья, практический вопрос надо счиать скользящую медиану в последовательности по заданному окну (длины N) тупой вариант - взять значения в окне, отсортировать, взять элеме...
Стас Выщепан
17
Должна-ли работать такая стратегия: Мы каждую секунду бросаем монетку - орел или решка. Если орел - покупаем акцию на все деньги, если у нас есть деньги, или продаем все акци...
George Polevoy
13
#pragma once #include <iostream> #include <vector> template <typename T, typename Comp = std::less<T>> class Heap { public: Heap() = default; Heap(const std::vector<T>&...
Степан
1
Как можно сжимать временные ряды в памяти? У меня есть исторические стоимости ценных бумаг. Данные для каждой минуты в истории OHLC (Open, High, Low, Close). Соответственно, O...
George Polevoy
10
Карта сайта