Объект исследования и его модель. Физическое и математическое моделирование

Лекция 1.

МЕТОДОЛОГИЧЕСКИЕ ОСНОВЫ МОДЕЛИРОВАНИЯ

    Современное состояние проблемы моделирования систем

Понятия модели и моделирования

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

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

2) полнота – предоставление получателю всей необходимой информации

об объекте;

3) гибкость – возможность воспроизведения различных ситуаций во всем

диапазоне изменения условий и параметров;

4) трудоемкость разработки должна быть приемлемой для имеющегося

времени и программных средств.

Моделирование – это процесс построения модели объекта и исследованияего свойств путем исследования модели.

Таким образом, моделирование предполагает 2 основных этапа:

1) разработка модели;

2) исследование модели и получение выводов.

При этом на каждом из этапов решаются разные задачи и используются

отличающиеся по сути методы и средства.

На практике применяют различные методы моделирования. В зависимостиот способа реализации, все модели можно разделить на два больших класса:физические и математические.

Математическое моделирование принято рассматривать как средствоисследования процессов или явлений с помощью их математических моделей.

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

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

Очевидно, действительная польза от моделирования может быть полученатолько при соблюдении двух условий:

1) модель обеспечивает корректное (адекватное) отображение свойств

оригинала, существенных с точки зрения исследуемой операции;

2) модель позволяет устранить перечисленные выше проблемы, присущие

проведению исследований на реальных объектах.

2. Основные понятия математического моделирования

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

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

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

Любая ММ описывает реальный объект, явление или процесс с некоторойстепенью приближения к действительности. Вид ММ зависит как от природыреального объекта, так и от задач исследования.

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

Однако для таких серьезных сфер моделирования нередко нужнысуперкомпьютеры и годы работы крупных коллективов ученых по подготовкеданных для моделирования и его отладки. Тем не менее, и в этом случаематематическое моделирование сложных систем и устройств не толькоэкономит средства на проведение исследований и испытаний, но и можетустранить экологические катастрофы – например, позволяет отказаться отиспытаний ядерного и термоядерного оружия в пользу его математическогомоделирования или испытаний аэрокосмических систем перед их реальнымиполетами.Между тем математическое моделирование на уровне решения болеепростых задач, например, из области механики, электротехники, электроники,радиотехники и многих других областей науки и техники в настоящее времястало доступным выполнять на современных ПК. А при использованииобобщенных моделей становится возможным моделирование и достаточносложных систем, например, телекоммуникационных систем и сетей,радиолокационных или радионавигационных комплексов.

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

Математическое моделирование для исследования характеристик системможно разделить на аналитическое, имитационное и комбинированное. В своюочередь, ММ делятся на имитационные и аналитические.

Аналитическое моделирование

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

1) аналитическим, когда стремятся получить в общем виде явныезависимости для характеристик систем;

2) численным, когда не удается найти решение уравнений в общем виде иих решают для конкретных начальных данных;

3) качественным, когда при отсутствии решения находят некоторые егосвойства.

Аналитические модели удается получить только для сравнительно простыхсистем. Для сложных систем часто возникают большие математическиепроблемы. Для применения аналитического метода идут на существенноеупрощение первоначальной модели. Однако исследование на упрощенноймодели помогает получить лишь ориентировочные результаты. Аналитическиемодели математически верно отражают связь между входными и выходнымипеременными и параметрами. Но их структура не отражает внутреннююструктуру объекта.

При аналитическом моделировании его результаты представляются в видеаналитических выражений. Например, подключив RC -цепь к источникупостоянного напряжения E (R , C и E - компоненты данной модели), мыможем составить аналитическое выражение для временной зависимостинапряжения u (t ) на конденсаторе C :

Это линейное дифференциальное уравнение (ДУ) и являетсяаналитической моделью данной простой линейной цепи. Его аналитическоерешение, при начальном условии u (0) = 0 , означающем разряженныйконденсатор C в момент начала моделирования, позволяет найти искомуюзависимость – в виде формулы:

u (t ) = E (1− p (- t / RC )). (2)

Однако даже в этом простейшем примере требуются определенные усилиядля решения ДУ (1) или для применения систем компьютерной математики (СКМ) с символьными вычислениями – систем компьютернойалгебры. Для данного вполне тривиального случая решение задачимоделирования линейной RC -цепи дает аналитическое выражение (2)достаточно общего вида – оно пригодно для описания работы цепи при любыхноминалах компонентов R , C и E , и описывает экспоненциальный зарядконденсатора C через резистор R от источника постоянного напряжения E .

Безусловно, нахождение аналитических решений при аналитическоммоделировании оказывается исключительно ценным для выявления общихтеоретических закономерностей простых линейных цепей, систем и устройств.Однако его сложность резко возрастает по мере усложнения воздействий намодель и увеличения порядка и числа уравнений состояния, описывающихмоделируемый объект. Можно получить более или менее обозримыерезультаты при моделировании объектов второго или третьего порядка, но ужепри большем порядке аналитические выражения становятся чрезмерногромоздкими, сложными и трудно осмысляемыми. Например, даже простойэлектронный усилитель зачастую содержит десятки компонентов. Тем неменее, многие современные СКМ, например, системы символьной математикиMaple, Mathematica или среда MATLAB , способны в значительноймере автоматизировать решение сложных задач аналитическогомоделирования.

