Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
вопросы и ответы_ПВЭ.docx
Скачиваний:
54
Добавлен:
12.06.2017
Размер:
250.71 Кб
Скачать

47. Как обозначается в MatLab символьная константа?

Объявление символьных констант осуществляется при помощи функции sym. Она может принимать в качестве аргумента строку, содержащую специальные переменные, численное выражение или вызов функции, как в примерах ниже: >> sym_pi = sym(’pi’) >> sym_delta = sym(’1/10’) >> sym_sqroot2 = sym(’sqrt(2)’)

48. Сколько символов в MatLab может содержать имя переменной? Какие символы могут содержаться в имени переменной MatLab?

Имя переменной (ее идентификатор) может содержать сколько угодно символов, но запоминается и идентифицируется только 31 начальный символ. Имя любой переменной не должно совпадать с именами других переменных, функций и процедур системы, т. е. оно должно быть уникальным. Имя должно начинаться с буквы, может содержать буквы, цифры и символ подчеркивания _. Недопустимо включать в имена переменных пробелы и специальные знаки, например +,.-, *, / и т. д., поскольку в этом случае правильная интерпретация выражений становится невозможной. 

49. Какая команда MatLab сохраняет рабочую среду? Какая команда в MatLab сохраняет результаты работы в журнале сессии?

Самый простой способ сохранить все значения переменных — использовать в меню File пункт Save Workspase As. При этом появляется диалоговое окно Save Workspase Variables, в котором следует указать каталог и имя файла. По умолчанию предлагается сохранить файл в подкаталоге work основного каталога MatLab. Программа сохранит результаты работы в файле с расширением mat. Теперь можно закрыть MatLab. В следующем сеансе работы для восстановления значений переменных следует открыть этот сохраненный файл при помощи подпункта Open меню File. Теперь все переменные, определенные в прошлом сеансе, опять стали доступными. Их можно использовать во вновь вводимых командах.

MatLab имеется возможность записывать исполняемые команды и результаты в текстовый файл (вести журнал работы), который потом можно прочитать или распечатать из текстового редактора. Для начала ведения журнала служит команда diary. В качестве аргумента команды diary следует задать имя файла, в котором будет храниться журнал работы. Набираемые далее команды и результаты их исполнения будут записываться я в этот файл, например последовательность команд

50. Чем могут отделяться в MatLab элементы одной строки матрицы при ее вводе? Чем могут отделяться в MatLab строки матрицы при ее вводе?

Для ввода массивов (векторов или матриц) их элементы заключают в квадратные скобки. Так для ввода вектора-строки размером 1×3, используется следующая команда, в которой элементы строки отделяются пробелами или запятыми

51. Что будет создано при вводе в MatLab оператора x=[1 : 0.2 : 2]?

К таким операциям относятся операции поэлементного умножения с помощью оператора <.*>(без пробела между точкой и звездочкой), поэлементного деления <./>, обратного поэлементного деления <.\>, поэлементного возведение в степень <.^>. Операции поэлементного преобразования матриц выполняются только над матрицами одинакового размера и типа. В результате получается матрица такого же размера и типа

52. Что будет создано при вводе в MatLab оператора W1=W(3 : 5)?

53. Что будет создано при вводе в MatLab оператора P1=P(2, : )?

54. Какой оператор относится к почленному умножению матриц в MatLab?

55. Какие существуют типы М-файлов в MatLab?

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

56. Какая функция MatLab предусмотрена для построения двухмерного графика одной функции?

Вывод функции в виде графика состоит из следующих этапов:  1. Задание вектора значений аргумента х.  2. Вычисление вектора у значений функции y(х).  3. Вызов команды  plot  для построения графика.  Команды для задания вектора х и вычисления функции лучше завершать точкой с запятой для подавления вывода в командное окно их значений (после команды plot точку с запятой ставить необязательно, т. к. она ничего не выводит в командное окно).

» х = [0:0.05:1];  » у = ехр(-х).*sin(10*x);  » plot(x, у)

57. Какая функция MatLab предусмотрена для построения двухмерного графика двух функций?

Построение графика функции двух переменных в MatLab на прямоугольной области определения переменных включает два предварительных этапа:  1. Разбиение области определения прямоугольной сеткой.  2. Вычисление значений функции в точках пересечения линий сетки и запись их в матрицу.  Построим график функции  z(x, у)= х2 + у2  на области определения в виде квадрата  х принадлежит [0, 1], - [0, 1].  Необходимо разбить квадрат равномерной сеткой (например, с шагом 0.2) и вычислить значения функций в узлах, обозначенных точками. Удобно использовать два двумерных массива  х и у,  размерностью шесть на шесть для хранения информации о координатах узлов. Массив х состоит из одинаковых строк, в которых записаны координаты x1, х2, ..., х6, а массив у содержит одинаковые столбцы с y1у2, ..., у6. Значения функции в узлах сетки запишем в массив z такой же размерности (6 x 6), причем для вычисления матрицы Zиспользуем выражение для функции, но с поэлементными матричными операциями. Тогда, например z(3,4) как раз будет равно значению функции z(x,y)в точке (х3,у4). Для генерации массивов сетки х и у по координатам узлов в MatLab предусмотрена функция meshgrid, для построения графика в виде каркасной поверхности - функция mesh. Следующие операторы приводят к появлению на экране окна с графиком функции (точка с запятой в конце операторов не ставится для того, чтобы проконтролировать генерацию массивов):

58. Какая функция MatLab предусмотрена для построения трехмерного графика?

Простейшей функцией построения графика функции двух переменных в системе MATLAB является функция

plot3( X , Y , Z )

где X, Y и Z - матрицы одинаковых размеров

Пусть по оси x задан диапазон значений в виде вектора

 u = -2 : 0.1 : 2

а по оси y этот диапазон есть

v = -1 : 0.1 : 1

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

[ X , Y ] = meshgrid( u, v )

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

Z = exp( - X.^2 - Y.^2 )

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

59. Какая функция MatLab предусмотрена для построения анимированного графика?

60. Какая функция MatLab позволяет разбить графическое окно на несколько подграфиков?

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

Например, для ранее выполненных вычислений с функциями sin, cos и exp, строим графики первых двух функций в первой подобласти, а график третьей функции - во второй подобласти одного и того же графического окна:

subplot(1,2,1); plot(x,y,x,z)

subplot(1,2,2); plot(x,w)

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

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