Студопедия  
Главная страница | Контакты | Случайная страница

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Арифметические вычисления

Читайте также:
  1. B.1 Арифметические функции
  2. Алгоритм вычисления количества элементов массива удовлетворяющих условию
  3. Алгоритм вычисления КРК Спирмена.
  4. Арифметические выражения
  5. Арифметические выражения
  6. Арифметические действия
  7. Арифметические команды
  8. Арифметические операторы
  9. Арифметические операторы и операторы присваивания

Работа в среде MATLAB может осуществляться либо в программном режиме, либо в командном режиме (режиме калькулятора, диалоговом режиме) по правилу «задал вопрос, получил ответ». Это превращает MATLAB в необычайно мощный калькулятор, который способен производить не только обычные для калькулятора вычисления, но и операции с векторами и матрицами, комплексными числами, рядами и полиномами. Можно почти мгновенно задать и вывести графики различных функций – от простой синусоиды до сложной трехмерной фигуры.

Основным элементом командного режима работы с системой является главное или командное окно Command Window. Оно активизируется командой View => Desktop Layout => Command Window Only рабочей среды. Структура командного окна аналогична структуре Windows – приложений (рис 1.2).

Рис 1.2

Строка в текстовом поле командного окна, отмеченная символом приглашения >> с мигающим курсором, называется строкой ввода или командной строкой. Она предназначена для ввода с клавиатуры команд, чисел, имен переменных и знаков операций, составляющих выражение. Для того, чтобы система MATLAB выполнила введенную команду или вычислила заданное выражение, следует нажать клавишу <Enter> (Ввод).

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

В результате многократных вычислений (нажатий клавиши <Enter>) в командном окне автоматически производится вертикальная протяжка (scrolling): строки сдвигаются на одну позицию вверх, а внизу появляется строка ввода с символом приглашения >>. Информация, которая покинула видимую часть окна, не исчезает. В MATLAB ранее введенные строки команд представляют собой «историю» и запоминаются в стеке команд.

Для просмотра выполненных команд и результатов вычислений, не умещающихся на экране, имеются полосы горизонтальной и вертикальной протяжки. Использование полос протяжки ничем не отличается от других Windows – приложений. Можно также осуществлять протяжку командного окна с помощью клавиш <PageUp>, <PageDown>, <Ctrl+Home> и <Ctrl+End>.

Клавиши <↑> и <↓>, которые в текстовых редакторах служат для перемещения вверх или вниз по экрану, в MATLAB работают иначе. Они используются для возврата в строку ввода ранее выполненных команд с целью их повторного выполнения или редактирования. После первого нажатия клавиши <↑> в строке ввода отобразится последняя введенная команда, при втором нажатии – предпоследняя и т.д. Клавиша <↓> осуществляет прокрутку команд в противоположном направлении.

Иными словами, текстовое поле окна Command Window располагается в двух принципиально разных зонах: зоне просмотра и зоне редактирования. Зона редактирования находится в командной строке, а вся остальная информация видимой части командного окна – в зоне просмотра.

Пока не нажата клавиша <Enter>, вводимое выражение может быть отредактировано или удалено. В зоне просмотра уже ничего нельзя исправить. Если поместить в нее курсор и нажать какую – либо клавишу на клавиатуре, курсор будет автоматически перемещен в строку ввода, расположенную в зоне редактирования В то же время, с помощью клавиш <←> и <→> можно перемещать курсор в командной строке.

Невозможность редактирования ранее введенной команды простой установкой курсора в нужную строку является одной из особенностей системы MATLAB.

Сеанс работы с системой MATLAB называется сессией. Иными словами, сессия – это все то, что отображается в командном окне в процессе работы с системой. Команды сессии автоматически образуют список, который выводится в окне Command History, а значения переменных сохраняются в окне Workspase (рис.1.1).

Сессия на рис.1.2 содержит четыре команды и результаты их выполнения. Рассмотрим каждую из этих команд и установим некоторые особенности вычислений в системе MATLAB:

● >> 2+3

ans =

Результату выполненной операции не было присвоено имя, поэтому при выводе он был автоматически обозначен символом ans (ansver). Под этим именем результат вычислений хранится в памяти компьютера и его можно использовать в последующих вычислениях, до тех пор, пока в ходе работы не будет получен новый непоименованный результат. Результат вычислений выводится в строках вывода (без знака >>);

● >> a=2/3,A=2^3;cos(pi),b=exp(1)

a =

0.6667

ans =

-1

b =

2.7183

В одной строке могут быть введены несколько выражений и/или команд. В этом случае они разделяются либо запятыми, либо точками с запятой. Результат вычисления выражения или исполнения команды, за которыми следует запятая, выводится на экран. Результат вычисления выражения, за которым следует символ <; >, на экран не выводится, но он сохраняется в памяти и может быть использован в последующих вычислениях.