Одной из разновидностей моделирования является численное моделирование, которое заключается в получении необходимыхколичественных данных о поведении систем или устройств каким-либоподходящим численным методом, таким как методы Эйлера илиРунге-Кутта. На практике моделирование нелинейных систем и устройствс использованием численных методов оказывается намного болееэффективным, чем аналитическое моделирование отдельных частных линейныхцепей, систем или устройств. Например, для решения ДУ (1) или систем ДУв более сложных случаях решение в аналитическом виде не получается, но поданным численного моделирования можно получить достаточно полныеданные о поведении моделируемых систем и устройств, а также построитьграфики описывающих это поведение зависимостей.

Имитационное моделирование

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

Основным преимуществом имитационных моделей по сравнениюсаналитическими является возможность решения более сложных задач.

Имитационные модели позволяют легко учитывать наличие дискретных илинепрерывных элементов, нелинейные характеристики, случайные воздействияи др. Поэтому этот метод широко применяется на этапе проектированиясложных систем. Основным средством реализации имитационногомоделирования служит ЭВМ, позволяющая осуществлять цифровоемоделирование систем и сигналов.

В связи с этим определим словосочетание «компьютерноемоделирование », которое все чаще используется в литературе. Будем полагать,что компьютерное моделирование - это математическое моделированиес использованием средств вычислительной техники. Соответственно,технология компьютерного моделирования предполагает выполнениеследующих действий:

1) определение цели моделирования;

2) разработка концептуальной модели;

3) формализация модели;

4) программная реализация модели;

5) планирование модельных экспериментов;

6) реализация плана эксперимента;

7) анализ и интерпретация результатов моделирования.

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

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

С какой целью проводится моделирование?

К какому классу может быть отнесено моделируемое явление?

Ответы на оба эти вопроса могут быть получены в ходе выполнения двухпервых этапов моделирования.

Имитационные модели не только по свойствам, но и по структуресоответствуют моделируемому объекту. При этом имеется однозначное и явноесоответствие между процессами, получаемыми на модели, и процессами,протекающими на объекте. Недостатком имитационного моделированияявляется большое время решения задачи для получения хорошей точности.

Результаты имитационного моделирования работы стохастическойсистемы являются реализациями случайных величин или процессов. Поэтомудля нахождения характеристик системы требуется многократное повторение ипоследующая обработка данных. Чаще всего в этом случае применяетсяразновидность имитационного моделирования - статистическое

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

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

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

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

Весьма важен также и контроль характеристик входных случайныхвоздействий. Контроль заключается в проверке соответствия распределенийгенерируемых процессов заданным распределениям. Эта задача частоформулируется как задача проверки гипотез .

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

ПРИНЦИПЫ СИСТЕМНОГО ПОДХОДА В МОДЕЛИРОВАНИИ

    Основные положения теории систем

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

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

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

Сложный объект может быть разделен на подсистемы, представляющие собой части объекта, удовлетворяющие следующим требованиям:

1) подсистема является функционально независимой частью объекта. Онасвязана с другими подсистемами, обменивается с ними информацией иэнергией;

2) для каждой подсистемы могут быть определены функции или свойства,не совпадающие со свойствами всей системы;

3) каждая из подсистем может быть подвергнута дальнейшему делению доуровня элементов.

В данном случае под элементом понимается подсистема нижнего уровня,дальнейшее деление которой нецелесообразно с позиций решаемой задачи.

Таким образом, систему можно определить как представление объектав виде набора подсистем, элементов и связей с целью его создания,исследования или усовершенствования. При этом укрупненное представлениесистемы, включающее в себя основные подсистемы и связи между ними,называется макроструктурой, а детальное раскрытие внутреннего строениясистемы до уровня элементов – микроструктурой.

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

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

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

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

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

На базе системного подхода может быть предложена последовательностьразработки моделей, когда выделяют две основные стадии проектирования:макропроектирование и микропроектирование.

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

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

Независимо от типа модели при ее построении необходиморуководствоваться рядом принципов системного подхода:

1) последовательное продвижение по этапам создания модели;

2) согласование информационных, ресурсных, надежностных и другиххарактеристик;

3) правильное соотношение различных уровней построения модели;

4) целостность отдельных стадий проектирования модели.

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

Физическое моделирование осуществляется путем воспроизведения исследуемого процесса на модели, имеющей в общем случае отличную от оригинала природу, но одинаковое математическое описание процесса функционирования.

Совокупность подходов к исследованию сложных систем, определяемая термином «математическое моделирование », является одной из разновидностей идеального моделирования. Математическое моделирование основано на использовании для исследования системы совокупности математических соотношений (формул, уравнений, операторов и т.д.), определяющих структуру исследуемой системы и ее поведение.

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

Математическое моделирование - это процесс создания математической модели и оперирования ею с целью получения новой информации об объекте исследования.

Построение математической модели реальной системы, процесса или явления предполагает решение двух классов задач, связанных с построением «внешнего» и «внутреннего» описания системы. Этап, связанный с построением внешнего описания системы называется макроподходом. Этап, связанный с построением внутреннего описания системы называется микроподходом.

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



Итак, метод «черного ящика» состоит в том, чтобы выявить, насколько это возможно, структуру системы и принципы ее функционирования, наблюдая только входы и выходы. Подобный способ описания системы некоторым образом аналогичен табличному заданию функции.

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

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

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

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

Поэты знают – все похоже на все. На этом положении базируется творчество метафор:

В саду горит костер рябины красной,

Но никого не может он согреть.

На этом же положении базируется моделирование. Моделирование – это построение и исследование моделей. В свою очередь моделью называется некоторая система, исследуя которую получают информацию о другой системе.

С первого взгляда это кажется нонсенсом. Можно ли, разглядывая один предмет, получить представление о другом предмете. Где то море, а где та дача?

Между тем, чтобы посмотреть на себя со стороны, мы пользуемся зеркалом. При этом свое отражение в зеркальном стекле мы отождествляем с собой. Хотя наше отражение кое в чем и отличается от оригинала. Например, правое и левое в зеркале меняется местами. Но мы почти автоматически делаем поправку на это не существенное в данном случае различие, и пользуемся зеркалом к своей пользе и вящему удобству. Все мальчики отходят от зеркала чистыми и причесанными. А девочки вообще красавицы!

Модель, метафорически выражаясь, и есть такое зеркало, приставленное к изучаемому предмету.

Создавая модель, мы решаем, какие свойства изучаемой системы для нас важны, а какие – второстепенны. Например, при исследовании крыльев летательных аппаратов в аэродинамической трубе, нам важна их форма и материал, из которого они изготовлены. Цвет же крыльев в данном случае несущественен. Хотя при расчете видимости самолета цвет его плоскостей будет, пожалуй, самой важной информацией.

Определившись с главными и не главными свойствами моделируемой системы или объекта, мы устанавливаем определенные соотношения между свойствами системы и ее модели. Например, если размер модели дома вдвое меньше размера реального дома, объем, а следовательно, вес модели будет в восемь раз меньше реального.

Затем мы начинаем исследование модели и определяем различные интересующие нас соотношения между параметрами. Например, при какой скорости воздушного потока начнутся вибрации крыла. Это – формулировка проблемы флаттера, колебаний летательного аппарата, неожиданно возникающих при определенных значениях скорости воздушного потока, обтекающего крыло. Без решения этой проблемы самолеты не смогли бы летать с высокими скоростями. Чтобы решить ее пришлось наблюдать в аэродинамической трубе разрушение большого количества моделей крыльев. Здесь мы сразу видим в чем достоинства моделирования. Мы испытываем на прочность не дорогой самолет, а дешевую модель, пересчитывая свойства модели в свойства моделируемого реального самолета. Экономия средств, а главное, летчики-испытатели не должны рисковать жизнью.

Другая область применения моделей – сопротивление материалов и строительная механика. Насколько прочной должна быть сталь для моста? Какой толщины делать несущие колонны, чтобы здание не обрушилось? Можно ли построить небоскреб из кирпича? Здесь моделью реального материала является образец, подвергаемый испытаниям на специальных испытательных стендах. Прочностные характеристики, полученные по результатам испытаний, пересчитываются в прочностные характеристики реальных деталей машин или зданий.

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

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

Моделирование бывает двух видов – математическое и физическое. При математическом моделировании исследуются системы соотношений, описывающих процессы, протекающие в моделируемом объекте. Соотношения могут описываться уравнениями, зачастую достаточно сложными, которые выводятся на основе теоретической модели исследуемого процесса или исследуемой системы. Но математические модели могут быть также и вероятностными. В таких моделях изменения входных параметров определяют поведение выходных параметров не жестко, а с некоторой долей вероятности.

Математическая модель – это всегда компромисс между реальной сложностью исследуемой системы и простотой, требуемой для его описания. Не всегда имеются «качественные» теории, позволяющие точно рассчитать, что происходит, например, при падении напряжения в больших электросетях. Да даже поведение потока воды, спускаемой в унитазе в зависимоти от его формы – серьезная теоретическая проблема.

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

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

Но в любом случае, физическое и математическое моделирование, дополняя друг друга, позволяют изменять наш мир в желаемом направлении.

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

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

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

На следующей стадии выбирается вычислительный алгоритм решения задачи моделирования. Современные численные методы позволяют снять ограничения на степень сложности математических моделей.

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

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

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

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

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

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

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

На этапе создания машин и конструкций , когда осуществляется доводка и испытания головных образцов и опытных партий, физическое моделирование предусматривает проведение стендовых и натурных испытаний. Стендовые испытания обеспечивают высокую информативность и сокращают сроки доводки опытных образцов изделий массового и крупносерийного производства. Натурные испытания* необходимы для оценки работоспособности и надежности уникальных изделий на предельных режимах. При этом задачами математического моделирования становятся алгоритмы и программы управления испытаниями. Анализ получаемой экспериментальной информации следует проводить на ЭВМ в реальном масштабе времени.

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

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

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

Например, изменение параметра времени представляют в виде:dt=t 2 -t 1 , а изменение функции "Х": dX(t) = X(t)-X(t-dt) = X(t 2)-X(t 1) = X 2 -X 1 .

Рассмотрим задачу определения траектории точки, движущегося в некоторой плоскости под действием различных сил. Например, необходимо вычислить траекторию движения снаряда с учетом сопротивления воздуха или ракеты с учетом изменения ее массы, движущихся в поле тяготения Земли.

Координаты точки X(t), Y(t) в некоторый момент времени "t" можно определить, зная координаты точки X(t-dt), Y(t-dt) в предыдущий момент времени "t-dt" и изменение (приращение) координат dX, dY:

X(t) = X(t-dt) + dX(t),

Y(t) = Y(t-dt) + dY(t).

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

dX(t) = Vx(t)dt,

dY(t) = Vy(t)dt.

Здесь Vx(t), Vy(t) - проекции скорости на оси координат.

Составляющие скорости Vx(t) и Vy(t) можно вычислить по формулам:

Vx(t) = Vx(t-dt) + Ax(t)*dt,

Vy(t) = Vy(t-dt) + Ay(t)*dt.

Здесь Ax(t), Ay(t) - проекции ускорения на оси координат.

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



Приведем алгоритм расчета траектории движения точки:

1. Определяем силы, действующие на точка, и находим проекции ускорения на оси координат. В общем случае ускорение точки зависит от многих факторов и в момент времени t задается как функция от времени, скорости и координат точки:

Ax:= Fx(Vx, Vy, X, Y, t); Ay:= Fy(Vx, Vy, X, Y, t);

Где Vx, Vy, Ax, Ay - проекции скорости и ускорения.

2.Задаем начальное положение точки - координаты X, Y и начальную скорость и ускорение в виде проекций на оси координат:

X:= X0; Y:= Y0; Vx:= V*cos(fi); Vy:= V*sin(fi);

Ax:= Fx(Vx, Vy, X, Y, t);

Ay:= Fy(Vx, Vy, X, Y, t);

Где V - начальная скорость точки, fi - угол наклона вектора скорости к оси Х.

3. Задаем временной шаг dt и разбиваем весь временной интервал на N участков. При равномерной разбивке приращение времени определяется по формуле:

dt:= (t[N]-t)/(N-1); Здесь (t[N] - t) - время движения точки.

Выбор величины dt определяется необходимой точностью расчета, возможностями вычислительной техники, и может уточняться при решении задачи.

4.Вычисляем массивы скорости, ускорения и координат точки:

For i:= 2 to N do begin

Vx[i]:= Vx + Ax*dt;

Vy[i]:= Vy + Ay*dt;

X[i]:= X + 0.5*(Vx + Vx[i])*dt;

Y[i]:= Y + 0.5*(Vy + Vy[i])*dt;

Ax[i]:= Fx(Vx[i], Vy[i], X[i], Y[i], t[i]);

Ay[i]:= Fy(Vx[i], Vy[i], X[i], Y[i], t[i]);

{ уточняем скорость точки в расчетной точке }

VX[i]:= VX + 0.5*(Ax + Ax[i])*dt;

VY[i]:= VY + 0.5*(Ay + Ay[i])*dt;

Для уменьшения погрешностей расчетной схемы, скорость и ускорения на участке интерполируются средними значениями.

5. Строим траекторию движения точки . Здесь удобно использовать процедуры из библиотеки построения графиков GR_F. Следует определить расчетную область и область рисования траектории на экране. Траектория на экране рисуется процедурой: PutPixel_G(X[i], Y[i], N);

Для тестирования работы алгоритма рассмотрим задачу расчета траектории точки, движущегося из точки с координатами X, Y с начальной скоростью Vx, Vy под действием сил, вызывающих ускорение точки Ax, Ay. Следуя пунктам 1. . 5 приведенного выше алгоритма необходимо рассчитать траекторию движения точки и сравнить с траекторией точки, описанной аналитической зависимостью X(t), Y(t).

Практическое задание N 2. 22


N X 1 Y 1 Vx 1 Vy 1 Axi Ayi X(t) Y(t)


1 0 0 0 b 2*a -y a*t 2 b*sin(t)

2 0 0 a b 0 -y a*t b*sin(t)

3 1 0 1 1 -2*y 2*x e t * cos(t) e t *sin(t)

4 a 0 0 0 -x x*b/a a* cos(t) b*(1-cos(t))

5 a b 0 0 -4*x y a* cos(2*t) b*cos(t)

6 0 0 0 b 2*a 0 a*t 2 b*t

7 2*a 0 0 a x 0 a*(e t + e -t) a*t

8 0 b a 0 -x -y a* sin(t) b*cos(t)

Y V F, * V 0 g fi 0 X

Рассмотрим задачу расчета траектории снаряда, движущегося с начальной скоростью "V 0 " под углом "fi" к горизонту с учетом сил сопротивления воздуха, пропорциональных скорости снаряда. Проекции ускорений определим в виде функций:

FUNCTION Fx(Vx, kc: real): real; begin Fx:= - kc*Vx end;

FUNCTION Fy(Vy, kc: real): real; begin Fy:= - kc*Vy - g end;

Где kc - коэффициент сопротивления воздуха,

g = 9. 81, м/с - ускорение свободного падения у поверхности Земли.

Поскольку время подлета снаряда к цели неизвестно, то параметр "dt" выбирается приближенно, например, исходя из максимального времени полета снаряда над горизонтальной поверхностью без учета сопротивления воздуха: tмах= 2*V*sin(fi)/g. Для N = 500, dt = t/500. При решении конкретных задач процесс расчета прекращается при достижении снарядом цели, либо при ограничениях по статическим координатам, например:

REPEAT i:=i+1;

{операторы расчета массивов скорости, ускорения и координат точки }

Until (cc = GetPixel_G(X[i], Y[i])) or (Y[i] < 0) or (i = N);

Здесь cc - цвет пикселов цели, Y[i] < 0 - ограничение по горизонтальной поверхности, i = N - ограничение по размеру массива. В случае преждевременного завершения полета снаряда необходимо увеличить dt или параметр N.

Практическое задание N 2. 23

1. Рассчитать разностным моделированием и по аналитической зависимости траектории полета снаряда без учета сопротивления воздуха. Построить траектории полета снаряда. Начальная скорость V 0 =1000, м/с, угол fi=450. Аналитическая зависимость имеет вид:

X = V 0 *t*cos(fi); Y = V 0 *t*sin(fi) - g*t 2 /2;

2. Рассчитать разностным моделированием и по аналитической зависимости траектории полета снаряда с учетом сопротивления воздуха, пропорциональным скорости снаряда. Построить траектории полета снаряда. Начальная скорость V 0 =3000, м/с, угол fi = 45 0 . Коэффициент сопротивления воздуха kc = 0. 01,с -1 .

Аналитическая зависимость имеет вид:

X=V 0 *cos(fi)*(1-e (-kc*t))/kc; Y=(V 0 *sin(fi)+g/kc)*(1-e (-kc*t))/kc-g*t/kc;

3. Рассчитать разностным моделированием траектории полета снаряда с учетом сопротивления воздуха, пропорциональным квадрату скорости снаряда. Коэффициент сопротивления воздуха kc 1 = kc 2 . Построить совместно траектории полета снаряда для п. 1, 2, 3. Начальная скорость V 0 = 3000, м/с, угол fi = 45 0 .

4. Составить программу поражения неподвижной цели при kc 1 = kc 2 . Изменяя в цикле угол fi на небольшую величину, определить в программе угол при котором будет поражена цель - небольшой прямоугольник с координатами вершин (x1, y1) и (x2, y2). Построить все траектории полета снаряда.

Примечание к п. 1. . 4: Выводить на экран исходные данные: V 0 , fi, kc, а также наибольшую высоту и дальность полета снаряда.

Рассмотрим задачу расчета траектории космического тела , в поле тяготения планеты без учета сил сопротивления. В начальный момент времени тело движется на высоте "Н" со скоростью "V 0 ", направленной по касательной к окружности радиуса R 0 . Поскольку движение спутника вокруг планеты достаточно продолжительно, то не целесообразно запоминать в оперативной памяти все параметры (координаты, скорости и ускорения) в каждый момент времени. Обычно эти параметры, записываются в файл на диск при вычислениях через некоторые моменты времени, а траекторию строят сразу, либо запуская отдельную программу, считывающую данные из файла. Расчетная область задается исходя из оценочных расчетов. Для спутника, движущегося вокруг Земли, можно принять:

Xmin= Ymin= -Kv*R 0 , Xmax= Ymax= Kv*R 0 ,

Здесь R 0 = (Rz+H), Rz=6. 37*10 6 , м. - радиус Земли.

Kv=1. 5 при V 0 <= W 1 ; Kv=10 при W 1 < V 0 < W 2 ; Kv=20 при V >= V 2 .

W 1 = Rz*Ö(g/R 0) - первая космическая скорость,

W 2 = Ö2* W 1 - вторая космическая скорость.

Параметр "dt" можно определить приближенно по формуле: dt=T/N,

где T= 6. 28*Rz/W 1 - время оборота спутника вокруг Земли, N=300.

Расстояние от спутника до центра планеты определяется через координаты:

function R(x, y: double): double; begin R:= sqrt(x*x + y*y) end;

Проекции ускорений определим в виде функции:

function FA(x,r,kz: double):double; begin FA:= -kz*x/(r*r*r) end;

Здесь kz = 4. E+14 для Земли (в системе СИ).

Пусть в начальный момент времени известны координаты спутника:

x 1 = R 0 ; y 1 = 0; r 1 = R(x 1 , y 1);

скорость: Vx 1 = 0; Vy 1 = V 0 ;

и ускорение: Ax 1 = FA(X 1 , r 1 , kz); Ay 1 = FA(Y 1 , r 1 , kz);

Отметим, что скорость в начальный момент времени направлена по касательной к окружности радиуса r 1 .

Для записи алгоритма расчета траектории необходимо знание параметров в двух соседних точках, например, в точке "1" - для предшествующего момента времени и в точке "2" - для расчетного момента времени. Расчет производим в цикле с одновременным выводом траектории движения спутника на экран до тех пор пока выполняется ограничение по радиусу траектории или не нажата любая клавиша.

While (r1< Xmax) or (r1> Rz) or (not keyPressed) do begin

Vx2:= Vx1 + Ax1*dt; Vy2:= Vy1 + Ay1*dt;

X2:= X1 + 0.5*(Vx1 + Vx2)*dt;

Y2:= Y1 + 0.5*(Vy1 + Vy2)*dt; r2:= R(x2, y2);

Ax2:=FA(X2, r2, kz);

Ay2:=FA(Y2, r2, kz);

Vx2:= Vx1 + 0.5*(Ax1 + Ax2)*dt; { уточняем скорость }

Vy2:= Vy1 + 0.5*(Ay1 + Ay2)*dt;

{ Переопределяем значения параметров в точке }

x1:= x2; y1:= y2; r1:= r2;

Vx1:= Vx2; Vy1:= Vy2; Ax1:= Ax2; Ay1:= Ay2

