Здавалка
Главная | Обратная связь

Системы компьютерной математики. обзор и вероятность их развития



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

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

Средства компьютерной математики интенсивно внедряются в аппарат­ные средства современной вычислительной техники. Пожалуй, ярче всего это проявляется в развитии программируемых микрокалькуляторов. Даже калькуляторы начала 80-х годов удивляли знающих пользователей своими математическими способностями. Например, помещаемые в нагрудном кар­мане рубашки научные калькуляторы НР-15С запросто вычисляли сложные интегралы и производные функций, оперировали матрицами с действитель­ными и комплексными элементами, решали системы линейных и нелиней­ных уравнений и позволяли довольно просто реализовать практически лю­бые численные методы вычислений.

Новые поколения микрокалькуляторов освоили символьные вычисления и графику умеренного разрешения. Так, микрокалькуляторы HP-48Sи НР-95 способны выполнять множество аналитических операций, есть даже микро­калькуляторыTI-89 иTI-92 с встроенной системой символьной ма­тематики классаDerive, довольно подробно описанной в данной книге. Эти и многие другие калькуляторы заметно продвинулись в части визуализации вычислений как при вводе данных, так и выводе их результатов. Экраны их дисплеев уже отображают таблицы, математические формулы и графики.

Современные микропроцессоры, математические сопроцессоры и графические процессоры видеоплат используют средст­ва компьютерной математики, связанные с обработкой массивов информации, ин­терполяцией и аппроксимацией функ­ций, дискретным преобразованием Фу­рье и т.д. К сожалению, доступ пользо­вателей к аппаратным средствам компь­ютерной математики практически за­крыт. В тоже время с позиций математи­ки в этих средствах нет ничего нового, что не было бы "прозрачно" реализова­но в современных программных средст­вах ЭВМ – в системах компьютерной математики. И вообще надо сказать, что программные средства математики развиваются намного быстрее аппаратных. Именно поэтому специфичные аппаратные реализации компьютерной математики далее мы рассматривать не будем.

Мы будем также считать, что наши возможности ограничены средства­ми наиболее распространенных и доступных персональных компьютеров (ПК). Узкоспециальные вопросы организации параллельных вычислений, специальных алгоритмов вычислений, используемых в аппаратной реализа­ции компьютеров (включая средства графических процессоров, команды муль­тимедиа-расширений ММХ и так далее), мы рассматривать не будем по уже отмеченным выше обстоятельствам.

В настоящее время компьютерные математические системы можно (дос­таточно условно) подразделить на 7 основных классов:

Системы для численных расчетов

1. Табличные процессоры

2. Матричные системы

3. Системы для статистических расчетов

4. Системы для специальных расчетов

5. Системы для аналитических расчетов (компьютерной алгебры)

6. Универсальные системы

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

Компьютерные математические системы как класс специализированных программных средств, рассчитанных на индивидуальную работу,возникли лишь в начале 80-х годовXXвека. Этому способствовало зарождение в это же время индустрии персональных компьютеров (ПК), что открыло дорогу таким системам к массовому пользователю. Отдельные системы (например,MATLAB) были известны задолго этого, но они были реализованы лишь на больших ЭВМ и были доступными ограниченному кругу лиц. Эти системы представляли средстваколлективного пользования,применение которых даже для решения простых задач требовало участия многих специалистов.

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

В настоящее время применяется множество математических программ – от простых калькуляторов, встроенных в операционные системы типа Win­dows, до универсальных систем, при полной инсталляции занимающих мно­гие сотни Мбайт памяти на жестком диске (MATLAB5.2.1 и 5.3), и программ­ных комплексов, интегрирующих ряд таких программ. Здесь особо надо отметить системы классаMathcad, новые версии которых содержат системный интеграторMathConnex, обеспечивающий прямую интеграциюMathcadс почти полутора десятками программ разного класса.

Интересно и еще одно направление интеграции - объединение возмож­ностей текстовых редакторов (прежде всего в форматах WordиLaTEX) с математическими системами. К таким разработкам относятся Scientific NoteBook, MathOffice, Scientific Workplace и др. Подобные программные комплексы позволяют готовить электронные документы и книги высочайше­го качества с "живыми" примерами математических расчетов.

Помимо указанного деления на классы, правомерно деление компьютер­ных математических систем и по сложности решаемых ими задач. Так, мож­но выделить системы начального уровня (например, DeriveиMuPAD), ори­ентированные на решение задач школьного образования и применение их студентами младших курсов вузов. К системам среднего класса можно отне­сти новую системуMuPADи ставшую весьма популярной системуMathcad. Высший класс представлен системами компьютерной алгебрыMathematica2/3 иMapleVR3/R4/R5.

А такого "монстра" среди систем компьютерной математики, как мат­ричную систему MATLAB5.0/5.3.1 с ее многочисленными пакетами расши­рения и трудно укладываемой в нашем сознании стоимостью, можно отне­сти к особо элитным и потому дорогим системам для избранных и весьма придирчивых пользователей. Это как бы "Мерседес-600" в мире математиче­ских систем. Тем не менее в этой книге вы ознакомитесь со всеми этими системами.

К сожалению, на нашем и мировом рынках массовые системы компью­терной математики представлены только зарубежными программами. Это связано с тем, что современные программы этого класса относятся к числу наиболее сложных программных продуктов, требующих для своей разработ­ки больших интеллектуальных, трудовых и финансовых затрат. Пик разра­ботки таких программ пришелся на начало 90-х годов, что совпало с распа­дом СССР и возникновением в России глубокого экономического и финансо­вого кризиса. В таких условиях, увы, создание программ, способных конку­рировать с многочисленными зарубежными программами компьютерной ма­тематики, стало практически невозможным. Однако благодаря известным дос­тоинствам операционных систем класса Windowsнет никаких принципиаль­ных ограничений на применение зарубежных программ компьютерной мате­матики русскоязычными пользователями, хотя определенные неудобства (на­пример, англоязычные справочные системы) есть налицо.

 

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

Задачи, решаемые системами для численных расчетов.

К наиболее распространенным средствам, предоставляемым системами для численных расчетов, относятся:

  • арифметические и алгебраические операторы и функции;
  • функции для работы с комплексными числами;
  • тригонометрические и гиперболические функции;
  • обратные тригонометрические и гиперболические функции;
  • логические операторы и функции;
  • векторные и матричные операторы и функции;
  • средства для решения систем линейных алгебраических уравнений;
  • специальные математические функции;
  • средства арифметики степенных многочленов (полиномов);
  • функции для нахождения комплексных корней многочленов;
  • функции для решения систем нелинейных алгебраических уравнений;
  • средства для решения систем дифференциальных уравнений;

MathCad 2.0-2.5 ( под MS-DOS) фирмы MathSoft Inc. Эти версии зарождались как системы для численных расчетов с пользовательским интерфейсом и входным языком, позволяющим создавать документы в стиле блокнотов,

Системы MathlabфирмыMathWorkInc. – матричные системы. У этих систем даже единичное числовое значение воспринимается как элемент матрицы размера 1´1. Практически все функции системы (включая элементарные) определены как матричные – способные обрабатывать массивы.

  • Системы для статистических расчетов.

Особую разновидность математических систем образуют программы, предназначенные для проведения статистических расчетов: StatGraphicsPlus,Statistica,SPSS,S-PLUSи др. Есть среди этих программ и рос­сийская программаSTADIA, созданная в МГУ автором книги по ней Калаичевым А.П.. Интерфейс таких программ напоминает описанный выше интерфейс таблич­ного процессораExcel. Так, вначале пользователю предоставляется возмож­ность ввести данные в виде электронной таблицы или загрузить их в таблицу с накопителей информации.

Правила работы с электронными таблицами StatGraphicsте же, что и для табличного процессораExcel. Большинство вычислений вы­полняется по правилу: ввел данные в таблицу, выделил нужные данные, ис­полнил команду нужного вида вычислений (например, регрессии, корреля­ции, обработки временных рядов и т.д.)

К числу нового поколения статистических программ можно отнести и программу S-PLUS, созданную фирмойMathSoftInc. - разработчиком всемир­но известной универсальной программыMathcad.

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

