MathCAD: задачки по численным методам базового уровня и подсказки к ним
Примеры задач по численным методам базового уровня. Конечно, в условии должен быть хотя бы минимальный нюанс, чтобы работа человека, решающего задачу, не свелась к подстановке своих чисел в готовые функции или формулы. "Заточено" под MathCAD, вот темы задач:
1. Решение нелинейных уравнений: методы половинного деления (бисекции), простой итерации, Ньютона;
2. Решение СЛАУ: методы обратной матрицы и Крамера (прямые), простой итерации и Гаусса-Зейделя (итерационные);
3. Интерполяция и аппроксимация: канонический полином и полином Лагранжа, кусочно-постоянная и кусочно-линейная интерполяция, метод наименьших квадратов 1 и 2 порядка;
4. Численное интегрирование: методы левых, правых и средних прямоугольников, трапеций, Симпсона;
5. Численное дифференцирование: явный метод Эйлера, «предиктор-корректор», метод Рунге-Кутты 4 порядка, краевая задача для уравнения 2 порядка.
Задача 1. Задана таблица значений функции y(x)
X |
3 |
2 |
1 |
Y(X) |
-4.1 |
-2.6 |
-0.9 |
Оценить значение функции при X=1.5, если известно, что на интервалах [n,n+1], где n – натуральное число, функция линейна.
Подсказка: просто использовать кусочно-линейную интерполяцию, это о ней. Таблицу значений отсортировать по возрастанию X.
Задача 2. Для функции, заданной таблично
X |
0 |
0.25 |
0.5 |
0.75 |
1 |
Y(X) |
0 |
0.13 |
0.47 |
0.26 |
0 |
оценить значение определенного интеграла от нее на интервале [0;1]. Достаточно использования метода первого порядка по точности.
Подсказка: подойдёт метод левых или правых прямоугольников.
Задача 3. Проинтегрировать таблично заданную функцию методом средних прямоугольников
X |
0 |
0.1 |
0.2 |
0.4 |
0.6 |
0.7 |
0.8 |
0.9 |
1 |
Y(x) |
0 |
0.01 |
0.04 |
0.16 |
0.36 |
0.49 |
0.64 |
0.81 |
1 |
Проверить погрешность интегрирования, если аналитическая формула для y(x)=x2
Подсказка: если принять значения x с номерами 0,2,… (выделены жирным) за границы интервалов, то x с номерами 1,3,… - середины этих интервалов. Тогда можно использовать метод средних прямоугольников, в формуле будет всего 4 слагаемых.
Задача 4. Для нелинейного уравнения a*x3+5*x-12=0 найти корень методом Ньютона с точностью 0.001 на отрезке [1.3; 1.5]. Константа a вычисляется как решение системы 2 уравнений:
2*a2-8 = 0
7*a-14 = 0
Подсказка: сначала решить систему символьно в блоке Given-Find, потом запрограммировать метод Ньютона.
Задача 5. Решить СЛАУ A*x=b методом простой итерации с точностью ε=0.05. Начальное приближение x(0)=b. Оценить количество итераций
A= |
3 |
2 |
12 |
b= |
1 |
-1 |
4 |
2 |
2 |
||
5 |
1 |
3 |
3 |
Подсказка: для обеспечения сходимости итерационного метода решения СЛАУ нужно диагональное преобладание в матрице. Для его обеспечения достаточно переставить местами 1-е и 3-е уравнения
Задача 6. Сравнить число шагов, требуемых для решения нелинейного уравнения x3-x2+10x=8 на отрезке [0.7;0.9] с точностью 0.01 методами половинного деления отрезка и метода, где отрезок делится в пропорции золотого сечения.
Подсказка: отличие "метода золотого сечения" – только в пропорции, в которой делится отрезок: вместо 1/2 : 1/2 используется соотношение (√5-1)/2 : 1 – (√5-1)/2. Потом смотрим сюда. В отличие от задачи минимизации функции, никакая пропорция деления отрезка не даст вычислительных преимуществ в общем случае.
Задача 7. Решить любым способом СЛАУ, найдя хотя бы 1 решение с точностью не ниже 0.01. Обосновать выбор метода решения
A= |
1 |
1 |
1 |
b= |
1 |
2 |
2 |
2 |
2 |
||
1 |
1 |
3 |
0 |
Подсказка: Эта система - вырожденная, обратной матрицы не существует, ранг системы равен 2. Единственный смысл, в котором её можно "решить" - попробовать итерационный метод с начальным приближением x(0)=b или x(0)=0. Так, в первом случае метод Гаусса-Зейделя даст ничему не противоречащее решение (-0.5; 2; -0.5).
Задача 8. Задана таблица значений функции:
X |
-1 |
0 |
0.7 |
1 |
F(X) |
0.1 |
-0.2 |
0.5 |
1.2 |
Найти коэффициенты a,b прямой P(x)=a+b*x, наиболее приближенной к заданным точкам.
Подсказка: просто МНК первого порядка.
Задача 9. Решить уравнение 2*x3 = 12 – 5*x методом Ньютона на отрезке [1.3; 1.5] с заданным числом итераций = 5 и приближением первой производной конечной разностью 1 порядка = Δy/Δx. Оценить погрешность полученного решения.
Подсказка: заменить вычисление производной конечной разностью первого порядка, как в этом примере.
Задача 10. С помощью явного метода Эйлера найти приближённое решение задачи Коши для ОДУ 1 порядка: u ’ = f(t,u) = t2 + u3, t ∈ [0;1], u(0)=1, τ = 0.2
Подсказка: в задаче никаких особенностей, даже не знаю, почему она здесь :)
Задача 11. По таблице исходных данных
X |
-1 |
0 |
0.7 |
1 |
F(X) |
0.1 |
0.2 |
0.5 |
1.2 |
Построить полином максимально возможного порядка. Найти значения полинома при x=-2, x=2
Подсказка: по 4 точкам зависимость выше, чем от x3, не построишь, значит, канонический полином или полином Лагранжа.
Задача 12. Решить СЛАУ A*x=b с исходными данными
A= |
x1 |
1 |
0 |
b= |
x1 |
1 |
x2 |
1 |
x2 |
||
0 |
1 |
x1 |
x1+x2 |
где x1 - максимальный по модулю корень уравнения -x2+2x+1=0, x2 - максимальный корень уравнения x2-6x-2=0. Для решения уравнений использовать подпрограмму-функцию
Подсказка: просто написать функцию поиска максимального по модулю корня квадратного уравнения и дважды вызвать :)
Задача 13. С помощью полинома Лагранжа построить график зависимости Y(X) по заданным значениям X=0; 0.25; 0.5; 0.75; 1 и значениям Y(X), полученным из решения задачи Коши для ОДУ 1 порядка u’=f(t,u)=t2+u, t Î [0;1], u(0)=1, τ =0.25 модифицированным методом Эйлера
Подсказка: решить задачу Коши как здесь, найденные 5 значений Y использовать для построения канонического полинома или полинома Лагранжа как здесь.
Задача 14. Найти значение интеграла ∫maxmin (x3-3x+2)dx, где min – минимальное значение подынтегральной функции на интервале [0;2], max – ее максимальное значение на интервале [-2;0]
Подсказка: найти максимум и минимум блоками Given - Maximize и Given - Minimize, затем взять интеграл стандартным инструментом.
Задача 15. Задана таблица значений функции:
x |
-1 |
0 |
0.7 |
1 |
1.2 |
F |
0.1 |
-0.2 |
0.5 |
1.2 |
1.5 |
C помощью метода наименьших квадратов найти коэффициенты a, b, c функции P(x)=a+bx+cx2, наиболее приближенной к заданным точкам. СЛАУ МНК решить с помощью метода Крамера. Для найденной зависимости P(x) вычислить среднеквадратичное отклонение по всем точкам.
Подсказка: стандартный МНК 2 порядка (тольско сформировать матрицу), затем метод Крамера.
Задача 16. С помощью метода деления отрезка пополам построить и вывести последовательность приближенных решений уравнения x3+x2-10x+8 =0 , сходящуюся к корню x=1 (ε=0.01).
Подсказка: просто запоминать в векторе последовательность значений c, программируя метод бисекции.
11.12.2015, 17:01 [9401 просмотр]