![]() КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Арифметические вычисления
Работа в среде MATLAB может осуществляться либо в программном режиме, либо в командном режиме (режиме калькулятора, диалоговом режиме) по правилу «задал вопрос, получил ответ». Это превращает MATLAB в необычайно мощный калькулятор, который способен производить не только обычные для калькулятора вычисления, но и операции с векторами и матрицами, комплексными числами, рядами и полиномами. Можно почти мгновенно задать и вывести графики различных функций: от простой синусоиды до сложной трехмерной фигуры. Основным элементом командного режима работы с системой является главное или командное окно Command Window. Оно активизируется командой View => Desktop Layout => Command Window Only основного меню MATLAB. Структура командного окна аналогична структуре Windows - приложений (рис. 2).
Рис. 2 Строка в текстовом поле командного окна, отмеченная символом приглашения >> с мигающим курсором, называется строкой ввода или командной строкой. Она предназначена для ввода с клавиатуры команд, чисел, имен переменных и знаков операций, составляющих выражение. Для того, чтобы система MATLAB выполнила введенную команду или вычислила заданное выражение, следует нажать клавишу <Enter> (Ввод). При вводе курсор может находиться в любом месте командной строки. Введенные выражения вычисляются, а результаты вычислений и выполнения команд появляются в одной или нескольких строках командного окна – строках вывода. В результате многократных вычислений (нажатий клавиши <Enter>) в командном окне автоматически производится вертикальная протяжка (scrolling): строки сдвигаются на одну позицию вверх, а внизу появляется строка ввода с символом приглашения >>. Информация, которая покинула видимую часть окна, не исчезает. В MATLAB ранее введенные строки команд представляют собой «историю» и запоминаются в стеке команд (см. разд. 8). Для просмотра выполненных команд и результатов вычислений, не умещающихся на экране, имеются полосы горизонтальной и вертикальной протяжки. Использование полос протяжки ничем не отличается от других Windows - приложений. Можно также осуществлять протяжку командного окна с помощью клавиш <PageUp>, <PageDown>, <Ctrl+Home> и <Ctrl+End>. Клавиши <↑> и <↓>, которые в текстовых редакторах служат для перемещения вверх или вниз по экрану, в MATLAB работают иначе. Они используются для возврата в строку ввода ранее выполненных команд с целью их повторного выполнения или редактирования. После первого нажатия клавиши <↑> в строке ввода отобразится последняя введенная команда, при втором нажатии – предпоследняя и т. д. Клавиша <↓> осуществляет прокрутку команд в противоположном направлении. Иными словами, текстовое поле окна Command Window располагается в двух принципиально разных зонах: зоне просмотра и зоне редактирования. Зона редактирования находится в командной строке, а вся остальная информация видимой части командного окна – в зоне просмотра. Пока не нажата клавиша <Enter>, вводимое выражение может быть отредактировано или удалено. В зоне просмотра уже ничего нельзя исправить. Если поместить в нее курсор и нажать какую - либо клавишу на клавиатуре, курсор будет автоматически перемещен в строку ввода, расположенную в зоне редактирования. В то же время, с помощью клавиш <←> и <→> можно перемещать курсор в командной строке. Невозможность редактирования ранее введенной команды простой установкой курсора в нужную строку является одной из особенностей системы MATLAB. Сеанс работы с системой MATLABназывается сессией. Иными словами, сессия – это все то, что отображается в командном окне в процессе работы с системой. Команды сессии автоматически образуют список, который выводится в окне Command History, а значения переменных сохраняются в окне Workspase (рис. 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 В одной командной строке можно ввести несколько команд, разделяя их запятыми либо точками с запятой. Система MATLAB выполняет каждую команду, за которой следует запятая, и отображает результат в отдельных строках. Результат выполнения команды, за которой следует символ <; >, на экран не выводится, но он сохраняется в памяти и может быть использован в последующих вычислениях. Знаком присваивания является знак =, а не комбинированный знак :=, принятый, например, в языке программирования Pascal или в системе символьной математики Maple. После ввода этой командной строки вычисляются и сохраняются в памяти значения выражений a=2/3=0,б667, A=23=8, ans=cosp =-1, b=e1=e=2,7183 (e – основание натурального логарифма). Значение переменной A, в отличие от a, ans, b, не выводится на экран из-за символа <; >. При вычислении cosp использовалась системная переменная pi – число p. Число e системной переменной не является, и для его вычисления использована встроенная элементарная функция exp(1). Функции записываются строчными буквами, а их аргументы указываются в круглых скобках. Аргумент встроенной тригонометрической функции cos задан в радианах; >> disp(A/2+ans) Команда disp (от слова «дисплей») вычисляет выражение 23 /2+ cosp и выводит ответ, но не присваивает его переменной ans, как при обычных вычислениях: >> A/2+ans ans = В дальнейшем disp используется для предотвращения вывода лишней строки ans = в наглядных документах; >> c=.5+3-11+... 22-8.4+7 c = 13.1000 Иногда требуется ввести в окне Command Window команду, которая слишком длинна, чтобы уместиться на одной строке. При приближении к концу строки можно ввести … (три последовательные точки), нажать клавишу <Enter> и продолжить набор команды на следующей строке. При этом вы не увидите на новой строке символа приглашения >>. Сессия на рис.2 содержит только правильные команды и результаты их выполнения. В общем случае сессия является результатом проб и ошибок. Ее текст, наряду с правильными определениями, содержит сообщения и предупреждения об ошибках (см. разд. 8), переопределения функций и переменных, использованную справочную информацию команды help. Если сессия сильно «засорена» лишней информацией, диалог пользователя с системой затрудняется. Команда очистки экрана clc >> clc стирает содержание командного окна MATLAB и размещает символ приглашения >> в левом верхнем углу пустого экрана. Эта команда, однако, оставляет неизменным содержимое окон Command History и Workspase. Поэтому в «чистом» командном окне можно пользоваться значениями переменных, полученных до ввода команды clc. Если же появится необходимость отредактировать или повторить ранее выполненную команду, то это легко осуществить с помощью окна Command History. Подробнее работа с оконами Command History и Workspase обсуждается в разделах 8 и 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 допускается использование операндов - массивов (см. разд. 6, 7, 10). В этом случае результатом вычисления выражения также может быть массив. Выражения, заключенные между двумя апострофами < ′ ′ >, рассматриваются как строчные и не вычисляются, даже если в них содержатся математические выражения. Чаще всего они применяются для задания параметров функций и их нечисловых значений, вставки текста в графические объекты, а также для описания символьных переменных и выражений. Так, ввод строки '2+3' приводит к результату >> '2+3' ans = 2+3 а не 5. При выводе графиков символы, помещенные между апострофами, определяют цвет линий графика, их тип и тип маркера, которым метятся линии.
Дата добавления: 2014-12-07; Просмотров: 667; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |