Скачать 1.75 Mb.
|
Фрагмент учебного пособия 2.1.3. Основные этапы разработки и исследования моделей на компьютере Использование компьютера для исследования информационных моделей различных объектов и систем позволяет изучить их изменения в зависимости от значения тех или иных параметров. Процесс разработки моделей и их исследование на компьютере можно разделить на несколько основных этапов. 34 Описательная информационная модель. На первом этапе исследования объекта или процесса обычно строится описательная информационная модель. Такая модель выделяет существенные с точки зрения целей проводимого исследования параметры объекта, а несущественными параметрами пренебрегает. Формализованная модель. На втором этапе создается формализованная модель, т.е. описательная информационная модель записывается с помощью какого-либо формального языка. В такой модели с помощью формул, уравнений, неравенств и т.д. фиксируются формальные соотношения между начальными и конечными значениями свойств объектов, а также накладываются ограничения на допустимые значения этих свойств. Однако далеко не всегда удается найти формулы, явно выражающие искомые величины через исходные данные. В таких случаях используются приближенные математические методы, позволяющие получать результаты с заданной точностью. Компьютерная модель. На третьем этапе необходимо формализованную информационную модель преобразовать в компьютерную модель, т.е. выразить ее на понятном для компьютера языке. Существуют два принципиально различных пути построения компьютерной модели:
В процессе создания компьютерной модели полезно разработать удобный графический интерфейс, который позволит визуализировать формальную модель, а также реализовать интерактивный диалог человека с компьютером на этапе исследования модели. Компьютерный эксперимент. Четвертый этап исследования информационной модели состоит в проведении компьютерного эксперимента. Если компьютерная модель существует в виде программы на одном из языков программирования, ее нужно запустить на выполнение и получить результаты. Если компьютерная модель исследуется в приложении, например в электронных таблицах, можно провести сортировку или поиск данных, построить диаграмму или график и т.д. Анализ полученных результатов и корректировка исследуемой модели. Пятый этап состоит в анализе полученных результатов и корректировке исследуемой модели. В случае различия результатов, полученных при исследовании информационной модели, с измеряемыми параметрами реальных объектов можно сделать вывод, что на предыдущих этапах построения модели были допущены ошибки или неточности. Например, при построении описательной качественной модели могут быть неправильно отобраны существенные свойства объектов, в процессе формализации возможны ошибки в формулах и т.д. В этих случаях необходимо провести корректировку модели, причем уточнение модели может проводиться многократно, пока анализ результатов не покажет их соответствие изучаемому объекту. 35 Вопросы для размышления В каких случаях могут быть опущены отдельные этапы построения и исследования модели? Приведите известные вам примеры создания моделей в процессе изучения физики, химии, биологии, математики, географии и других предметов. 2.2. ИССЛЕДОВАНИЕ ФИЗИЧЕСКИХ МОДЕЛЕЙ 2.2.1. Построение информационной модели движения тела, брошенного под углом к горизонту Рассмотрим процесс построения и исследования модели на конкретном примере движения тела, брошенного под углом к горизонту. Физика-9 Содержательная постановка задачи «Попадание в стенку тела, брошенного под углом к горизонту». В процессе тренировок теннисистов используются автоматы по бросанию мячика в определенное место площадки. Необходимо задать автомату необходимую скорость и угол бросания мячика для попадания в мишень определенной высоты, находящуюся на известном расстоянии. Качественная описательная модель. Сначала построим качественную описательную модель процесса движения тела с использованием физических объектов, понятий и законов, т.е. в данном случае идеализированную модель движения объекта. Из условия задачи можно сформулировать следующие основные предположения:
Формальная модель. Для формализации модели используем известные из курса физики формулы равномерного и равноускоренного движения. При заданных начальной скорости v0 и угле бросания а значения координат дальности полета х и высоты у от времени можно описать следующими формулами: х = v0 • cosa • t; у = v0 • sina • t - g • t2/2. (2.1) Пусть мишень высотой h будет размещаться на расстоянии s. Из первой формулы находим время, которое понадобится мячику, чтобы преодолеть расстояние s: t = s/vn • cosa. 36 Подставляем это значение для t в формулу для у. Получаем / — высоту мячика над землей на расстоянии s: I = s • tga - g • s2/2 • v02 • cos2a. (2.2) Формализуем теперь условие попадания мячика в мишень. Попадание произойдет, если значение высоты / мячика будет удовлетворять условию в форме неравенства: О < / < А. Если 1<0, то это означает «недолет», а если / > h, то это означает «перелет». Практическое задание для самостоятельного ™~ выполнения 2.2. Построить формальную модель решения задачи «Попадание в площадку тела, брошенного под углом к горизонту». В процессе тренировок теннисистов используются автоматы по бросанию мячика в определенное место площадки. Следует задать автомату необходимую скорость и угол бросания мячика для попадания в площадку определенной длины, находящуюся на известном расстоянии. 2.2.2. Компьютерная модель движения тела на языке Visual Basic На основе формальной модели, описывающей движение тела брошенного под углом к горизонту, создадим компьютерную модель с использованием системы программирования Visual Basic. Создадим сначала графический интерфейс проекта. Проект «Попадание в стенку тела, брошенного под углом -^—-. к горизонту» 1. Разместить на форме:
2. Поместить на форму десять меток (объекты Label) для обозначе ния назначения текстовых полей (имен переменных и единиц измере ния). Создать программный код событийной процедуры, определяющей попадание мячика в мишень. Поместить на форму кнопку cmdCalc и создать для нее событийную процедуру cmdCalc_Click(), в которой:
37
Const G As Single = 9.81 Const Pi As Single =3.14 Dim VO, A, S, L, Т As Double, I As Integer Private Sub cmdCalc_Click() 'Ввод начальных значений VO = Val(txtVO.Text) A = Val(txtA.Text) S = Val(txtS.Text) H = Val(txtH.Text) 'Попадание в мишень L = S * Tan(A * Pi/180)-(G * S Л 2)1(2 * VO л 2 * Cos(A * R/180) л 2) IblL.Caption = L Select Case L Case Is < 0 1ЫМ.Caption = «Недолет» Case Is > H IblM.Caption = «Перелет» Case Else IblM.Caption = «Попадание» End Select End Sub Для визуализации формальной модели построим траекторию движения тела (график зависимости высоты мячика над поверхностью земли от дальности полета). Снабдим график осями координат и выведем положение мишени. Поместить на форму графическое поле picl, в котором будет осуществляться построение графика. В событийную процедуру ввести код установки масштаба графического поля: 'Установка масштаба picl.Scale (О, 15)-(S + 5, -5) В событийную процедуру ввести код построения траектории движения мячика: 'Построение траектории движения мячика For Т = 0 То 10 Step 0.1 Y = VO * Sin(A * Pi / 180) * Т - G * Т * Т / 2 X = VO * Cos(A * Pi / 180) * Т picl.PSet (X, Y) 38 Next T В событийную процедуру ввести код построения осей X и Y со шкалами и рисования мишени: 'Ось X picl.Line (0, 0)-(50, 0) For I = 0 То 50 Step 5 picl.PSet (I, 0) picl.Print I Next I 'Ось Y picl.Line (0, -5)-(0, 15) For I = -5 To 20 Step 5 picl.PSet (0, I) picl.Print I Next I 'Мишень picl.Line (S, 0)-(S, H) Компьютерный эксперимент. Введем произвольные значения начальной скорости и угла бросания мячика, скорее всего, его попадания в мишень не будет. Меняя один из параметров, например угол, произведем пристрелку, используя известный артиллерийский прием «взятие в вилку», в котором применяется эффективный метод «деление пополам». Сначала найдем угол, при котором мячик перелетит мишень, затем угол, при котором мячик не долетит до стены. Вычислим среднее значение углов, составляющих «вилку», и проверим, попадет ли мячик в мишень. Если он попадет в мишень, то задача выполнена, если не попадет, то рассматривается новая «вилка» и т.д. Запустить проект и ввести значения начальной скорости, угла, расстояния до мишени и ее высоты. s Щелкнуть по кнопке Бросок. В поля меток будут выведены результаты, а в графическом поле появится траектория движения тела. Подобрать значения начальной скорости и угла бросания мячика, обеспечивающие его попадание в мишень. Например, при скорости бросания мячика v0 = 18 м/с и угле бросания 39 а = 36° мячик попадет в мишень высотой h = 1 м и находящуюся на расстоянии S = 30 м на высоте / = 0,9741607 ж Анализ результатов и корректировка модели. Модернизируем проект так, чтобы можно было для каждого значения скорости бросания мячика получить с заданной точностью диапазон значений углов, обеспечивающих попадание мячика в мишень. Проект «Диапазон углов, обеспечивающий ~^™~ попадание в стенку»
Const G As Single = 9.81 Const Pi As Single = 3.14 Dim VO, S, H, L As Double, A, P As Integer Private Sub cmdCalc_Click() 'Ввод начальных значений VO = Val(txtVO.Text) S = Val(txtS.Text) H = Val(txtH.Text) P = Val(txtP.Text) For A = 0 To 90 Step P 'Попадание в мишень L = S * Tan(A * R /180) - (G * S Л 2) / (2 * VO Л 2 * Cos(A * R /180) л 2) 'Вывод значений диапазона углов If 0 < L And L < H Then IblA.Caption = IblA.Caption + Str(A) End If Next A End Sub 4. Запустить проект и ввести скорость бросания мячика, расстоя ние до мишени и ее высоту, а также точность определения значений углов. Щелкнуть по кнопке Диапазон углов. 40 Получен не очевидный результат, оказывается, существуют два диапазона углов от 33 до 36 и от 56 до 57°, которые обеспечивают попадание мячика при скорости бросания v0 = 18 м/с в мишень высотой h = 1 м, находящуюся на расстоянии S = 30 м. Проект «Диапазон углов, обеспечи- CD-ROM |^Ё~ вающий попадание в стенку» хранится в папке \VB\Phys2\ Вопросы для размышления
Практические задания для CD-ROM fc- ~^™~ самостоятельного выполнения
2.2.3. Компьютерная модель движения тела на языке Delphi На основе формальной модели, описывающей движение тела, брошенного под углом к горизонту, создадим компьютерную модель с использованием системы программирования Delphi. Создадим сначала графический интерфейс проекта. Проект «Попадание в стенку тела, брошенного под уг-~^™~ лом к горизонту» 1. Разместить на форме:
2. Поместить на форму десять меток (объекты Label) для обозначе ния назначения текстовых полей (имен переменных и единиц измерения). Создать программный код событийной процедуры, определяющей попадание мячика в мишень. 41 3. Поместить на форму кнопку Button 1 и создать для нее событий ную процедуру TForml.ButtonlClick, в которой:
procedure TForml.ButtonlClick(Sender: TObject); const Иначало раздела объявления констант G = 9.81; Pi = 3.14; var //начало раздела объявления переменных V0:real; //начальная скорость A:real; //угол бросания S:real; //расстояние до мишени H:real; //высота мишени L:real; //высота мячика на заданном расстоянии begin //Ввод начальных значений VO := StrToFloat(EditVO.Text); А := StrToFloat(EditA.Text); S := StrToFloat(EditS.Text); Н := StrToFloat(EditH.Text); //Попадание в мишень L:=S*Sin(Pi*A/180)/Cos(Pi*A/180)-G*Sqr(S) /(2*Sqr(VO)*Sqr(Cos(Pi*A/180))); Labell.Caption := FloatToStr(L); if L<0 then Label2.Caption := «Недолет» else if L<1 then Label2.Caption := «Попадание» else Label2.Caption := «Перелет»; end; Для визуализации формальной модели построить траекторию движения тела (график зависимости высоты мячика над поверхностью земли от дальности полета). Снабдить график осями координат со шкалами и вывести положение мишени. 4. Поместить на форму графическое поле Imagel, в котором будет осуществляться построение графика. 42 С помощью диалоговой панели Object Inspector установить размеры графического поля, например свойству Height присвоить значение 400, a Width — 500. Поместить на форму кнопку Button2. 5. Создать событийную процедуру TForml.Button2Click, в которой:
• построить траекторию движения мячика на объекте Imagel. Canvas; • построить оси X и Y со шкалами и мишень. procedure TForml.Button2Click(Sender: TObject); const Иначало раздела объявления констант G = 9.81; Pi = 3.14; var //начало раздела объявления переменных V0:real; //начальная скорость A:real; //угол бросания S:real; //расстояние до мишени H:real; Ивысота мишени L:real; Ивысота мячика на заданном расстоянии X:integer; //координата X Y:integer; //координата Y T:real; //время N:integer; //счетчик begin //Ввод начальных значений VO := StrToFloat(EditVO.Text); А := StrToFloat(EditA.Text); S := StrToFloat(EditS.Text); Н := StrToFloat(EditH.Text); //рисование траектории with Imagel.Canvas do begin while T<5 Do begin T:=T+0.005; Y:=380-Round(30*(VO*Sin(A*Pi/180)*T-G*T*T/2)); X := 5+Round(10*(VO*Cos(A*Pi/180)*T)); Pixels[X,Y]:=clBlack; end; MoveTo(0,380); LineTo(500,380); //ось X 43 MoveTo(5,0); LineTo(5,500); //ось Y MoveTo(5+Round(10*S),380); LineTo(5+Round(10*S),380-Round(30*H)); //мишень //шкала оси X N:=0; while N<500 do begin N:=N+100; MoveTo(5+N,380); LineTo(5+N,360); TextOut(5+N,380,IntToStr(Round(N/10))); end; Ишкала оси Y N:=0; while N<400 do begin N:=N+100; MoveTo(0,380-N); LineTo(10,380-N); TextOut(0,380-N,IntToStr(Round(N/10))); end; end; end; end. П роект «Попадание в стенку тела, брошенного под углом к горизонту» хранится в каталоге \Delphi\Physl\ Компьютерный эксперимент 6. Запустить проект и ввести значе ния начальной скорости, угла бросания, расстояния до мишени и ее высоты. Щелкнуть по кнопке Бросок. В поля меток будут выведены значение высоты мячика и результат броска. В графическом поле появится траектория движения тела. Подобрать значения начальной скорости и угла бросания мячика, обеспечивающие его попадание в мишень. 7. Например, при скорости бро сания мячика v0 = 18 м/с и угле бро сания а = 36° мячик попадет в мишень высотой h = 1 м и находящуюся на расстоянии S = 30 м на высоте / = 0,9741612642009 м. Анализ результатов и корректировка модели. Модернизируем проект так, чтобы для каждого значения скорости бросания получить диапазон значений углов, обеспечивающий попадание мячика в мишень. Проект «Диапазон углов, обеспечивающий попадание в стенку»
3. Внести изменения в программный код событийной процедуры: const //начало раздела объявления констант G = 9.81; Pi = 3.14; var //начало раздела объявления переменных V0:real; //начальная скорость A:integer;//jeo/z бросания S:real; //расстояние до мишени H:real; Ивысота мишени L:real; Ивысота мячика на заданном расстоянии procedure TForml.ButtonlClick(Sender: TObject); begin //Ввод начальных значений VO := StrToFloat(EditVO.Text); S := StrToFloat(EditS.Text); H := StrToFloat(EditH.Text); //Попадание в мишень for A:=0 to 90 do begin L:=S*Sin(Pi*A/180)/Cos(Pi*A/180)-G*Sqr(S)/ (2*Sqr(VO)*Sqr(Cos(Pi*A/180))); if (0</400></500> |
Инструкция №26/09 по применению средства дезинфицирующего двухкомпонентного... Инструкция разработана: Инструкция разработана: в Испытательном лабораторном центре гуп «Московский городской центр дезинфекции»... |
Инструкция №26/09 по применению средства дезинфицирующего двухкомпонентного... Инструкция разработана: Инструкция разработана: в Испытательном лабораторном центре гуп «Московский городской центр дезинфекции»... |
||
Рабочая программа по истории составлена на основании: Авторской программы... В. Д. Симоненко, Т. А. Степченко «Азбука потребителя»: Программа курса по выбору для 8-9 классов (предпрофильная подготовка). С.... |
ббк 84(7 сша) р 12 р 12 Анализ характера: Пер с англ. Е. Поле. — М: Апрель Пресс, Изд-во эксмо-пресс, 2000. — 528 с. (Серия «Психологическая коллекция») |
||
Гидравлический пресс пгр-100, пгр-100М ... |
Зао «медина» прайс на продукцию «Вита-Пул» на 2015 год |
||
Информационный бюллетень Администрации Санкт-Петербурга №45 (945) от 23 ноября 2015 г Пресс-конференция, посвященная открытию Международного конкурса барабанщиков и перкуссионистов «Ударная волна 2015» (пресс-центр... |
Информационный бюллетень Администрации Санкт-Петербурга №44 (745) от 21 ноября 2011 г Пресс-конференция, посвященная открытию XVI международного фестиваля экологических фильмов «Зеленый взгляд» (ул. Жуковского, 63,... |
||
Руководство по эксплуатации к изделию не отражает незначительных... Пресс гидравлический пг 125-250, далее пресс, предназначен для обработки металлов статическим давлением |
Пресс вулканизатор 193А, 193 М Пресс-вулканизатор предназначен для изготовления изделий из различных видов сырых каучуковых и силиконовых резин. Может использоваться... |
||
Инструкция №13/06 по применению дезинфицирующего средства "Авансепт-био" ООО «мк вита-Пул» Инструкция предназначена для персонала, обслуживающего автономные туалеты |
Техническое задание на поставку пресс-форм для склеивания поручня эскалаторов Пресс-форма используется для вулканизации армированных поручней шириной 88мм., предназначена для соединения поручней эскалаторов... |
||
Тема урока: «Создание фрактальных изображений средствами Photoshop. Запись макросов.» «Обработка графических изображений» 11 класс Карпызина Вита Валерьевна гбоу школа №477 |
Техническое задание вулканизационный пресс al20ne 1200x1200 В то же время наиболее слабым местом продолжают оставаться стыковые соединения ленты. Вулканизационный пресс al20ne с нагревательным... |
||
Гидравлический пресс ручной пгр-10 и пгр-20 ... |
Пособие для студентов гуманитарных вузов и учащихся лицеев аспент пресс Социальная лингвистика: Пособие для студентов гуманит вузов и учащихся лицеев. — 2-е изд., испр. — М.: Аспект Пресс, 2000. — 207... |
Поиск |