При этом чтобы итерационный процесс сходился к точному решению, достаточно, чтобы все коэффициенты системы были малы по сравнению с диагональными

43269
знаков
5
таблиц
8
изображений

2.         При этом чтобы итерационный процесс сходился к точному решению, достаточно, чтобы все коэффициенты системы были малы по сравнению с диагональными.

Это условие можно сформулировать и более точно:

Для сходимости процесса итераций достаточно, чтобы в каждом столбце сумма отношений коэффициентов системы к диагональным элементам, взятым из той же строки, была строго меньше единицы:

3.         Следует так же сказать, что итерационный процесс может проводиться как в виде итерации Якоби, так и в виде итерации Гаусса-Зейделя. В последнем случае сходимость итерационного процесса может существенно улучшиться.


                                   II.         Практическая часть.

 

1) Метод обратной матрицы.

 

Метод обратной матрицы

 

x1

x2

x3

x4

12 -4 0 6 2
A= -4 21 5 3 B= 4
-3 2 -22 1 -2
-2 -3 5 23 4
0,083 0,013 -0,002 -0,023

A-1=

0,016 0,048 0,009 -0,011
-0,009 0,003 -0,044 0,004
0,011 0,007 0,010 0,039
x= 0,129
0,165
0,097
0,186


2) Метод Крамера.

Метод Крамера

 

x1

x2

x3

x4

12 -4 0 6 2
A= -4 21 5 3 B= 4
-3 2 -22 1 -2
-2 -3 5 23 4
'A'= -134088
2 -4 0 6

A1=

4 21 5 3
-2 2 -22 1
4 -3 5 23

'A1'=

-17296

x1=

0,129
12 2 0 6

A2=

-4 4 5 3
-3 -2 -22 1
-2 4 5 23

'A2'=

-22188

x2=

0,165
12 -4 2 6

A3=

-4 21 4 3
-3 2 -2 1
-2 -3 4 23

'A3'=

-12980

x3=

0,097
12 -4 0 2

A4=

-4 21 5 4
-3 2 -22 -2
-2 -3 5 4

'A4'=

-24896

x4=

0,186
x= 0,129
0,165
0,097
0,186

 


3) Метод Гаусса.

Метод Гаусса

 

x1

x2

x3

x4

12 -4 0 6 2
A= -4 21 5 3 B= 4
-3 2 -22 1 -2
-2 -3 5 23 4
'A'= -134088
1,000 -0,333 0,000 0,500 0,167
-4,000 21,000 5,000 3,000 4,000
-3,000 2,000 -22,000 1,000 -2,000
-2,000 -3,000 5,000 23,000 4,000
1,000 -0,333 0,000 0,500 0,167
0,000 25,333 5,000 5,000 4,667
0,000 1,000 -22,000 2,500 -1,500
0,000 -3,667 5,000 24,000 4,333
1,000 -0,333 0,000 0,500 0,167
0,000 1,000 0,197 0,197 0,184
0,000 0,000 -22,197 2,303 -1,684
0,000 0,000 5,724 24,724 5,009
1,000 -0,333 0,000 0,500 0,167
0,000 1,000 0,197 0,197 0,184
0,000 0,000 1,000 -0,104 0,076
0,000 0,000 0,000 25,317 4,574
x= 0,120
0,130
0,095
0,181


4) Листинг программы (Метод Крамера, Метод Гаусса, Метод обратной матрицы).

 

Begin VB.Form frmAriel

BorderStyle = 1 'Единственный Фиксированный

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

ClientHeight = 6315

ClientLeft = 4365

ClientTop = 2430

ClientWidth = 7815

BeginProperty Font

Name = "MS Sans Serif"

Size = 12

Charset = 204

Weight = 700

Underline = 0 'False

Italic = -1 'True

Strikethrough = 0  'False

EndProperty

LinkTopic = "Форма1"

MaxButton = 0 'False

MinButton = 0 'False

ScaleHeight = 6315

ScaleWidth = 7815

Begin VB.TextBox txtMOMZ

Alignment = 2 'Выравнивание по Центру

BeginProperty Font

Name = "Times New Roman"

Size = 15.75

Charset = 204

Weight = 400

Underline = 0 'False

Italic = 0 'False

Strikethrough = 0 'False

EndProperty

Height = 375

Left = 3960

TabIndex = 45

Top = 5520

Width = 975

End

Begin VB.TextBox txtMOMY

Alignment = 2 'Выравнивание по Центру

BeginProperty Font