Знаком присваивания является знак =, а не комбинированный знак :=, принятый, например, в языке программирования Pascal или в системе символьной математики Maple.

В результате выполнения этой команды вычислены и сохранены в памяти переменные a=2/3=0,б667, A=23=8, ans=cosp =-1, b=e1=e=2,7183 (e – основание натурального логарифма), но переменная A не была выведена на экран, так как за ней следует символ <; >. При вычислении cosp использовалась системная переменная pi – число p. Число e системной переменной не является, и для его вычисления использована встроенная элементарная функция exp (экспонента). Функции записываются строчными буквами и их аргументы указываются в круглых скобках. Аргумент тригонометрической функции cos задан в радианах;

● >> disp(A/2+ans)

Функция disp (от слова «дисплей») выводит в командное окно результат вычисления выражения 23 /2+ cosp, заключенного в скобки, без сохранения этого результата в памяти. При вычислениях с помощью функции disp в командном окне не отображается строка вывода с указанием имени переменной или имени ans, как это происходит при обычных вычислениях:

>> A/2+ans

ans =

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

● >> c=.5+3-11+...

22-8.4+7

c =

13.1000

Для ввода длинных формул или команд в командную строку следует поставить три точки (подряд, без пробелов), нажать клавишу <Enter> и продолжить набор формулы на следующей строке. Так можно распространить командную строку на несколько физических строк. MATLAB вычислит все выражение или выполнит команду после нажатия на клавишу <Enter> в последней строке (в которой нет трех идущих подряд точек). Этот прием полезен для создания наглядных документов, у которых предотвращается выход строк в невидимую область окна.

Сессия на рис.1.2 содержит только правильные команды и результаты их выполнения. В общем случае, сессия является результатом проб и ошибок. Ее текст, наряду с правильными определениями, содержит сообщения и предупреждения об ошибках, переопределения функций и переменных, использованную справочную информацию команды help. Если сессия сильно «засорена» лишней информацией, диалог пользователя с системой затрудняется.

Команда очистки экрана clc

>> clc

стирает содержание командного окна MATLAB и размещает символ приглашения >> в левом верхнем углу пустого экрана.

Эта команда, однако, оставляет неизменным содержимое окон Command History и Workspase. Поэтому в «чистом» командном окне можно пользоваться значениями переменных, полученных до ввода команды clc.

Если же появится необходимость отредактировать или повторить ранее выполненную команду, то это легко осуществить с помощью окна Command History. Подробнее работа с оконами Command History и Workspase рассматривается в разделах 1.7 и 1.9 соответственно.

Переменные – это именованные объекты, хранящие какие – либо данные.

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

Имя переменной (ее идентификатор) может содержать до 31 символа и не должно совпадать с именами других переменных, функций, команд и системных переменных MATLAB. Имя переменной должно начинаться с буквы, может содержать цифры и символ подчеркивания. MATLAB чувствителен к регистру букв (переменные a и A не идентичны).

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

Ниже перечислены основные системные переменные MATLAB.

ans – результат вычисления последнего не сохраненного пользователем выражения.

i, j – мнимая единица (), используемая для задания мнимой части комплексных чисел.

Inf (infinity) – обозначение машинной бесконечности.

NaN – сокращение от слов Not-a-Number (не число), принятое для обозначения неопределенного результата (например, 0/0 или Inf/Inf).

pi – число π (p=3,141592653589793).

eps – погрешность операций над числами с плавающей точкой, т.е интервал между числом 1.0 и следующим ближайшим числом с плавающей точкой равен 2.2204e-16 или 2-52.

realmin – минимальное по модулю вещественное число (2.2251e-308 или 2-1022).

realmax – наибольшее по модулю вещественное число (1.7977e+308 или 21023).

Приоритеты арифметических операций системы MATLAB в порядке убывания следующие:

1. Возведение в степень < ^ >.

2. Умножение < * > и деление (слева направо < / >, справа налево < \ >).

3. Сложение <+> и вычитание <–>.

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

Полный список операторов и справочную информацию по любому из них можно получить в разделе ops справочной системы MATLAB, используя команды help или doc.

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

Выражения, помещенные между двумя апострофами (заключенные в символьные скобки ' '), рассматриваются как символьные и не вычисляются, даже если в них содержатся математические выражения. Чаще всего они применяются для задания параметров функций и их нечисловых значений, вставки текста в графические объекты, а также для описания символьных переменных и выражений. Так, ввод символьного выражения '2+3' приводит к результату:

>> '2+3'

ans =

2+3

а не 5.

При выводе графиков символы, помещенные между апострофами, определяют цвет линий графика, их тип и тип маркера, которым метятся линии.

 




Дата добавления: 2014-12-23; просмотров: 28 | Поможем написать вашу работу | Нарушение авторских прав




lektsii.net - Лекции.Нет - 2014-2024 год. (0.013 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав