Главная » Просмотр файлов » Шестаков В.С. Расчет на ЭВМ нефтегазового оборудования. Учебное пособие для МНГ-2015

Шестаков В.С. Расчет на ЭВМ нефтегазового оборудования. Учебное пособие для МНГ-2015 (811778), страница 36

Файл №811778 Шестаков В.С. Расчет на ЭВМ нефтегазового оборудования. Учебное пособие для МНГ-2015 (Шестаков В.С. Расчет на ЭВМ нефтегазового оборудования. Учебное пособие для МНГ-2015) 36 страницаШестаков В.С. Расчет на ЭВМ нефтегазового оборудования. Учебное пособие для МНГ-2015 (811778) страница 362020-09-08СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 36)

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

5.15).207Основнаяподпрограмма:Dmin,Dmax,NDоmin,Dоmax,SminПодпрограмма методаоптимизацииVo, Dmin, Dmax,NПодпрограммаввода данныхVoxyПодпрограмма расчетацелевой функцииРис. 5.15. Схема построения программного обеспеченияМежду блоками-процедурами устанавливаются связи их вызова иуказываются передаваемые параметры.

Такие схемы позволяют просматривать передачу данных без излишней деталировки.Программа оптимизации цилиндрической емкости (для вводаданных и вывода результатов используется лист «Опт_емк»):Option ExplicitConst Pi = 3.141592654Dim Vo As Single, H As Single, Jt As IntegerSub Оптимизация_емкости()Dim N As IntegerDim Dmin As Single, Dmax As Single, Domin As Single, Domax As SingleDim So As Single, Ho As Single, DD As Single,D As SingleCall Ввод_оптим_емкости(Vo, Dmin, Dmax, N) 'вызов ввода данныхJt = 10'Начальная строка для вывода результатов расчетовCall Opt_PP(Dmin, Dmax, N, Domin, Domax, So)D = (Domin + Domax) / 2So = fx(D)'вызов функции для просчета оптимального НWorksheets("Опт_емк").Cells(24, 7).Value = DWorksheets("Опт_емк").Cells(25, 7).Value = HWorksheets("Опт_емк").Cells(26,7).Value = SoEnd SubSub Ввод_оптим_емкости(Vo, Dmin, Dmax, N) ‘ Ввод данных из листа ExelWith Worksheets("Опт_емк") 'Обращение к листу ExelVo = .Cells(5, 4).Value'Ввод Vo из 5 строки 4 столбцаDmin = .Cells(6, 4).Value'Ввод Dmin из 6 строки 4 столбцаDmax = .Cells(7, 4).Value'Ввод Dmax из 6 строки 4 столбцаN =20'Задание числа вычисленийEnd WithEnd Sub208Function fx(D)'Процедура расчета целевой функцииDim S As SingleH = 4 * Vo / (Pi * D * D) 'высота емкостиS = Pi * (D * D / 2 + D * H) 'ПлощадьWorksheets("Опт_емк").Cells(Jt, 1).Value = D 'ЗанесениеWorksheets("Опт_емк").Cells(Jt, 2).Value = H 'результатовWorksheets("Опт_емк").Cells(Jt, 3).Value = S 'на лист в таблJt = Jt + 1'изменение текущей строки выводаfx = SEnd Function' Подпрограмма алгоритма метода оптимизацииSub Opt_PP(Xmin, Xmax, N, Xomin, Xomax, Yo)Dim X As Single, Y As Single, Ymin As Single, Xo As Single, dx As SingleDim i As IntegerYmin = 10 ^ 5X = Xmindx = (Xmax - Xmin) / NFor i = 1 To N + 1Y = fx(X)If Y < Ymin ThenYmin = YXo = XEnd IfX = X + dxNext iXomin = Xo - dxXomax = Xo + dxEnd Sub5.5.

Пример определения точки крепления каната к мачтебурового станка при ее подъемеТакая задача решается при проектировании буровых установокнеглубокого бурения.Формулировка задачи оптимизации. Определить оптимальнуюточку крепления каната к мачте бурового станка при подъеме ее изтранспортного положения в рабочее, обеспечить минимально возможную нагруженность элементов мачты. Мачта ферменной конструкцииравного сечения, ее длина L, масса мачты М (без вращателя), на верхнем конце мачты расположен вращатель массой Мв. При подъеме мачта нижним концом шарнирно опирается на раму станка.209Анализ задачи. Расчетнаясхема мачты показана на рис.P5.16.