Name = "Times New Roman"

Size = 15.75

Charset = 204

Weight = 400

Underline = 0 'False

Italic = 0 'False

Strikethrough = 0 'False

EndProperty

Height = 375

Left = 2640

TabIndex = 44

Top = 5520

Width = 975

End

Begin VB.TextBox txtMOMX

Alignment = 2 'Выравнивание по Центру

BeginProperty DataFormat

Type = 1

Format = "0,0000"

HaveTrueFalseNull= 0

FirstDayOfWeek = 0

FirstWeekOfYear = 0

LCID = 1049

SubFormatType = 1

EndProperty

BeginProperty Font

Name = "Times New Roman"

Size = 15.75

Charset = 204

Weight = 400

Underline = 0 'False

Italic = 0 'False

Strikethrough = 0 'False

EndProperty

Height = 375

Left = 1320

TabIndex =  43

Top = 5520

Width = 975

End

Begin VB.TextBox txtMGZ

Alignment = 2 'Выравнивание по Центру

BeginProperty Font

Name = "Times New Roman"

Size = 15.75

Charset = 204

Weight = 400

Underline = 0 'False

Italic = 0 'False

Strikethrough = 0 'False

EndProperty

Height = 375

Left = 3960

TabIndex = 42

Top = 4800

Width = 975

End

Begin VB.TextBox txtMGY

Alignment = 2 'Выравнивание по Центру

BeginProperty Font

Name = "Times New Roman"

Size = 15.75

Charset = 204

Weight = 400

Underline = 0 'False

Italic = 0 'False

Strikethrough = 0 'False

EndProperty

Height = 375

Left = 2640

TabIndex = 41

Top = 4800

Width = 975

End

Begin VB.TextBox txtMGX

Alignment = 2 'Выравнивание по Центру

BeginProperty DataFormat

Type = 1

Format = "0,0000"

HaveTrueFalseNull= 0

FirstDayOfWeek = 0

FirstWeekOfYear = 0

LCID = 1049

SubFormatType =  1

EndProperty

BeginProperty Font

Name = "Times New Roman"

Size = 15.75

Charset = 204

Weight = 400

Underline = 0 'False

Italic = 0 'False

Strikethrough = 0 'False

EndProperty

Height = 375

Left = 1320

TabIndex = 40

Top = 4800

Width = 975

End

Begin VB.TextBox txtMKZ

Alignment = 2 'Выравнивание по Центру

BeginProperty Font

Name = "Times New Roman"

Size = 15.75

Charset = 204

Weight = 400

Underline = 0 'False

Italic = 0 'False

Strikethrough = 0 'False

EndProperty

Height = 375

Left = 3960

TabIndex = 39

Top = 4080

Width = 975

End

Begin VB.TextBox txtMKY

Alignment = 2 'Выравнивание по Центру

BeginProperty Font

Name = "Times New Roman"

Size = 15.75

Charset =  204

Weight = 400

Underline = 0 'False

Italic = 0 'False

Strikethrough = 0 'False

EndProperty

Height = 375

Left = 2640

TabIndex = 38

Top = 4080

Width = 975

End

Begin VB.TextBox txtMKX

Alignment = 2 'Выравнивание по Центру

BeginProperty DataFormat

Type = 1

Format = "0,0000"

HaveTrueFalseNull= 0

FirstDayOfWeek = 0

FirstWeekOfYear = 0

LCID = 1049

SubFormatType = 1

EndProperty

DataMember = "0,0000"

BeginProperty Font

Name = "Times New Roman"

Size = 15.75

Charset = 204

Weight = 400

Underline = 0 'False

Italic = 0 'False

Strikethrough  = 0 'False

EndProperty

Height = 375

Left = 1320

Locked = -1 'True

TabIndex = 37

Top = 4080

Width = 975

End

Begin VB.TextBox txtA33

Alignment = 2 'Выравнивание по Центру

BeginProperty DataFormat

Type = 1

Format = "0,000"

HaveTrueFalseNull= 0

FirstDayOfWeek = 0

FirstWeekOfYear = 0

 LCID = 1049

SubFormatType = 1

EndProperty

BeginProperty Font

Name = "Times New Roman"

Size = 14.25

Charset = 204

Weight = 700

 Underline = 0 'False

Italic = 0 'False

Strikethrough = 0 'False

EndProperty

Height = 375

Left = 4440

TabIndex = 30

Top = 2640

Width = 1095

End

Begin VB.TextBox txtA23

Alignment = 2 'Выравнивание по Центру

BeginProperty DataFormat

Type = 1

Format = "0,000"

HaveTrueFalseNull= 0

 FirstDayOfWeek = 0

FirstWeekOfYear = 0

LCID = 1049

SubFormatType = 1

EndProperty

BeginProperty Font

Name = "Times New Roman"

Size = 14.25

 Charset = 204

Weight = 700

Underline = 0 'False

Italic = 0 'False

Strikethrough = 0 'False

EndProperty

Height = 375

Left = 4440

TabIndex = 29

Top = 2040

Width = 1095

End

Begin VB.TextBox txtA13

Alignment = 2 'Выравнивание по Центру

BeginProperty DataFormat

Type = 1

Format = "0,000"

HaveTrueFalseNull= 0

FirstDayOfWeek = 0

FirstWeekOfYear = 0

LCID = 1049

SubFormatType = 1

EndProperty

BeginProperty Font

Name = "Times New Roman"

Size = 14.25

Charset = 204

Weight = 700

Underline = 0 'False

Italic = 0 'False

Strikethrough = 0 'False

EndProperty

Height = 375

Left = 4440

TabIndex = 28

Top = 1440

Width = 1095

End

Begin VB.TextBox txtA32

Alignment = 2 'Выравнивание по Центру

BeginProperty DataFormat

Type = 1

Format = "0,000"

HaveTrueFalseNull= 0

FirstDayOfWeek = 0

FirstWeekOfYear = 0

LCID = 1049

SubFormatType =  1

EndProperty

BeginProperty Font

Name = "Times New Roman"

Size = 14.25

Charset = 204

Weight = 700

Underline = 0 'False

Italic = 0 'False

Strikethrough = 0 'False

EndProperty

Height = 375

Left = 2520

TabIndex = 24

Top = 2640

Width = 1095

End

Begin VB.TextBox txtA22

Alignment = 2 'Выравнивание по Центру

BeginProperty DataFormat

Type = 1

Format = "0,000"

HaveTrueFalseNull= 0

FirstDayOfWeek = 0

FirstWeekOfYear = 0

LCID = 1049

SubFormatType = 1

EndProperty

BeginProperty Font

Name = "Times New Roman"

Size = 14.25

Charset = 204

Weight = 700

Underline = 0 'False

Italic = 0 'False

Strikethrough = 0 'False

EndProperty

Height = 375

Left = 2520

TabIndex = 23

Top = 2040

Width = 1095

End

Begin VB.TextBox txtA12

Alignment = 2 'Выравнивание по Центру

BeginProperty DataFormat

Type = 1

Format = "0,000"

HaveTrueFalseNull= 0

FirstDayOfWeek = 0

FirstWeekOfYear = 0

LCID = 1049

SubFormatType = 1

EndProperty

BeginProperty Font

Name = "Times New Roman"

Size = 14.25

 Charset = 204

Weight = 700

Underline = 0 'False

Italic = 0 'False

Strikethrough = 0 'False

EndProperty

Height = 375

Left =  2520

TabIndex = 22

Top = 1440

Width = 1095

End

Begin VB.CommandButton cmdExit

Caption = "Выход"

BeginProperty Font

Name = "Times New Roman"

Size = 14.25

Charset = 204

Weight = 700

Underline = 0 'False

Italic = -1 'True

Strikethrough = 0 'False

EndProperty

Height = 495

Left = 5400

TabIndex = 18

Top = 5520

Width = 2055

End

Begin VB.CommandButton cmdCount

Caption = "Вычислить"

BeginProperty Font

Name = "Times New Roman"

Size = 14.25

Charset = 204

Weight = 700

Underline = 0 'False

Italic = -1 'True

Strikethrough = 0 'False

EndProperty

Height = 495

Left = 5400

TabIndex = 17

Top = 4680

Width = 2055

End

Begin VB.CommandButton cmdClean

Caption = "Очистить"

BeginProperty Font

Name = "Times New Roman"

Size = 14.25

Charset = 204

Weight = 700

Underline = 0 'False

Italic = -1 'True

Strikethrough = 0 'False

EndProperty

Height = 495

Left = 5400

TabIndex = 16

Top = 3840

Width = 2055

End

Begin VB.TextBox txtB3

Alignment = 2 'Выравнивание по Центру

BeginProperty DataFormat

Type = 1

Format = "0,000"

HaveTrueFalseNull= 0

FirstDayOfWeek = 0

FirstWeekOfYear = 0

LCID = 1049

SubFormatType = 1

EndProperty

BeginProperty Font

Name = "Times New Roman"

Size = 14.25

Charset = 204

Weight = 700

Underline = 0 'False

Italic = 0 'False

Strikethrough = 0 'False

EndProperty

Height = 375

Left = 6480

TabIndex = 12

Top = 2640

Width = 1095

End

Begin VB.TextBox txtB2

Alignment = 2 'Выравнивание по Центру

BeginProperty DataFormat

Type = 1

Format = "0,000"

HaveTrueFalseNull= 0

 FirstDayOfWeek = 0

FirstWeekOfYear = 0

LCID = 1049

SubFormatType = 1

EndProperty

BeginProperty Font

Name = "Times New Roman"

Size = 14.25

Charset = 204

Weight = 700

Underline = 0 'False

Italic = 0 'False

Strikethrough = 0 'False

EndProperty

Height = 375

Left = 6480

TabIndex = 11

Top = 2040

Width = 1095

End

Begin VB.TextBox txtB1

Alignment = 2 'Выравнивание по Центру

BeginProperty DataFormat

Type = 1

 Format = "0,000"

HaveTrueFalseNull= 0

FirstDayOfWeek = 0

FirstWeekOfYear = 0

LCID = 1049

SubFormatType = 1

EndProperty

BeginProperty Font

Name = "Times New Roman"

Size = 14.25

Charset = 204

Weight = 700

Underline = 0 'False

Italic = 0 'False

Strikethrough = 0 'False

EndProperty

Height = 375

Left = 6480

TabIndex = 10

Top = 1440

Width = 1095

End

Begin VB.TextBox txtA31

Alignment = 2 'Выравнивание по Центру

BeginProperty DataFormat

Type = 1

Format = "0,000"

HaveTrueFalseNull= 0

FirstDayOfWeek = 0

FirstWeekOfYear = 0

LCID = 1049

SubFormatType = 1

EndProperty

BeginProperty Font

Name = "Times New Roman"

Size = 14.25

Charset = 204

Weight = 700

Underline = 0 'False

Italic = 0 'False

Strikethrough = 0 'False

EndProperty

Height = 375

Left = 600

TabIndex = 9

Top = 2640

Width = 1095

End

Begin VB.TextBox txtA21

Alignment = 2 'Выравнивание по Центру

BeginProperty DataFormat

Type = 1

Format = "0,000"

HaveTrueFalseNull= 0

FirstDayOfWeek = 0

FirstWeekOfYear = 0

LCID = 1049

SubFormatType = 1

EndProperty

BeginProperty Font

Name = "Times New Roman"

Size = 14.25

Charset = 204

Weight = 700

Underline = 0 'False

Italic = 0 'False

Strikethrough = 0 'False

EndProperty

Height = 375

Left = 600

TabIndex = 8

Top = 2040

Width = 1095

End

Begin VB.TextBox txtA11

Alignment = 2 'Выравнивание по Центру

BeginProperty DataFormat

Type = 1

Format = "0,0000"

 HaveTrueFalseNull= 0

FirstDayOfWeek = 0

FirstWeekOfYear = 0

LCID = 1049

SubFormatType = 1

EndProperty

BeginProperty Font

Name = "Times New Roman"

Size = 14.25

Charset = 204

Weight = 700

Underline = 0 'False

Italic = 0 'False

Strikethrough = 0 'False

EndProperty

Height = 375

Left = 600

TabIndex = 7

Top = 1440

Width = 1095

End

Begin VB.Line Строка3

X1 = 5760

X2 = 5760

Y1 = 1080

Y2 = 3360

End

Begin VB.Label Метка29

Caption = "Z"

BeginProperty Font

Name = "Times New Roman"

Size = 12

Charset = 204

Weight = 700

Underline = 0 'False

Italic = 0 'False

Strikethrough = 0 'False

EndProperty

Height = 255

Left = 4920

TabIndex = 36

Top  = 1080

Width = 255

End

Begin VB.Label Метка28

Caption = "Y"

BeginProperty Font

Name = "Times New Roman"

Size = 12

Charset = 204

Weight = 700

Underline = 0 'False

Italic = 0 'False

Strikethrough = 0 'False

EndProperty

Height = 255

Left = 3000

TabIndex =  35

Top = 1080

Width = 255

End

Begin VB.Label Метка27

Caption = "X"

BeginProperty Font

Name = "Times New Roman"

Size = 12

Charset  = 204

Weight = 700

Underline = 0 'False

Italic = 0 'False

Strikethrough = 0 'False

EndProperty

Height = 375

Left = 1080

TabIndex = 34

Top = 1080

Width = 255

End

Begin VB.Label Метка23

Caption = "Z"

BeginProperty Font

Name = "Times New Roman"

Size = 12

Charset = 204

Weight = 700

Underline = 0 'False

Italic = 0 'False

Strikethrough = 0 'False

EndProperty

Height = 255

Left = 4440

TabIndex = 33

Top = 3480

Width = 255

End

Begin VB.Label Метка22

Caption = "Y"

BeginProperty Font

Name = "Times New Roman"

Size = 12

Charset = 204

Weight = 700

Underline = 0 'False

Italic = 0 'False

Strikethrough = 0 'False

EndProperty

Height = 255

Left = 3120

TabIndex = 32

Top = 3480

Width = 255

End

Begin VB.Label Метка21

Caption = "X"

BeginProperty Font

Name = "Times New Roman"

Size = 12

Charset = 204

Weight = 700

Underline = 0 'False

Italic = 0 'False

Strikethrough = 0 'False

EndProperty

Height = 255

Left = 1800

TabIndex = 31

Top = 3480

Width = 255

End

Begin VB.Label Метка20

Caption = "А33"

BeginProperty Font

Name = "Times New Roman"

Size = 12

Charset = 204

Weight = 700

Underline = 0 'False

Italic = 0 'False

Strikethrough = 0  'False

EndProperty

Height = 375

Left = 3840

TabIndex = 27

Top = 2640

Width = 375

End

Begin VB.Label Метка19

Caption = "А23"

BeginProperty Font

Name = "Times New Roman"

Size = 12

Charset = 204

Weight = 700

Underline = 0 'False

Italic = 0 'False

Strikethrough = 0 'False

EndProperty

Height = 375

Left = 3840

TabIndex = 26

Top = 2040

Width = 375

End

Begin VB.Label Метка18

Caption = "А13"

BeginProperty Font

Name = "Times New Roman"

Size = 12

Charset = 204

Weight = 700

Underline = 0 'False

Italic = 0 'False

Strikethrough = 0 'False

EndProperty

Height = 375

Left = 3840

TabIndex = 25

Top = 1440

Width = 375

End

Begin VB.Label Метка17

Caption  = "А32"

BeginProperty Font

Name = "Times New Roman"

Size = 12

Charset = 204

Weight = 700

Underline = 0 'False

Italic = 0 'False

Strikethrough = 0 'False

EndProperty

Height = 375

Left = 1920

TabIndex = 21

Top = 2640

Width = 375

End

Begin VB.Label Метка16

Caption = "А22"

BeginProperty Font

Name = "Times New Roman"

Size = 12

Charset = 204

Weight = 700

Underline = 0 'False

Italic = 0 'False

Strikethrough = 0 'False

EndProperty

Height = 375

Left = 1920

TabIndex = 20

Top = 2040

Width = 375

End

Begin VB.Label Метка15

Caption = "А12"

BeginProperty Font

Name = "Times New Roman"

Size = 12

Charset = 204

Weight = 700

Underline = 0 'False

Italic = 0 'False

Strikethrough = 0 'False

EndProperty

Height = 375

Left = 1920

TabIndex = 19

Top = 1440

Width = 375

End

Begin VB.Line Строка2

X1 = 0

X2 = 7800

Y1 = 3360

Y2 = 3360

End

Begin VB.Label Метка12

Alignment = 2 'Выравнивание по Центру

Caption = "Метод обратной матрицы"

BeginProperty Font

Name = "Times New Roman"

Size = 11.25

Charset = 204

Weight = 700

Underline = 0 'False

Italic = 0 'False

Strikethrough = 0 'False

EndProperty

Height = 855

Left = 0

TabIndex = 15

Top = 5280

Width = 1095

End

Begin VB.Label Метка11

Alignment = 2 'Выравнивание по Центру

Caption = "Метод Гаусса"

BeginProperty Font

Name = "Times New Roman"

Size = 11.25

Charset = 204

Weight = 700

Underline = 0 'False

Italic = 0 'False

Strikethrough = 0 'False

EndProperty

Height = 615

Left = 0

TabIndex = 14

Top = 4560

Width = 1095

End

Begin VB.Label Метка10

Alignment = 2 'Выравнивание по Центру

Caption = "Метод Крамера"

BeginProperty Font

Name = "Times New Roman"

Size = 11.25

Charset = 204

Weight = 700

Underline = 0 'False

Italic = 0 'False

Strikethrough = 0 'False

EndProperty

Height = 615

Left = 0

TabIndex = 13

Top = 3840

Width = 1095

End

Begin VB.Label Метка7

Caption = "В3"

BeginProperty Font

Name = "Times New Roman"

Size = 12

Charset = 204

Weight = 700

Underline = 0 'False

Italic = 0 'False

Strikethrough = 0 'False

EndProperty

Height = 375

Left = 6000

TabIndex = 6

Top = 2640

Width = 255

End

Begin VB.Label Метка6

Caption  = "В2"

BeginProperty Font

Name = "Times New Roman"

Size = 12

Charset = 204

Weight = 700

Underline = 0 'False

Italic = 0 'False

Strikethrough = 0 'False

EndProperty

Height = 375

Left = 6000

TabIndex = 5

Top = 2040

Width = 255

End

Begin VB.Label Метка5

Caption = "В1"

BeginProperty Font

Name = "Times New Roman"

Size = 12

Charset = 204

Weight = 700

Underline = 0 'False

Italic = 0 'False

Strikethrough = 0 'False

EndProperty

Height = 375

Left = 6000

TabIndex = 4

Top = 1440

Width = 255

End

Begin VB.Label Метка4

Caption = "А31"

BeginProperty Font

Name = "Times New Roman"

Size = 12

Charset = 204

Weight = 700

Underline = 0 'False

 Italic = 0 'False

Strikethrough = 0 'False

EndProperty

Height = 375

Left = 0

TabIndex = 3

Top = 2640

Width = 375

End

Begin VB.Label Метка3

Caption = "А21"

BeginProperty Font

Name = "Times New Roman"

Size = 12

Charset = 204

Weight = 700

Underline =  0 'False

Italic = 0 'False

Strikethrough = 0 'False

EndProperty

Height = 375

Left = 0

TabIndex = 2

Top = 2040

Width = 375

End

Begin VB.Label Метка2

Caption = "А11"

BeginProperty Font

Name = "Times New Roman"

Size = 12

Charset = 204

Weight = 700

Underline = 0 'False

Italic = 0 'False

Strikethrough = 0 'False

EndProperty

Height = 375

Left = 0

TabIndex = 1

Top = 1440

Width = 375

End

Begin VB.Label Метка1

Caption = $"frmSlay.frx":0000

BeginProperty Font

Name = "Times New Roman"

Size = 12

Charset = 204

Weight = 700

Underline = 0 'False

Italic = 0 'False

Strikethrough = 0 'False

EndProperty

Height = 855

Left = 120

TabIndex = 0

Top = 120

Width = 7575

End

End

Attribute VB_Name = "frmAriel"

Attribute VB_GlobalNameSpace = False

Attribute VB_Creatable = False

Attribute VB_PredeclaredId = True

Attribute VB_Exposed = False

Private Sub cmdClean_Click()

Dim с As Byte

с = MsgBox("Хотите очистить?", 33, "Очистка")

If с = 1 Then

txtA11.Text = ""

txtA12.Text = ""

txtA13.Text = ""

txtA21.Text = ""

txtA22.Text = ""

txtA23.Text = ""

txtA31.Text = ""

txtA32.Text = ""

txtA33.Text = ""

txtB1.Text = ""

txtB2.Text = ""

txtB3.Text = ""

txtMKX.Text = ""

txtMGX.Text = ""

txtMOMX.Text = ""

txtMKY.Text = ""

txtMGY.Text = ""

txtMOMY.Text = ""

txtMKZ.Text = ""

txtMGZ.Text = ""

txtMOMZ.Text = ""

End If

End Sub

 

Private Sub cmdCount_Click()

If (Val(txtA11) * Val(txtA22) * Val(txtA33) + Val(txtA12) * Val(txtA23) * Val(txtA31) + Val(txtA21) * Val(txtA32) * Val(txtA13) - Val(txtA13) * Val(txtA22) * Val(txtA31) - Val(txtA12) * Val(txtA21) * Val(txtA33) - Val(txtA23) * Val(txtA32) * Val(txtA11)) = 0 Then

Dim g As Byte

g = MsgBox("Решить данную систему методом Крамера и методом обратной матрицы невозможно", 32, "Определитель системы равен 0")

Else

