Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Погрешности арифметических действий




4. Перечислить все элементы главного окна MATLAB, их назначение и особенности.

http://orloff.am.tpu.ru/matlab/index.htm
лабораторная №1. – 3.интерфейс Матлаб

Рабочая среда MatLab содержит следующие элементы:

-панель инструментов с кнопками и раскрывающимся списком;

-окно с вкладками Launch Pad и Workspace, из которого можно получить доступ к различным модулям ToolBox и к содержимому рабочей среды;

-окно с вкладками Command History и Current Directory, предназначенное для просмотра и повторного вызова ранее введенных команд, а также для установки текущего каталога;

-командное окно, в котором находится приглашение к вводу» и мигающий вертикальный курсор;

-строку состояния.

Если в рабочей среде MatLab отсутствуют некоторые окна, то следует в меню View выбрать соответствующие пункты: Command Window, Command History, Current Directory, Workspase, Launch Pad.


5. Перечислить все арифметические операторы MATLAB (название, обозначение) с указанием их приоритета. Привести примеры для каждого оператора.

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

Функция Название Оператора Синтаксис
Plus Плюс + М1+М2
Uplus Унарный плюс +
Minus Минус М1-М2
Uminus Унарный минус
Mtimes Матричное умножение * М1*М2
Times Поэлементное умножение массивов.* А1.*А2
Mpower Возведение матрицы в степень М1^х
Power Поэлементное возведение массива в степень А1.^х
Mldivide Обратное (справа налево) деление матриц M1\M2
Mrdivide Деление матриц слева направо М1/М2
Ldivide Поэлементное деление массивов справа налево А1.\А2
Rdivide Поэлементное деление массивов слева направо А1. /А2
Kron Тензорное умножение Кронекера kron(X.Y)

При работе с массивом чисел установлены следующие уровни приоритета: уровень 1: поэлементное транспонирование (.'), поэлементное возведение в степень (.^), эрмитово сопряженное транспонирование матрицы ('), возведение матрицы в степень (^);

уровень 2: унарное сложение (+), унарное вычитание (-);

уровень 3: умножение массивов (.*), правое деление (./), левое деление массивов (.\), умножение матриц (*), решение систем линейных уравнений - операция (/), операция (\);

уровень 4: сложение (+), вычитание (-);

уровень 5: оператор формирования массивов (:).

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


6. Назначение, структура и свойства М-файла сценария. Комментарии в М-файлах сценариях. Пример М-файла сценария для решения какой – либо задачи.

Внешним атрибутом программирования в MATLAB служит задание последовательности действий по программе, записанной в виде m-файла. Подготовленный и записанный на диск m-файл становится частью системы, и его можно вызывать как из командной строки, так и из другого m-файла. Есть два типа m-файлов: файлы-сценарии и файлы-функции.

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

«Основной комментарий %Дополнительный комментарий Тело файла с любыми выражениями». Важны следующие свойства файлов-сценариев:

- нет входных и выходных аргументов;

- работают с данными из рабочей области;

- в процессе выполнения не компилируются;

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

Основным комментарием является первая строка текстовых комментариев, а дополнительным — последующие строки. Пример:

%Plot with color red

%Строит график синусоиды линией красного цвета

%с выведенной масштабной сеткой в интервале [xmin.xmax]

x=xmin:0.1:xmax;

plot(x.sin(x).'r')

grid on

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

Файл сценарий называется также Script-файлом или просто скриптом. Файл-сценарий имеет весьма простую структуру:

  1. % Основной комментарий, если необходимо.
  2. % Дополнительный комментарий, если необходимо.
  3. Тело программы с любыми допустимыми выражениями.

Важными являются следующие свойства файлов-сценариев:

  1. Они не имеют входных и выходных аргументов.
  2. Работают с данными из рабочей области.
  3. В процессе выполнения не компилируются.
  4. Представляют собой последовательность операций, аналогичную той, что используется в сеансе работы из командной строки.

7. Назначение, структура и свойства М-файла функции. Комментарии в М-файлах функциях. Пример М-файла функции для решения какой – либо задачи. Отличие М-файла функции от сценария состоит в том, что он является аналогом подпрограммы типа function в языке Pascal. Файл-функция имеет входные параметры, список которых указывается в круглых скобках. Используемые в файле-функции переменные являются локальными переменными, изменение значений которых в теле функции никоим образом не влияет на значения, которые те же самые переменные могут иметь за пределами функции.

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