Распределенная нагрузка qопределяется по массе и длинеzxq=M g/L, где g-ускорение своLбодного падения (g=9.81).МmaxСосредоточенная сила Р,априложенная на конце мачты,равна весу вращателя Р=gМв.При изменении точки крепления каната к мачте х будет пробисходить изменение эпюры изгибающих моментов. Так, приМопвположении опоры по серединеМ maxбалки вид эпюры будет такой,как показан на рис.

5.16, б, приперемещении опоры на конецбалки эпюра будет такой, как наМоприс. 5.16, а.Рис. 5.16. Расчетная схема и эпюрыВ обоих этих случаях знаизгибающих моментов при различномчения изгибающего моментаположении точки креплениябудет большим и приведет кповышенным напряжениям изгиба. Если конструктор не предусмотрел такой вариант нагружения, то может даже произойти разрушениеконструкции. Значит, надо найти такую точку, при которой изгибающие моменты будут наименьшими, вид графика представлен на рис.5.16, в.Выбор критерия оптимизации.

В качестве критерия оптимизации для таких конструкций можно использовать стоимость или массукак параметры, имеющие очевидный эффект. Но в данной задаче этивеличины постоянны (мачта уже изготовлена) и не могут использоваться в качестве критерия.Чтобы выбрать критерий оптимизации для рассматриваемой задачи, надо определить, на какие выходные показатели влияет положение точки крепления каната. Как известно из курса «Сопротивлениематериалов», в зависимости от положения опор будет меняться видэпюры изгибающих моментов (рис.

5.16) и значение максимального изгибающего момента. Нагруженность металлоконструкции, работающей на изгиб, определяется напряжениями изгиба  = Mмах/WиRAqRB210должно выполняться условие  [],где Мmax - максимальное (по модулю) значение изгибающего момента по длине мачты, Нм;W - момент сопротивления сечения мачты, м3; - напряжение изгиба, Н/м2;[]- допустимое напряжение изгиба, Н/м2.В данной задаче момент сопротивления сечения мачты не меняется W=const, следовательно, напряжение изгиба будет зависеть толькоот максимального изгибающего момента. Для выполнения поставленной цели – достижения минимальной нагруженности, необходимо найти такую точку крепления каната к мачте, чтобы обеспечить минимумвсех возможных максимальных изгибающих моментов.

Максимальныйизгибающий момент по длине мачты и может быть принят в качествекритерия оптимальности.Переменные проектирования. Согласно заданию требуется определить оптимальное положение точки крепления каната, которое задается расстоянием от начала мачты. Это расстояние и будет переменной проектирования. На рис. 5.16 оно обозначено x (x=LAB).Ограничения. В данной задаче положение опоры не может выходить за балку. Ограничениями будут очевидные неравенстваx > 0; x < L,а также могут быть дополнительные ограничения, связанные с конкретной конструкцией, для которой определяются положения опор.Целевая функция.

Целевая функция должна содержать все выражения для расчета максимального изгибающего момента через переменную оптимизации Мmax = f (x).Для определения максимального изгибающего момента необходимо определять изгибающие моменты по длине мачты. Из рис. 5.16следует, что за опорой B изгибающий момент всегда меньше, чем наопоре, поэтому момент за опорой можно не вычислять. Максимальный момент определится по изгибающим моментам между опорамиМмах = Мz,где Мz - изгибающий момент между опорами;Мz= RA z – q  z2/2;RA - реакция на опоре; z - расстояние от начала мачты до точки, в которой вычисляется изгибающий момент.Момент Мz берется по модулю, потому что он может быть какположительным, так и отрицательным, а напряжение рассчитываетсяпо наибольшему значению без учета знака.211Реакция на опоре АRА = [q x 2 / 2 – q  (L-x)2 / 2 - P (L-x)] / x.Выбор метода оптимизацииВ данной задаче одна переменная оптимизации, поэтому можетбыть использован метод прямого перебора.

