Использование численных методов при решении инженерных задач

Автор работы: Пользователь скрыл имя, 04 Декабря 2013 в 18:59, курсовая работа

Описание работы

Задача заключается в аналитическом представлении функциональной зависимости, т.е. в подборе формулы, описывающей результаты эксперимента.
Особенности метода
Наличие случайных ошибок измерения или, как говорят, наличие «шума» в эксперименте делает неразумным подбор такой формулы, которая точно описывала бы все опытные значения. Другими словами, график не должен проходить через все точки, а должен сглаживать «шум».

Содержание работы

1)Геометрические преобразования 3

2)аппроксимация неизвестных функций 5

3)Решение линейных уравнений. Уточнение приближенных корней методом дихотомии 13

4)вычисление определенного интеграла 17

5)Интегрирование. Интерполяционная формула Лагранжа. 23

6) Решение систем линейных алгебраических
уравнений методом Гаусса 27

7)Оптимизация 30

8) основная программа 36

Файлы: 1 файл

Жолобова.doc

— 363.50 Кб (Скачать файл)

 

 

 

*Интерполяционная формула Лагранжа

 

Для произвольно заданных улов интерполирования пользуются интерполяционной формулой Лагранжа.

Пусть на отрезке [a, b] даны n+1 различных значений аргумента: x0, x1,…, xn и известны для функции y=f(x) соответствующие значения: f(x0)=y0, f(x1)=y1,…, f(xn)=yn

Требуется построить полином Pn(x) степени не выше n, имеющий в заданных узлах x0, x1,…, xn те же значения, что и функция f(x) т.е. такой, что Pn(xi)=yi (i=1, 2,3, …, n)

Этот полином имеет следующий  вид:

Pn(xi)=a0+a1*(x-x0)+a2*(x-x0)*(x-x1)+a2*(x-x0)*(x-x1)(x-x2)+…+an(x-x0)…(x-xn-1)

Рассмотрим частные  случаи интерполяционного полинома Лагранжа.

При n=1 мы имеем две точки, и формула представляется в этом случае уравнением прямой, проходящей через 2 точки:

Pn(xi)= a0+a1*(x1-x0)

 

При n=2 получим уравнение параболы, проходящей через 3 точки:

Pn(xi)= a0+a1*(x2-x0)+a2*(x2-x0)*(x2-x1)

 

Замечание:

    • Степень полинома определяется количеством скобок
    • Функция должна проходить через заданные точки, т.е. при x=x0 ,y=y0

 

Интерполюционная формула  Лагранжа:

           n

Ln(x)=∑*y(i)*PV/PN

          1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 











 



 











 




 



 




 

 


 

 


 

 

 

 

 

 

 




 



 


 




 





 



 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Решение системы  линейных уравнений.

 

          * Метод Гаусса.

 

Дана система уравнений:

a11*x1+a12*x2+…+a1n*xn=b1

a21*x1+a22*x2+…+a2n*xn=b2

an1*x1+an2*x2+…+ann*xn=bn

 

A*X=B

 

 

 

 

 

Прямой ход-получение треугольной  матрицы.

Обратный ход-раскодирование матрицы  и отыскание неизвестных.

a11*x1+a12*x2+a13*x3=b1       Умножаем 1-ое уравнение на C2=-a21/a11

a21*x1+a22*x2+a23*x3=b2     и складываем со вторым.

a31*x1+a32*x2+a33*x3=b3        Умножаем 1-ое уравнение на C3=-a31/a11

                                                          и складываем с третьим.

                                                             Умножаем 2-ое уравнение на                                                                                                                                         

                                                          C3*=- a32*/a22* и складываем с 3-им.

a11*x1+a12*x2+a13*x3=b1

            a22**x2+a23*x3=b2*

                          a33**x3=b3**

 

 

x3= b3**/a33**

x2=(b2*-a23**x3)/a22*

x1= (b1- a12*x2-a13*x3)/a11                      

 

 

 

 

 

 

 

 

Решение систем  линейных уравнений методом Гаусса.

                                               



   




 


 


 


 


 



 



 

 

 




 

 


 


 

 

 



 




 

 

 


 

 









 






 



 





 




 



 




 



 





 






 


 Оптимизация

 

Методы поиска для функции одной переменной

Требуется найти экстремумы функции f(x)=14x3+60x2-70x+0.1

Для этого нужно решить уравнение f'(x)=0. в данном случае оно является кубическим уравнением, которое не так просто раскладывается на множители. Поэтому мы вынуждены прибегнуть к численным методам. Рассмотрим несколько численных процедур, непосредственно локализующих минимум функции f(x).

В общем случае функция f(x) может иметь несколько экстремумов (максимумов или минимумов). Из них главный (оптимально значение) называется глобальным. Задача поиска экстремумов сводится к их локализации и уточнению значений x и f(x) в точках экстремума. В дальнейшем для функции одной переменной под экстремумом будем подразумевать минимум f(x). Поскольку минимуму функции f(x) соответствует максимум функции -f(x), то, изменив знак у f(x) программами поиска минимума можно воспользоваться и для поиска максимума.

