Численные методы решения математических задач - Курсовая работа

бесплатно 0
4.5 86
Метод Гаусса, метод прогонки, нелинейное уравнение. Метод вращения Якоби. Интерполяционный многочлен Лагранжа и Ньютона. Метод наименьших квадратов, интерполяция сплайнами. Дифференцирование многочленами, метод Монте-Карло и Рунге-Кутты, краевая задача.

Скачать работу Скачать уникальную работу

Чтобы скачать работу, Вы должны пройти проверку:


Аннотация к работе
ОГЛАВЛЕНИЕ

1. Постановка задачи

2. Формулировка заданий РГР

3. Выполнение расчетно-графической работы

3.1 Метод Гаусса

3.1.1 Листинг

3.2 Метод прогонки

3.2.1 Листинг

3.3 Нелинейное уравнение

3.3.1 Листинг

3.4 Метод вращения Якоби

3.4.1 Листинг

3.5 Интерполяционный многочлен

3.5.1 Интерполяционный многочлен Лагранжа

3.5.2 Интерполяционный многочлен Ньютона

3.6 Интерполяция сплайнами

3.6.1 Листинг

3.7 Метод наименьших квадратов

3.7.1 Листинг

3.8 Дифференцирование многочленами

3.8.1 Листинг

3.9 Метод Монте-Карло

3.9.1 Листинг

3.10 Метод Рунге-Кутты

3.10.1 Листинг

3.11 Краевая задача

3.11.1 Листинг

4. Заключение

1. Постановка задачи

Выполнить задания 1-11 расчетно-графической работы в соответствии с вариантом. При выполнении заданий разрешается пользоваться различным программным обеспечением, учитывая следующие требования: 1) Алгоритм работы и листинг используемого программного обеспечения должен быть понятен студенту. Студент должен предоставить необходимые разъяснения по требованию преподавателя, либо усовершенствовать/дополнить программу, если это необходимо;

2) ПО не должно использовать никаких сторонних программ для проведения математических вычислений, построения графиков и т.д. Весь функционал ПО должен быть заключен в его собственном коде;

3) При предоставлении собственноручно написанного ПО, студенту следует разместить на носителе, содержащем ПО, дистрибутив той среды программирования, в которой было написано ПО.

2. Формулировка заданий РГР нелинейный уравнение интерполяционный многочлен

Расчетно-графическая работа состоит из нескольких заданий, для успешного решения которых необходимо продемонстрировать владение численными методами решения математических задач.

Формулировка всех заданий приведена ниже.

1) Методом Гаусса с точностью ?=0,01 решить СЛАУ;

2) Методом прогонки решить СЛАУ, ?=0,01;

3) Методом простой итерации (или любым другим) с ?=0,01 уточнить один из корней уравнения;

4) Методом вращения с ?=0,01 вычислить собственные значения и собственные вектора симметрической матрицы А;

5) Выписать интерполяционные многочлены Лагранжа и Ньютона для узловых значений {xi, yi}, заданных функцией y=f(x);

6) Для таблицы задания 5 выписать кубические сплайны дефекта 1 на каждом отрезке x?[xi-1, xi], i=1..4;

7) Методом наименьших квадратов аппроксимировать линейным и квадратичным многочленом заданную таблицу.

8) Используя таблицу задания 5 найти значение 1-й и 2-й производной в заданной точке.

9) Методом Рунге-Кутты с шагом h=0,1 и ?=0,01 решить задачу Коши.

10) Методом прогонки с шагом h=0,1 и 0(h2) решить краевую задачу для ОДУ.

3. Выполнение расчетно-графической работы

Все задания, представленные в РГР, были выполнены с использованием собственноручно разработанного ПО и в соответствии с требуемым вариантом. Описание метода, описание алгоритма, скриншоты работы и листинг прилагаются.

3.1 Метод Гаусса

В ходе работы программы были подсчитаны корни СЛАУ:

Определитель введенной матрицы:

3.1.1 Листинг unit Gauss;

interface uses

Windows, Messages, SYSUTILS, Variants, Classes, Graphics, Controls, Forms, Dialogs, STDCTRLS, Grids, EXTCTRLS, jpeg;

type

TFORM1 = class(TFORM)

STRINGGRID1: TSTRINGGRID;

Button1: TBUTTON;

Edit1: TEDIT;

Label3: TLABEL;

Button2: TBUTTON;

mmo1: TMEMO;

Label8: TLABEL;

lbl1: TLABEL;

lbl2: TLABEL;

lbl3: TLABEL;

lbl4: TLABEL;

lbl5: TLABEL;

lbl6: TLABEL;

lbl7: TLABEL;

bvl1: TBEVEL;

bvl2: TBEVEL;

Label1: TSTATICTEXT;

Button3: TBUTTON;

STRINGGRID2: TSTRINGGRID;

Edit2: TEDIT;

Button4: TBUTTON;

lbl8: TLABEL;

Edit3: TEDIT;

Image1: TIMAGE;

lbl9: TLABEL;

procedure Button1Click(Sender: TOBJECT);

procedure Button2Click(Sender: TOBJECT);

procedure FORMCREATE(Sender: TOBJECT);

procedure Button3Click(Sender: TOBJECT);

procedure Button4Click(Sender: TOBJECT);

private

{ Private declarations } public

{ Public declarations } end;

type

MAT=array [1..20,1..20] of extended;

Vec=array [1..20] of extended;

Tmass=array of Real;

Tmatrix=array of Tmass;

var f: TEXTFILE;

Form1: TFORM1;

k,m,n,i,j,p,l: integer;

lol, znak: integer;

Mas1: Mat;

st: string;

a:Mat;

x,b:Vec;

S:real;

tempstr: string;

tempint: Integer;

tempfloat: Real;

implementation

{$R *.dfm} procedure TFORM1.Button1Click(Sender: TOBJECT);

begin n:=STRTOINT(Edit1.text);

if n>8 then begin showmessage("Слишком большой размер"); Exit; end;

STRINGGRID2.COLCOUNT:=n;

STRINGGRID2.ROWCOUNT:=n;

st:="";

for i:=1 to n do for j:=1 to n 1 do

STRINGGRID1.Cells[j-1,i-1]:="";

st:="";

STRINGGRID1.COLCOUNT:=n 1;

STRINGGRID1.ROWCOUNT:=n;

STRINGGRID1.Height:=n*26 1;

STRINGGRI

Вы можете ЗАГРУЗИТЬ и ПОВЫСИТЬ уникальность
своей работы


Новые загруженные работы

Дисциплины научных работ





Хотите, перезвоним вам?