Практическая работа №1

по курсу

«Компьютерное моделирование химических процессов»

Компьютерное моделирование простой гидравлической системы в динамического режиме

Группа: Ф34___________

Фамилия И.О.: Саленек А. А.__

Вариант № 33____________

Преподаватель: Новикова Д. К.

Раздел 1. Задание направления движения потоков и обозначений для варианта 33 простой гидравлической системы.

допущения:

- во всех трубах протекает однофазный поток жидкости, температура которого одинакова на всех участках;

- все трубы располагаются на одном уровне, в системе нет обратных потоков (рециклов), не учитываются местные сопротивления и перепады давлений в трубах, т.е. рассматриваются, т.н. короткие трубопроводы;

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

Раздел 2. Составление системы уравнений математического описания для варианта 33 простой гидравлической системы.

А) Уравнения для определения скорости потоков жидкости через клапаны:

1)

2)

3)

4)

5)

6)

В) Запишем дифференциальные уравнения, отражающие изменения уровней жидкости в емкостях:

7)

8)

C) Начальные условия для уравнений (7) и (8):

9)

10)

D) Уравнения для определения давлений жидкости в закрытых емкостях:

11)

12)

13)

14)

Представим дифференциальные уравнения в конечно-разностной форме в следующем виде:

(7*)

(8*)

Где i=0…..k (k-число шагов интегрирования)

Комментарии по составу системы и виду уравнений:

- входной параметр

, , , - выходные параметры

- технические параметры

- конструкционные параметры

- точность расчета

В качестве определяемых выбираются следующие переменные:

,, ,

Раздел 3. Составление информационной матрицы системы уравнений математического описания варианта 33 простой гидравлической системы.

Раздел 4. Составление блок-схемы алгоритма расчёта варианта 33 динамического режима простой гидравлической системы.

Раздел 5. Написание (изменение) компьютерной программы для расчёта варианта 33 динамического режима простой гидравлической системы.

Option Explicit

Option Base 1

Const m As Byte = 2 'Количество решаемых ОДУ

Const np% = 9, nk% = 6, g! = 9.815, rn = 25

' rn - расход насоса [кг/с]. Используется при моделировании возмущения в простой гидравлической системе

Public del! 'øàã

Private y0!(m), x0! 'Начальные условия

Private n% 'Число шагов

Private kv% 'Кратность вывода

Private x1!, y1!(m), ki!, ki1!, ki2!, vm!(nk), v!(nk), ak!(nk), p!(np)

Private hg!(m), h!(m), s!(m), pr!(m), ro!, pn!, x!, ipr%, ipr1%, i%

' Используем стандартную функцию sgn(a), которая возвращает (-1)a<0 (1)a>0 (0)a=0

Sub dydx(x As Single, y() As Single, pr!())

'Расчет производных для текущих(pr) x,y

Dim j%

For j = 1 To m: h(j) = y(j): Next j

p(8) = pn * hg(1) / (hg(1) - h(1))

p(9) = pn * hg(2) / (hg(2) - h(2))

p(6) = p(8) + ro * g * h(1)

p(7) = p(9) + ro * g * h(2)

v(1) = ak(1) * Sgn(p(1) - p(6)) * Sqr(Abs(p(1) - p(6)))

v(2) = ak(2) * Sgn(p(7) - p(2)) * Sqr(Abs(p(7) - p(2)))

v(3) = ak(3) * Sgn(p(6) - p(3)) * Sqr(Abs(p(6) - p(3)))

v(4) = ak(4) * Sgn(p(6) - p(4)) * Sqr(Abs(p(6) - p(4)))

v(5) = ak(5) * Sgn(p(6) - p(5)) * Sqr(Abs(p(6) - p(5)))

v(6) = ak(6) * Sgn(p(6) - p(7)) * Sqr(Abs(p(6) - p(7)))

pr(1) = (v(1) - v(3) - v(4) - v(5) - v(6)) / s(1)

pr(2) = (v(6) - v(2)) / s(2)

For j = 1 To 6: vm(j) = v(j) * ro: Next j

With Worksheets("Ëèñò3")

If ki > 0 And ki < 3 Then

If ki = 2 Then

.Cells(ipr, 1) = i: .Cells(ipr, 2) = "p(5-7)": .Cells(ipr, 3) = "vm"

.Cells(ipr, 4) = p(6):

.Cells(ipr, 5) = p(7):

.Cells(ipr, 6) = p(8):

.Cells(ipr, 7) = p(9):

.Cells(ipr, 8) = vm(1):

.Cells(ipr, 9) = vm(2):

.Cells(ipr, 10) = vm(3):

.Cells(ipr, 11) = vm(4):

.Cells(ipr, 12) = vm(5):

.Cells(ipr, 13) = vm(6):

ipr = ipr + 1

End If

.Cells(ipr, 2) = "x": .Cells(ipr, 4) = "y(1-2)": .Cells(ipr, 7) = "pr(1-2)"

.Cells(ipr, 3) = x: .Cells(ipr, 5) = y(1): .Cells(ipr, 6) = y(2)

.Cells(ipr, 8) = pr(1): .Cells(ipr, 9) = pr(2): ipr = ipr + 1

End If

If ipr = 180 Then ipr = 1

End With

End Sub

Sub step(x As Single, y() As Single, del As Single, x1 As Single, y1() As Single)

'Шаг интегрирования по X и Y расчет X1 и Y1

Dim y12!(m), j%

Call dydx(x, y, pr)

For j = 1 To m: y12(j) = y(j) + del * pr(j) / 2: Next j

Call dydx(x + del / 2, y12, pr): x1 = x + del

For j = 1 To m: y1(j) = y(j) + del * pr(j): Next j

End Sub

Public Sub gidra()

Dim j%

Static x0s!, y0s!(2)

ipr = 1: ipr1 = 1

With Worksheets("Ëèñò1")

hg(1) = .Cells(4, 5):

hg(2) = .Cells(5, 5):

s(1) = .Cells(4, 9):

s(2) = .Cells(5, 9)

ro = .Cells(6, 5):

pn = .Cells(6, 9) / 0.000001

' Давление (1-5) [Па]

For i = 1 To 5: p(i) = .Cells(8, i + 4) / 0.000001: Next i

' Коэф. пpопускной способности (1-6)

For i = 1 To 6: ak(i) = .Cells(9, i + 4) * 0.001: Next i

' Начальные условия x0,y0(1),y0(2)

x0 = .Cells(10, 5): y0(1) = .Cells(10, 6): y0(2) = .Cells(10, 7)

' Число шагов, шаг, кратность вывода

n = (.Cells(11, 5) \ 20) * 20: del = .Cells(11, 6): kv = n \ 20

' Режимы вывода данных

ki1 = .Cells(12, 5): ki2 = .Cells(13, 5)

End With

Worksheets("Ëèñò3").Activate

Cells.Select

Selection.Clear

Range("a1").Select

Worksheets("Ëèñò2").Activate

Cells.Select

Selection.Clear

Range("a1").Select

For i = 1 To n

'Возмущение на середине моделируемого интервала времени

If i = n \ 2 + 1 Then ak(5) = ak(1)

ki = ki1: Call step(x0, y0, del, x1, y1): x0 = x1: x0s = x0

For j = 1 To m: y0(j) = y1(j): y0s(j) = y0(j): Next j

If (i \ kv) = (i / kv) Then

If ki2 = 1 Then

With Worksheets("Ëèñò2")

If ipr1 = 1 Then

.Cells(ipr1, 1) = "x0"

.Cells(ipr1, 2) = "y0(1)"

.Cells(ipr1, 3) = "y0(2)"

.Cells(ipr1, 4) = "vm(1)"

.Cells(ipr1, 5) = "общ.м.баланс": ipr1 = ipr1 + 1

End If

.Cells(ipr1, 1) = x0

.Cells(ipr1, 2) = y0(1)

.Cells(ipr1, 3) = y0(2)

.Cells(ipr1, 4) = vm(1)

.Cells(ipr1, 5) = vm(6) - vm(2)

ipr1 = ipr1 + 1

End With

End If

If ki2 = 2 Then ki = ki2: Call dydx(x0, y0, pr)

End If

Next i

End Sub

x0

y0(1)

y0(2)

345

8,422174454

4,79282093

690

9,255291939

9,239433289

1035

9,290296555

9,474246979

1379,9

9,290296555

9,474246979

1724,9

9,290296555

9,474246979

2069,9

9,290296555

9,474246979

2414,8

9,290296555

9,474246979

2759,8

9,290296555

9,474246979

3104,8

9,290296555

9,474246979

3449,8

9,290296555

9,474246979

3794,7

9,290296555

9,474246979

4139,7

9,290296555

9,474246979

4484,7

9,290296555

9,474246979

4829,6

9,290296555

9,474246979

5174,6

9,290296555

9,474246979

5519,6

9,290296555

9,474246979

5864,6

9,290296555

9,474246979

6209,5

9,290296555

9,474246979

6554,5

9,290296555

9,474246979

6899,5

9,290296555

9,474246979

Динамика гидравлической системы

При загрузке системы рекомендуется прикрыть вентили в линиях связи емкостей (уменьшить коэф. пропускной способности)

Высота емкости

Площадь основ. Емкости

1-ой (метр) =

10

1-ой (метр) =

1

2-ой (метр) =

10

2-ой (метр) =

1

Плотность (кг/м^3) =

1000

Нач.давление (Мпа) =

0,1

Давление (1-5) /Мпа/ =

4

2

0,11

2

0,11

Коэф. пpоп. способности (1-6) /10^-3/ =

0,01

0,01

0,01

0,01

0,01

0,001

Начальные условия x0, y0(1), y0(2) =

0

0

0

Число шагов, шаг /с/ =

30000

0,23

1500

Промеж. вывод. 0-нет, 1-частич, 2-полный =

0

Вывод результата. 0-нет,1-частич,2-полный =

1

x0

y0(1)

y0(2)

225

6,209883213

3,122819662

449,99

9,16972065

6,260247707

675,01

9,251279831

9,10949707

900,05

9,290266991

9,474243164

1125,1

9,290266991

9,474243164

1350,1

9,290266991

9,474243164

1575,2

9,290266991

9,474243164

1800,2

9,290266991

9,474243164

2025,2

9,290266991

9,474243164

2250,1

8,494345234

9,266787862

2475

7,745324535

9,066786259

2699,8

8,345324546

9,266247786

2924,7

9,045234539

9,47424311

3149,5

9,290266786

9,474243452

3374,4

9,290266786

9,474243165

3599,2

9,290266786

9,474243165

3824,1

9,290266786

9,474243165

4048,9

9,290266786

9,474243453

4273,8

9,290266786

9,474243164

4498,6

9,290266786

9,474243165

Динамика гидравлической системы

При загрузке системы рекомендуется прикрыть вентили в линиях связи емкостей (уменьшить коэф. пропускной способности)

Высота емкости

Площадь основ. Емкости

1-ой (метр) =

10

1-ой (метр) =

1

2-ой (метр) =

10

2-ой (метр) =

1

Плотность (кг/м^3) =

1000

Нач.давление (Мпа) =

0,1

Давление (1-5) /Мпа/ =

4

2

0,11

2

0,11

Коэф. пpоп. способности (1-6) /10^-3/ =

0,01

0,01

0,01

0,01

0,01

0,001

Начальные условия x0, y0(1), y0(2) =

0

0

0

Число шагов, шаг /с/ =

30000

0,15

15000

Промеж. вывод. 0-нет, 1-частич, 2-полный =

0

Вывод результата. 0-нет,1-частич,2-полный =

1

Соседние файлы в папке Работа 2 - Вариант 33 - Новикова - Саленек - 2006
  • #
    07.01.201462.46 Кб7902.xls
  • #
    07.01.2014531.46 Кб1452.doc