ds = (Val(txtA11) * Val(txtA22) * Val(txtA33) + Val(txtA12) * Val(txtA23) * Val(txtA31) + Val(txtA21) * Val(txtA32) * Val(txtA13) - Val(txtA13) * Val(txtA22) * Val(txtA31) - Val(txtA12) * Val(txtA21) * Val(txtA33) - Val(txtA23) * Val(txtA32) * Val(txtA11))

dx = (Val(txtB1) * Val(txtA22) * Val(txtA33) + Val(txtA12) * Val(txtA23) * Val(txtB3) + Val(txtB2) * Val(txtA32) * Val(txtA13) - Val(txtA13) * Val(txtA22) * Val(txtB3) - Val(txtA12) * Val(txtB2) * Val(txtA33) - Val(txtA23) * Val(txtA32) * Val(txtB1))

dy = (Val(txtA11) * Val(txtB2) * Val(txtA33) + Val(txtB1) * Val(txtA23) * Val(txtA31) + Val(txtA21) * Val(txtB3) * Val(txtA13) - Val(txtA13) * Val(txtB2) * Val(txtA31) - Val(txtB1) * Val(txtA21) * Val(txtA33) - Val(txtA23) * Val(txtB3) * Val(txtA11))

dz = (Val(txtA11) * Val(txtA22) * Val(txtB3) + Val(txtA12) * Val(txtB2) * Val(txtA31) + Val(txtA21) * Val(txtA32) * Val(txtB1) - Val(txtB1) * Val(txtA22) * Val(txtA31) - Val(txtA12) * Val(txtA21) * Val(txtB3) - Val(txtB2) * Val(txtA32) * Val(txtA11))

txtMKX.Text = (dx / ds)

txtMKY.Text = (dy / ds)

txtMKZ.Text = (dz / ds)

txtMOMX.Text = (((Val(txtA22) * Val(txtA33) - Val(txtA23) * Val(txtA32)) / ds) * Val(txtB1) + ((Val(txtA13) * Val(txtA32) - Val(txtA12) * Val(txtA33)) / ds) * Val(txtB2) + ((Val(txtA12) * Val(txtA23) - Val(txtA13) * Val(txtA22)) / ds) * Val(txtB3))

txtMOMY.Text = (((Val(txtA23) * Val(txtA31) - Val(txtA21) * Val(txtA33)) / ds) * Val(txtB1) + ((Val(txtA11) * Val(txtA33) - Val(txtA13) * Val(txtA31)) / ds) * Val(txtB2) + ((Val(txtA13) * Val(txtA21) - Val(txtA11) * Val(txtA23)) / ds) * Val(txtB3))

txtMOMZ.Text = (((Val(txtA21) * Val(txtA32) - Val(txtA22) * Val(txtA31)) / ds) * Val(txtB1) + ((Val(txtA12) * Val(txtA31) - Val(txtA11) * Val(txtA32)) / ds) * Val(txtB2) + ((Val(txtA11) * Val(txtA22) - Val(txtA12) * Val(txtA21)) / ds) * Val(txtB3))

End If

If Val(txtA11) = 0 Then

Dim gg As Byte

gg = MsgBox("Решить данную систему методом Гаусса невозможно. Поменяйте уравнения местами, и попробуйте снова", 48, "Коэффициент при х в первом уравнении равен 0")

Else

s1 = ((Val(txtB3) * Val(txtA11)) - (Val(txtB1) * Val(txtA31)))

s2 = ((Val(txtA22) * Val(txtA11)) - (Val(txtA12) * Val(txtA21)))

s3 = ((Val(txtB2) * Val(txtA11)) - (Val(txtB1) * Val(txtA21)))

s4 = ((Val(txtA32) * Val(txtA11)) - (Val(txtA12) * Val(txtA31)))

s5 = ((Val(txtA33) * Val(txtA11)) - (Val(txtA12) * Val(txtA31)))

s6 = s2

s7 = ((Val(txtA23) * Val(txtA11)) - (Val(txtA13) * Val(txtA21)))

s8 = s4

s12 = s1 * s2

s34 = s3 * s4

s56 = s5 * s6

s78 = s7 * s8

sh = s12 - s34

sz = s56 - s78

If sz = 0 Then

Dim с As Byte

с = MsgBox("Делить на ноль нельзя.", 48, "Ошибка")

Else

txtMGZ.Text = (sh / sz)

End If

sy1 = s3

sy2 = s2

sy3 = ((Val(txtA23) * Val(txtA11)) - (Val(txtA13) * Val(txtA21)))

sy4 = s2

sy12 = (sy1) / (sy2)

sy34 = (sy3) / (sy4)

