Будь умным!


У вас вопросы?
У нас ответы:) SamZan.net

тематические методы и модели в расчётах на ЭВМ~~ для студентов специальностей

Работа добавлена на сайт samzan.net: 2016-03-13

Поможем написать учебную работу

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

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 20.5.2024

МИНИСТЕРСТВО ОБРАЗОВАНИЯ УКРАИНЫ

НАЦИОНАЛЬНАЯ МЕТАЛЛУРГИЧЕСКАЯ

АКАДЕМИЯ УКРАИНЫ

Методические указания

к выполнению лабораторного практикума по дисциплине

‘‘Математические методы и модели в расчётах на ЭВМ’’

для студентов специальностей "Промышленная теплоэнергетика"

и "Теплофизика"

Днепропетровск НМетАУ 2000


МИНИСТЕРСТВО ОБРАЗОВАНИЯ УКРАИНЫ

НАЦИОНАЛЬНАЯ МЕТАЛЛУРГИЧЕСКАЯ

АКАДЕМИЯ УКРАИНЫ

Методические указания

к выполнению лабораторного практикума по дисциплине

‘‘Математические методы и модели в расчётах на ЭВМ’’

для студентов специальностей "Промышленная теплоэнергетика"

и "Теплофизика"

Утверждено

на заседании кафедры ТЭМП

протокол № 30 от 18.10.2000

Днепропетровск НМетАУ 2000

2


УДК 681:3:51.001.57

Методические указания к выполнению лабораторного практикума по дис-

циплине ‘‘Математические методы и модели в расчётах на ЭВМ’’ для сту-

дентов специальностей "Промышленная теплоэнергетика" и "Теплофизи-

ка"/ Сост.: В.Л. Бровкин, В.А. Вехник – Днепропетровск: НМетАУ, 2000. –

69 с.

Методические указания содержат одиннадцать лабора-

торных работ по дисциплине ‘‘Математические методы и

модели в расчётах на ЭВМ’’. Лабораторные работы предна-

значены для приобретения практических навыков решения

математических и инженерных задач при помощи математи-

ческого пакета MathCAD.

Методические указания предназначены для студентов

специальностей "Промышленная теплоэнергетика" и "Теп-

лофизика".

Составители:

В.Л. Бровкин, канд. техн. наук, доц.,

В.А. Вехник, инж., аспирант.

В.И. Губинский, д-р техн. наук, проф.

А.И. Михайлёв, д-р техн. наук, проф.

Ответственный за выпуск

Рецензент

3


Лабораторная работа №1

Простейшие вычисления и операции

в среде MathCAD

Цель работы:

1. Получить представление о назначении и возможностях программно-

го средства MathCAD.

2. Приобрести навыки простейших алгебраических вычислений в сре-

де MathCAD.

1. Общие сведения

MathCAD (Mathematical Computer Aided Design – математическая сис-

тема автоматизированного проектирования) – программное средство,

предназначенное для решения математических задач, построения графиков

функций и оформления полученных результатов. Документы

(WorkSheets), созданные в среде MathCAD, могут содержать ‘‘работаю-

щие’’ математические формулы, записанные в естественном виде, разно-

образные графики функций и различные иллюстративные материалы (ри-

сунки, фотографии, анимацию).

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

имеющий элементарные навыки работы с Windows-приложениями, может

сразу начать работу с MathCAD. Интерфейс системы внешне напоминает

интерфейс широко известных текстовых процессоров Word под Windows.

Окно MathCAD с загруженным рабочим документом показано на рисун-

ке 1.1.

Главной отличительной чертой систем класса MathCAD является то,

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

водится при помощи привычных математических формул и знаков. Это

делает документ, видимый на экране дисплея (см. рис. 1.1), чрезвычайно

похожим на странички текста из математических книг и научных статей.

Чрезвычайная простота интерфейса MathCAD сделала его одним из

самых популярных и, безусловно, самым распространённым в студенче-

ской среде математическим пакетом.

В среде MathCAD доступны более двухсот операторов и логических

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

ческих проблем различной сложности. MathCAD содержит:

1. обширную библиотеку встроенных математических функций;

2. инструменты построения разнообразных графиков;

3. средства создания текстовых комментариев и оформления отчётов;

4. конструкции, подобные конструкциям языков программирования,

позволяющие писать программы для решения задач, которые невоз-

4


можно или очень сложно решить стандартными инструментами па-

кета;

5. удобно организованную интерактивную систему получения справки

и оперативной подсказки.

Рис 1.1. Окно MathCAD 7 Pro с загруженным

рабочим документом

2. Графический интерфейс пользователя MathCAD

Под графическим интерфейсом пользователя подразумевается сово-

купность средств графической оболочки MathCAD, обеспечивающих лег-

кое управление системой, как с клавиатуры, так и с помощью мыши. К

элементам графического интерфейса пользователя относятся меню, кнопки

инструментальных панелей, шаблоны различных математических опера-

ций, линейки прокрутки (скроллинга) и т. д.

Рассмотрим подробнее элементы графического интерфейса пользова-

теля MathCAD.

5


Верхняя строка окна системы содержит указание на имя системы или

текущего открытого окна. Следующая строка содержит позиции главного

меню. Перечислим их:

– работа с файлами, сетью Internet и электронной почтой;

File

– редактирование документов;

Edit

– изменение средств обзора и включения/выключения

View

элементов интерфейса;

– вставка объектов и их шаблонов (включая графику);

Insert

– изменение формата (параметров) объекта;

Format

– управление процессом вычислений;

Math

Graphics – работа с графическим редактором;

Symbolic – выбор операций символьного процессора;

Window – управление окнами системы;

– работа с электронными книгами;

Books

– работа со справочной базой данных о системе.

Help

Команды главного меню описаны в Приложении.

Если какая-либо позиция главного меню делается активной, она выво-

дит ниспадающее подменю со списками доступных и недоступных (но

возможных в дальнейшем) операций (команд). Доступные в данный мо-

мент операции даны чётким шрифтом, а недоступные – шрифтом с харак-

терным затемнением, но позволяющим всё же прочесть название опера-

ций.

Работа с документами MathCAD обычно не требует обязательного ис-

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

лируются кнопками быстрого управления. Их можно выводить на экран

или убирать с него с помощью соответствующих опций меню View.

Чаще всего используются три панели, содержащие такие кнопки: па-

нель инструментов (дублирующая ряд наиболее распространённых команд

и операций), панель форматирования (для выбора типа и размера шрифтов

и способа выравнивания текстовых комментариев) и панель математиче-

ских операций (для выбора палитр математических операций). Эти панели

видны на рис. 1.1 под строкой главного меню.

На рис. 1.2 указано назначение кнопок панели инструментов:

Ниже панели форматирования расположена панель математических

операций:

Математические операции в MathCAD разделены на группы и щелчок

на каждой кнопке панели математических операций открывает другую па-

нель – палитру, на которой собственно и расположены кнопки математи-

ческих операций соответствующей группы. Более подробно палитры ма-

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

6


Рис. 1.2. Назначение кнопок панели инструментов

3. Понятие о входном языке системы MathCAD

Общение пользователя с системой MathCAD происходит на некотором

промежуточном математически ориентированном языке визуального про-

граммирования - входном языке. Многие математические записи в этом

языке вводятся просто через шаблоны соответствующих операторов. Этот

язык настолько приближен к математическому языку описания вычисли-

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

лишь точное описание алгоритма решения задачи.

Операторы – это специальные символы (+, –, /, *, = и т. д.), указываю-

щие на выполнение тех или иных операций над данными – операндами.

Последние могут быть представлены константами или переменными

объектами с именами, хранящими данные определенного типа и значения.

Функция – объект входного языка, имеющий имя и параметры, указы-

ваемые в круглых скобках. Имя функции отождествляется с соответст-

вующей математической функций, – например sin(x) – это функция вычис-

ления синуса аргумента х. Отличительной чертой функции является воз-

врат значения (результата вычисления функции) в ответ на обращение к

ней.

Операторы и функции используются для создания математических

выражений – формул, которые могут вычисляться в численном или сим-

вольном виде.

7


4. Работа с формульным редактором

Фактически система MathCAD интегрирует в себе три редактора: фор-

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

достаточно установить курсор мыши в любом свободном месте окна ре-

дактирования и щелкнуть левой клавишей. Появится курсор в виде ма-

ленького красного крестика. Его можно перемещать клавишами переме-

щения курсора.

Курсор указывает место, с которого можно начинать набор формул –

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

может менять свою форму. Так в области формул курсор превращается в

синий уголок, указывающий направление и место ввода.

Примеры выполнения работы

I. Вычислить значения арифметических выражений

49 +

12

12

и 49 + ,   для

4

5

чего:

1) Щёлкните мышью по любому месту в рабочем документе – в поле

появится крестик, обозначающий позицию, с которой начинается ввод.

2) Введите с клавиатуры символы в следующей последовательности:

49 + 12 / 4 =. MathCAD вычислит значение выражения и выведет спра-

ва от знака равенства результат.

Необходимо запомнить правило: Нажатие клавиши = имеет двоякое

действие. Если переменная используется впервые, то знак = будет авто-

матически заменён на := (знак присвоения, который также вызывается

нажатием клавиши : ). Если знак = ввести после выражения, либо уже

существующей переменной, то будет выведено их значение.

3) Щёлкните мышью справа внизу возле цифры 4 и нажмите клавишу

<Backspace>. Введите цифру 5 и щёлкните мышью вне выделяющей

рамки.

II. Удаление выражения из рабочего документа.

1) Щёлкните мышью по любому месту в выражении и нажимайте кла-

вишу <Space> до тех пор, пока всё выражение не будет выделено угло-

вой синей рамкой.

2) Нажмите клавишу <Backspace> (поле ввода окрасится в чёрный

цвет) и, нажав клавишу <Del>, удалите выделенное.

III. Вычислить длину вектора, если его проекции на координатные оси

0-X, 0-Y и 0-Z равны соответственно X = 0,5 м., Y = 1,3 м., Z = 1 м. Рас-

чётная формула d=X 2  + Y 2 + Z 2 .

1) Щёлкните мышью по свободному месту в рабочем документе и вве-

дите с клавиатуры х : 0.5 * m и щёлкните по свободному месту вне по-

ля ввода. Здесь m означает размерность величины в метрах.

8


Необходимо запомнить правило: Основные размерности обознача-

ются в MathCAD следующим образом: m – метр, kg – килограмм, s – се-

кунда, J –Джоуль, W – Ватт, K – Кельвин.

2) Аналогично введите значения проекций Y и Z.

3) Установите курсор в любом свободном месте документа ниже вы-

ражений для X Y и Z и нажмите клавишу с изображением обратного

слеша ( \ ), либо нажмите кнопку с изображением калькулятора, кото-

рая находится на панели инструментов, и выберите в раскрывшемся

меню кнопку с изображением квадратного корня.

4) Введите в шаблон (чёрный прямоугольник) под знаком корня выра-

жение X ^ 2 <Space> +Y ^ 2 <Space> + Z ^ 2 =.

5) Теперь сохраните созданный документ на жёстком магнитном дис-

ке, для чего выберите в меню File команду Save (Сохранить), либо на-

жмите клавишу [F6].

Совет: Удобнее всего сохранять файл в своей личной папке (предвари-

тельно создав её) под именем, соответствующим номеру лабораторной

работы.

Задание для самостоятельной работы

Вычислить выражение

A+ B

, значения А, В и С которого взять из

3

C

таблицы 1.1 согласно порядковому номеру студента по журналу.

Таблица 1.1

Варианты заданий для самостоятельной работы

вар.

1

2

3

4

5

6

7

8

X

-0.1

1,4

8

4,5

3

4

3,2

34

Y

-3

X2

X

A

Y

X

B

Y2

X3

5

1

X4

C

X Y

B

вар.

9

10

11

12

13

14

15

16

9

X

0.2

5

1,8

1

4,3

7,2

4

5,6

Y

1

X

A

5

X

Y

1

X4

B

X

AY2

A3

X A

y2

1

X Y

C

Y

1

X A

-2

X

2

-3

X

3

2,5

B

1

XA

X

A B2

87

B

1

X A

X

3

Y

4,5

3

X

X3

3

0,9

8,1

X

3

X Y

1

X Y

A

3

Y

XA

Y2

X Y

X Y

Y

1

X4

X A

Y2

1

X 4

X Y

3

A

Y

3

1

X A

6,7

X A

Y2

9,2

1

XA

3,6

X

3

XY

X


Требования к отчёту

Отчет о лабораторной работе должен включать цель работы, кратко

оформленный реферат разделов 1 – 4, описание команд меню File и View

из Приложения и протокол действий, самостоятельно выполняемых сту-

дентом на компьютере. Рабочий документ выполнения лабораторной рабо-

ты должен быть сохранён на ПЭВМ в личной папке студента.

При сдаче работы студент должен продемонстрировать практическое

умение выполнять простейшие расчёты в среде MathCAD и ответить на

следующие контрольные вопросы:

1. Назначение программного средства MathCAD?

2. Что называется графическим интерфейсом пользователя MathCAD?

Из каких элементов он состоит?

3. Для чего предназначена панель инструментов? Какие кнопки она

содержит?

4. Что представляет из себя входной язык системы MathCAD?

5. Что называется переменной, функцией? Как присвоить значение пе-

ременной?

6. Какие редакторы интегрирует в себе система MathCAD?

7. Как в среде MathCAD возвести число в степень, и вычислить значе-

ние квадратного корня?

8. Как удалить какое-либо выражение из рабочего документа?

9. Какие бывают формы курсора в MathCAD? Что они обозначают?

10. Какое действие вызывает нажатие клавиши = ?

11. Как указать размерность переменной? Как обозначаются основные

размерности?

12. Как сохранить документ в файле на жёстком диске? Как открыть

другой документ, хранящийся на жёстком диске?

10


Лабораторная работа №2

Графики функций, текстовые блоки и массивы

в среде MathCAD

Цель работы:

1. Ознакомиться с графическим и текстовым редакторами программ-

ного средства MathCAD.

2. Приобрести практические навыки построения графиков, таблиц и

оформления текстовых блоков в среде MathCAD.

1. Общие сведения

Для создания графиков в системе MathCAD имеется программный

графический процессор, который позволяет строить самые разные графи-

ки, например графики в декартовой и полярной системах координат, трёх-

мерные поверхности, графики уровней и т. д.

Для построения графиков используются шаблоны, перечень которых

содержится в подменю Graph меню Insert, кроме того, панель, содержа-

, ко-

щую кнопки шаблонов графиков, можно вызвать нажатием кнопки

торая находится в математической панели.

Большинство параметров графического процессора, необходимых для

построения графиков, по умолчанию задается автоматически. Поэтому для

начального построения графика того или иного вида достаточно только за-

дать тип графика. В подменю Graph содержится список из семи основных

типов графиков. На рис. 2.1 показана палитра графиков, название кнопок

которой соответствует пунктам подменю Graph меню Insert:

Рис. 2.1. Палитра графиков

X–Y Plot– создать шаблон двумерного графика в декартовой системе

координат;

Polar Plot – создать шаблон графика в полярной системе координат;

Surface Plot– создать шаблон для построения трехмерного графика;

11