PutPixel_G(x1,y1,c); { Строим траекторию движения точки, c - цвет точки }

Практическое задание N 2. 24

r = P/(1 + e*cos(fi));

где e = P/R 0 - 1; P = (V 0 * R 0 /Rz) 2 /g ; 0 <= fi = 2*Pi.

В начальный момент времени известны координаты спутника: x 1 = R 0 ; y 1 = 0;

и скорость: Vx 1 = 0; Vy 1 = V 0 ; Рассмотреть случаи:

1_1. Начальная скорость V 0 <= W 1 , высота H = 300000, м.

1_2. Начальная скорость W 1 <= V 0 < W 2 , высота H = 400000, м.

1_2. Начальная скорость V 0 >= W 2 , высота H = 500000, м.

Примечание: Построить траектории полета спутника. Через равные промежутки времени выводить на экран время полета спутника, скорость и высоту.


1) V 0 Rz Rz 2) Rz V 0 Rz


1) 20 *Rz 2) 20 *Rz


Рассмотрим задачу расчета траектории точки переменной массы , движущегося под действием реактивной тяги. Движение точки в этом случае описывается уравнением Мещерского:

A = (U/M)*(dM/dt) + F/M

Где A - ускорение точки, M - масса точки.

U - скорость реактивной струи относительно точки,

F - результирующая внешних сил, действующих на точку,

Учитывая, что F = kz*M/r 2 - сила притяжения направлена к центру Земли, а P = U*(dM/dt) - реактивная сила двигателя (тяга) направлена по касательной к траектории движения, определяем проекции ускорения на оси координат:

Ax = P*Vx/(M*V) - kz*x/(r 3); Ay = P*Vy/(M*V) - kz*y/(r 3);

Где V = Ö(Vx 2 + Vy 2) - скорость точки,

r = Ö(x 2 + y 2) - расстояние до центра Земли,

Vx , Vy - проекции скорости точки на оси координат, x, y - координаты точки.

Полагая расход топливаz = dM/dt постоянным, массу точки можно определить по формуле: M = M 0 - z*t; при t < Tk ,

где M 0 - начальная масса точки, Tk - время работы двигателя.

Практическое задание N 2. 25

1. Построить десять траекторий полета баллистической ракеты, рассчитанных разностным моделированием. Начальная скорость V 0 =1,м/с, тяга двигателя P=2. 5Е6,н, стартовая масса M 0 = 1. 5Е5, кг, расход топлива z= 700, кг/с, время работы двигателя Tk = 200, с.

2. Построить траектории полета двухступенчатой баллистической ракеты, рассчитанные разностным моделированием. Начальная скорость V 0 = 1,м/с, стартовая масса M 0 = 3Е5, кг, для первой ступени: тяга P 1 =5Е6, н, расход топлива z 1 = 1700, кг/с, время работы двигателя Tk 1 = 130, с. Для второй ступени: тяга P 2 = 1. 1Е6, н, расход топлива z 2 = 300, кг/с, время работы двигателя Tk 2 = 230, с.

Примечание к п. 1, 2: сопротивление воздуха и вращение Земли не учитывать. Угол запуска ракеты к горизонту = 90 0 -N*0. 002 0 , где N= 1, 2, 3, ..., 10. Во время работы двигателя dt=0. 05, c, затем dt=0. 5, c.

3. Построить траекторию полета спутника Земли при включении двигателя, рассчитанную разностным моделированием. Начальные условия на высоте H=400000 м принять следующие: скорость V 0 =W 1 и направлена по касательной к окружности, M 0 =11000, кг, тяга двигателя P=4Е5, н, расход топлива z=100, кг/с, время работы двигателя Tk = 70, с. Рассчитать скорость спутника при работе двигателя по формуле Циолковского: V = V 0 + U*ln(M 0 /M) , где U = P/z .

Через каждые 10 секунд выводить на экран время полета спутника и скорость.

Рассмотрим задачу расчета траектории точки, прикрепленной к упругой нити , и движущейся с начальной скоростью "V 1 " под углом "fi" к оси "x" из точки с координатами (x 1 , y 1), без учета сил сопротивления воздуха. Эта задача моделирует известную игрушку - мяч, привязанный на резинке.

Пусть точка имеет массу "M", длина нити "L". Полагаем, что нить невесома и абсолютно упруга. Коэффициент упругости "Kn".

Оси координат проведем через точку закрепления нити вверх и влево. Расчетную область ограничим: X_min = Y_min = -Lm, X_max = Y_max = Lm,

где Lm = abs(V 1 * Ö(M/Kn)) + Ö(x12 + y12) + L + 2*M*g/Kn.

Y V 1 x,y 0 X

Период свободных колебаний груза,

подвешенного на упругой нити:

T = 6, 28* Ö(M/Kn). Примем dt = T/300.

Проекции ускорения определяются как дискретная функция расстояния " r " от начала координат до точки закрепления нити: если r <= L, то ускорение от сил упругости равно нулю, в остальных случаях:

Ax = -x*Ky*dr/(r*M);

Ay = -y*Ky*dr/(r*M) - 9.81; где dr = (r-L) > 0.

Проекцию ускорения на ось “Х” от сил упругости, запишем в виде функции:

FUNCTION FA(x, r, L, Kn, M: double): double;

begin if (r-L)>0 then FA:= -x*Kn*(r-L)/(r*M) else FA:= 0 end;