txtMGY.Text = ((sy12) - ((sy34) * (sh / sz)))

sx1 = ((Val(txtB1)) / (Val(txtA11)))

sx2 = ((Val(txtA13)) / (Val(txtA11)))

sx3 = ((Val(txtA12)) / (Val(txtA11)))

txtMGX.Text = ((sx1) - ((sx2) * (sh / sz)) - ((sx3) * ((sy12) - ((sy34) * (sh / sz)))))

End If

 

End Sub

 

Private Sub cmdExit_Click()

Dim a As Byte

a = MsgBox("Хотите выйти?", 33, "Выход")

If a = 1 Then

End

End If

End Sub



Польза введения расчетов.

 

Огромное количество численных методов ставит актуальной задачей не столько создание новых, сколько исследование и классификацию старых, выявление лучших. Анализ влияния ошибок показал, что между лучшими методами нет принципиальной разницы с точки зрения устойчивости к ошибкам округления. Создание мощных компьютеров существенно ослабило значение различия между методами (в таких характеристиках, как объём требуемой памяти, количество арифметических операций). В этих условия наиболее предпочтительными становятся те методы, которые не очень отличаются от лучших по скорости и удобству реализации на компьютерах, позволяют решать широкий класс задач как хорошо, так и плохо обусловленных и давать при этом оценку точности вычислительного решения.

В MathCAD и Excel численные методы представляют собой те же самые общепринятые ручные расчёты, но выполняемые не человеком, а компьютером, что понижает возможность ошибки до нуля. Программа на Visual Basic намного упрощает задачу. С помощью единожды созданной программы можно решать системы линейных уравнений, вводя минимум значений. Также эта программа может быть использована не только вами, но и простыми пользователями.


                                 III.         Литература

 

1) М. Додж, К. Кината, К. Стинсон "Эффективная работа в Microsoft Excel 97", издательство "Питер"; Санкт-Петербург, 1998г.

2) Е.К. Овчаренко, О.П. Ильина, Е.В. Балыбердин "Финансово - экономические расчеты в Excel", Москва, 1999 г.

3) Йорг Шиб, Excel 7,0: Сотни полезных рецептов, Дюссельдорф-Киев-Москва- Санкт-Петербург, 1997 г.

4) Симонович С.В. и др. Информатика Базовый курс: Учеб, для технических вузов. СПБ: Изд. «Питер», 2004.–640с

5) Калиткин Н.Н. и др. Численные методы. М.: Наука, 1982

6) Турчак Л.И. Основы численных методов. М.: Наука, 1987

7) Дьяконов В.П. Система MathCAD. М.: Радио и связь, 1993

 


Информация о работе «Численные методы решения систем линейных уравнений»
Раздел: Информатика, программирование
Количество знаков с пробелами: 43269
Количество таблиц: 5
Количество изображений: 8

Похожие работы

Скачать
25754
0
6

... , с помощью которых в последующем решение систем линейных уравнений станет намного проще, понятнее и быстрее. Цель моей работы заключается в том, чтобы изучить различные способы решения систем линейных уравнений для применения их на практике. Для достижения любой цели необходимо выполнить какие-то определенные задачи. Мне нужно выполнить следующие задачи: исследовать литературу по темам матриц, ...

Скачать
37732
2
12

... - функции f. Дальше, имеем: . Отсюда , где W'(x) - транспонированная матрица Якоби. Поэтому окончательно , причем . 3. Программная реализация итерационных методов Реализация алгоритмов итерационных методов решения систем нелинейных уравнений будет показана на примере системы: 3.1 Метод простых итераций Приведём систему к виду: Проверим условие ...

Скачать
14346
0
5

... треугольной матрицей. Вычисления значений неизвестных производят на этапе обратного хода. Целью данной курсовой работы является численное решение системы линейных уравнений с помощью метода исключения Гаусса с выбором главного элемента по столбцу. 1 Постановка задачи Задача ставится следующим образом. Пусть требуется найти решение системы линейных алгебраических уравнений a1,1x1 + a1, ...

Скачать
12957
0
3

... -1 х3 = 1 х4 = 2 3.  Преимущества и недостатки метода Гаусса   Итак, метод Гаусса применим к любой системе линейных уравнений, он идеально подходит для решения систем, содержащих больше трех линейных уравнений. Метод Гаусса решения СЛАУ с числовыми коэффициентами в силу простоты и однотипности выполняемых операций пригоден для счета на электронно-вычислительных машинах. Достоинства метода: ...

0 комментариев


Наверх