Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

книги / Моделирование функционирования изделий и технологических процессов в системах компьютерной математики

..pdf
Скачиваний:
1
Добавлен:
12.11.2023
Размер:
1.6 Mб
Скачать

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

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

Контрольные вопросы и задания

1.Дайте определение терминам «модель» и «моделирование». Каковы цели моделирования в инженерной практике?

2.От каких параметров зависит точность решения уравнений методом Ньютона?

3.Опишите процедуру поиска корней уравнений методом дихотомии.

4.Что такое метод наименьших квадратов в решении задач аппроксимации?

5.Чем отличаются задачи интерполяции от задач аппрокси-

мации?

6.Опишите процедуру решения дифференциального уравнения методом Эйлера.

7.Как влияет шаг решения на точность решения дифференциальных уравнений методами Эйлера и Рунге–Кутты?

8.Опишите структуру процесса моделирования и его этапы.

9.Какие параметры определяются в результате решения задачи интерполяции кубическими сплайнами?

31

10.Каковы цели решения задач аппроксимации и интер-

поляции?

11.Как зависит число параметров, определяемых в результате решения задачи аппроксимации, от числа исходных данных?

12.Какой метод решения уравнений более экономичный (т.е. требует меньше вычислений): метод дихотомии или метод Ньютона? Почему?

13.Чем метод Рунге–Кутты решения дифференциальных уравнений отличается от метода Эйлера?

14.Что такое численные методы решения научно-техничес- ких задач? Чем они отличаются от классических методов аналитического решения?

15.Опишите процедуру поиска корней уравнений методом

Ньютона.

32

РАЗДЕЛ 2. ОБЩИЕ СВЕДЕНИЯ О СИСТЕМАХ КОМПЬЮТЕРНОЙ МАТЕМАТИКИ. СИСТЕМА MathCAD. ТЕХНОЛОГИИ РАБОТЫ С ПРОГРАММНЫМ ОБЕСПЕЧЕНИЕМ

2.1. Общие сведения о системах компьютерной математики

Системы компьютерной математики – новые средства, ав-

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

Системами компьютерной математики (СКМ) будем называть такие системы [6–9], как Derive, Mathematica, Maple, MATLAB, MathCAD, MuPAD, а также семейство систем статистического ана-

лиза данных – SPSS, STATISTICA, Spotfire, STADIA и др. СКМ по-

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

иявляются эффективными средствами реализации технической стороны математического моделирования.

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

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

Каждая из СКМ имеет определённые свойства, которые необходимо учитывать при решении конкретных математических задач.

33

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

Каждая СКМ может иметь нюансы в своей архитектуре или структуре. Тем не менее можно прийти к выводу, что современные универсальные СКМ имеют типовую структуру, представленную на рис. 8.

Ядро Интерфейс

Пакеты расширения Справочная система

Библиотеки

Рис. 8. Типовая структура системы компьютерной математики

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

Интерфейс даёт пользователю возможность обращаться к ядру со своими запросами и получать результат решения на экране дисплея. Интерфейс современных систем символьной математики базируется на средствах операционных систем «Windows» и имеет все их возможности: перемещаемые и масштабируемые окна документов, диалоговые и информационные окна, кнопки управления, общение с периферийными устройствами и т.д. Он мало отличается от интерфейса офисных программ пакета «Microsoft Office». Нередко интерфейс СКМ обеспечивает возможность задания и редактирования библиотечных модулей и пакетов расширения систем.

34

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

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

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

Во всем мире созданы десятки СКМ, но широкую известность получили лишь несколько из них. Кратко охарактеризуем их.

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

35

MathCAD – система, ориентированная на высшее образование, выполнение умеренно сложных численных и аналитических расчётов с максимальным использованием естественного математического языка представления вычислений [6, 7, 10]. Имеет прекрасный интерфейс и обширные возможности графической визуализации вычислений. Является самой массовой СКМ.

Maple, Mathematica – универсальные системы, ориентированные на выполнение аналитических вычислений на любом уровне, вплоть до профессионального [20, 22]. Широко применяются в системе высшегообразованияивпрактике выполнениянаучныхрасчётов.

MATLAB+Simulink – мощные и большие (занимают до 1– 1,5 Гбайт на жёстком диске) системы, ориентированные на матричные и численные методы вычислений, реализацию численных расчётов повышенной сложности, математическое моделирование систем и устройств [21]. Имеют десятки пакетов расширения по различным областям математики и многим (в том числе новейшим) сферам её применения.

2.2. Система MathCAD

Общая характеристика системы. Название системы MathCAD

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

WYSIWYG («What You See Is What You Get» – «что вы видите, то

иполучите») выделяет MathCAD среди других современных математических систем. Она позволяет выполнить как численные, так

ианалитические (символьные) вычисления, имеет удобный матема- тико-ориентированный интерфейс и прекрасные средства графики. В 2006 г. систему и торговую марку MathCAD приобрела фирма РТС (Parametric Technology Corp.) [6], основным «фирменным» про-

дуктом которой является программа Pro/ENGINEER. Система MathCAD рассматривается компанией РТС в качестве мощного инструмента проектировщика для выполнения инженерных расчётов

36

любой сложности, анализа проектных разработок и в этом качестве интегрирована в базовую систему параметрического проектирования промышленных изделий Pro/ENGINEER Wildfire.

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

Отличительной чертой MathCAD является работа с так назы-

ваемыми документами, или рабочими листами (worksheets), кото-

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

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

Документ MathCAD состоит из математических блоков, внутри которых производятся расчёты и выполняется визуализация результатов моделирования, и блоков с текстовыми комментариями. Все вычисления производятся в обычном порядке: слева направо исверху вниз. Основнымиэлементами входного языка(см. рис. 9) являются:

оператор ввода выражений «:=» и оператор вывода результатов вычислений «=»;

встроенные функции, предназначенные для решения задач конкретного типа;

команды математических операций и визуализации вычислений – построения графиков (задаются нажатием кнопок на соответствующих панелях инструментов);

команды логических операций (задаются нажатием кнопок на панели инструментов «Boolean»).

37

a := 80 b := 90

c := 25

a + b

= 34

 

c

 

 

f (x) := a exp(2 x) + 10 b x2

6.105

4.8.105

3.6 .105

f (x)

2.39 .105

1.19 .105

1000 5

3

1

1

3

5 W :=

 

 

x

 

 

 

 

 

 

 

x

x

2

 

 

 

 

 

 

 

 

 

Q(x) :=

 

 

x

3

exp(x)

 

 

 

 

 

 

W K

 

 

x

4

 

+ x

15 cos(2 x)

 

 

 

 

 

 

 

 

30

 

 

 

 

 

 

 

20

 

 

 

 

 

 

Q(x)0 , 1

10

 

 

 

 

 

 

Q(x)1 , 1

 

 

 

 

 

 

0

 

 

 

 

 

 

Q(x)2 , 1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

10

 

 

 

 

 

 

 

20

7

4.2

1.4

1.4

4.2

7

 

 

 

 

 

x

 

 

 

1

2

3

 

 

 

45

1

 

 

 

 

 

 

 

 

 

 

 

 

 

45 6

7

 

 

K :=

78

87

 

8

9

12

 

 

 

10

56

 

 

 

 

 

 

 

 

 

231

 

 

343

 

 

 

 

 

 

2.563 × 103

 

 

 

 

 

=

959

 

 

 

 

 

 

1.182 ×

10

3

1.463 ×

10

3

 

 

 

 

 

 

 

 

Рис. 9. Пример применения входного языка MathCAD для простых вычислений

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

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

38

вать (по одному или сразу несколько блоков) с помощью мыши. При этом формульные блоки могут иметь особые признаки – атрибуты, например, активности, пассивности и оптимизации.

Как указано выше, важно сразу учесть, что MathCAD выполняет действия над блоками в строго определённом порядке: блоки анализируются (оцениваются) слева направо и сверху вниз. Это означает, что блоки нельзя располагать в документе произвольно. Блоки, готовящие какие-либо операции, должны предшествовать блокам, выполняющим эти операции. Иначе появится сообщение об ошибке, прикреплённое к блоку с ошибочной операцией. Доступные в данный момент операции есть в контекстном меню правой клавиши мыши.

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

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

Специальные панели инструментов вызываются из пункта главного меню «Вид» и предназначены для выполнения соответствующих математических операций и визуализации результатов расчётов. Функционал и области назначения указанных панелей инструментов, а также назначение пунктов главного меню системы необходимо изучить по материалам литературы [6, 7, 11, 18].

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

Понятие о функциях и операторах. Важным понятием СКМ

MathCAD является понятие функции. Функция возвращает резуль-

39

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

1

2

4

3

Рис. 10. Интерфейс системы MathCAD: 1 – главное меню системы; 2 – стандартные панели инструментов; 3 – рабочее поле документа; 4 – специальные панели инструментов

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

ВMathCAD к функциям также относятся и те объекты, которые

внекоторых языках программирования именуются процедурами или командами. Например, слова rkfixed и Find также называются функ-

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

40

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