Аналогичная функция составляется для проекции ускорения на ось “У”. Методика расчета соответствует приведенной для движения спутника в поле тяготения планеты.

Практическое задание N 2. 26

1. Построить траекторию движения мяча, подвешенного на упругой нити в вязкой среде, рассчитанную разностным моделированием. Сопротивление среды пропорционально скорости движения мяча: kc=0. 01, с -1 . Нить закреплена в центре квадрата со стороной 2*Lm, длина нити L=1, м, коэффициент упругости Kn=5, н/м. Масса мяча M=0. 2, кг. Мяч начинает движение из точки с координатами x 1 =-0. 5*L, y 1 =0, со скоростью V 1 =10, м/с, под углом 45 0 .

2. Построить траекторию движения мяча, подвешенного на упругой нити в квадратной коробке, рассчитанную разностным моделированием, с учетом уменьшения нормальной составляющей скорости на 20% при отражении мяча от стенки. Сопротивление среды пропорционально скорости движения мяча: kc=0. 05, с -1 . Нить длиной L=1, м, закреплена в центре квадрата со стороной a=1. 5*L. Коэффициент упругости Kn=5, н/м, масса мяча M=0. 1, кг. Мяч начинает движение из точки с координатами x 1 =-L, y 1 =0, со скоростью V 1 x=1, м/с, V 1 y=5, м/с.

2. 4. Моделирование многовариантных задач с использованием графов




Рассмотрим "классический" пример многовариантной задачи. Пусть пункты A и B связаны между собой дорогами, могущими проходить также через пункты 1, 2, 3,..., N. В общем случае каждый пункт связан дорогами со всеми остальными. В частном случае некоторые связи (дороги) отсутствуют. Схематически эти пункты и связи можно изобразить в виде графа.

Графом называется совокупность узлов (пункты A, B, 1, 2, . . . , N) и связывающих их ребер (дорог). Маршрутом движения называется последовательность связанных ребрами узлов. В дальнейшем будем рассматривать те маршруты движения, которые всегда начинаются из пункта A и заканчиваются в пункте B. Причем пункты A и B на маршруте повторяться не могут. Например: А-1-4-В .

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

Пусть узел A имеет номер "0", а узел B - номер "N+1". Рассмотрим общий случай: каждый пункт связан со всеми остальными. Обозначим M - число промежуточных узлов на маршруте.

При М = 0 маршрут может проходить только из узла "0" в узел "N+ 1".

При М = 1 маршрут проходит через один из узлов: j1= 1, либо j1= 2, .., либо j1= N.

При М = 2 маршрут проходит через два узла, причем первый из них может иметь номер: j1=1, либо j1=2, ... либо j1=N, а второй - номер: j2=1, либо j2=2, ... либо j2=N, т. е. возможно N 2 маршрутов. Графически все маршруты можно представить в виде:

A M=1 A M=2


1 . . . j1 . . . N


1 2 3 ... j1 ... N 1 2 3 ... j2 . N 1 2 3 ... j2 ... N 1 2 3 ... j2 .. N


Таким образом, число маршрутов равно N M и время перебора маршрутов при больших значениях N и M очень быстро растет.

При постановке задачи нахождения маршрутов указывается значение M - наименьшее число узлов на маршруте, M1 - наибольшее число узлов на маршруте. Причем 1<=M<=M1. Например, пусть на графе имеется три узла N=3 и необходимо составить маршруты, проходящие через два узла, т. е. M=2, M1=2. Тогда в общем случае имеются маршруты:

0-1-1-4; 0-2-1-4; 0-3-1-4; односторонняя связь

0-1-2-4; 0-2-2-4; 0-3-2-4; 1 2 3

0-1-3-4; 0-2-3-4; 0-3-3-4; двусторонняя связь

Постановка задачи нахождения маршрутов включает определение матрицы коэффициентов aij, характеризующих связи между узлами i и j. Связь узла A задается коэффициентами a 0 j, узла В - коэффициентами ai N+ 1 . Матрица имеет вид:

a 11 a 12 a 13 ... a 1N Если aij = aji = 0, то связь

a 21 a 22 a 23 ... a 2N между узлами i и j отсутствует.

a 31 a 32 a 33 ... a 3N Если aij=0 и aji<>0, то связь

........................... . между узлами i и j односторонняя.

a N1 a N2 a N3 ... a NN Если aij<>0 и aji<>0, то связь

между узлами i и j двусторонняя.

Если aij = aji при i =1, 2, . . , N; j = 1, 2, . . , N, то матрица симметричная.

Если aij = 0 при j =1, 2, . . , N; i > j, то матрица треугольная.

Значение aij может содержать значение ребра, связывающего узлы i и j (например, стоимость проезда), либо значение, содержащееся в узле i или j, либо любое значение, указывающее на существование связи между узлами i и j.

Введем линейный массив "Y", коэффициенты которого обозначают номера узлов графа через которые проходит маршрут, а индексы показывают номер пункта по порядку следования на маршруте. Операторы по перебору маршрутов имеют вид:

Y:=0; {номер узла "А" графа}

repeat {цикл по числу узлов на маршруте}

for j:= 1 to M do Y[j]:=1; {начальные номера узлов на маршруте}

Y:=N+1; {номер узла "B" графа}

repeat {цикл по перебору номеров узлов на маршруте}