Contour Plot– создать шаблон для контурного графика трехмерной по-

верхности;

3D Scatter Plot – создать шаблон для графика в виде точек (фигур) в

трехмерном пространстве;

3D Bar Chart – создать шаблон для изображения в виде совокупности

столбиков в трехмерном пространстве;

Vector Field Plot – создать шаблон для графика векторного поля на

плоскости.

Для изменения формата уже построенного графика необходимо выде-

лить его, щёлкнув на нём указателем мыши. Выделенный график обводит-

ся сплошной линией с маркерами для изменения размеров. Если два раза

щёлкнуть указателем мыши по полю графика, то будет вызвано диалоговое

окно настройки параметров графика. Параметры графика можно изменить,

также, при помощи команд, которые содержатся в подменю Graph меню

Format.

Полезным инструментом при работе с двухмерными графиками явля-

ется применение специального графического маркера в виде двух пере-

крещивающихся пунктирных линий. Они появляются при выполнении ко-

манды X-Y Trace, которая содержится в подменю Graph меню Format,

либо нажатием соответствующей кнопки на панели графиков. При этом

появляется окно этой операции, в котором отображаются координаты мар-

кера, перемещаемого по полям графика. Поместив маркер на какую-либо

интересующую вас точку графика, можно примерно определить её коор-

динаты

Еще одна особенность при работе с двухмерными графиками заключа-

ется в возможности их просмотра с увеличением отдельных частей этих

графиков. Она реализуется операцией X–Y Zoom, которая содержится в

подменю Graph меню Format, либо нажатием соответствующей кнопки

на панели графиков. Перемещением мыши с нажатой левой клавишей

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

максимальная координаты по осям Х и Y отображаются в информацион-

ном окне данной операции.

Графики любого вида, как любые объекты документа можно выделять,

заносить в буфер обмена, вызывать их оттуда и переносить в любое новое

место документа. Их можно и просто перетаскивать с места на место кур-

сором мыши, а также растягивать по горизонтали, по вертикали и по диа-

гонали, цепляясь за специальные маркеры выделенных графиков курсором

мыши.

2. Построение графиков в декартовой системе координат

Есть два способа построения наиболее распространённых графиков в

декартовой системе координат. Первый, наиболее простой способ, – это

ввести выражение, описывающее некоторую функцию f(x), а затем вызвать

12


шаблон X–Y Plot с помощью меню или палитры графиков. В появившемся

шаблоне остаётся только ввести имя переменной х по оси 0–Х и щёлкнуть

мышью вне области графика – он будет построен. Так построен первый

график на рис. 2.2. Следует обратить внимание на то, что на оси ординат

записывается имя функции (например, sin(x), f(x) и т.п.), при этом в

скобках указывается имя аргумента, стоящего на оси абсцисс (в данном

случае – х).

Рис. 2.2. Пример построения двумерных графиков

в декартовой системе координат

Для второго способа нужно вначале задать ранжированную перемен-

ную, например х, указав диапазон её изменения и шаг. Шаг d задаётся сле-

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

через запятую значение х0 + d. После этого через две точки указывается

конечное значение х – смотрите второй график на рис. 2.2. Две точки вво-

дятся нажатием клавиши ; – точка с запятой. Затем надо задать соответст-

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

Незаполненный шаблон представляет собой большой пустой прямоуголь-

ник с местами ввода данных в виде тёмных маленьких прямоугольников,

расположенных около осей абсцисс и ординат будущего графика.

В средние шаблоны данных нужно поместить имя переменной (напри-

мер, х на оси абсцисс) и имя функции (например, f(x) на оси ординат). Ес-

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

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

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

нат, т. е. они задают масштабы графика. Если оставить эти шаблоны неза-

13


полненными, то масштабы по осям графика будут устанавливаться автома-

тически.

3. Построение графиков поверхностей

Порядок построения графиков поверхности рассмотрим на примере по-

строения функции f ( x, y ) = − sin( x 2 + y 2 ) , где х изменяется от 2 до 3,1, а у

от 1 до 2,5. Фрагмент рабочего документа с построенным графиком пред-

ставлен на рис. 2.3.

Для построения графика поверхности (как, впрочем, и любого трёх-

мерного графика) необходимо выполнить следующую последовательность

действий:

1. Задать вид функции двух переменных – f(x, y) : - sin(x^2<Space> +

y^2);

2. Задать пределы изменения аргументов – хн:2<Enter> хк:3.1<Enter>

ун:1<Enter> ук:2.5<Enter>;

3. Задать нумерацию узлов сетки поверхности по первому аргументу –

i : 0 ; 40;

Замечание: число узлов обычно выбирается произвольно. Если задан

шаг изменения аргумента, например, Δ х, то число узлов равно

i=

4. Сформировать вектор первого аргумента – x [ i : хн + (хк - хн)i / 40;

Необходимо запомнить правило: в MathCAD существует два вида

нижних индексов: 1) декоративный – для придания наглядности выраже-

ниям. Он вызывается нажатием клавиши ‘‘.’’– точка (при латинской рас-

кладке клавиатуры). 2) индекс массива – для нумерации элементов масси-