Структура М-файла функции с одним выходным параметром имеет вид:

М-файл функция обладает следующими свойствами:

  1. Он начинается с ключевого слова function, после которого указывается имя переменной var – выходного параметра, имя самой функции f _ name и список ее входных параметров, отделенных запятой.
    Имя М-файла функции должно совпадать с именем самой функции (f _ name). MATLAB автоматически присваивает данное имя при выполнении команды Save as.
  2. Результат выполнения М-файла функции присваивается имени функции, которое может использоваться в математических выражениях подобно функциям sin(x), log(x) и т. п.
  3. Все переменные, используемые в файле-функции, являются локальными, т.е. действуют только в пределах тела функции.
  4. Последняя конструкция vаг=выражение вводится, если требуется, чтобы функция возвращала результат вычислений. Вместо имени var можно ипользовать любое другое имя.
  5. Файл-функция является самостоятельным программным модулем, который связан с другими модулями и головной программой через входные и выходные параметры.
  6. При вызове файла-функции он компилируется и затем исполняется.
  7. m-файл функция должен сохраняться в ваш рабочий каталог.

Пример м-файлов:

Функция: function res=ff(x)

% Функция fx(x)=10.0^x+2.0*x-100.0

res=10.^x+2.*x-100.0;

Сценарий: x=2.5:0.01:5;

y=ff(x);

plot(x,y);

grid on

8. Переменные, оператор присваивания, перенос строки, форматы чисел, комментарии (определения и примеры).

Переменные – это имеющие имена объекты, способные хранить разные по значению данные.Для задания переменным определенных значений используется оператор присваивания, вводимый знаком равенства =

Имя _ переменной = Выражение; Имя должно начинаться с буквы, может содержать буквы, цифры и символ подчеркивания _. Недопустимо включать в имена пробелы и специальные знаки.

Перенос строки

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

Форматы чисел

При вычислениях в MATLAB используется режим двойной точности. Однако, при выводе результатов, по умолчанию выдаются числа с 4 цифрами после десятичной точки в действительной форме. Чтобы изменить данную форму вывода, необходимо в программе перед выводимой величиной использовать команду format name, где name −имя формата. Для числовых данных name может быть следующим сообщением: short − короткое представление в фиксированном формате (5 знаков); short е − короткое представление в экспоненциальной форме (5 знаков мантиссы и 3 знака порядка); long – длинное представление в фиксированном формате (15 знаков); long е – длинное представление в экспоненциальной форме (15 знаков мантиссы и 3 знака порядка). В качестве примера рассмотрим вывод вектора, содержащий 2 числа: format name x = [5/3 1.2783 e − 7].Задание формата сказывается только на форме вывода чисел. Вычисления же происходят в режиме двойной точности, а ввод чиселосуществляется в любом удобном виде.

Форматы чисел.

При работе с числовыми данными можно задавать различные форматы представления чисел. Для установки формата представления чисел используется команда» format name где name — имя формата. Для числовых данных name может быть следующим: short — короткое представление в фиксированном формате (5 знаков), short e — короткое представление в экспоненциальном формате (5 знаков мантиссы и 3 знака порядка), long — длинное представление в фиксированном формате (15 знаков), long e — длинное представление в экспоненциальном формате (15 знаков мантиссы и 3 знака порядка), hex — представление чисел в шестнадцатеричной форме; bank — представление для денежных единиц.

Для иллюстрации различных форматов рассмотрим вектор, содержащий два элемента-числа:

х=[4/3 1.2345е-6]

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

Комментарии.

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

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

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

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

Индексация ячеек. Пример:

Создать массив ячеек А размера 2х2:

A(1, 1) = {[1 4 3; 0 5 8; 7 2 9]};

A(1, 2) = {'Anne Smith'};

A(2, 1) = {3+7i}; A(2, 2) = {-pi:pi/10:pi}

A =

[3x3 double] 'Anne Smith'

[3.0000+ 7.0000i] [1x21 double]

Обозначение { } соответствует пустому массиву ячеек точно также, как [ ] соответствует пустому числовому массиву.

Индексация содержимого. Пример:

A{1, 1} = [1 4 3; 0 5 8; 7 2 9];

A{1, 2} = 'Anne Smith';

A{2, 1} = 3+7i;