С помощью численных  методов мы непосредственно ищем минимум функции f(x) в некотором интервале a<x<b, в котором как предполагается, лежит минимум, вычисляя значения функции в выбранных точках данного интервала.

 

 

 

 

* Метод равномерного поиска

 

Этот метод основан  на том, что переменной x присваиваются значения x+dx с шагом dx=const и вычисляются значения f(x). Если f(xi+1)< f(xi), переменной x дается новое приращение. Как только f(xi+1) станет больше f(xi) поиск останавливается. При малой заданной погрешности этот метод не экономичен по затратам машинного времени.


 




 


 

 

 

Данный метод реализуется  алгоритмом:

    1. Переменной x задается значение границы интервала x=a
    2. Вычисляется значение функции f(x) при x=a
    3. Переменной x добавляется dx(x=x+dx), где dx – шаг, численно равный допустимой погрешности
    4. Проверяем условие f(xi+1)< f(xi). Если оно выполняется, выводим значение x и заканчиваем вычисления, иначе идем к пункту 3

 

 

 

* Метод дихотомии

(деления интервала  поиска [a, b] пополам)

 

Этот метод реализуется  следующим алгоритмом:

    1. Проверяем условие |b - a|<2e, где e – допустимая погрешность. Если это условие выполняется, идем к пункту 7, если не выполняется – к пункту 2.
    2. Делим интервал поиска [a, b] пополам и вычисляем две абсциссы, симметрично расположенные относительно точки x=(a+b)/2;       x1=(a+b-e)/2; x2=(a=b=e)/2.
    3. Для этих значений вычисляем f(x1) и f(x2).
    4. Проверяем условие f(x1) < f(x2). Если оно выполняется, полагаем b=f(x2) и идем к пункту 1. Если не выполняется – к пункту 5.
    5. Проверяем условие f(x1) > f(x2). Если оно выполняется, полагаем a=f(x1) и идем к пункту 1. Если не выполняется – к пункту 6.
    6. Проверяем условие f(x1) = f(x2). Если оно выполняется, полагаем a=f(x1), b=f(x2) и идем к пункту 1.
    7. Выводим на печать x=(a+b)/2 и вычисляем f(x).

 

 

           * Метод золотого сечения

 

Этот метод основан на делении  отрезка [a, b] по правилу золотого сечения. Он позволяет сужать отрезок [a, b], каждый раз вычисляя лишь одно значение f(x), а не два как в методе дихотомии.

Данный метод реализуется  следующим алгоритмом:

    1. Находим коэффициент дробления k=0,62 отрезка [a, b].
    2. Находим абсциссу x1=a+(1-k)(b-a) и вычисляем f(x1).
    3. Находим абсциссу x2=a+k(b-a) и вычисляем f(x2).
    4. Проверяем условие  |x2-x1|<e, где e – допустимая погрешность вычисления x.Если это условие выполняется, вычисляем x=(x1+x2)/2 и f(x), после чего останавливаем счет с выдачей значений  x и f(x). Если данное условие не выполняется, идем к пункту 5.
    5. Проверяем условие f(x1)>=f(x2). Если оно выполняется, полагаем a=x1, x1=x2 и f(x1)=f(x2), после чего выполняем пункт 3 и 4.
    6. Если f(x1)<f(x2) полагаем b=x2,, x2=x1, f(x2)=f(x1), после чего выполняем пункт 2 и пункт 4.

 

 


 



 

 

                                                                + 


 

 

 



 

 

                                                                                                                                                                                      


                                                                                                                                                                                       -


                                        


                                         


 

                                                                   + 

                                                                                                                        -       +



     

  


  




     


 


 




 


                                                                       +                                                                      



 







 



 



 



 

 

 



 

 

 

 


 


 


 


 


 


 


 


                                                                                                                         

                                                                                                                             +


 

 


 


 


 


 



 

                                                                                                                             +


 

 

 


 



 

 



 


 



 



 



 



 




Основная программа

DECLARE SUB LAB1 ()

DECLARE SUB LAB2.1 ()

DECLARE SUB LAB2.2 ()

DECLARE SUB LAB2.3 ()

DECLARE SUB LAB3 ()

DECLARE SUB LAB4.1 ()

DECLARE SUB LAB4.2 ()

DECLARE SUB LAB4.3 ()

DECLARE SUB LAB4.4 ()

DECLARE SUB LAB5 ()

DECLARE SUB LAB6 ()

DECLARE SUB LAB7.1 ()

DECLARE SUB LAB7.2 ()

DECLARE SUB LAB7.3 ()

 

 

 

CLS

SCREEN 12

LOCATE 1, 11

PRINT "FEDERALNOE AGENSTVO PO OBRAZOVANIYOO"

LOCATE 2, 18

PRINT "GOSUDARSTVENNOE OBARAZOVATELNOE UCHEREZDENIE"

Информация о работе Использование численных методов при решении инженерных задач