ва. Он вызывается нажатием клавиши ‘‘ [’’ – открывающаяся квадрат-

ная скобка. При построении графиков используются индексы массива.

5. Задать нумерацию узлов сетки поверхности по второму аргументу –

k : 0 ; 20;

6. Сформировать вектор второго аргумента – y [ k : yн + (yк - yн)k / 20;

7. Заполнить матрицу М значениями функции f ( x, y ) в узлах сетки –

M [ i, k : f ( x [i <Space>, y [k <Space> );

8. Построить график поверхности, для чего нажмите кнопку Surface

Plot на панели графики, либо выберите команду Surface Plot подме-

ню Graph меню Insert;

Для изменения параметров графика необходимо щёлкнуть два раза по

полю графика, либо выбрать команду 3D Plot подменю Graph меню

Format.

xк хн

+ 1;

Δx

14


Форматирование трёхмерного графика имеет на порядок больше воз-

можностей, чем форматирование двухмерного. К цвету, толщине и виду

линий, нумерации осей, сетке и пр. добавляется вид (View) графика: на-

клон к зрителю и вращение по оси Z, а также многое другое.

f( x , y )

i

k

0 .. 40

0 .. 20

sin( x

2

y)

хн

ун

2

хн

( хк

( ук

xi

yk

хк

i

хн ) .

2

40

3.1

ун

1

ук

2.5

ун ) .

k

20

Mi, k

f xi , yk

1

0.5

0

10

0.5

30

1

0

5

10

15

20

40

20

0

M

Рис. 2.3. График поверхности

4. Построение графиков в полярной системе координат

В полярной системе координат каждая точка задаётся углом W, и мо-

дулем радиус-вектора R(W). График функции обычно строится в виде ли-

нии, которая описывает конец радиус-вектора при изменении угла W в оп-

ределённых пределах, чаще всего от 0 до 2π.

Перед построением таких графиков надо задать значения переменной

W. После вывода шаблона следует ввести W в шаблон снизу и функцию

R(W) в шаблон справа, а также указать нижний предел изменения длины

радиус-вектора в шаблоне справа внизу и верхний предел в шаблоне спра-

ва сверху.

5. Построение контурных графиков поверхности

Ещё один широко распространённый тип графиков для представления

поверхностей – с помощью линий уровня. Такие графики широко приме-

няются, например, в картографии. Операция Contour Plot служит для вы-

вода шаблона таких графиков. Он подобен шаблону, описанному при по-

15


строении графиков поверхности (кстати, как и предшествующие выводу

шаблона действия по созданию матрицы М).

Часто контурные графики получаются более информативными, чем

просто поверхности. У последних нередко одни части поверхности закры-

вают другие. Например, пик на переднем плане может закрыть меньшие

пики или впадины на заднем плане. У контурных графиков такого эффекта

нет, и на них легко обнаруживаются все пики и впадины, правда, при дос-

таточно большом числе линий уровня и малом расстоянии между ними.

6. Построение точечных графиков поверхности

Нередко поверхности представляют в виде находящихся в трёхмерном

пространстве точек, кружочков или иных фигур. Каждая из этих фигур не-

сёт информацию о геометрическом положении её центра в трёхмерном

пространстве. Такой график создаётся операцией 3D Scatter Plot.

Порядок построения точечных графиков поверхности такой же, как и

порядок построения графика поверхности.

7. Построение графика в виде гистограммы

Весьма распространённой формой представления поверхностей являет-

ся представление её рядом трёхмерных столбиков, высота которых опре-

деляется значением координаты f(x, y). Для этого используется операция

3D Bar Char. Подобные графики широко применяются при представлении

сложных статистических данных, например представленными тремя неза-

висимыми переменными. Порядок построения гистограмм такой же, как и

порядок построения остальных трёхмерных графиков.

8. Построение векторного графика поверхности

Ещё один вид представления поверхности – векторное представление.

Оно задаётся построением коротких стрелочек – векторов. Каждая стрелка

обращена остриём в сторону нарастания высоты поверхности, а плотность

расположения стрелок зависит от скорости этого нарастания. Для построе-

ния такого графика используется команда Field Plot. Порядок построения

векторных графиков такой же, как и порядок построения остальных трёх-

мерных графиков.

9. Работа с текстовым редактором

Текстовый редактор позволяет создавать текстовые комментарии. Они

делают документ с формулами и графиками более понятными. В простей-

шем случае для запуска текстового редактора достаточно ввести символ "

(двойная кавычка). В появившийся прямоугольник можно начать вводить

текст. В текстовом блоке курсор имеет вид красной вертикальной черты и

отмечает место ввода.

16


Текст редактируется общепринятыми средствами – перемещением мес-

та ввода клавишами управлением курсором, установкой режимов вставки

и замещения символов (клавиша Insert), стиранием (клавиши Del и

BackSpace), выделением, копированием в буфер, вставкой из буфера и т. д.

Для редактирования текстовых блоков, также, предназначены следующие

пункты меню Format:

Text…– выбор шрифта, его цвета, размера и стиля написания.

Paragraph…– изменение величины отступа первой строки и всего тек-

ста, а также центровки текста.

Style…– редактирование стилей написания текста в документе.

Стиль написания, шрифт, размер шрифта, центровку текста можно из-

менить, также, при помощи кнопок панели форматирования.

10. Создание массивов

Кроме способа, описанного в третьем разделе, одномерные и двухмер-

ные массивы можно создать при помощи шаблонов. Шаблоны массивов

вызываются нажатием кнопки с изображением квадратной матрицы. Эта

кнопка расположена на палитре векторов и матриц, которая, в свою оче-

редь, вызывается нажатием кнопки с изображением квадратной матрицы

на панели математических операций.

Для создания массива (например, М) необходимо после знака присваи-

вания М:= поместить шаблон массива. При вызове шаблона массива будет

раскрыто диалоговое окно, в котором необходимо указать количество

строк (Rows) и количество столбцов (Columns).

Задание для самостоятельной работы

Построить график одной или нескольких функций. Задание взять из

табл. 2.1 согласно порядковому номеру студента по журналу группы. Все

зависимости функций должны быть построены на одном графике. Рабочий

лист должен содержать текстовый комментарий, указывающий номер ва-

рианта и вид графика.

Таблица 2.1

Варианты заданий для самостоятельной работы

вар.

1

2

Функции

ϕ (x ) = cos( x )3

f ( x ) = sin ( x )

3

Диапазон

Шаг

изменения изменения

аргументов аргументов

x[-10; 10] Δx = 0.1

x[0; 2π]

Δx = 0,01π

Вид графика

В декартовой сис-

теме координат

В полярной системе

координат

f ( x ) = sin (3  x )

ϕ ( x ) = cos( x )

17


вар.

3

4

5

6

7

8

9

10

11

12

13

14

15

Функции

f ( x, y ) = − sin (x 2  y )

f ( x, y ) = − sin (x 2  y 3 )

sin x 2

f ( x, y ) =

cos y 3  x

(

( )

)

f ( x, y ) = tg ( x  y )

f ( x, y ) =

sin ( x )  cos( y )

sin x 2  y

f ( x ) = 5800  x

f ( x ) = 1,2  sin (5  x )

ϕ (x ) = sin (x )  cos( x )

2π  x 2 + y 2

f ( x, y ) =

x y

f ( x ) = x 3 / 1000

(

)

Диапазон

изменения

аргументов

x[-2; 2]

y[-2; 2]

x[0; 3]

y[-4; 1]

x[0; 10]

y[-1; 1]

x[-1; 1]

y[-2; 2]

x[-3; 21]

y[-4; 0,5]

Шаг

изменения

аргументов

Δx = 0,2

Δy = 0,2

Δx = 0,1

Δy = 0,2

Δx = 1

Δy = 0,3

Δx = 0,1

Δy = 0,2

Δx = 1

Δy = 0,01

Вид графика

График поверхно-

сти

Контурный график

поверхности

Точечный график

поверхности

Трёхмерная гисто-

грамма

Векторный график

поверхности

В декартовой сис-

теме координат

В полярной системе

координат

Контурный график

поверхности

Трёхмерная гисто-

грамма

В декартовой сис-

теме координат

Точечный график

поверхности

Векторный график

поверхности

Точечный график

поверхности

x[-10; 10] Δx = 0,1

x[0; 2π]

Δx = 0,01π

Δx = 0,01

Δy = 0,01

Δx = 0,5

Δy = 0,1

(

)

x 3  cos( y )

f ( x, y ) =

x y

ϕ (x ) = sin ( x )

f ( x ) = tg ( x )

x[0,01; 1]

y[0,1; 10]

x[3; 8]

y[-4; -1]

x[0; 3]

x[-10; 10]

y[-3; 3]

x[0; 100]

y[-80; 20]

x[0; 2π]

y[-π; π]

Δx = 0,01

Δx = 0,1

Δy = 0,03

Δx = 1

Δy = 1

Δx = 0,01π

Δy = 0,03π

y  x3

f ( x, y ) =

cos x 2

( )

x 4  cos( y )

f ( x, y ) =

tg ( x  y )

sin ( x  y )

f ( x, y ) =

cos( x )  tg ( y )

Требования к отчёту

Отчет о лабораторной работе должен включать цель работы, кратко

оформленный реферат первого раздела, описание команд меню Edit и

Insert из Приложения,а также протокол действий, самостоятельно выпол-

няемых студентом на компьютере. Рабочий документ выполнения лабора-

торной работы должен быть сохранён на ПЭВМ в личной папке студента.

18


При сдаче работы студент должен продемонстрировать практическое

умение строить различные графики в среде MathCAD и ответить на сле-

дующие контрольные вопросы:

1. Какие основные типы графиков можно построить в среде

MathCAD? Как вызвать шаблоны этих графиков?

2. Как можно изменить параметры уже построенного графика?

3. Какие функции выполняет команда X-Y Zoom?

4. Какие функции выполняет команда X-Y Trace?

5. Расскажите порядок построения графика функции одной перемен-

ной в декартовых координатах.

6. Расскажите порядок построения графика функции одной перемен-

ной в полярной системе координат.

7. Расскажите порядок построения графика поверхности. Как задаётся

число узлов сетки поверхности?

8. Как построить одновременно несколько графиков разных функций

на одном координатном поле в декартовой системе координат?

9. Как вставить текстовый блок в рабочий лист MathCAD?

10. Какие средства есть в MathCAD для редактирования текстовых

блоков?

11. Как указать ряд значений переменной, изменяющейся с определён-

ным шагом в каком-либо числовом диапазоне?

12.Как отменить последнюю операцию редактирования?

13. Как скопировать выделенный объект в буфер обмена? Как вставить

содержимое буфера обмена в определённое место документа?

14.Как вставить в текстовую область шаблон математической области?

15. Как добавить на график в декартовых координатах линии сетки и

как их убрать?

19


Лабораторная работа № 3

Программирование в среде MathCAD

Цель работы

1. Изучить программные операторы.

2. Приобрести практические навыки составления простейших алго-

ритмов в среде MathCAD.

1. Общие сведения

Программный модуль в системе MathCAD представляет собой само-

стоятельный модуль, выделяемый в тексте документа жирной вертикаль-

ной чертой. Программный модуль может исполнять роль либо функции

пользователя с именем и параметрами, либо функции без имени и пара-

метров, но в любом случае, возвращающей результат вычислений, опреде-

ляемый последним оператором модуля.

Шаблоны программных элементов

можно вызвать при помощи кнопок па-

нели программных элементов, показан-

ной на рисунке 3.1.

Нетрудно заметить, что набор про-

граммных элементов для создания про-

граммных модулей весьма ограничен и

содержит следующие элементы (в скоб-

ках указан перевод с английского языка

Рис. 3.1. Панель программ-

названия программного элемента):

ных элементов

(добавить линию) – создаёт и при необходимости расширяет

жирную вертикальную линию, справа от которой в шабло-

нах задаётся запись программного блока;

– символ локального присваивания (в теле модуля);

(если) – оператор условного выражения;

if

(для) – оператор задания цикла с фиксированным числом

for

повторений;

(пока) – оператор задания цикла, типа «пока» (цикл выпол-

while

няется, пока выполняется некоторое условие);

otherwise (иначе) – оператор иного выбора (обычно применяется с if);

(прервать) – оператор прерывания;

break

continue (продолжить) – оператор продолжения;

(возвратить) – оператор возврата;

return

on error (ошибка) – оператор обработки ошибок.

Add Line

20


2. Оператор Add Line

Оператор Add Line выполняет функции расширения программного

блока. Расширение фиксируется удлинённой вертикальной чертой про-

граммных блоков или их древовидным расширением. Благодаря этому, в

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

3. Оператор внутреннего присваивания

Оператор выполняет функции внутреннего локального присваива-

ния. Например, выражение х 123 присваивает локальной переменной х

значение 123. Локальный характер присваивания означает, что такое зна-

чение х сохраняет только в теле программного модуля. За пределами мо-

дуля значение переменной х может быть не определённым, либо равно

значению, которое задаётся операторами присваивания := и . В последнем

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

4. Оператор создания условных выражений if

Оператор if является оператором для создания условных выражений.

Он задаётся в виде:

Выражение if Условие

Если Условие выполняется, то возвращается значение Выражения. Со-

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

break или иного выбора otherwise. Например:

х 123

х 18 if x > 0

Здесь первоначально х = 123. Далее, согласно условию (х > 0), пере-

менной х будет присвоено значение 18.

5. Оператор цикла for

Оператор for служит для организации циклов с заданным числом по-

вторений. Он записывается в виде:

for Var  Nmin, Nmin + Step . . Nmax

Эта запись означает, что если выражение, помещённое в шаблон, будет

выполняться столько раз, сколько переменная Var изменяет своё значение

от Nmin до Nmax с шагом Step. Если значение Nmin + Step не задано, то шаг

изменения переменной, по умолчанию, принимается равным + 1. Перемен-

ную счётчика Var можно использовать в выражениях программы. Напри-

мер:

21


│for i  1, 3 .. 5

│ xi0

Здесь переменная i изменяется от 1 до 5 с шагом 2, т.е. принимает зна-

чения 1, 3, 5. Соответственно, в внутри оператора for х1 = 0, х3 = 0, х5 = 0.

6. Оператор цикла while

Оператор while служит для организации циклов, действующих до тех

пор, пока выполняется некоторое условие. Этот оператор записывается в

виде:

while Условие

В шаблоне под оператором записывается выполняемое выражение. На-

пример:

х←1

│while x<5

│ xx + 1

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

2, 3, 4. Когда х = 5, то условие не выполняется и, соответственно, не вы-

полняются операторы, следующие за while.

7. Оператор иного выбора otherwise

Оператор otherwise обычно используют совместно с оператором if. Его

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

f(x):=

1 if x > 0

возвращает 1, если х > 0

–1 otherwise

возвращает –1 во всех иных случаях

8. Оператор прерывания break

Оператор break вызывает прерывание работы программы. Чаще всего

он используется совместно с оператором условного выражения if и опера-

торами циклов while и for, обеспечивая переход в конец тела цикла. На-

пример:

х0

│while 1

│ │x x + 1

│ │break if x > 9

Здесь выполнение цикла while прервется, когда х примет значение 10.

(Конструкция while 1 обозначает бесконечный цикл).

22


9. Оператор продолжения continue

Оператор продолжения используется для продолжения работы про-

граммы после прерывания. Он также используется обычно совместно с

операторами задания циклов while и for, обеспечивая после прерывания

возврат в начало цикла. Например:

i0

│while i <5

│ │ii + 1

│ │continue if i = 2

│ │x i

Здесь переменная х принимает в цикле while следующие значения: 1, 3,

4, 5. Когда i = 2 выполнение цикла будет прервано и произойдёт возврат в

начало цикла.

10. Оператор возврата return

Оператор возврата return прерывает выполнение программы и возвра-

щает значение, стоящее следом за ним. Например, в приведённом ниже

случае:

return 0 if x < 0

будет возвращаться значение 0 при любом х < 0.

11. Оператор обработки ошибок on error и функция error

Оператор обработки ошибок позволяет создавать конструкции обра-

ботчиков ошибок. Этот оператор задаётся в виде:

Выражение № 1 on error Выражение № 2

Если при выполнении Выражения № 2 возникает ошибка, то выполня-

ется Выражение № 1. Для обработки ошибок полезна также функция

error(S), которая, будучи в программном модуле возвращает окошко с

надписью, хранящейся в символьной переменной S или в символьной кон-

станте (любой фразе в кавычках). Например:

y(x):= 1 on error

1

x

Здесь функция у(х) возвратит значение 1 при х = 0.

12. Практические примеры программирования

Программный модуль, в сущности, является функцией, но созданной с

применением упомянутых сугубо программных средств. Она может воз-

23


вращать значение, определённое последним оператором. Это значит, что

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

равенства для вывода значения функции. В блоке могут содержаться лю-

бые операторы и функции входного языка системы. Для передачи в блок

значений переменных можно использовать переменные документа, кото-

рые ведут себя в блоке как глобальные переменные.

Обычно модулю присваивается имя со списком переменных, после ко-

торого идёт знак присваивания :=. Переменные в списке являются локаль-

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

модулем. Локальный характер таких переменных позволяет использовать

для их имён (идентификаторов) те же имена, что и у глобальных перемен-

ных документа.

На рисунке 3.2. показаны примеры программирования в среде

MathCAD. Обратите внимание на последний пример, в котором определя-

ется количество элементов одномерного массива, которые больше 5. Здесь

буква “Т” справа вверху от массива обозначает транспонирование.

MathCAD корректно производит операции только с теми одномерными

массивами, которые представлены в виде вектора-столбца. Для транспони-

рования массива необходимо выделить его правую часть (после знака при-

сваивания) и нажать комбинацию клавиш <Ctrl + 1>. В случае, если мас-

сив не содержит элементов, больших 5, то будет выведено сообщение

“No”. В программных блоках переменным можно присваивать текстовые

значения, написанные только латинским шрифтом. Результат работы про-

граммного блока выведен справа от него (в данном случае в одномерном

массиве содержится три элемента, которые больше 5).

Задание программных модулей позволяет реализовать любые специ-

альные приёмы программирования. Оно может служить мощным средст-

вом расширения системы путём задания новых функций.

Задание для самостоятельной работы

Создать программный модуль. Задание взять из табл. 3.1. согласно по-

рядковому номеру студента по журналу группы.

Таблица 3.1

Варианты заданий для самостоятельной работы

вар.

1.

Задание

вар.

Задание

Написать функцию нахож-

дения минимального эле-

мента массива.

Создать функцию, позволяющую

суммировать

положительные 2.

элементы одномерного массива.

24


вар.

Задание

вар.

Задание

Написать функцию, которая

находит количество отрица-

3.

тельных элементов одно-

мерного массива.

Написать функцию, которая

создавала бы одномерный

массив, элементами которо-

5.

го являлись бы положитель-

ные элементы исходного

массива.

Создать функцию, позво-

Написать функцию нахождения

ляющую находить произве-

минимального элемента массива.

7.

8. дение элементов одномерно-

го массива, которые меньше

заданного числа.

Создать функцию, прове-

Создать функцию, позволяющую

ряющую все ли элементы

суммировать

положительные

одномерного массива > 0.

элементы одномерного массива.

9.

10.

Функция должна выводить

соответствующее

сообще-

ние.

Написать функцию, которая

Создать функцию, проверяющую

находит количество положи-

все ли элементы одномерного

11. массива < 0. Функция должна 12. тельных элементов одно-

мерного массива.

выводить соответствующее со-

общение.

Создать функцию, прове-

Написать функцию, которая на-

ряющую все ли элементы

ходит количество отрицательных

одномерного массива > 0.

элементов одномерного массива.

13.

14.

Функция должна выводить

соответствующее

сообще-

ние.

Написать функцию нахождения

Создать функцию, позво-

максимального элемента масси-

ляющую суммировать отри-

15.

16.

ва.

цательные элементы одно-

мерного массива.

Создать функцию, позволяющую

суммировать элементы одномер-

4.

ного массива, которые больше

заданного числа.

Создать функцию, проверяющую

все ли элементы одномерного

массива > 0. Функция должна

6.

выводить соответствующее со-

общение.

Требования к отчёту

Отчет о лабораторной работе должен включать цель работы, кратко

оформленный реферат первого раздела, описание команд меню Format из

Приложения и протокол действий, самостоятельно выполняемых студен-

25


том на компьютере. Рабочий документ выполнения лабораторной работы

должен быть сохранён на ПЭВМ в личной папке студента.

Рис. 3.2. Примеры программирования в среде MathCAD

При сдаче работы студент должен продемонстрировать практическое

умение программировать в среде MathCAD и ответить на следующие кон-

трольные вопросы:

1. Что представляет собой программный модуль в системе MathCAD?

2. Какие функции выполняет программный модуль?

3. Какие кнопки находятся на панели программных элементов?

4. Какие операторы цикла реализованы в MathCAD?

5. Что такое локальные и глобальные переменные?

6. Для чего необходим оператор for? Дать пример использования.

7. Какую функцию выполняет оператор otherwise? Дать пример ис-

пользования.

8. Какую функцию выполняет оператор if? Дать пример использова-

ния.

9. Для чего необходим оператор while? Дать пример использования.

10. Как расширить программный блок?

11. Как установить формат чисел, например, вместо трёх чисел после

запятой выводить пять?

26


Лабораторная работа № 4

Метод простых итераций решения

трансцендентного уравнения f(x)=0

Цель работы:

1. Освоить метод простых итераций решения трансцендентных урав-

нений.

1. Общие сведения

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

ближении к решению путём многократного применения рекуррентных

процедур, то есть исходными данными для каждой последующей процеду-

ры являются результаты применения предыдущих процедур.

Для решения уравнения f (x ) = 0 методом простых итераций его приво-

дят к виду x = ϕ (x ) . Например, уравнение x 5 3  x 2 + 1 = 0 можно привести к

виду x =

x5 + 1

. Затем выбирают некоторое начальное приближение x [0 ] и

3

вычисляют последовательные приближения:

x [ j +1] = ϕ (x [ j ] ) , где j = 0, 1, 2,…– номер итерации.

Итерации заканчиваются тогда, когда отношение

x [ j ] x [ j 1]

x[ j]

(1)

становится

достаточно малым, меньшим заранее заданного значения, называемого от-

носительной погрешностью.

Строго говоря, начальное приближение и вид x = ϕ (x ) должны выби-

раться из условия сходимости. На практике часто проще и быстрее пере-

брать несколько вариантов выражения x = ϕ (x ) и начального приближения

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

Часто хорошо сходятся уравнения, не удовлетворяющие условию сходи-

мости.

2. Пример применения метода простых итераций

Решить задачу:

Дано: плотность стационарного теплового потока через однослойную

стенку q = 40000 Вт/м2; температура внутренней поверхности стенки t1 =

300 К; толщина стенки r = 0,1 м. Коэффициент теплопроводности стенки

имеет следующую зависимость от температуры:

2

λ (t s ) = λ0  (1 + a1  t 1 + a 2  t 2 )

(2)

где λ0 = 40 Вт/(мК); a1= 0,012 К-1, а2 = – 0,000052 К-2.

Найти: температуру внутренней поверхности стенки t2 с погрешностью

0.001%.

27


Замечания по постановке задачи:

Тепловой поток связан с температурами стенки t1 и t2 следующей фор-

мулой: q =

t1 t 2

t +t

(3), где t S = 1 2 (4) – средняя температура по сечению

r

2

λ (t S )

стенки.

Если подставить в выражение (3) зависимость для λ (t S ) , то получится

неудобное для решения относительно t 2 уравнение:

2

t1 + t 2

 t1 + t 2   t1 t 2

+ a2  

q = λ0  1 + a1

 ⎥⋅

2

2  

r

(5)

Поэтому используем для решения метод простых итераций.

Алгоритм решения задачи:

[

1. Примем в начальном приближении, что t S0 ] = t 1 . Тогда из уравнения

[

(3) можно легко выразить t 2 в виде: t 20 ] = t 1

qr

[0 ] (6).

λ tS

( )

2. Теперь можно уточнить среднюю температуру стенки по формуле

(4) t

[ 1]

S

[

t 1 + t 20 ]

qr

, а, следовательно, и t 2 : t 2[1] = t 1 [1] . Таким образом,

=

2

λ tS

( )

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

t2 .

3. Признаком окончания расчёта будет выполнение условия

[

[

t 2 j ] t 2 j 1]

 100 ε max .

[

t 2 j]

Фрагмент рабочего документа с решением задачи показан на рис. 4.1.

Указания к выполнению задачи:

1. Введите исходные данные как показано на рис. 4.1. Нижние индексы

возле переменных t1, t2, t20 λ0, а1 и а2 – это не ‘‘рабочие’’ индексы, а

‘‘декоративные’’, т.е. эти переменные являются не элементами мас-

сивов, а обычными переменными. Такие нижние индексы можно

ввести, нажав на клавишу с изображением буквы ‘‘Ю’’ или ‘‘.’’ –

точки.

2. Введите функцию для определения теплопроводности λ(t).

3. Начальное значение температуры внутренней поверхности стенки t0

принимается равным:

.

t 20

t1

q r

λ t1

4. Для создания программного модуля нажмите на панели программ-

ных элементов кнопку < Add Line > – появится вертикальная черта с

двумя пустыми позициями; курсор будет установлен в нижней пози-

ции. Нажмите кнопку < Add Line > ещё два раза, чтобы число пустых

позиций стало равным четырём.

28


5. Заполните пустые позиции (шаблоны) программного модуля как по-

казано на рис. 4.1.

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

изменять значения глобальных переменных.

6. Выведите результат расчёта.

Исходные данные :

q

a1

40000 .

W

m

0.012 .

2

t1

a2

300 . K

0.0000052 .

λ 0. 1

λ 0

1

K

2

40 .

W

m. K

r

0.1 . m

2

ε max

0.001

1

K

Функция для расчёта λ : λ ( t )

a 1 .t

t1

a 2 .t

Принимаем в первом приближении

t 20

q .r

λ t1

t 20 = 275.799 K

Программный модуль для расчёта t 2 методом простой итерации:

t2

pog

t 20

100

t 20

while pog ε max

ts

t 2k

t 20

2

t1

100 .

t 2k

q .r

λ ts

t 2k

t 20

t1

pog

t 20

t 2k

t 2k

Результат: t 2 = 275.129 K

Рис. 4.1. Решение задачи методом простых итераций

Задание для самостоятельной работы

Решить уравнение методом простой итерации при максимальной отно-

сительной погрешности εmax = 0.01%. Вариант задания взять из таблицы 4.1

согласно порядковому номеру студента по журналу.

Указание к выполнению: перед вводом расчётной части в ЭВМ необ-

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

отражением их в отчёте по лабораторной работе.

29


Таблица 4.1

Варианты заданий для самостоятельной работы

№ вар

1

2

3

4

5

6

7

8

Уравнение

3  x5 + 2  x2 3 = 0

2  x + 0,5  e x = 0

eX 2  x2 = 0

x + x3 = 4

0,5  x + x 4 = 7

0,1  e x 2  x 2 = 0

x x3 = 4

0,2  e x 2  x 2 + 1 = 0

№ вар

9

10

11

12

13

14

15

16

Уравнение

0,2  x 4 2  x 3 + 1 = 0

2  x 2 3  x 3 + 10 = 0

2  cos( x) 3  x + 10 = 0

x 5  x 3 = 24

0,1  x 3 2  x 2 + 1 = 0

3  ln ( x ) 0,5  x + 3 = 0

2  x + x 2 = 0,2

2  x + 82  x 2 = 39

Требования к отчёту

Отчет о лабораторной работе должен включать цель работы, кратко

оформленный реферат первого раздела и протокол действий, выполненных

студентом на компьютере. Рабочий документ выполнения лабораторной

работы должен быть сохранён на ПЭВМ в личной папке студента.

При сдаче лабораторной работы студент должен продемонстрировать

умение составлять простейшие программные конструкции в среде

MathCAD 7 Pro, а также ответить на следующие контрольные вопросы:

1. В чём суть метода простых итераций?

2. Какова последовательность решения уравнения вида f (x ) = 0 мето-

дом простых итераций?

3. Объясните назначение кнопки ‘‘Add Line’’ панели программирова-

ния.

4. Объясните назначение кнопки ‘‘while’’ панели программирования.

5. Что является условием окончания расчёта при использовании мето-

да простых итераций?

6. Как ввести простой и ‘‘декоративный’’ индексы?

7. Объясните назначение кнопки ‘‘’’ панели программирования.

8. Что называется трансцендентным уравнением?

9. Приведите примеры присвоения функции и присвоения переменной.

10. Можно ли изменять значение глобальной переменной в программ-

ном блоке?

30


Лабораторная работа № 5

Символьная математика в среде MathCAD

Цель работы:

1. Ознакомиться с возможностями символьной математики программ-

ного продукта MathCAD.

2. Приобрести практические навыки аналитических вычислений в сре-

де MathCAD.

1. Общие сведения

Система символьной математики снабжена специальным процессором

для выполнения аналитических (символьных) вычислений. Его основой

является ядро, хранящее всю совокупность формул и формульных преоб-

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

Операции, относящиеся к работе символьного процессора, содержатся в

меню Symbolic.

Чтобы символьные операции выполнялись, процессору необходимо

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

надо выделить выражение. Для ряда операций следует не только указать

выражение, к которому они относятся, но и выделить переменную, относи-

тельно которой выполняется та или иная символьная операция. Само вы-

ражение в таком случае не выделяется.

Символьные операции разбиты на пять характерных разделов: опера-

ции с выделенными выражениями, операции с выделенными переменны-

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

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

представлены в Приложении.

Символьные операции можно выполнять двумя способами:

1. Непосредственно в командном режиме (используя операции из ме-

ню Symbolic);

2. С помощью оператора символьных операций и операций, пред-

ставленных в палитре символьных вычислений.

2. Примеры символьных операций в командном режиме

Выполнение операций в командном режиме почти не требует каких-

либо подготовительных действий. В то же время в таком режиме символь-

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

пользователя.

Большинство символьных операций довольно легко выполняются в

командном режиме, так что ниже мы остановимся лишь на некоторых

примерах.

31


I. Вычислить тройной интеграл ∫∫∫ ln (x )dxdxdx .

1. Установите курсор в свободном месте рабочего документа и три

раза нажмите комбинацию клавиш [Ctrl + I], либо нажатием кнопки

откройте панель математического анализа и три раза нажмите на

кнопку с изображением неопределённого интеграла.

2. Заполните созданный шаблон, как показано на рисунке 5.1.

3. Выделите выражение любым

Вычисление тройного интеграла:

способом (мышью или при по-

мощи клавиатуры).

ln( x) d x d x d x

4. В меню Symbolic выберите

пункт Evaluate и в открыв-

1 . 3.

11 . 3

x ln( x )

x

шемся подменю выберите ко-

6

36

манду Symbolically, либо на-

жмите комбинацию [Shift +

Проверка полученного результата:

F9]. Ниже тройного интеграла

3

11 . 3

d 1 . 3.

появится результат.

x ln( x)

x

6

36

d x3

Проверим полученный результат,

ln( x)

для чего три раза продифференциру-

ем полученное выражение:

Рис. 5.1. Вычисление тройного

5. Установите курсор в свобод-

интеграла

ном месте рабочего документа

и нажмите комбинацию кла-

виш [Ctrl + Shift + ?], либо в панель математического анализа выбе-

рите кнопку шаблона n-ой производной.

6. Выделите результат предыдущего задания и скопируйте его в буфер.

7. Вставьте содержимое буфера в соответствующую позицию шабло-

на. Заполните остальные свободные позиции шаблона (смотрите

рис. 5.1).

8. Выделите выражение любым способом (мышью или при помощи

клавиатуры).

9. В меню Symbolic выберите пункт Evaluate и в открывшемся подме-

ню выберите команду Symbolically, либо нажмите комбинацию

[Shift + F9]. Ниже выделенного выражения появится результат диф-

ференцирования.

II. Решить уравнение x3 2  x + 1 = 0

1. Установите курсор в свободном месте рабочего документа и запи-

шите выражение x 3 2  x + 1 .

панель

математических

2. Вызовите нажатием кнопки

символов и нажмите кнопку ‘‘=’’. Это знак логического равенства.

Его можно также вызвать комбинацией ‘‘Ctrl + =’’. Введите 0.

3. Выделите в уравнении х.

32


4. В меню Symbolic выберите подменю Variable и пункт Solve. Ниже

уравнения появится результат, в данном случае в виде одномерного

массива – столбца из трёх элементов.

3. Примеры символьных операций

с применением оператора

Выполнение символьных операций с применением оператора пред-

почтительней в силу следующих свойств:

1. Можно задавать операции с рядом разных опций и организовывать

древовидную структуру символьных операций;

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

пользователя;

3. При изменении тех или иных выражений по цепочке вычислений

изменятся и полученные результаты;

4. Возможно применение неко-

торых функций (например,

вычисление пределов), кото-

рых нет в командном режиме.

Шаблоны для символьных опе-

раций с применением оператора

расположены на панели символьной

математики, которая показана на

рисунке 5.2.

С применением оператора

можно выполнять как все операции

для командного режима символь-

Рис. 5.2. Панель символьной

ных вычислений, так и ряд других

математики

операций и опций, например:

– преобразование в комплексной форме;

complex

– присваивание переменным неопределённого значения, даже

assume

если до этого им были присвоены значения и заданы ограни-

чения на значения переменных;

– преобразование в формат числа с плавающей точкой;

float

– преобразование Лапласа;

laplace

– разложение на элементарные дроби;

parfac

– возврат коэффициентов полинома;

coeffs

T

– транспонирование матрицы;

M

–1

– инвертирование матрицы;

M

– вычисление детерминанта матрицы;

 M

Примеры символьных операций с применением оператора показаны

на рисунке 5.3.

33


Задание для самостоятельной работы

Выполнить символьные операции любым, удобным Вам, способом.

Вариант задания взять из таблицы 5.1 согласно порядковому номеру сту-

дента по журналу.

Таблица 5.1

Варианты заданий для самостоятельной работы

№ вар. Упростить Раскрыть

выражение выражение

1

2

3

4

5

6

7

9

10

11

12

13

14

15

16

tan ( x )

3

sin (6  x )

Дифферен- Решить урав- Выполнить

цировать по нение относи- преобразова-

переменной х тельно х

ние Лапласа

2

sin (x )  cos(x ) sin ( x ) cos( x ) = 0

cos( x )

sin (65  x 2 )

exp(cos(x) )

x + x5

(x

(x

2

2

+ y ) y 2

x 2 + 2x = 7

sin ( x ) 3 = cos( x )

tan ( x )

2

sin( x) cos( x)

tan (3 x )

2

x 4  (x + a )

+ y  x  y2

sin(2  x)

e x  cos( x )

sin (6  x )

)

x 5  cos( x )

x 5  sin x 2

cos(x 2 ) = 79

sin (x ) + cos(x ) = 52

a 2 + a  b + b2

cos(5  x )

( )

3

(x

(x

2

2

y 2 )/ x

(x

3

+ y ) y 3

tan ( x )

2x 2 2 = 7 x

exp( x )  sin ( x ) = 0

sin ( x ) = cos(x )

x 5  cos( x )

sin (x )  cos(x )

x 3 + x 2

+ x + x  x2

2  sin (2  x )

sin ( x )  cos( x )

sin (x ) + cos( x )

)

(x

2

+ y + x  y2

cos( x )

2

)

cos( x )

2

2x + x + x3

x4  x2 a

2

(

)

x  sin (8  x ) = 34

7

2  x x3

(x

2

y 2 )/ y 3

(

x x3

)

sin (6  x )

cos(5  x ) = x

tan ( x )

2

x 2 + 2x 7 x5

a3 a  b b3

cos(5  x ) + x

x  sin (3  x )

3  x2 + y + y2

(

)

x 4  (x + a ) = 3  a

2  x x3

x 4  sin ( x ) = 23

cos(5  x ) = 8

2x 2 x3

x  sin (3  x )

sin( x)  cos( x)

x 4  sin ( y )

x  y2 + 3  x

x  sin (3  x )

cos(2  x )

sin (2  x ) cos ( x )

x 5  sin x 2

( )

8

x x3

x 3 + x 2

x2 7 x5

3 x2 + y + y2

(

)

tan (3 x )

2

x2 + 2  x = 7

cos( x )

Требования к отчёту

Отчет о лабораторной работе должен включать цель работы, кратко

оформленный реферат или ксерокопию разделов 1, 2 и 3, описание команд

меню Symbolic из Приложения и протокол действий, самостоятельно вы-

полняемых студентом на компьютере. Рабочий документ выполнения ла-

бораторной работы должен быть сохранён на ПЭВМ в личной папке сту-

дента.

34


Рис. 5.3. Примеры символьных операций с применением оператора

При сдаче лабораторной работы студент должен продемонстрировать

умение выполнять аналитические вычисления, а также ответить на следу-

ющие контрольные вопросы:

1. На какие характерные разделы можно разбить все символьные опе-

рации, реализованные в меню Symbolic?

2. Как можно дифференцировать функцию одной переменной? Приве-

дите пример.

3. Как можно интегрировать функцию одной переменной? Приведите

пример.

4. Какие преобразования можно произвести с выделенным выражени-

ем?

5. Почему выполнение символьных операций с применением операто-

ра является предпочтительней?

6. Как вызвать знак логического равенства? Приведите пример его ис-

пользования.

7. Чем принципиально отличаются команды, объединённые в подменю

Variable (Solve, Substitute, Differentiate …) и Evaluate (Symbolically,

Floating Point Evaluation …)?

8. Для чего используется команда Expand? Дать пример.

9. Для чего используется команда Factor? Дать пример.

10. Как вычислить тройной интеграл от ln(x) с использованием команды

Integrate подменю Variable?

35


Лабораторная работа № 6

Решение нелинейных уравнений

методом Ньютона

Цель работы

1. Освоить метод Ньютона решения нелинейных уравнений.

2. Получить практические навыки решения методом Ньютона нели-

нейных уравнений, получающихся при рассмотрении задач тепло-

проводности.

1. Общие сведения

В основе метода Ньютона лежит линеаризация нелинейного уравнения,

т.е. приближённая замена исходного нелинейного уравнения на линейное.

Итерационная формула метода Ньютона приближённого определения кор-

ня уравнения f(x) = 0 имеет следующий вид:

x

[ k + 1]

=x

[ k]

f x [k ]

f xk

( )

( )

,

(1)

где k = 0, 1, 2, … – номер итерации.

Например, есть уравнение 5  x 3 x + 5 = 0 . Производная этого уравне-

ния: 15  x 2 1 . Тогда итерационная формула имеет вид:

x

[ k + 1]

=x

[k ]

5  x [k ]

Ньютоновские итерации сходятся, если начальное приближение x [0 ]

выбрано достаточно близко к точному значению корня x . При этом важно

определить расположение x [0 ] слева или справа от корня. Итерации сходят-

ся к x с той стороны, с которой f (x )  f ′′(x ) 0 . Иначе сходимость не гаран-

тируется. Для нахождения x [0 ] целесообразно составить таблицу значений

f ( x ) и затем построить её график. Так как нелинейное уравнение может

иметь несколько действительных корней, то

график позволяет также оценить их общее чис-

ло и расположение и выбрать нужный корень.

Метод Ньютона называют ещё методом ка-

сательных, что вполне соответствует геометри-

ческому смыслу линеаризации на одном шаге.

Геометрически метод Ньютона решения не-

линейных уравнений означает перемещение по

Рис. 6.1 Геометриче-

касательной к кривой y = f (x ) к новому при-

ближению x [k +1] начиная с x [0 ] , как показано на ское представление ме-

тода

рисунке 6.1.

Условием окончания расчётов корня урав-

36

( ) x +5.

15  (x ) 1

3

[k ]

[k ] 2

(2)


нения

по

итерационной

формуле

является

соблюдения

условия:

x [ k + 1] x [ k ]

ε max . Здесь ε max – малая, наперёд заданная величина, имеющая

[ k + 1]

x

смысл относительной погрешности. Фактически это условие означает при-

ближённое равенство x [ k + 1] x [ k ] .

По сравнению с другими численными методами решения нелинейных

уравнений (метод простой итерации, метод половинного деления и др.) ме-

тод Ньютона позволяет находить решение за наименьшее число расчётных

шагов.

2. Пример применения метода Ньютона

Решить задачу:

Дано: плотность теплового потока на поверхности металла q = 60000

Вт/м2; температура поверхности металла Tp = 1300 К; коэффициент излу-

чения системы "газ-кладка-металл" σgkm= 3.510 – 8 Вт/(м2К4); коэффициент

теплоотдачи конвекцией α = 35 Вт/(м2К).

Найти: температуру дыма в печи Tg с погрешностью εmax = 0.1%.

Расчётная формула:

(2)

q = σ gkm  (Tg4 T p4 ) + α  (T g T p )

Фрагмент рабочего документа с решением задачи показан на рис. 6.2.

Указания к решению задачи:

1) Введите значения исходных данных.

2) Запишите расчётную формулу в виде функции f(Tg).

3) Постройте график функции f(Tg) при Tg[0 K, 2000 K] с шагом

100 К.

4) Выберите в качестве начального приближения такое значение Tg,

при котором значение функции f(Tg) наиболее близко к нулю. В нашем

случае было принято Tg = 1490К.

5) Запишите отдельно правую часть функции f(Tg) и найдите её произ-