Одновременно с поискомоптимума данный метод позволяет получать таблицу данных для построения графика влияния переменной на критерий, что являетсявесьма важным для анализа.Разработка алгоритма решения для ЭВМУкрупненный алгоритм программного обеспечения показан нарис. 5.17.Алгоритм метода оптимизации рассмотрен выше. Алгоритмрасчета целевой функции показан на рис. 5.18.Основная процедураРасчет хmin=0.5L, хmах=L, N=40P,P,q,Lхmin,хmax,Nхo.minхo.maxq,ПроцедураданныхПроцедура методаоптимизацииMmaxхo.min,хo.max,MmaxLвводаxYПодпрограммарасчета целевойфункцииПроцедура выводарезультатовРис. 5.17.

Схема построения программного обеспечения212РазработкапрограммногоxL, q, PобеспеченияДля упрощения отладкиRA=[qx2/2-q(L-x)2/2-P(L-x)]/xпрограмма разделена на подпроz=0; Мmах=0граммы по условию - каждая выполняемая в программе функцияМmаxz<=xоформляется отдельной подпрограммой.Mz= RAz - qz2/2,Передача данных в подпрограмму метода оптимизации и изНетДаМz > Мmахнее, а также переменной оптимизации в целевую функцию выполМmах =Мzнена через аргументы.

Передачавсех остальных данных, необхоZ = z + 0.01 Lдимых для расчета функции, выполняется, минуя подпрограммуметода оптимизации, через глоРис. 5.18. Блок-схема алгоритмабальные переменные. Такой подрасчета целевой функцииход позволяет сделать подпрограмму метода оптимизации универсальной, не зависящей от конкретной задачи. В таком виде подпрограмму можно будет использовать для решения любой задачи. В программе реализовано фиксированное задание границ переменной оптимизации путем вычисления ихв операторе вызова: Xmin=0.5*L, a Xmax=L.Для построения графика зависимости максимального момента отположения опоры из подпрограммы расчета функции обеспечен вывод промежуточных результатов расчетов. Для заполнения таблицыприменена переменная Iviv.Программа определения оптимального положения точки крепления имеет вид:Option ExplicitDim L As Single, q As Single, P As Single, Iviv As IntegerSub Balka_1() ' Основная подпрограмма, вызываемая нажатием кнопкиDim N As Integer, Xopt As Single, X As Single, Mmax As SingleCall Ввод_Balka_1(L,q,P,N)Call мет_прям_переб (0.5 * L, L, N, Xopt, Mmax)Worksheets("Балка1").Range("E16") =Xopt 'Вывод оптимальногоWorksheets("Балка1").Range("E17") = Mmax ' решения213End SubSub Ввод_Balka_1(L,q,P,N) ' Процедура ввода данных с листа ExcelL = Worksheets("Балка1").Range("E12")q = Worksheets("Балка1").Range("E13")P = Worksheets("Балка1").Range("E14")N = 20 ' Число изменений переменной при оптимизацииIviv = 20 ' Начальная строка табл.

вывода результатовEnd Sub' Подпрограмма оптимизации методом прямого перебораSub мет_прям_переб(Xmin, Xmax, N, Xopt, Yo)Dim Y As SingleYo = 1.0E+10X = Xmindx= (Xmax- Xmin)/NFor X = Xmin To Xmax Step dx 'Цикл до максимального значенияY = Fx(X) 'Вызов процедуры расчета функции –изгибающего моментаIf Y < Yo Then 'Запоминание минимального значения функции и'соответствующего значения аргументаYo = YXopt = XEnd IfNext XEnd SubFunction Fx(X As Single) As Single 'П.п.

Характеристики

Список файлов книги

Свежие статьи
Популярно сейчас
Почему делать на заказ в разы дороже, чем купить готовую учебную работу на СтудИзбе? Наши учебные работы продаются каждый год, тогда как большинство заказов выполняются с нуля. Найдите подходящий учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6549
Авторов
на СтудИзбе
300
Средний доход
с одного платного файла
Обучение Подробнее