for j:=1 to M+1 do if a,y[j]]=0 then goto METKA; {проверка}

{****** здесь ставятся операторы фильтра ************}

{****** . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . ************}

for j:=0 to M+1 do write("-", Y[j]); writeln; {вывод маршрута}

METKA: Y:=Y+1; {изменение номера узла первого пункта на маршруте}

for j:=1 to M-1 do {определяем номера узлов на маршруте}

if Y[j]>N then begin Y[j]:=1; Y:=Y+1 end else Break;

until Y[M]=N+1;

until M>M1;

В начале программы задается возможный маршрут 0-1-1-1-. . . -1-N+1 для заданного значения M>0. Проверяется наличие связей и ставятся фильтры для определения маршрута. Затем увеличивается номер узла первого пункта по порядку следования на маршруте: 0-2-1-1-. . . -1-N+1 и т. д. до 0-N-1-1-. . . -1-N+1. При превышении номера узла значения N, номер узла сбрасывается до единицы, а номер следующего узла увеличивается на единицу: 0-1-2-1-. . . -1-N+1 и снова увеличивается номер узла первого пункта до значения N: 0-N-2-1-. . . -1-N+1 и далее сбрасывается до единицы с увеличением номера следующего узла: 0-1-3-1-. . . -1-N+1. После (N-1)-го сброса и увеличения значения узла первого пункта до N получим маршрут: 0-N-N-1-. . . -1-N+1 и далее: 0-1-1-2-. . . -1-N+1. Таким образом, происходит перебор всех возможных маршрутов до 0-N-N-N-. . . -N-N+1. После этого рассматриваются маршруты для M=M+1 включая M=M1. Отметим, что при необходимости маршрут 0-N+1 для M=0 нужно рассмотреть отдельно.

При решении конкретных задач необходимо определить значение коэффициентов aij матрицы связи и установить необходимые фильтры.

Рассмотрим задачуопределения стоимости маршрутов из A в B .

1.) Зададим стоимость проезда из узла i в узел j:

for i:=0 to N+1 do for j:=i to N+1 do a:=Random(X); {X-дано}

for i:=0 to N+1 do a:=0; { движение внутри узла запрещено}

for i:=0 to N+1 do for j:=i to N+1 do a:=a; {связи }

{двусторонние и равнозначные}

2). Матрицу связей можно вывести на экран для проверки. При выводе маршрута на экран или в файл можно выводить также значение стоимости маршрута.

S:=0; for m:=1 to M1+1 do S:=S+a,y[m]]; {стоимость маршрута}

1 2 3 4 5 6 7 8 9

Рассмотрим задачу расстановки мин на прямоугольном поле размером Nx*Ny. При этом M=M1=N=Nx*Ny и все узлы должны быть пройдены без повторений. Расстановка начинается из узла с заданным номером NH и может закончиться в узлах на верхней границе.

1) Определим матрицу связей:

for i:=0 to N+1 do for j:=1 to N+1 do a:=0;

for i:=1 to N-1 do begin a:=1; a:=1 end; {связи по гориз}

for j:=1 to Ny-1 do begin k:=Nx*j; a:=0; a:=0 end;

for i:=1 to Nx do for j:=1 to Ny-1 do {связи по вертикали}

begin k:=Nx*(j-1)+i; a:=1; a:=1 end;

a:=2; { NH - узел связи c узлом 0}

for i:=1 to Nx do a:=3; { 1, . . , Nx - узлы связи c узлом N+1}

2). Установим фильтр, запрещающий возврат в узел на маршруте:

for k:=1 to M do c]:=0; for k:=1 to M do

begin c]:=c]+1; if c]=1 then goto METKA end;

Здесь производится суммирование повторяющихся номеров узлов на маршруте. При совпадении номера узла значение счетчика c]=1 -маршрут не рассматривается.

Рассмотрим задачу загрузки N - видов коробок в машину. Задается число коробок каждого вида: Ki, их вес Mi и объем Vi, где i=1, 2, . . , N. Ограничения могут быть по общему весу и объему. Число узлов графа равно N. Число узлов на маршруте M=1, М1=K 1 +K 2 +. . . +K N . Интервал М-М1 можно уменьшить просчитав наибольшее допустимое по весу и объему число коробок KMi каждого вида загружаемых в машину (KMi<=Ki). Тогда М = min(KMi), а М1 = max(KMi). Поскольку порядок загрузки не имеет значения, то все связи односторонние. 0

1 2 ... k ... N N+1

1) Определим матрицу связей:

for i:=0 to N+1 do for j:=i to N+1 do a:=0; {нижний треугольник}

for i:=0 to N+1 do for j:=i to N+1 do a:=1; {верхний треугольник}

2) Определение числа коробок каждого вида аналогично суммированию повторяющихся номеров узлов на маршруте.

Практическое задание N 2. 27

1) Вывести в файл стоимость маршрутов без повторяющихся узлов при N=4, M=3, M1=4, Х=9. Определить номера маршрутов с наименьшей и наибольшей стоимостью

для разных значений М.

2) Вывести символами псевдографики в текстовом режиме маршруты движения в прямоугольнике 2х4, либо 4х2. Начало движения при NH=8.

3) Вывести общий вес и число коробок каждого из 3-х видов, загружаемых в машину. Задать веса функцией Random(50)+50; Установить фильтр по общему весу G<900. Общее число коробок: M=10, M1=12.