водную по Tg.

6) Составьте итерационную схему, реализующую формулу (1) и най-

дите температуру дыма в печи.

Задание для самостоятельной работы

Решить уравнение методом Ньютона. Вариант задания взять из табли-

цы 6.1 согласно порядковому номеру студента по журналу.

Таблица 6.1

Варианты заданий для самостоятельной работы

№ вар.

1

2

3

4

Уравнение

x 3 2  x 2 = x 56

2  x 2 + x = 69

2  x4 x3 = 0

5  x 2 + 26  x = 6

№ вар.

9

10

11

12

37

Уравнение

37  x x 3 = 100

x 3 + 73  x 4 = x 63

x3 + 2  x = x4

27  x 2 + 132  x = −10


5

6

7

8

x3 2  x = 4

2  x5 + x3 = 9  x2

24  x 2 + x = 6 ,5

x 2 + 26  x = 138

13

14

15

16

7  x2 x = 6

x 2 + 2  x = −35

2  x 4 37  x 3 = 140

x 2 26  x = 378

Требования к отчёту

Отчет о лабораторной работе должен включать цель работы, реферат

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

дентом на компьютере. Рабочий документ выполнения лабораторной рабо-

ты должен быть сохранён на ПЭВМ в личной папке студента.

Исходные данные:

