- •Алгебраические трансцендентные уравнения
- •Системы линейных алгебраических уравнений.
- •Реализация в Visual Basic
- •Численное решение обыкновенных дифференциальных уравнений
- •1.Метод прямоугольников
- •2. Метод трапеции
- •3. Метод параболы
- •Оду. Численные методы решения обыкновенных уравнений
- •1.Метод Эйлера
- •2.Метод Рунге-Кутта
Численное решение обыкновенных дифференциальных уравнений
Задача: по исходным данным определить вид аппроксимирующей функции и найти её коэффициенты.
Решение в таблице:
После построения графика, вычислили координаты средних точек. Затем добавили их на график. Нашли наиболее близкую точку к экспериментальной кривой и определили тип зависимости. В нашем случае это .
Численные интегрирования
Процедура численного интегрирования заключается в том, что отрезок [а;в]развивается наn-отрезков ,а затем подынтегральная ф-ция f(x) апроксимируется некоторой другой ф-цией,интеграл от которой вычисляется сравнительно просто.
Метод |
Интеграл I n=10 |
Интеграл I n=100 |
Пр.прям. |
3,971761544 |
3,685065137 |
Лев.прям. |
3,482694096 |
3,636773083 |
Ср.прям. |
4,396079589 |
3,72473207 |
Трапеции |
3,72722782 |
3,661226455 |
Параболы |
3,724745377 |
3,640020664 |
|
|
|
1.Метод прямоугольников
Для подсчета интеграла методом прямоугольников разделяем интервал интегрирования [а;в]наn-равных отрезков, длины h=(b-a)/n
Function f(x)
f = (1 + 1.2 * x ^ 2) / (2.3 + (Sqr(0.4 * x ^ 2 + 3.2)))
End Function
Sub pr10()
a = 1.3
b = 3.45
n = 10
h = 0.215
S = 0
For x = a + h To b Step h
S = S + f(x)
Next x
i = S * h
Worksheets("Интеграл").Range("K32").Value = i
End Sub
Sub pr100()
a = 1.3
b = 3.45
n = 100
h = 0.0215
S = 0
For x = a + h To b Step h
S = S + f(x)
Next x
i = S * h
Worksheets("Интеграл").Range("L32").Value = i
End Sub
Sub lev10()
a = 1.3
b = 3.45
n = 10
h = 0.215
S = 0
For x = a To b - h Step h
S = S + f(x)
Next x
i = S * h
Worksheets("Интеграл").Range("K33").Value = i
End Sub
Sub lev100()
a = 1.3
b = 3.45
n = 10
h = 0.0215
S = 0
For x = a To b - h Step h
S = S + f(x)
Next x
i = S * h
Worksheets("Интеграл").Range("L33").Value = i
End Sub
Sub cp10()
a = 1.3
b = 3.45
n = 10
h = 0.215
S = 0
For x = a To b Step h
S = S + f(x + (h / 2))
Next x
i = S * h
Worksheets("Интеграл").Range("K34").Value = i
End Sub
Sub cp100()
a = 1.3
b = 3.45
n = 100
h = 0.0215
S = 0
For x = a To b Step h
S = S + f(x + (h / 2))
Next x
i = S * h
Worksheets("Интеграл").Range("L34").Value = i
End Sub
2. Метод трапеции
Sub tr10()
a = 1.3
b = 3.45
n = 10
h = 0.215
S = (f(a) + f(b)) / 2
For x = a + h To b - h Step h
S = S + f(x)
Next x
i = S * h
Worksheets("Интеграл").Range("K35").Value = i
End Sub
Sub tr100()
a = 1.3
b = 3.45
n = 100
h = 0.0215
S = (f(a) + f(b)) / 2
For x = a + h To b - h Step h
S = S + f(x)
Next x
i = S * h
Worksheets("Интеграл").Range("L35").Value = i
End Sub
3. Метод параболы
Sub par10()
a = 1.3
b = 3.45
n = 10
h = 0.215
S = f(a) + f(b)
c = 1
For x = a + h To b - h Step h
S = S + (3 + c) * f(x)
c = -c
Next x
i = S * h / 3
Worksheets("Интеграл").Range("K36").Value = i
End Sub
Sub par100()
a = 1.3
b = 3.45
n = 10
h = 0.0215
S = f(a) + f(b)
c = 1
For x = a + h To b - h Step h
S = S + (3 + c) * f(x)
c = -c
Next x
i = S * h / 3
Worksheets("Интеграл").Range("L36").Value = i
End Sub
Вывод: Вот такими способами в программе vb можно вычислить интеграл