Некоторые статистические программы, например лидер в этом классе программ - Statistica, обладают весьма представительным числом типов гра­фиков, которые они могут создавать (см. примеры выше). Широко распро­странены многовариантные статистические расчеты. С помощью таких про­грамм, выполняя, скажем, приближение данных с помощью регрессии, вы можете опробовать в деле сразу десятки функций регрессии, оценив пригод­ность каждой из них и достигаемую при этом погрешность. Многие стати­стические системы имеют завидные по качеству специальные графики и диа­граммы, широко применяемые в финансово-экономических расчетах.

Невозможно отрицать, что при выполнении серьезных статистических расчетов такие программы имеют определенные преимущества перед универсальными программами и что они занимают важное место в арсенале средств компьютерной математики. Например, при использовании универ­сальных программ можно порой получить абсурдные результаты из-за од­ной-двух грубых ошибок в заполнении матрицы исходных данных. Стати­стические системы обычно автоматически отсеивают такие ошибочные дан­ные или четко предупреждают пользователя об их обнаружении. В результа­те возможность получения неверных результатов при их применении резко снижается.

  • Системы для специальных расчетов.

Имеется большое число программ, изначально ориентированных на не­которые специальные виды математических расчетов, например на решение систем нелинейных уравнений (ТК Solver), решение систем дифференциаль­ных уравнений (DynamicSolver), построение графиков функций (Axum,MathPlot,SigmaPlot), выполнения нелинейной регрессии (DataFitNonlinearRegression), моделирования электронных схем (MicroCAP5,ElectronicsWork­bench,PSPice,DesignLabsи др.) и т.д. Целое поколение матричных систем породила системаMATLAB, но ни один из ее потомков не превзошел своего родителя - системыMATLAB5.0/5.3.

Из программ этого класса, пожалуй, особый интерес представляют про­граммы для построения графиков. Здесь особо выделяется лучшая в этом классе программа - AXUM5.0/6.0, созданная фирмойMathSoftInc. и пре­красно интегрирующаяся с математической системойMathcad.

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

Уникальные графические возможности предоставляет и программа VISIO, кстати, прекрасно уживающаяся с популярной системойMathcad. Однако при всех своих презентационных и прочих графических возмож­ностях эта программа прямого отношения к математическим системам не имеет.

К особому классу систем компьютерной математики относятся различ­ные системы математического моделирования. Например, для моделирова­ния блочно заданных произвольных систем и устройств служит очень мощ­ное приложение Simulink, вошедшее в новые версии ситемыMATLAB. Приятное впечатление оставляет анализатор динамических системDynamicSolver, соз­данный в университете страны басков (Испания) в департаменте теоретиче­ской физики.

Весьма впечатляют современные программы проектирования и модели­рования электронных схем, например MicroCAP,OrCAD,DesignLab,Elec­tronicsWorkbenchи др. Они позволяют задавать в графическом виде элек­тронные схемы, после чего автоматически составляют и решают весьма гро­моздкие системы уравнений, описывающих их работу. Результаты моделиро­вания представляются в очень удобной графической форме в виде осцилло­грамм, спектрограмм, частотных характеристик и так далее.

К сожалению, используемые в таких программах математические мето­ды полностью скрыты от пользователя. Поэтому эти программные продукты специфического применения, являющиеся неотъемлемой частью арсенала компьютерной математики, в данную книгу не вошли.

Системы аналитических вычислений.

Системы аналитических вычислений (компьютерной алгебры) –это новейшее направление развития современной компьютерной математики. Основное их достоинство заключается в возможности выполнения вычисле­ний ваналитическом видеи в возможности проведения арифметических и многих иных вычислений практически с любой желаемой точностью и без ограничений по максимальным (минимальным) значениям чисел.

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

ЭВМ и программные системы, производящие символьные вычисления и способные выдавать результаты в виде аналитических формул, известны довольно давно. Лидирующую роль в разработке таких ЭВМ у нас принадле­жала школе советского академика В.М. Глушкова, где были созданы малые инженерные ЭВМ серии "Мир" с языком "Аналитик" для проведения сим­вольных вычислений. К сожалению, эта ветвь вычислительной техники в дальнейшем не была поддержана в должной мере, и лидерство перешло к зарубежным разработчикам таких средств.

За рубежом был создан ряд языков программирования и программных систем для символьных операций: muMATH,Macsyma,Reduce,MapleV,Mathematicaи др., создавших реальную основу для развития компьютерной алгебры. Среди этих систем одной из самых простых и получивших массо­вое распространение была системаmuMATH, реализованная на многих мини- и микро-ЭВМ. Фирма Soft Warehouse Inc. (США) на основе этой системы в последние годы разработала малую математическую системуDeriveMath­ematicalAssistant(далее простоDerive).

Осознание роли компьютерной алгебры привело к тому, что ее средства со временем были включены в наиболее серьезные системы для численных расчетов (MathcadиMATLAB), что превратило их в мощные и гибкие уни­версальные математические системы. Именно таким универсальным систе­мам посвящена большая часть материалов данной книги.

Отличительной чертой систем компьютерной алгебры является возмож­ность вычисления математических выражений в общем виде. Например, если попытаться выполнить вычисление выражения sin(x)2+cos(x)2 в общем виде – для любогох, к примеру, взять и поставить справа знак равенства, то при использовании обычных языков программирования или математических сис­тем для численных расчетов будет выведено сообщение об ошибке – напо­минание о том, что переменнаях не определена. Это вполне естественно и совершенно тривиально. При использовании систем аналитических вычис­лений результатом будет, как и положено, единица. В этом принципиальное отличие данных систем от любых систем численного счета.

Разумеется, это тривиальный пример. Куда важнее, что они способны вычислять аналитически производные и интегралы, выполнять подстановки одних сложных выражений в другие, выполнять математические преобразо­вания и тому подобное. Словом выполнять "человеческую" работу.

Универсальные системы.

Универсальными считаются системы, которые пригодны для выполнения численных, так и аналитических расчетов, включая статистические расчеты и визуализацию всех видов расчетов средствами графики. Разумеется, каждая их таких систем тяготеет к одному из этих двух классов – численных или аналитических.

К универсальным системам относятся:

  • Математические системы класса MathCadподWindows
  • Математические системы Mathematica2/3/4
  • Математическая система Maple
  • Математическая система Matlab

2. Структура систем компьютерной математики.

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

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

Ядро математических систем тщательно оптимизируется, поскольку от скорости его работы зависит скорость вычислений, выполняемых данной системой компьютерной математики. Этому способствует и предварительная компиляция ядра. Доступ пользователя в ядро с целью его модификации, как правило, исключен. Объем ядра может достигать нескольких мегабайт. Пишется ядро на языке реализации системы – чаще всего это С или С++ (лишь с системе Deriveиспользован язык искусственного интеллектаMuLISP) и компилируется на фирме – разработчике системы.

Интерфейсдает пользователю возможность обращаться к ядру с своими запросам и получать результат решения на экране дисплея. Интерфейс современных систем символьной математики базируется на средствах операционных системWinsdows95/98 и обладает практически всеми их возможностями: перемещаемые и масштабируемые окна документов, диалоговые и информационные окна, кнопки управления, общение с периферийными устройствами и т.д. Нередко интерфейс систем обеспечивает возможность создания и редактирования библиотечных модулей и пакетов расширения систем.

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

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

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

3. Пользовательский интерфейс математических систем.

Несмотря на некоторое разнообразие пользовательского интерфейса СКМ даже с первого взгляда видно, что он для разных систем имеет много общих деталей — вплоть до одинакового обозначения кнопок панелей инструментов и команд меню. С них мы и начнем систематизированное рассмотрение пользовательского интер­фейса СКМ. Основное внимание при этом уделено пользовательскому интерфей­су систем MathCad8/2000,Mathematica,Maple.

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

Как и у всех Windows-приложений, окна систем компьютерной математики явля­ютсямасштабируемыми иперемещаемыми. Кнопки управления окном приложе­ния и команды системного меню приложения (открываемого щелчком на значке в начале строки заголовка) такие же, как и у всехWindows-приложений, поэтому мы их рассматривать не будем.

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

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

Подобный (в принципе) вид основного окна имеет большинство систем компьютерной математики. Однако чем сложнее система, тем меньше в ней кнопок в панелях инструментов и форматирования. В частности, совсем мало их в системах MATLAB5.0/5.3. А системаMathematica3/4 вообще избавлена от такого «излишества», как панели инструментов и форматирования в главном окне приложе­ния. Эти панели, однако, можно вводить в отдельные окна документов.

В строке меню практически всех математических систем имеются следующие по­зиции:

  • File(файл) — работа с файлами (открытие, закрытие, запись на диск, печать);
  • Edit(правка) — редактирование документов и использование буфера обмена;
  • View(вид) — изменение средств отображения элементов интерфейса;
  • Insert(вставка) — вставка объектов (включая графику);
  • Format(формат) — изменение параметров форматирования объектов;
  • Window(окно) — управление окнами системы;
  • Help(справка) — работа со справочной базой данных о системе.

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

В именах команд меню могут иметься указания на «горячие» клавиши или ком­бинации клавиш. Их нажатие ведет к немедленному исполнению той или иной команды. Напоминаем, что многие из них дублируются кнопками на панелях ин­струментов.

Документы математических систем сохраняются на магнитных носителях в виде файлов. Файлом называют имеющую имя упорядоченную совокупность данных или кодов программ, размещенную на том или ином носителе, обычно на жест­ком, гибком или компакт-диске. Ниже перечислены команды меню File:

· New(создать) — открыть пустое окно нового документа или диалоговое окно для выбора типа документа;

· Open(открыть) — вывести диалоговое окно для поиска файлов документов изагрузки нужного документа;

· Close(закрыть) — закрыть текущий документ;

· Save(сохранить) — сохранить текущий документ на диске;

· Saveas(сохранить как) — открыть диалоговое окно для поиска целевой папкии задания имени файла, с которым документ будет записан в выбранной папке;

· PageSetup(параметры страницы) — открыть диалоговое окно для задания па­раметров страницы;

· PrintPreview(предварительный просмотр) — предварительный просмотр доку­мента перед печатью (не во всех системах); ШPrint(печать) — распечатать документ;

· Exit(выход) — выйти из системы и закрыть приложение.

Команда Newоткрывает пустое окно и присваивает ему имя, напримерNonname1. При повторении этой команды открываются новые окна и им присваиваются именаNonname2,Nonname3 и т. д. Возможны и другие имена, напримерUntitted1. С командыNewначинается подготовка нового документа.

Команда Openоткрывает диалоговое окно для поиска и открытия файлов. Открытый документ можно редактировать и модифицировать всеми средствами, присущими данной системе. Для записи документа под текущим именем исполь­зуется командаSave. При необходимости изменить положение файла или его имя применяется командаSaveAs.

Команда PrintPreviewимеется не у всех СКМ. Она обеспечивает предварительный просмотр документа перед его печатью. Это очень полезная команда, поскольку позволяет избежать многократной пробной. Другая командаPageSetupпозволяет задать ряд полезных параметров печати, в частности размеры полей документа и его ориентации относительно листа бумаги. Наконец, командаPrintвыводит диалотовое окно печати. Как правило, используется не окно СКМ, а стан­дартное окноWindows95/98.

Последняя команда, Exit, служит для завершения работы. Ее действие очевидно. Отметим лишь, что если в системе остались не записанные файлы, то после выбо­ра командыExitпоявится окнос предложением сохранить файлы на диске.

В меню Editбольшинства математических систем представлены следующие команды:

· Undo(отменить) — отменить последнюю операцию редактирования;

· Cut(вырезать) — переместить выделенный фрагмент в буфер обмена (clipboard);

· Сору (копировать) — скопировать выделенный фрагмент в буфер обмена;

· Paste(вставить) — вставить в документ содержимое буфера обмена;

· PasteSpecial(специальная вставка) — вставить объект из буфера обмена в спе­циальном формате;

· Delete(удалить) — удалить выделенный фрагмент;

· SelectAll(выделить все) — выделить все объекты документа;

· Find(найти) — найти заданную текстовую или математическую строку.

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

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

Введение любого объекта в окно редактирования называется вставкой (insert). Доступны различные механизмы вставки — от обычной вставки до внедрения или связывания объекта, созданного в другом приложении. В некоторых системах (Mathcad,Maple) соответствующие команды включены в менюInsert. В других си­стемах (Derive,Mathematica,MATLABи др.) для различных видов вставки исполь­зуются команды других меню или вставка реализуется каким-либо иным способом.

Несмотря на разнообразие вставляемых объектов, операция вставки выполняет­ся одинаково. Вначале курсором ввода намечается объект вставки (сам объект или его ячейка) и он выделяется. Возможно выделение сразу нескольких объек­тов (ячеек). Затем исполняется соответствующая команда вставки в буфер обме­на — Сору (копировать) или Cut(вырезать). Вставке может предшествовать вывод простого диалогового окна, в котором указывается объект вставки (например, графический или текстовый файл). Щелчок на кнопке ОК реализует вставку объекта на место, ранее намеченное курсором ввода.

Многие современные СКМ обеспечивают ещё один механизм вставки объектов — перетаскивание их из одного окна в другое (метод drag&drop), о котором уже упо­миналось в первой части книги.

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

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

Большинство математических систем являются многооконными и могут работать с несколькими документами одновременно. При этом каждый документ загружа­ется в свое окно. Основные команды для работы с окнами сосредоточены в меню Window. Это командыCascade(каскадом),Horizontal(по горизонтали) иVertical(по вертикали), позволяющие расположить окна документов, соответственно, каска­дом (как стопку карт), по горизонтали и по вертикали.

Для реализации метода drag&dropтребуется соответствующее расположение окон источника и приемника объектов. Это расположение и обеспечивают коман­ды менюWindows. Полученное первоначально расположение окон можно менять, перетаскивая окна мышью в более подходящее место. Если свернуть окна (не за­крывая!), то они превращаются в кнопки, которые располагаются в нижней части главного окна системы. При этом их также можно перетаскивать с места на место, что может нарушить порядок панелей. В некоторых системах командаArrangeIcons(упорядочить значки) позволяет расположить кнопки в виде компактной группы в нижней части окна.

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

· оперативная справка с помощью окна Tipoftheday(совет дня);

· всплывающая подсказка по элементам интерфейса, получаемая наведением наних указателя мыши;

· оперативная справка по операторам и функциям, получаемая нажатием клавиши F1 при курсоре ввода, установленном на операторе или в имени функции

· оперативная справка, получаемая вводом символа ? или слова help, после которого указывается имя объекта, по которому требуется справка;

· оперативная справка, получаемая щелчком на кнопке ? панели инструментовпоследующим щелчком на объекте;

· команды меню Help, которые обеспечивают доступ к дополнительным элементам справочной системы:

· гипертекстовая справка в формате HTML;

· электронные книги в формате RTFилиHTML;

· самоучитель по системе Tutor;

· комплекты примеров применения системы.

Основная справочная информация сосредоточена в справочной системе. Доступ к ней открывают команды меню Help(иногда ?). Обычно предусматривается вы зов справки по контексту или по алфавитному указателю, а также поиск раздело! справки по заданным словам.

Рекордсменом по обилию справочных материалов является матричная лаборато­рия MATLAB5.2.1/5.3. Объем только описаний системы в формате файловRTFдостигает 200 Мбайт — это соответствует десяткам книг обычного формата. По существу, с системой поставляется уникальная справочная информация по всем вопросам применения математики. И эта электронная документация является лишь частью полных справочных материалов. В их числе сотни эффективных примеров применения системы. Здесь особо надо отметить системыMapleVR4/R5/R6 — в их справочной системе около десятка тысяч примеров. К сожалению, справочные системы англоязычные, что резко снижает их ценность для русскоязычных пользователей. Тем не менее, именно справочные системы содержат детальное описание интерфейса, операторов и функций, которое труд­но найти в книгах и руководствах пользователя.







©2015 arhivinfo.ru Все права принадлежат авторам размещенных материалов.