q

60000 .

W

m

σ gkm

2

Tp

1300 .K

α

35 .

4

ε max

W

2

m .K

0.1

W

8

3.5 .10 .

2. 4

m K

Функция: f T g

σ gkm . T g

Tp

4

α. T g

Tp

q

Построение графика для приближённого определения корня

уравнения f T g

Tg

0 .K , 100 .K .. 2000 .K

5 10

2.5 10

f T g

2.5 10

5 10

5

5

0

500

1000

T g

1500

2000

5

5

0

Принимаем в нулевом приближении

Вычисление производной от

σ gkm . T g

4

3

T g0

1490 .K

f Tg

q

Tp

α

4

α. T g

Tp

4 gkm .T g

Программный модуль для расчёта

Tg

pog

T g0

100

T g0

Tg

методом Ньютона:

while pog ε max

T gk

T g0

σ gkm . T g0

4

Tp

4

α . T g0

3

Tp

q

4 gkm .T g0

T gk

T g0

α

pog

T g0

T gk

100 .

T gk

T gk

Результат: T g = 1.45 103 K

Рис. 6.2. Решение задачи методом Ньютона

38


При сдаче лабораторной работы студент должен ответить на следую-

щие контрольные вопросы:

1. На чём основывается метод Ньютона?

2. Напишите итерационную формулу метода Ньютона.

3. Каков геометрический смысл метода Ньютона?

4. Какое условие сходимости ньютоновских итераций?

5. Каковы преимущества метода Ньютона по сравнению с другими

численными методами решения нелинейных уравнений?

6. Зачем при нахождении решения нелинейного уравнения методом

Ньютона строят график этого уравнения?

7. Расскажите последовательность действий при решении нелинейного

уравнения методом Ньютона.

8. Как найти производную функции в MathCAD?

9. Как построить декартов график в MathCAD?

10. Как приближённо найти корень функции на графике с использова-

нием окна Trace?

11. Объясните назначение кнопок ‘‘Add Line’’, ‘‘’’ и ‘‘while’’ панели

программирования.

12. Что является условием окончания расчётов при использовании ме-

тода Ньютона?

13. Какой тип индексов используется в примере (раздел 2): обычный

или декоративный? Чем они отличаются?

39


Лабораторная работа № 7

Решение систем линейных алгебраических

уравнений методом Гаусса

Цель работы

1. Освоить метод Гаусса решения систем линейных алгебраических

уравнений.

2. Получить практические навыки решения методом Гаусса систем ли-

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

онного теплообмена.

1. Общие сведения

Система линейных уравнений записывается следующим образом:

a1,1  x1 + a1, 2  x 2 + ... + a1,n  x n = b1

a 2 ,1  x1 + a 2 , 2  x 2 + ... + a 2 ,n  x n = b2

........................................................

a n ,1  x1 + a n , 2  x 2 + ... + a n ,n  x n = bn

,

(1)

или в матричной форме:

(2)

где A = (a i , j ) i, j = 1, 2, ..., n – матрица коэффициентов при неизвестных,

B = (b1 , b2 ,..., bn ) – вектор свободных членов, x = ( x1 , x 2 ,..., x n ) – вектор неиз-

вестных.

Широко применяемый в вычислительной практике метод исключения

Гаусса, относится к числу точных методов решения систем линейных

уравнений.

Рассмотрим систему уравнений (1). Алгоритм исключения состоит из

последовательных шагов.

Первый шаг. Исключение неизвестной х1 из всех уравнений системы

(1), кроме первого. Пусть а1,1 0. Тогда из первого уравнения выражаем х1

x1 =

1

 (a 1, 2  x 2 ... a 1, n  x n + b1 )

a 1,1

A x = B ,

(3)

через остальные неизвестные и подставляем (3) во 2-е, 3-е, …, n-е уравне-

ние системы (1). После подстановки получаем преобразованную исходную

систему вида

a1,1  x1 + a1, 2  x 2 + a1,3  x 3 + ... + a1,n  x n = b1

....................................................

[ ]

[ ]

[

a n12  x 2 + a n13  x 2 + ... + a n[,1n]  x n = bn1]

,

,

[ ]

[ ]

[ ]

[

a 21, 2  x 2 + a 21,3  x 3 + ... + a 21,n  x n = b21]

,

(4)

40


где элементы матрицы a i[, 1] , 2 i, j n, и вектора bi[ 1] , 2 i n, после перво-

j

го шага получены по формулам

a i[,kj+1] = a i[,kj]

1

a

[k ]

k ,k

[

 a i[,kk]  a kk, ]j , bi[ k +1] = bi[ k ]

1

a

[k ]

k ,k

[

 a i[,kk]  bkk ] .

(5)

где [k + 1] – номер шага исключения переменной, k = 0 ÷ (n – 1). Номер

шага k = 0 отвечает записи системы (1).

Продолжая этот процесс исключения при условии, что

[ ]

[

a 21, 2 0,..., a nn 2n]1 0,

1,

после (n – 1)-го шага исключения получим преобразованную исходную

систему в виде

a1,1  x1 + a1, 2  x 2 + a1,3  x 3 + ... + a1,n  x n = b1

................................................

[

[

[

a nn 2n]1  x n 1 + a nn 2n]  x n = bnn 2 ]

1,

1,

1

[

[

a nnn 1]  x n = bnn 1]

,

[ ]

[ ]

[ ]

[

a 21, 2  x 2 + a 21, 3  x 3 + ... + a 21, n  x n = b21]

(6)

Преобразование исходной системы линейных уравнений к системе (6)

– прямой ход исключения. На этом этапе мы ещё не вычислили ни одной

компоненты вектора решения х, но эквивалентными преобразованиями

привели систему к такой форме, для которой легко вычислить все компо-

ненты решения х.

[

Пусть a nn,n1] 0 . Тогда осуществляем обратный ход: вычисляем компо-

ненты вектора решения в обратном порядке.

Из (6) находим

[

b nn 1 ]

x n = [ n 1] ,

a n ,n

x n 1 =

1

a

[n2]

n 1, n 1

[

[

 b nn 2 ] a nn 2n]  x n ,

1

1,

(

)

(7)

.......... .......... .......... .......... .......... ...

x1 =

1

 (b1 a 1, n  x n ... a 1, 2  x 2 )

a 1,1

Число арифметических действий, выполняемых при решении системы

из ‘‘n’’ линейных алгебраических уравнений методом Гаусса, в общем

случае, равно

2 3

n.

3

2. Пример применения метода Гаусса

Решить задачу:

Дано: куб (n = 6 см. рис. 7.1), внутренние поверхности которого имеют

следующие температуры: Т1 = 800 К, Т2 = 900 К, Т3 = 1000 К, Т4 = 1100 К,

Т5 = 1200 К, Т6 = 1300 К. Степень черноты всех поверхностей ε = 0.8;

41


коэффициент излучения абсолютно чёрного тела

σ0 = 5.668710 –8 Вт/(м2К4); угловой коэффициент

излучения между всеми поверхностями равен

ϕ = 0.2. Угловой коэффициент ‘‘сам на себя’’

равен нулю: ϕii = 0.

Найти: плотность эффективного излучения

каждой поверхности.

Рис. 7.1. Схема расс-

Расчётные выражения:

читываемой системы

Плотность потока эффективного излучения для

i – й поверхности определяется по формуле:

q

эф

i

= (1 ε )  q эф  ϕ ji + ε  σ  Т i4

j

j =1

6

(8)

Всего в кубе 6 поверхностей. Значит, имеем 6 уравнений. Их можно

преобразовать к следующему виду (индекс ‘‘эф’’ для упрощения записи

опущен):

q1 + 1 /[(1 ε )  ϕ ]  q 2 q 3 q 4 q 5 q6 = ε  σ 0  T24 /[(1 ε )  ϕ ]

1 /[(1 ε )  ϕ ]  q 1 q 2 q 3 q 4 q 5 q 6 = ε  σ 0  T14 /[(1 ε )  ϕ ]

q1 q 2 + 1 /[(1 ε )  ϕ ]  q 3 q 4 q 5 q6 = ε  σ 0  T34 /[(1 ε )  ϕ ]

q1 q2 q3 + 1 /[(1 ε )  ϕ ] q4 q5 q6 = ε  σ 0  T44 /[(1 ε )  ϕ ]

q1 q 2 q 3 q 4 + 1 /[(1 ε )  ϕ ]  q 5 q6 = ε  σ 0  T54 /[(1 ε )  ϕ ]

q1 q 2 q 3 q 4 q 5 + 1 /[(1 ε )  ϕ ]  q6 = ε  σ 0  T64 /[(1 ε )  ϕ ]

Фрагмент рабочего документа с решением этой системы относительно

q1 , q 2 , q 3 , q 4 , q 5 и q 6 методом Гаусса представлен на рис. 7.2.

Указания к решению задачи:

1) Системная переменная ORIGIN определяет номер первого элемента

массива (по умолчанию ORIGIN = 0). В нашем случае удобнее, чтобы

все массивы начинались с элемента № 1;

2) Для облегчения решения задачи размерности лучше опустить;

3) Температуры поверхностей заданы в виде матрицы – строки. Это

удобно сделать для придания записи компактного вида. Шаблон мат-

рицы можно вызвать нажатием кнопки с изображением квадратной

матрицы на панели векторов и матриц

4) Надо иметь в виду, в расчётах MathCAD оперирует с одномерными

массивами – столбцами. Поэтому выполняем транспонирование матри-

цы. Знак транспонирования матрицы Т можно вызвать нажатием ком-

бинации клавиш [Ctrl + 1] или нажав кнопку ‘‘МТ’’ на панели векторов

и матриц;

5) Проверку правильности решения можно произвести при помощи

одной из встроенных функций решения систем линейных уравнений,

например, lsolve, либо при помощи обратной матрицы. Стандартная

42


функция lsolve имеет вид: lsolve(А, В), где А – матрица коэффициентов

при неизвестных; В – матрица–столбец свободных членов.

Номера первых элементов массивов

Исходные данные:

ε

0.8

σ0

: ORIGIN

5.6687 .10

8

1

φ

0.2

n

6

Транспонирование матрицы-строки в матрицу-столбец для удобства

ввода массива T i :

T

( 800 900 1000 1100 1200 1300 )

T

Формирование матрицы коэффициентов при неизвестных и

вектора свободных членов:

i

1 .. n

1

(1

25

1

A =

1

1

1

1

ε )

1

25

1

1

1

1

1

1

25

1

1

1

1

1

1

25

1

1

j

1 .. n

Bi

1

1

1

1

25

1

Ai,j

Ti

(1

1

1

1

1

1

25

B=

1

4.

Ai,i

σ 0

ε )

4.644 10

7.438 10

1.134 10

1.66 10

6

6

6

5

5

6

2.351 10

3.238 10

Программный модуль для решения системы уравнений методом Гаусса:

q

a

b

A

B

1

1 .. n

1 .. n

ak , k

1 .

a i , k .a k , j

for i  k

for k  1 .. n

for j  k

ai , j

bi

xn

bn

an , n

bi

ai , j

ak , k

1 .

a i , k .b k

for k  n

s

s

xk

x

0

1 .. 1

1

.x

i

for i  n .. k

s

ak , i

ak , k

1 .

bk

s

Результат:

3.63 10

4

4

4

4

5

Проверка 1 (с использованием

стандартной функции lsolve):

3.63 10

4

4

4

4

5

4.705 10

lsolve ( A , B ) =

6.205 10

8.229 10

1.089 10

1.43 10

5

Проверка 2 (с использованием

обратной матрицы):

3.63 10

4

4

4

4

5

4.705 10

A

1.

4.705 10

q =

6.205 10

8.229 10

1.089 10

1.43 10

5

B=

6.205 10

8.229 10

1.089 10

1.43 10

5

Рис. 7.2 Решение системы линейных уравнений

методом Гаусса

43


Задание для самостоятельной работы

Решить систему линейных уравнений вида A  x = B методом Гаусса.

Вариант задания взять из таблицы 7.1 согласно порядковому номеру сту-

дента по журналу.

Таблица 7.1

Варианты заданий для самостоятельной работы

№ вар.

1

А

100 14 13

0,5 200 9,5

9

9

300

 200 13 12

1

400 9

8

8

600

 300

 1,5

7

 400

 2

9

12

600

11

8,5

7 900

11 10

800 7

9 354

В

1232

326

 4335

2470

946

 7920

4350

 5456

 5681

4960

5050

 9520

5430

9126

 1923

1587

3541

 9842

6548

3281

 1562

1289

 2846

 1973

№ вар.

9

А

 264 58 43

0,5 560 3,5

6

9

532

 235 23 12

3

526

6

1

8

400

 312

 1,3

2

 230

 2,8

23

19

126

1,1

3,5

7 960

1,1 15

125 4.1

1,7 381

В

2587

159

 4236

2861

913

 7410

2210

 2490

 1251

2529

3035

 2580

1125

2556

 1266

7751

3251

 3368

2557

2371

 3591

9511

 2396

 3359

2

10

3

11

4

12

5

6

 275 22 11

4,5 670 7.3

5 9,7 300

 238 15 65

8 865

1

5 21 35,4

 384 18 53

6 630

9

5 62 454

 295 2 38

 3.5 370 4.3

9 9,7 321

13

14

 545 2,2 1,1

25

45

7.3

42 4,7 211

 200 0,3 41

8,3 821 1,2

3

81 15,4

 312 1,8 23

6,6 621

1

3,6 92 274

 420 18 32

 3 340 1

5

5 154

7

15

8

16

Требования к отчёту

Отчет о лабораторной работе должен включать цель работы, реферат

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

дентом на компьютере. Рабочий документ выполнения лабораторной рабо-

ты должен быть сохранён на ПЭВМ в личной папке студента.

44


При сдаче лабораторной работы студент должен ответить на следую-

щие контрольные вопросы:

1. Как записывается система линейных уравнений в матричной форме?

2. В чём суть метода Гаусса?

3. Какой вычислительный процесс называется прямым ходом исклю-

чения в методе Гаусса?

4. Какой вычислительный процесс называется обратным ходом в ме-

тоде Гаусса?

5. Прокомментируйте формулу преобразования матрицы коэффициен-

тов при неизвестных во время прямого хода исключения. Что в неё

входит и как получена?

6. Прокомментируйте формулу преобразования вектора свободных

членов во время прямого хода исключения. Что в неё входит и как

получена?

7. Прокомментируйте формулу нахождения неизвестных во время об-

ратного хода. Что в неё входит и как получена?

8. Какую информацию содержит системная переменная ORIGIN?

9. Что происходит при транспонировании матрицы? Как осуществить

транспонирование матрицы в MathCAD?

10. Как можно проверить правильность решения системы линейных

уравнений методом Гаусса?

11.Объясните назначение кнопок ‘‘Add Line’’, ‘‘’’ и ‘‘while’’ панели

программирования.

12. Как транспонировать матрицу–столбец в матрицу–строку?

45


Лабораторная работа № 8

Применение метода наименьших квадратов

для аппроксимации табличных данных

Цель работы

1. Освоить метод наименьших квадратов.

2. Получить практические навыки аппроксимации табличных данных

методом наименьших квадратов.

1. Общие сведения

Метод наименьших квадратов – основной метод статистической обра-

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

вольных уравнений даёт наилучшее приближение к фактической зависи-

мости.

Пусть для описания исследуемой зависимости выбрано уравнение

y = f(x). Например, y = a0 + a1  x + a 2  x 2 + a 3  x 3 + . Согласно выбранному

уравнению y = f(x), значению аргумента xi должно соответствовать значе-

ние функции yi. Как правило, получается отклонение фактических значе-

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

том, что наилучшее приближение к истинной зависимости даёт такое

уравнение, для которого сумма квадратов отклонений экспериментальных

и расчётных данных имеет минимальное значение, т.е.

S = [ y i f ( x i )] min .

2

1

n

(1)

Для сравнения обычно выбирают уравнения определённого типа, но с

неизвестными коэффициентами. Величину S можно рассматривать как

функцию коэффициентов а1, а2, …, аn искомого уравнения. Задача состоит

в том, чтобы найти значения коэффициентов уравнения, соответствующие

минимуму S.

Известно, что необходимым условием минимума дифференцируемой

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

S

S

S

= 0,

= 0, ...,

= 0.

a 1

a 2

a n

(2)

Эти равенства можно рассматривать как систему нормальных уравне-

ний относительно коэффициентов а1, а2, …, аn, которая имеет единствен-

ное решение, минимизирующее величину S.

Рассмотрим применение метода наименьших квадратов на примере ли-

нейной зависимости типа y = a0+a1x. Отклонение линейного уравнения от

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

уравнений:

46


Δy 1 = y y 1 = a0 + a1  x1 y 1 ;

Δy 2 = y y 2 = a 0 + a 1  x 2 y 2 ;

...............................................

Δy n = y y n = a 0 + a 1  x n y n .

(3)

Если в каждом частном уравнении системы (3) левую и правую части

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

клонений

( y y ) = (a

2

i =1

i

i =1

n

n

0

+ a1  xi y i ) .

2

(4)

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

  n

2

 Δ y i

n

  i =1

= 2  (a0 + a1  x i y i ) = 0;

a0

i =1

 n

Δ y 2

i

n

 

i =1

= 2  [(a + a  x y )  x ] = 0.

0 1 i i i

a1

i =1

(5)

После ряда простейших преобразований получим систему линейных

уравнений:

n

n

y i = n  a0 + a1  x i ;

 i =1

i =1

n

n

n

 x  y = a  x + a  x2.

0 i

1 i

i i

i =1

i =1

 i =1

(6)

Решая (6) любым подходящим методом (методом Гаусса, методом про-

стых итераций и т.д.), находим значения коэффициентов а0 и а1.

2. Пример применения метода наименьших квадратов

Решить задачу:

Дано: экспериментально полученная зависимость содержания СО2 в

продуктах полного горения топлива от содержания О2 в дутье (дутьё –

окислитель топлива на основе воздуха).

Содержание

21

О2 в дутье, %

СО2, %

11,8

24

13,6

27

15,6

36

22

30

17,7

42

26,6

70

54

48

31,6

100

100

Найти: линейное уравнение вида y = a0 + a1x, описывающее эту зави-

симость.

Фрагмент рабочего документа с решением данной задачи представлен

на рис. 8.1.

47


Номера первых элементов массивов

Исходные данные:

M

21

11.8

24

13.6

27

15.6

36

30

42

26.6

: ORIGIN

70

48

1

100

100

T

22 17.7

54 31.6

Разделение исходного двухмерного массива

на два одномерных массива-столбца:

O 2

O 2

T

=

M

< 1>

, CO 2

24

27

M

< 2>

21

36

30

42

70

48

100

54

31.6

100

T

CO 2 = 11.8 13.6 15.6 22 17.7 26.6

Аппроксимация экспериментальных данных

методом наименьших квадратов:

n 9

given

n

i= 1

n

i= 1

O 2 . CO 2

i

i

15.594

1.089

a 0.

i= 1

CO 2

i

a 0 .n

a 1.

i= 1

n

O 2

i

Начальное приближение:

n

O 2

i

a0

0

a1

0

n

a 1.

i= 1

O 2

i

2

find a 0 , a 1 =

Проверка полученного решения:

a 0p

intercept O 2 , CO 2 , a 1p

a 0p = 15.594

a 1p = 1.089

a 1p . x

slope O 2 , CO 2

Графическое отображение решения:

y( x)

a 0p

105

84

y O2

CO 2

63

42

21

0

20

37

54

O2

71

88

105

Рис. 8.1. Аппроксимация экспериментальных данных

методом наименьших квадратов

Указания к выполнению задания:

1) Введите номера первых элементов массивов, которые задаются сис-

темной переменной ORIGIN, и значения экспериментальных данных.

2) Для дальнейшей обработки двухмерный массив исходных данных

необходимо разделить на два одномерных массива–столбца. Шаблон

48


верхнего индекса, определяющего номер колонки массива можно вы-

звать нажатием комбинации клавиш [Ctrl] + [6] или нажав кнопку

‘‘М< >’’ на панели векторов и матриц.

3) Для нахождения коэффициентов а0 и а1 необходимо решить систему

уравнений (5). Это можно сделать при помощи встроенных функций

given (дано) и find (найти). Перед встроенной функцией given необхо-

димо задать начальные приближения для искомых переменных. В дан-

ном случае для а0 и а1. Обычно в качестве начальных приближений бе-

рут простые числа, типа 0, 1, -1, 2 и т.п. После функции given необхо-

димо записать анализируемую систему, связывая левые и правые части

уравнений знаком ‘‘логическое равенство’’ – жирным знаком ‘‘равно’’,

который можно вызвать нажатием комбинации клавиш [Ctrl] + [=].

Функция find возвращает значения искомых переменных. Если система

функций given и find выдаёт сообщение об ошибке, то можно попробо-

вать изменить начальные приближения.

4) Проверку правильности решения можно произвести при помощи

встроенных функций intercept и slope, которые возвращают, соответ-

ственно, коэффициенты а0 и а1 линейной регрессии y = a0 + a1·x.

5) Соответствие полученного уравнения экспериментальным данным

можно оценить при помощи графика.

Задание для самостоятельной работы

Найти методом наименьших квадратов линейную зависимость

y = a0 + a1·x по заданным эмпирическим данным. Используя найденную

линейную зависимость, найти значение у в точке х = N + 0,55, где N – но-

мер варианта. Вариант задания взять из таблицы 8.1 согласно порядковому

номеру студента по журналу.

Таблица 8.1

Варианты заданий для самостоятельной работы

№ вар.

1

2

3

4

5

6

х

у

х

у

х

у

х

у

х

у

х

у

1

0,686

2

2,312

3

4,615

4

8,472

5

12,36

6

17,63

1,1

0,742

2,1

2,251

3,1

4,591

4,1

8,805

5,1

13,63

6,1

19,75

1,2

0,767

2,2

2,418

3,2

5,13

4,2

9,096

5,2

13,3

6,2

19,78

Эмпирические данные

1,3 1,4 1,5 1,6 1,7

0,646 0,807 0,774 0,97 0,932

2,3 2,4 2,5 2,6 2,7

2,752 2,459 2,7 3,022 3,079

3,3 3,4 3,5 3,6 3,7

5,481 5,492 5,553 5,471 5,727

4,3 4,4 4,5 4,6 4,7

8,993 9,312 9,465 9,771 9,61

5,3 5,4 5,5 5,6 5,7

13,15 13,48 14,24 14,51 14,88

6,3 6,4 6,5 6,6 6,7

18,81 19,88 21,12 20,21 19,48

49

1,8

0,936

2,8

2,42

3,8

5,798

4,8

9,722

5,8

15,25

6,8

20,15

1,9

0,978

2,9

2,669

3,9

6,11

4,9

11,42

5,9

15,37

6,9

20,5

2

1,048

3

3,241

4

6,605

5

10,28

6

15,16

7

21,29


№ вар.

7

8

9

10

11

12

13

14

15

16

х

у

х

у

х

у

х

у

х

у

х

у

х

у

х

у

х

у

х

у

7

25,24

8

30,53

9

41,74

10

49,76

11

62,17

12

71,17

13

86,61

14

99,81

15

115,2

16

121,3

7,1

25,13

8,1

34,22

9,1

42,24

10,1

51,92

11,1

63,05

12,1

74,26

13,1

85,49

14,1

100,3

15,1

115,3

16,1

121,5

7,2

25,67

8,2

34,23

9,2

43,88

10,2

50,08

11,2

63,72

12,2

72,66

13,2

87,8

14,2

99,49

15,2

115,1

16,2

120,9

Эмпирические данные

7,3 7,4 7,5 7,6 7,7

26,63 26,75 27,23 26,49 26,88

8,3 8,4 8,5 8,6 8,7

34,11 33,59 34,06 34,5 35,82

9,3 9,4 9,5 9,6 9,7

42,16 43,7 45,04 42,46 45,73

10,3 10,4 10,5 10,6 10,7

52,38 53,41 54,97 52,78 54,11

11,3 11,4 11,5 11,6 11,7

64,24 64,09 63,59 65,41 65,28

12,3 12,4 12,5 12,6 12,7

74,51 76,65 75,52 75,71 76,36

13,3 13,4 13,5 13,6 13,7

88,61 89,07 89,24 89,63 90,76

14,3 14,4 14,5 14,6 14,7

102,6 103,2 104,4 104,7 105,1

15,3 15,4 15,5 15,6 15,7

116 117,2 119,3 121,4 119,8

16,3 16,4 16,5 16,6 16,7

121,7 124,1 124,3 123,9 124

7,8

27,23

8,8

35,68

9,8

44,06

10,8

55,48

11,8

65,05

12,8

79,32

13,8

91,32

14,8

104,7

15,8

120,8

16,8

125,5

7,9

28,06

8,9

37,44

9,9

45,86

10,9

55,68

11,9

68,87

12,9

77,37

13,9

91,43

14,9

105,5

15,9

121,6

16,9

125,9

8

27,78

9

35,7

10

44,95

11

56,2

12

65,74

13

77,61

14

91,71

15

107,2

16

124,3

17

126,8

Требования к отчёту

Отчет о лабораторной работе должен включать цель работы, реферат

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

дентом на компьютере. Рабочий документ выполнения лабораторной рабо-

ты должен быть сохранён на ПЭВМ в личной папке студента.

При сдаче лабораторной работы студент должен ответить на следую-

щие контрольные вопросы:

1. Назначение метода наименьших квадратов?

2. Сущность метода наименьших квадратов?

3. Повторите вывод уравнений (3 – 6) для случая y = a0 + a1·x + a2·x2.

4. Назначение встроенных функций given и find?

5. Назначение встроенных функций intercept и slope?

6. Как разделить один двухмерный массив на два одномерных?

7. Что означают следующие знаки: ":=", "=", "=", "←", "→"?

8. Как задать на графике значения переменных в виде отдельных точек

(кружков, крестиков и т.д.)?

9. Для чего производится операция транспонирования матрицы?

50


Лабораторная работа № 9

Приближённое вычисление интегралов

методом Симпсона

Цель работы

1. Освоить метод численного интегрирования Симпсона.

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

Симпсона.

1. Общие сведения

Во многих научных и технических задачах интегрирование функций

является составной частью решения полной проблемы. Вычисление пло-

щадей и объёмов, определение центра и моментов инерции тел, вычисле-

ние значения работы, произведённой некоторыми силами, и многие другие

задачи приводят к интегрированию функций. Геометрический смысл про-

стейшего определённого интеграла

I = f ( x ) dx

a

b

(1)

от неотрицательной функции f(x) ≥ 0, как известно, состоит в том, что зна-

чение I – это площадь, ограниченная кривой y=f(x), осью абсцисс и пря-

мыми x=a, x=b.

Разделим отрезок [a, b] точками x0=a, x1, x2, …, xn=b на чётное число

частей n = 2m, где m = 1, 2, 3, …. Площадь криволинейной трапеции, соот-

ветствующей первым двум отрезкам [x0, x1] и [x1, x2] и ограниченной за-

данной кривой y=f(x), которая ограничена параболой второй степени, про-

ходящей через эти три точки и имеющую ось, параллельную оси 0Y. Та-

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

Уравнение параболы с осью, параллельной оси 0Y, имеет вид:

y = A  x2 + B  x + C .

(2)

Лемма. Если криволинейная трапеция ограничена параболой (2), осью

и двумя ординатами, расстояние между которыми равно 2h, то её

площадь равна:

S=

h

 ( y0 + 4  y1 + y 2 ) ,

3

(3)

где y0 и y2 – крайние ординаты, а y1 – ордината кривой в середине отрезка.

51


Пользуясь формулой (3), можем написать следующие приближённые

равенства (h=Δx):

x2

