Similar presentations:
Моделирование простой гидравлической системы в стационарном режиме
1. Методические рекомендации к выполнению лабораторной работы № 1 по теме «Моделирование простой гидравлической системы в
стационарном режиме»Преподаватель – Советин Филипп Сергеевич,
кандидат технических наук, доцент
2. Создать папкуC:\Users\HP\Documents\О-33
3. Разместить в своей папке программы для выполнения ЛР
4. Запустить пакет МАТЛАБ Помнить, что МАТЛАБовские работы открывать только в среде МАТЛАБ
5.
В среде МАТЛАБ открыть программный код длявыполнения ЛР № 1
Главная
Программа и
м-файл
Функция
должны
находиться в
одной папке
Пока что необходимо открыть только два
выделенных файла
6.
для переключения на текущую директориюнеобходимо запустить программу
7.
Для этого курсор должен быть в программе главной программеgidrstat и запустить следующим образом
8.
Программа требует сменить директорию, сменить её9.
10.
Был проведён запуск программы моделированияПГС, той, ПГС, которая была разобрана на
семинаре.
Результаты выводятся в командное окно пакета
МАТЛАБ
11. Изменение программы для моделирования своей ПГС, в соотв. своему варианту
ФРАГМЕНТ ПРОГРАММЫ (гл. программы)%np-количество давлений (всего);nk-количество вентилей;nv-количество ур..
np=8; nk=5; nv=11; hg=[10,10]; ro=1000;
disp ('Высота емкостей'); disp(hg(1:2));
disp ('плотность (кг/м3)'); disp(ro);
%давления вводить в системе СИ
disp ('Начальное давление (Па)'); pn=100000;
%неизвестные давления отмечены в блоке ввода нулями
%если давлений больше, чем в данной задаче, то массив p надо
раздвинуть
%чтобы жидкостьть шла в выбранном направлении давления на входе. должно
быть больше, чем давление на выходе
%именно поэтому p1= 1 МПа, p2=1 Мпа, а p3=0.1 МПа, p4=0.1 МПа
%Давления вводятся в Па!!!
disp ('Давление (1-4 5-8)'); p=[1000000, 1000000, 100000, 100000, 0, 0, 0, 0];
%если вентилей больше, чем в данной задаче, то массив k надо раздвинуть
disp ('Коэф. пропускной способности (1-5)'); k=[0.02, 0.01, 0.01, 0.01, 0.03];
Синим цветом выделен кусок программы, который изменяется
12.
function fx=func(x)%м-файл-функция
%ВНИМАНИЕ - НИ В КОЕМ СЛУЧАЕ НАЗВАНИЕ м-ФАЙЛА-ФУНКЦИИ НЕ МЕНЯТЬ!!!
global ro pn p ak h hg g v
%уравнения записываются в соответствии последовательности в информационной матрице
%ВНИМАНИЕ ПЕРЕД ЗНАКОМ = записывается величина, находящаяся в ромбике
h(1) = x;
%шаг № 1
p(7) = pn * hg(1) / (hg(1) - h(1));
%шаг № 2
p(5) = p(7) + ro * g * h(1);
%шаг № 3
v(1) = ak(1) *sign(p(1) - p(5)) * sqrt(abs(p(1) - p(5)));
%шаг № 4
v(3) = ak(3) *sign(p(5) - p(3)) * sqrt(abs(p(5) - p(3)));
%шаг № 5
v(5) = v(1) - v(3);
%шаг № 6
p(6) = p(5) - sign(v(5)) * (v(5) / ak(5)) ^ 2;
%шаг № 7
v(2) = ak(2) *sign(p(2) - p(6)) * sqrt(abs(p(2) - p(6)));
%шаг № 8
v(4) = ak(4) *sign(p(6) - p(4)) * sqrt(abs(p(6) - p(4)));
%корректирующее уравнение - шаг № 9
fx = (v(2) + v(5) - v(4)) * ro;
end
Мои комментарии читать внимательно. После исправления
необходимо сххранить изменения в м-файле функции
13.
Прошу обратить внимание, что подобноеуравнение
p(6) = p(5) - sign(v(5)) * (v(5) / ak(5)) ^ 2;
встречается АБСОЛЮТНО ВО ВСЕХ ВАРИАНТАХ
14. Далее решение квадратного уравнения:
%a,b,c - коэффициенты кв. ур.a = -ro * g; b = p(6) + ro * g * hg(2);
c = (pn-p(6)) * hg(2);
h(2) = (-b + sqrt(b * b - 4 * a * c)) / (2 * a);
p(8) = pn * hg(2) / (hg(2) - h(2));
vm = v* ro;
p(6) – давление жидкости в закрытой
ёмкости № 2,
p(8) – давление газа над жидкостью в закрытой
ёмкости № 2
15.
Вывод результатов в командное окно пакетаМАТЛАБ:
disp('Результат h p v');
disp(h(1:2)); disp(p(1:8)); disp(v(1:5));
Вместо цифры 8 надо указать количество
давлений в решаемой задаче, а вместо цифры 5
надо указать количество объёмных расходов в
решаемой задаче
16. Параметрический анализ: на примере анализа влияния первого входного давления на высоту столба жидкости в первой ёмкости
H1=f(p1)Для этого необходимо открыть программный код
Analiz в этой же папке
17.
%Рекомендуется для проведения анализапараметрической чувствительности
%H1=f(p1)
%Агумент p1 берётся от 1 до 10 МПа
arg=[1000000 2000000 3000000 4000000 5000000 6000000
7000000 8000000 9000000 10000000];
%Функция (результаты вычислительных экспериментов,
копируются из командного окна пакета МАТЛАБ)
funk=[8.27 9.02 9.31 9.48 9.58 9.64 9.69 9.73 9.76 9.78];
%количество точек(рекомендуется 10)
n=10;
for i=1:n
x(i)=arg(i);
y(i)=funk(i);
end
plot(x,y)
title('H1=f(p1)')
xlabel('p;Pa');ylabel('H;m.');
18.
В гл. прог. Необходимо изменять р1, затемзапускать гл. прогр., а результат вычисл. эксп.
копировать в массив funk.
Необходимо помнить, что каждому аргументу
должно соотв. единственное значение функции
Провести 10 вычислительных экспериментов.
Затем запустить программу Analiz
(см. следующий слайд)
Курсор должен быть в программе Analiz
19.
20. Результат анализа параметрической чувствительности H1=f(p1)
21.
Пакет МАТЛАБ позволяет сохранять графики в вформате *.jpg
22.
Также необходимо проделать анализвлияния одного из выходных давлений
на одну из высот столба жидкости
Выходные давления менять в интервале
100 кПа – 190 кПа
Эти результаты вычислительного
эксперимента также должны быть
представлены в отчёте