A{2, 2} = -pi:pi/10:pi

A =

[3x3 double] 'Anne Smith'

[3.0000 + 7.0000i] [1x21 double]

9. Формирование векторов и матриц. Определение размера матриц. Транспонирование векторов и матриц. Оператор двоеточие. Примеры по каждому пункту.

MATLAB специально предназначен для проведения сложных вычислений с векторами и матрицами. При этом по умолчанию предполагается, что каждая переменная – это вектор или матрица. Например, если задано х = 1, то это значит, что х – это вектор с одним элементом, равным 1. Если надо задать вектор из трех элементов, то их значения надо перечислить в квадратных скобках, разделяя пробелами.

>>V = [1 2 3] V = 1 2 3

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

>>V = [1; 2; 3] V = 1;2;3

Задание матрицы требует указания несколько строк. Для разграничения строк используется символ; (точка с запятой).

>>Т = [1 2 3; 4 5 6; 7 8 9] Т = 1 2 3;4 5 6;7 8 9

Для указания отдельного элемента вектора или матрицы используются выражения вида V(i) или T(i, j). Например:

>>Т (3,2)

ans = 8

Если элементу Т(i, j) нужно присвоить новое значение х, то используют оператор присваивания Т (3,2) = х;

Функция zeros создает массив с нулевыми элементами

>> b = zeros (2, 3)

b = 0 0 0;0 0 0

Оператор двоеточие: Весьма часто необходимо выполнить формирование упорядоченных числовых последовательностей. Такие последовательности нужны для создания векторов или значений аргументов х при построении графиков. В MATLAB для этого используется оператор двоеточие:, который представляется следующим образом: х = Начальное _ значение: Шаг: Конечное _ значение; Эта конструкция создает возрастающую последовательность чисел, которая начинается с начального значения, изменяется на заданный шаг и завершается конечным значением. Если шаг не задан, то он принимает значение 1. Если конечное значение указано меньшим, чем начальное значение, − то выдается сообщение об ошибке. Примеры:

>> x = 0: 5

x = 0 1 2 3 4 5

10. Операторы отношения и логические операторы. Условный оператор if. Пример использования в MATLAB.

Условный оператор if в общем виде записывается следующим образом:

if Условие

Инструкции_1

Else lf Условие

Инструкции_2

else

Инструкции_3

end

Пока Условие возвращает логическое значение 1 (то есть «истина»), выполняются Инструкции, составляющие тело структуры if...end. При этом оператор end указывает на конец перечня инструкций. Инструкции в списке разделяются оператором, (запятая) или; (точка с запятой). Если Условие не выполняется (дает логическое значение 0, «ложь»), то Инструкции также не выполняются.

Еще одна конструкция

if Условие

Инструкции_1

else

Инструкции_2

end

выполняет Инструкции_1, если выполняется Условие, или Инструкции_2 в противном случае.

11. Оператор цикла for. Пример использования в MATLAB.

Оператор for … end используется для организации цикла с фиксированным числом повторений. Он имеет вид:

for var = Выражение Операторы end;

Здесь var – счетчик цикла – любая переменная, обычно это i, j, k, l, m и т. д.

Выражение записывается в виде s: d: e, где s – начальное значение счетчика цикла var, d шаг изменения и е конечное значение var. Возможна и запись в виде s: e, тогда d = 1.

Список операторов завершается ключевым словом end.

Оператор continue передает управление в следующую итерацию цикла, пропуская операции, которые записаны за ним.

Оператор break используется для досрочного прерывания цикла.

Возможны вложенные циклы

for i = 1: 3

for j = 1: 3

a (i, j) = i * j;

End;

End;

В результате выполнения этого цикла формируется матрица а

>> a    
a =  
    1 2 3 2 4 6 3 6 9

12. Оператор цикла while. Пример использования в MATLAB.

Циклы типа while … end выполняются до тех пор, пока выполняется заданное условие. Оператор записывается в виде:

while Логическое условие Операторы end;

while norm(X1-X0)>delta

X0=X1;

X1=A*X0+B;

end;

13. Перечислить способы отделения корней. Как реализовать графический способ отделения корней в MATLAB, привести пример М-файла сценария.

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

3. Пример графич способа: .

4. Абсцисса точки пересечения графиков





Дата публикования: 2015-02-03; Прочитано: 430 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.019 с)...