a = x0

x4

f ( x ) dx

f ( x ) dx

Δx

 ( y 0 + 4  y 1 + y 2 ),

3

x2

Δx

 ( y 2 + 4  y 3 + y 4 ),

3

Δx

 ( y 2 m 2 + 4  y 2 m 1 + y 2 m ).

3

(4)

.........................................................

x2 m = b

x2 m 2

f ( x ) dx

Складывая левые и правые части, получим слева искомый интеграл,

справа его приближённое значение:

a

b

f ( x ) dx

Δx

 ( y 0 + 4  y 1 + 2  y 2 + 4  y 3 + ... + 2  y 2 m 1 + 4  y 2 m 1 + y 2 m ) .

3

(5)

Сокращая, получим формулу Симпсона в общем виде:

a

b

m

m 1

Δx

f ( x ) dx

  y 0 + 4  y 2 i 1 + 2  y 2 i + y 2 m  .

3

i =1

i =1

(6)

Формулу Симпсона также называют формулой парабол.

2. Пример применения метода Симпсона

Решить задачу:

Существует некоторое предельное значение параметра вдува (харак-

терного параметра интенсивности процесса массообмена), при котором ко-

эффициенты трения, теплообмена и массообмена становятся равными ну-

лю. При этом критический параметр вдува определяется формулой:

 ρ 1

bкр =

 ω dω ,

 ρ ст 0

2

где ρ, ρст – плотность среды в потоке и на стенке; ω – относительная ско-

рость.

Найти: значение критического параметра при ρ = 600 кг/м3, ρст = 800

кг/м3.

Фрагмент рабочего документа с решением задачи представлен на ри-

сунке 9.1.

Задание для самостоятельной работы

Вычислить определённый интеграл

f (x ) dx

a

b

методом Симпсона. Вари-

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

по журналу.

52


Таблица 9.1

Варианты заданий для самостоятельной работы

№ вар.

1

2

3

4

5

6

7

8

f(x)

256 x 2

x2  1 x2

1

[a, b] № вар.

9

[0, 16]

10

[0, 1]

[0, 5]

[3, 5]

5

0,

2

2

0,

2

f(x)

x 3  16 x 2

x  25 x 2

(25 + x 2 )  25 + x 2

2x

x 6

11

12

13

14

15

16

exp 3 x

(3 + x )

(

)

[a, b]

[0, 4]

[0, 5]

[0, 3]

[1, 64]

[0, 1]

[6, 9]

[6, 10]

[0,13]

9 x2

16 x + 23 x

x + 2  x3 + 8

x4

(5 x )

x4

1

2 3/2

(2 x )

2 3

(1 x )

(4 + x )

2 3

9 2x

2  x 21

4 x2

4 x2

[0, 2]

2

x + 12

(16 x )

[0, 4]

(9 + x )

1

2 1/ 3

Требования к отчёту

Отчет о лабораторной работе должен включать цель работы, реферат

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

дентом на компьютере. Рабочий документ выполнения лабораторной рабо-

ты должен быть сохранён на ПЭВМ в личной папке студента.

При сдаче лабораторной работы студент должен ответить на следую-

щие контрольные вопросы:

1. Назовите примеры задач, при решении которых возникает необхо-

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

2. Геометрический смысл определённого интеграла?

3. Что называют параболической трапецией?

4. Какой вид имеет уравнение параболы с осью, параллельной оси 0Y?

5. Чему равна площадь криволинейной трапеция, ограниченной пара-

болой (2), осью 0Х и двумя ординатами, расстояние между которы-

ми равно 2h?

6. Напишите формулу Симпсона.

7. Почему формулу Симпсона называют формулой парабол?

8. Объясните алгоритм вычисления определённого интеграла методом

Симпсона.

9. Какие стандартные средства MathCAD предназначены для вычис-

ления определённых интегралов?

53


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

лённого интеграла?

Исходные данные:

kg

ρ 600 .

ρs

3

m

800 .

kg

m

3

ωn

f( ω )

0

ω

ωk

1

Подинтегральная функция:

Принимаем количество интервалов (чётное)

Программный модуль для расчёта определённого

интеграла по формуле Симпсона:

ωk ωn

Integral

Δω

n

nechet

chet

0

1)

f( Δω . i)

2)

nechet

chet

0

n

30

for i  1 , 3 .. ( n

nechet

chet

for i  2 , 4 .. ( n

Δω .

f ωn

3

b kr

ρ .

Integral

ρs

ωk

f( ω ) d ω

2

f( Δω . i)

4 . nechet

2 .chet

f ωk

b kr = 0.333

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

2

ρ .

ρs ω

n

= 0.333

Рис. 9.1. Вычисление определённого интеграла

методом Симпсона

54


Лабораторная работа № 10

Решение обыкновенных дифференциальных уравнений

методами Эйлера и Рунге-Кутта

Цель работы

1. Освоить методы Эйлера и Рунге-Кутта.

2. Получить практические навыки решения обыкновенных дифферен-

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

ва термически тонких тел.

1. Общие сведения

Большое количество задач с обыкновенными дифференциальными

уравнениями (О.Д.У.) вида

dy

= f ( x, y )

dx

(1)

может быть решено только численно. Простейшим методом решения по-

добных уравнений является метод Эйлера. Этот метод состоит в пошаго-

вом применении простой формулы:

yi +1 = yi + Δx  f ( xi , yi ) ,

(2)

где i – номер узла, на которые разбит интервал по переменной х, Δх – рас-

стояние между узлами i и i + 1. Понятно, что чем меньше величина Δх, тем

точнее будет расчёт, но одновременно, увеличится время вычислений на

ЭВМ за счёт увеличения количества узлов.

Этот метод даёт хорошее приближение решения только при достаточно

малом Δх и только для нескольких первых узлов (точек). Метод Эйлера да-

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

точности. Первый порядок – самый низкий. Достоинство этого метода в

наглядности и простоте реализации.

Более совершенным, по сравнению с методом Эйлера, при решениии

О.Д.У. является метод Рунге-Кутта. Идея метода Рунге-Кутта состоит в

том, чтобы представить дискретную задачу, соответствующую (1), в виде:

yi + 1 = yi + Δx  ϕ ( xi , y i , Δx ) ,

(3)

где функция ϕ (xi , yi , Δx ) приближала бы отрезок ряда Тейлора:

y i +1

y i′′

y i( p )

2

= y i + y i Δx + Δx + +

Δx p

2!

p!

(4)

и в то же время не содержала бы производных от функции f(x, y). Таким

образом, в основе методов Рунге-Кутта лежит подгонка рядов Тейлора.

Заметим, что метод Рунге-Кутта первого порядка (р = 1) – это метод

Эйлера, так как здесь в вычислениях используются только значения f(x, y).

55


Наиболее популярным среди методов Рунге-Кутта является метод Рун-

ге-Кутта четвёртого порядка:

y i +1 = y i +

1

 (k 1 + 2  k 2 + 2  k 3 + k 4 ) ,

6

(5)

где

k 1 = f ( x i , y i ) Δx;

k

Δx

k 2 = f  xi +

, y i + 1   Δx;

2

2

k

Δx

k 3 = f  xi +

, y i + 2   Δx;

2

2

k 4 = f (x i + Δx, y i + k 3 ) Δx.

2. Пример применения метода Рунге-Кутта

Решить задачу:

Процесс нагрева конвекцией термически тонкого тела описывается

следующим уравнением:

C  ρ V

dT

= α  (Tg T )  S ,

dτ

(6)

где V и S – объём и площадь поверхности нагреваемого тела, T – темпера-

тура тела.

Исходные данные: D = 2R = 0.025 м; плотность металла ρ = 8000

кг/м3; удельная теплоёмкость металла С = 600 Дж/(кгК); коэффициент те-

плоотдачи конвекцией α = 30 Вт/(м2К); коэффициент теплопроводности

λ = 30 Вт/(мК); начальная температура Т0 = 300 К.

Найти: изменение температуры термически тонкой цилиндрической

стальной заготовки диаметром D, нагреваемой конвекцией в печи, если

температура печных газов изменяется по закону Tg = 1000 + bτ, где τ =

= 0 ÷ 300 – время нагрева, с; b = 1 К/с.

Указания к выполнению задания:

При решении задачи уравнение (6) преобразуется к следующему виду,

максимально приближённому к виду О.Д.У. (1):

dT

α S

2 α

=

 (Tg T ) =

 (Tg T )

dτ C  ρ  V

CρR

(7)

Фрагмент рабочего документа с решением задачи представлен на

рис. 10.1.

Задание для самостоятельной работы

Решить обыкновенное дифференциальное уравнение:

α  k1

dT

=

 (Tокр T )

dτ S  ρ  C

методом Рунге-Кутта. Данные, общие для всех вариантов: Токр = 1000 К,

С = 600 Дж/(кгК), ρ = 8000 кг/м3, начальное значение Т0 = 273 К, τ =

56


= 0 ÷ 1200 с. Остальные данные взять из таблицы 10.1. согласно

порядковому номеру студента по журналу.

Исходные данные:

D

α

τ n

0.025 . m

W

30 .

2

m .K

0 .s

τ k

ρ

λ

kg

8000 .

3

m

W

30 .

m .K

300 . s

R

D

2

T g( τ )

α .2 .

T g( τ )

C .ρ .R

T

1000 . K

b

C

T0

600 .

J

kg . K

b

k 1

1.

K

s

2

300 . K

Радиус заготовки:

1) Закон изменения температуры в печи:

2) Правая часть О.Д.У.:

f( τ , T )

3) Расчёт одного шага методом

Рунге-Кутта 4-го порядка:

y i1 x i , y i , Δ x

k 1

f x i , y i x

k 2

k 3

k 4

y i

f x i

f x i

f x i

1.

k 1

6

Δx

Δx

2

,y i

2

,y i

k 1

2

k 2

2

k 3

2 .k 3

N

τ k

N

τ n

x

x

x

k 4

5

Δx,y i

2 .k 2

Принимаем количество шагов по времени

Величина шага по времени

i

1 .. N

Δτ

Температура, рассчитанная методом Рунге-Кутта 4-го порядка:

Ti

y i1 Δτ . i , T i 1 , Δτ

T

T = 300

346.023

392.861

440.465

488.791

Графическое представление полученных результатов:

i

0 .. N

550

537.796

K

487.5

T

i

425

362.5

300

0

75

150

Δτ . i

225

300

Рис. 10.1. Решение задачи нагрева заготовки

методом Рунге-Кутта

57


Таблица 10.1

Варианты заданий для самостоятельной работы

№ вар.

1

2

3

4

5

6

7

8

S

0,010

0,012

0,014

0,016

0,018

0,020

0,024

0,026

k1

2

2

2

2

2

1

1

1

α

30

40

50

60

70

35

45

55

№ вар.

9

10

11

12

13

14

15

16

S

0,026

0,028

0,011

0,013

0,015

0,017

0,019

0,021

k1

1

1

1

1

1

3

3

3

α

65

75

33

43

53

63

73

77

Требования к отчёту

Отчет о лабораторной работе должен включать цель работы, реферат

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

дентом на компьютере. Рабочий документ выполнения лабораторной рабо-

ты должен быть сохранён на ПЭВМ в личной папке студента.

При сдаче лабораторной работы студент должен ответить на следую-

щие контрольные вопросы:

1. Сущность метода Эйлера?

2. Напишите формулу метода Эйлера.

3. Достоинства и недостатки метода Эйлера?

4. В чём заключается идея метода Рунге-Кутта?

5. Прокомментируйте формулу метода Рунге-Кутта.

6. Что лежит в основе метода Рунге-Кутта?

7. В каком случае метод Рунге-Кутта становится методом Эйлера?

8. Какой из методов Рунге-Кутта является наиболее популярным?

9. Почему результаты расчёта температур лучше выводить в виде

транспонированного массива?

10. Как можно повысить точность решения обыкновенного дифферен-

циального уравнения методом Эйлера или Рунге-Кутта?

11. Из каких соображений выбирается величина шага и число шагов, на

которые разбивается весь интервал изменения аргумента при чис-

ленном решении О.Д.У.?

58


Л а б о р а то р н а я р а б от а № 11

Метод прогонки

Цель работы

1. Освоить метод прогонки решения систем линейных уравнений, по-

лучающихся при аппроксимации дифференциального уравнения те-

плопроводности методом конечных разностей.

2. Получить практические навыки решения систем линейных уравне-

ний трёхдиагонального вида методом прогонки.

1. Общие сведения

Метод прогонки является частным случаем метода Гаусса и предназна-

чен для решения систем линейных уравнений, у которых коэффициенты

при неизвестных образуют трёхдиагональную матрицу.

Примером уравнений, из которых может состоять система, является

следующее i-е уравнение:

Ai  t i 1 + Bi  t i + С i  t i +1 = Di ; i = 1, 2, …, N,

(1)

где Ai , Bi , C i , Di – константы; t i 1 , t i , t i +1 – неизвестные.

Вид уравнений, подобных (1), возникает, в частности, при аппроксима-

ции дифференциального уравнения теплопроводности методом конечных

разностей.

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

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

кроме трёх главных диагоналей:

 B1 C 1 0 0  t 1   D1

 A B C .0  t   D

 2  2

 2 2 2

  

⎥⋅⎢  =  .

0 Ai Bi C i ...0  t i   Di

  

    

0 .... AN B N  t N   D N

    

(2)

Метод прогонки включает прямой ход и обратный ход. При прямом хо-

де находятся прогоночные коэффициенты, рассчитываемые по формулам:

Ci

Bi + Ai  α i 1

D

C1

; β1 = 1 ;

B1

B1

A  β + Di

; β i = i i 1

; i = 2, 3, …, N.

Bi + Ai  α i 1

α1 =

(3)

(4)

(5)

(6)

αi =

При обратном ходе рассчитываются искомые величины t:

tN = β N

ti = α i  ti +1 + β i ; i = N–1, N–2, …, 1.

59


Расчёт методом прогонки устойчив, если выполняется условие преоб-

ладания диагональных элементов

Bi Ai + C i ; i = 1, 2, …, N.

(7)

Это условие является достаточным, но не строго необходимым. Поэто-

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

чивой даже при его нарушении.

Для решения системы линейных уравнений методом прогонки требует-

ся порядка 9N арифметических действий, то есть гораздо меньше, чем ме-

тодами Гаусса или Крамера. Это связано с тем, что в процессе расчёта за-

ранее исключаются операции над коэффициентами равными нулю.

2. Пример применения метода прогонки

Необходимо решить следующую систему линейных уравнений:

2  t 1 + 3  t 2 = 8;

2  t 1 + t 2 + t 3 = 3;

5  t 2 t 3 + 2  t 4 = −2;

3  t 3 + 2  t 4 = −7.

(8)

Если проанализировать вид системы, то можно обнаружить, что в каж-

дом уравнении не более трёх неизвестных и коэффициенты перед неиз-

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

диагонали, а остальные коэффициенты равны нулю.

Так как система является трёхдиагональной, то используем метод про-

гонки. Для удобства расчётов запишем коэффициенты этой системы в таб-

лицу 11.1.

Таблица 11.1

Коэффициенты системы уравнений

i

1

2

3

4

Ai

0

2

5

3

Bi

2

1

-1

2

Ci

3

1

2

0

Di

8

3

-2

-7

Фрагмент рабочего документа с решением задачи представлен на рис. 11.1.

Задание для самостоятельной работы

Решить методом прогонки систему

4  x1 + x 2 = D1 ;

x1 + 4  x 2 + x 3 = D2 ;

x 2 + 4  x 3 + x 4 = D3 ;

x 3 + 4  x 4 = D4

относительно x1 , x 2 , x 3 , x 4 .

60


Для каждого варианта расчёта коэффициенты D принимают значения,

приведённые в таблице 11.2.

Таблица 11.2

Значения коэффициентов D

№ вар.

1

2

3

4

5

6

7

8

9

10

D1

26

-12

-2

33

19

-9

14

-9

-5

36

D2

2

12

-1

0

14

2

18

15

-4

-12

D3

-12

15

28

3

-9

15

-8

18

36

4

D4 № вар. D1

25

11

-8

14

12

0

15

13

21

21

14

-5

16

15

9

-4

16

7

23

17

6

-2

18

7

-13

19

0

29

20

7

D2

4

-6

-7

26

-1

1

-2

0

-2

1

D3

-15

26

-5

23

1

-2

6

5

0

4

D4

30

-14

-6

7

0

1

-2

-1

0

7

После нахождения t1, t2, t3, t4 необходимо проверить правильность ре-

шения, рассчитав невязки для каждого уравнения.

Требования к отчёту

Отчет о лабораторной работе должен включать цель работы, реферат

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

дентом на компьютере. Рабочий документ выполнения лабораторной рабо-

ты должен быть сохранён на ПЭВМ в личной папке студента.

При сдаче лабораторной работы студент должен ответить на следую-

щие контрольные вопросы:

1. Для чего предназначен метод прогонки?

2. Что представляет собой трёхдиагональная матрица?

3. Что такое прямой и обратный хода прогонки?

4. Напишите формулу расчёта прогоночных коэффициентов.

5. Напишите формулу нахождения неизвестных.

6. Напишите условие устойчивости метода прогонки.

7. Что означает термин ‘‘экономичность расчёта’’?

8. Почему метод прогонки экономичнее других методов решения сис-

тем линейных уравнений?

61


ORIGIN

1

Исходные данные:

0

M

2

5

3

A

M

2

1

2

3

1

0

B

8

3

2

7

M

<2>

C

M

<3>

D

M

<4>

N

4

1 2

<1>

Прямой ход прогонки:

α1

i

C1

B1

2 .. N

β1

αi

D1

B1

Ci

Bi

A i i

1

βi

A i i

Bi

1

Di

1

A i i

Обратный ход прогонки:

tN

βN

i

N

1 .. 1

ti

α i .t i

1

βi

Результат:

T

t =

3.5 5

5

11

Для проверки правильности решения рассчитываем

невязку для каждого уравнения системы (8), подставляя

в них найденные значения t

ε1

ε2

ε3

ε4

B1 . t 1

A 2 .t 1

A 3 .t 2

A 4 .t 3

C1 . t 2

B2 . t 2

B3 . t 3

B4 . t 4

D1

C2 . t 3

C3 . t 4

D4

ε1 = 0

D2

D3

ε2 = 0

ε3 = 0

ε4 = 0

Рис. 11.1. Решение системы уравнений методом прогонки

62


Приложение

Команды меню MathCAD 7 Pro

(В квадратных скобках указаны комбинации клавиш, которые соответ-

ствуют рассматриваемым командам).

Меню File

Меню содержит ряд операций, разбитых на группы.

В первую группу входят следующие операции работы с документами:

New [Ctrl + N] – открыть окно для нового документа;

Open... [Ctrl + 0] – открыть существующий документ;

Close [Ctrl + F4] – закрыть документ.

Вторая группа команд служит для сохранения документов:

Save [F6] – сохранить на диске текущий документ;

Save as... [Ctrl + S] – сохранить на диске текущий документ под (Со-

хранить как) новым именем.

Третья группа команд предназначена для работы с телекоммуникаци-

онными средствами:

Collaboratory... – установить связь с фирмой – разработчиком системы

для обеспечения совместной работы над документами;

Internet Setup... – установить модемную связь с Internet;

Send...– отправить документ по электронной почте или по Internet.

Четвертая группа команд служит для подготовки к печати и самой пе-

чати документов:

Page Setup... – установить левое и правое поля на странице, установить

размер страницы;

Print Preview...– предварительно просмотреть документ перед печа-

тью;

Print... [Ctrl + 0] – распечатать документ.

Последняя из этих операций позволяет распечатать весь текст докумен-

та с комментариями, математическими формулами, таблицами и графика-

ми.

Пятая группа представлена командой Exit [Alt + F4] – выйти из среды

MathCAD.

Перед этой командой имеется перечень последних файлов, с которыми

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

ного поиска.

Меню Edit

Undo [Alt + BkSp] – отменить последнюю операцию редактирования;

Redo – повторить последнюю операцию редактирования;

Cut [Ctrl + X] – переместить выделенный объект в буфер обмена;

63


Copy [Ctrl + C] – скопировать выделенный объект в буфер обмена;

Paste [Ctrl + V] – вставить содержимое из буфера обмена в документ;

Paste Special... – вставить содержимое из буфера обмена в различном

формате (в формате MathCAD или BITMAP, например);

Delete [Ctrl + D] – стирание выделенных объектов;

Select All – выделение всех объектов документа;

Find... [Ctrl + F5] – найти заданную текстовую или математическую

строку;

Replace... [Shift + F5] – найти и заменить математическую или тексто-

вую строку;

Go to Page... – расположить начало указанной страницы в начале рабо-

чего документа MathCAD;

Check Speling... проверка орфографии (для англоязычных документов);

Links... – задание связи с документом;

Object – редактирование вставленного в документ объекта.

Меню View

Math Pallete – убирает или восстанавливает панель вывода математи-

ческих символов.

Tool Bar – убирает или восстанавливает панель инструментов;

Format Bar – убирает или восстанавливает панель форматирования;

Regions – выделяет все рабочие области и обеспечивает закраску про-

межутков между ними серым цветом. Сами блоки при этом выделены бе-

лым фоном;

Zoom – изменяет масштаб изображения документа;

Refresh – уничтожает следы от объектов документа, если они возника-

ют при работе;

Animation – анимация (или оживление) графиков;

Playback – просмотр любого видеофайла с расширением avi.

Меню Insert

Graph – вставка шаблонов графики;

Matrix... [Ctrl + M] – вставка шаблонов матриц и векторов;

Function... [Ctrl + F] – вставка шаблонов встроенных функций;

Unit... [Ctrl + U] – вставка единиц измерений размерных величин;

Picture [Ctrl + T] – вставка шаблона импортируемого рисунка;

Math Region – вставка в текстовую область шаблона математической

области;

Text Region – вставка текстовой области;

Page Break – вставка линии разрыва страницы;

Hyperlink – вставка гиперссылки;

Reference... – вставка обращения к заданному файлу активизацией

кнопки;

64


Component... – вставка других компонентов системы;

Object... – вставка объекта с установлением динамической связи с по-

рождающим его приложением.

Меню Format

Number... – установка формата чисел;

Equation... – установка формата выражений;

Text... – установка формата текста;

Paragraph... – установка формата параграфа;

Style... – установка формата стиля;

Properties... – установка свойств;

Graph – установка формата графиков;

Color – установка цвета;

Separate Region – разделение областей (блоков);

Align Region – задание расположения областей вывода символьных

вычислений;

Lock Region – создание закрытых (недоступных для редактирования)

областей;

Header/Footer... – создание колонтитулов

Меню Math

Calculate [F9] – провести расчёты по формулам, расположенным ни-

же/правее курсора;

Calculate worksheet – провести расчёт по всем формулам документа;

Automatic calculation – включение/выключение автоматического ре-

жима вычислений;

Optimization – переключение режима оптимизации численных расчё-

тов;

Options – меню опций.

Меню Symbolic

Символьные операции разбиты на пять характерных разделов.

Операции с выделенными выражениями

Evaluate – преобразовать выражение с выбором вида преобразований

из подменю:

Symbolically [Shift + F9] – выполнить символьное вычисление

выражения

Floating Point Evaluation… – выполнить арифметические опера-

ции в выражении с результатом в форме числа с плавающей точкой

Complex – выполнить преобразование с представлением резуль-

тата в комплексном виде

65


Simplify – упростить выделенное выражение с выполнением таких опе-

раций, как сокращение подобных слагаемых, приведение к общему знаме-

нателю, использование основных тригонометрических тождеств и т. д.;

Expand – раскрыть выражение, например, было (Х+Y) (Х–Y) получаем

X2 –Y2;

Factor – разложить число или выражение на множители, например X2

Y2 даст (X+Y) (X–Y);

Collect – собрать слагаемые, подобные выделенному выражению, ко-

торое может быть отдельной переменной или функцией со своим аргумен-

том (результатом будет выражение, полиномиальное относительно вы-

бранного выражения);

Polynomial Coefficients – найти коэффициенты полинома по заданной

переменной, приближающего выражение, в котором эта переменная ис-

пользована.

I. Операции с выделенными переменными

Операции с выделенными переменными объединены в подменю

Variable…:

Solve – найти значения выделенной переменной, при которых содер-

жащее её выражение становится равным нулю (решить уравнение или не-

равенство относительно выделенной переменной);

Substitute – заменить указанную переменную содержимым буфера об-

мена;

Differentiate – дифференцировать все выражение, содержащее выде-

ленную переменную, по отношению к этой переменной (остальные пере-

менные рассматриваются как константы);

Integrate – интегрировать выражение, содержащее выделенную пере-

менную, по этой переменной;

Expand to Series... – найти несколько членов разложения выражения в

ряд Тейлора относительно выделенной переменной;

Convert to Partial Fraction – разложить на элементарные дроби выра-

жение, которое рассматривается как рациональная дробь относительно вы-

деленной переменной.

II. Операции с выделенными матрицами

Операции с выделенными матрицами представлены в подменю Matrix:

Transpose – получить транспонированную матрицу;

Invert – создать обратную матрицу;

Determinant – вычислить детерминант (определитель) матрицы.

III. Операции преобразования

Раздел операций преобразования, представлен в подменю Transform:

Fourier Transform – выполнить прямое преобразование Фурье относи-

тельно выделенной переменной;

Inverse Fourier Transform – выполнить обратное преобразование Фу-

рье относительно выделенной переменной;

66


Laplace Transform – выполнить прямое преобразование Лапласа отно-

сительно выделенной переменной;

Inverse Laplace Transform – выполнить обратное преобразование Ла-

пласа относительно выделенной переменной;

Z Transform – выполнить прямое Z-преобразование выражения отно-

сительно выделенной переменной;

Inverse Z Transform – выполнить обратное Z-преобразование относи-

тельно выделенной переменной;

Стиль эволюции

К стилю эволюции относится одна операция:

Evaluation Style... – задать вывод результата символьной операции под

основным выражением, рядом с ним или вместо него.

Меню Window

Cascade – расположить окна документов друг под другом так, чтобы

были видны заголовки;

Tile Horizontal – расположить окна документов горизонтально;

Tile Vertical – расположить окна документов вертикально;

Arrange Icons – упорядочить размещение пиктограмм рабочих доку-

ментов вдоль нижней границы окна приложения.

Кроме этих операций в подменю позиции Window имеется список

окон, которые в данный момент открыты.

Меню Help

Mathcad Help [Fl] – вызов справочной системы MathCAD;

Resource Center – вызов центра информационных ресурсов;

Tip of the Day – вызов оперативной подсказки;

Open Book... – вызов окна оперативной справки;

Using Help – вызов информации о справочной системе;

About Matchcad... – краткая информация о системе MathCAD.

67


Литература

1. В.Ф. Очков MatCAD 7.0 PRO для студентов и инженеров. – М.:

КомпьютерПресс, 1998.

2. А.И. Плис, Н.А. Сливина. MathCAD. Математический практикум

для экономистов и инженеров. – М.: Финансы и статистика, 1999.

3. А.А. Самарский Введение в численные методы. – М.: Высшая шко-

ла, 1987.

4. Ю.П. Боглаев Вычислительная математика и программирование. –

М.: Высшая школа, 1990.

68


Содержание

Стр.

Лабораторная работа №1................................................................................. 4

Простейшие вычисления и операции в среде MathCAD

Лабораторная работа №2............................................................................... 11

Графики функций, текстовые блоки и массивы в среде MathCAD

Лабораторная работа № 3.............................................................................. 20

Программирование в среде MathCAD

Лабораторная работа № 4.............................................................................. 27

Метод простых итераций решения трансцендентного уравнения f(x)=0

Лабораторная работа № 5.............................................................................. 31

Символьная математика в среде MathCAD

Лабораторная работа № 6.............................................................................. 36

Решение нелинейных уравнений методом Ньютона

Лабораторная работа № 7.............................................................................. 40

Решение систем линейных алгебраических уравнений методом Гаусса

Лабораторная работа № 8.............................................................................. 46

Применение метода наименьших квадратов для аппроксимации

табличных данных

Лабораторная работа № 9.............................................................................. 51

Приближённое вычисление интегралов методом Симпсона

Лабораторная работа № 10............................................................................ 55

Решение обыкновенных дифференциальных уравнений методами

Эйлера и Рунге-Кутта

Лабораторная работа № 11............................................................................ 59

Метод прогонки

Приложение ...................................................................................................... 63

Команды меню MathCAD 7 Pro

Литература........................................................................................................ 68

69




1. Права и свободы человека и гражданина история вопроса и современность1
2. л Хрустящие хлебцы 25 г 2 штуки Крупы злаки мука
3. Тема 2. Державне регулювання і контроль у сфері комерційної діяльності План Принципи правові форми м.html
4. Механизмы венчурного рискового финансирования мировой опыт и перспективы развития в России
5. 2013 г УНИВЕРСИТЕТ ~ Негосударственное образовательное учреждение высшего профессионального об
6. Мир Элли Паркер содрогнулся когда ее брата обвинили в страшном преступлении
7. Тема 18 РЕКЛАМНЫЕ PRТЕХНОЛОГИИ 1
8. В Григоров Ю
9. враждебно и с недоверчивостью
10. .1 Ситуационные факторы проектирования организации Проектирование организационной структуры предприятия
11. Курсовой по механике
12. коэффициентов аппроксимирующего полинома
13. понятие широкое и их очень много но в основном это глутаминовая и аспарагиновая кислота
14. Лабораторна робота 56 Лабораторна робота 56 ВИЗНАЧЕННЯ СЕРЕДНЬОГО КОЕФІЦІЄНТА ЛІНІЙНОГО РО
15. Лекция 3 Глава 4 Химическая связь и строение молекул По мере изучения свойств веществ возникала необход
16. тата~рское и~го название ордынской военнополитической диктатуры системы политической и даннической за
17. тематики Железо ржавеет не находя себе применения стоячая вода гниет или на холодезамерзает а ум челове
18. 12092014 жена- Башкатова А
19. ЛОГИСТИК стала Компания Аскон
20. а и другой техники можно обнаружить массу различных вещей- это могут быть горы бумаг и документов фотографии