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

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

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

Спрос на универсальные и специализированные программные пакеты для решения различных прикладных задач вызвал появление на рынке программных продуктов систем компьютерной математики, которые быстро стали популярными. На рынке современных математических систем в настоящее время присутствует целый ряд крупных фирм: Macsyma, Inc., Waterloo Maple Software, Inc., Wolfram Research, Inc., MathWorks, Inc., MathSoft, Inc., SciFace GmbH и др. К разработке каждой такой математической системы привлекаются сотни профессионалов из известных университетов и крупных научных центров, а также высококвалифицированные программисты и эксперты в области проектирования сложных программных систем. В результате мы имеем весьма совершенные, гибкие и одновременно универсальные продукты, включающие существенные математические понятия и обладающие богатым набором методов для решения общих математических и научно-технических задач. Именно обзору и краткому анализу таких программных продуктов и посвящена данная статья.

MATLAB

MATLAB - продукт компании MathWorks, Inc.(http://www.mathwork.com/), представляющий собой язык высокого уровня для научно-технических вычислений. Среди основных областей применения MATLAB - математические расчеты, разработка алгоритмов, моделирование, анализ данных и визуализация, научная и инженерная графика, разработка приложений, включая графический интерфейс пользователя. MATLAB решает множество компьютерных задач - от сбора и анализа данных до разработки готовых приложений. Среда MATLAB соединяет в себе математические вычисления, визуализацию и мощный технический язык. Встроенные универсальные интерфейсы позволяют легко работать с внешними информационными источниками, а также осуществлять интеграцию с процедурами, написанными на языках высокого уровня (C, C++, Java и др.). Мультиплатформенность MATLAB сделала его одним из самых распространенных продуктов - он фактически стал принятым во всем мире стандартом технических вычислений. MATLAB имеет широкий спектр применений, в том числе цифровую обработку сигналов и изображений, проектирование систем управления, естественные науки, финансы, экономику, приборостроение и т.п. Цена - 2940 долл.

Maple

Данный продукт компании Waterloo Maple Software, Inc. (http://www.maplesoft.com/) часто называют системой символьных вычислений или системой компьютерной алгебры. Maple позволяет выполнять как численные, так и аналитические расчеты с возможностью редактирования текста и формул на рабочем листе. Благодаря представлению формул в полиграфическом формате, великолепной двух- и трехмерной графике и анимации Maple является одновременно и мощным научным графическим редактором. Простой и эффективный язык-интерпретатор, открытая архитектура, возможность преобразования кодов Maple в коды C делает его очень эффективным средством создания новых алгоритмов. Обладающий интуитивно понятным интерфейсом, простыми правилами работы и широким функционалом, этот продукт уже завоевал популярность у российских математиков и инженеров. Цена Maple 7 - 1695 долл.

Mathematica

Система Mathematica - компании Wolfram Research, Inc. (http://www.wolfram.com/) имеет чрезвычайно широкий набор средств, переводящих сложные математические алгоритмы в программы. По сути дела, все алгоритмы, содержащиеся в курсе высшей математики технического вуза, заложены в память компьютерной системы Mathematica. В некоторых странах (например, в США) система высшего образования тесно связана с этим продуктом. Огромное преимущество системы Mathematica состоит в том, что ее операторы и способы записи алгоритмов просты и естественны. Mathematica имеет мощный графический пакет, с помощью которого можно строить графики очень сложных функций одной и двух переменных. Главное преимущество Mathmatica, делающее ее бесспорным лидером среди других систем высокого уровня, состоит в том, что эта система получила сегодня очень широкое распространение во всем мире, охватив огромные области применения в научных и инженерных исследованиях, а также в сфере образования. Цена - 1460 долл.

Macsyma

Macsyma от компании Macsyma, Inc. (http://www.macsyma.com/) - это одна из первых математических программ, оперирующих символьной математикой. Сильные стороны Macsyma - развитой аппарат линейной алгебры и дифференциальных уравнений. Система ориентирована на прикладные расчеты и не предназначена для теоретических исследований в области математики. В связи с этим в программе отсутствуют или сокращены разделы, связанные с теоретическими методами (теория чисел, теория групп, и др.). Пожалуй, главным преимуществом Macsyma перед другими универсальными математическими пакетами является то, что пользователь может аналитически и численно решать большое количество различных типов уравнений в частных производных. Macsyma имеет очень удобный интерфейс. Рабочим документом программы является научная тетрадь, в которой содержатся доступные для редактирования поля текста, команд, формул и графиков. Отличительной особенностью пакета является совместимость с текстовым редактором Microsoft Word. Почти все команды Macsyma в библиотечных файлах загружаются автоматически; очень удобно и окно просмотра (браузер) математических функций. Macsyma генерирует коды FORTRANа и C, включая управляющие операторы. Система работает на платформе Intel под управлением OS Windows.

MuPAD

В сравнении с другими математическими пакетами MuPAD - продукт компании SciFace GmbH (http://www.sciface.com/) - является относительно молодым продуктом, однако это не мешает ему уверенно конкурировать с ними. MuPAD является программным пакетом компьютерной алгебры, предназначенным для решения математических задач различного уровня сложности. Основные качественные отличия MuPAD - невысокие требования к ресурсам PC, наличие собственного ядра символьной математики, способность к развитию самим пользователем и мощные средства визуализации решения математических задач. Пакет поддерживает большой набор математических объектов и алгоритмов для самого широкого круга задач. Работа пользователя проходит в окне блокнота, позволяющего перемежать текст с математическими формулами, форматированным текстом и выводом решений, включая двух- и трехмерную графику. Для разработки собственных алгоритмов и функций на базе библиотеки функций MuPAD в системе предусмотрены специальный паскалеподобный язык программирования и интерактивный пошаговый отладчик. Созданные пользователем алгоритмы могут объединяться в отдельные библиотеки. Цена MuPAD 2.0 - 700 долл.

S-PLUS

S-PLUS - продукт компании Insightful Corporation (http://www.insightful.com/), ранее известной как подразделение MathSoft, а теперь являющейся одним из мировых лидеров в области статистического анализа данных, визуализации и прогнозирования. S-PLUS представляет собой интерактивную компьютерную среду, обеспечивающую полнофункциональный графический анализ данных и включающую оригинальный объектно-ориентированный язык. Гибкая система S-PLUS может использоваться для исследовательского анализа данных, статистического анализа и математических вычислений, а также для удобного графического представления анализируемых данных. К основным достоинствам S-PLUS относятся непревзойденная функциональность, возможность интерактивного визуального анализа данных, интуитивно понятные интерфейс пользователя и методы подготовки анализируемых данных, простота использования самых современных статистических методов, мощные вычислительные возможности, расширяемый набор статистических методов, гибкий интерфейс пользователя. Цена - 2865 долл.

КомпьютерПресс 12"2001

Информатика, кибернетика и программирование

Этим методом удается в частности получить характеристики системы без проведения натурных экспериментов. Прикладное программное обеспечение предназначено для решения конкретных задач пользователя и организации вычислительного процесса автоматизированной системы управления в целом. 1 входят: операционные системы; сервисные программы; трансляторы языков программирования; программы технического обслуживания. Операционные системы обеспечивают управление процессом обработки информации и взаимодействие между аппаратными средствами и пользователем.

ПРОГРАММНО-МАТЕМАТИЧЕСКОЕ ОБЕСПЕЧЕНИЕ АСУ

Общая характеристика программно-математического обеспечения

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

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

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

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

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

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

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

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

Математическое программирование объединяет линейное, нелинейное, динамическое и стохастическое программирование. Особо выделяются транспортные задачи, решаемые с применением методов линейного программирования. С использованием линейного программирования решены и решаются такие задачи, как разработка планов развития строительной промышленности; выбор наилучших пунктов строительства новых предприятий; прогноз развития отраслей, оптимальное распределение объектов по подразделениям и строительных машин по объектам и др.

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

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

объем вычислений на ЭВМ).

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

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

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

Метод теории расписаний позволяет установить оптимальную последовательность строительства объектов по какому-либо критерию. Например, в качестве критерия может служить один из следующих: "наименьший срок строительства", "минимум простоев исполнителей на объектах", "максимальная плотность работ на объектах" и др.

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

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

Рисунок 1

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

В состав системного программного обеспечения (рис. 1) входят: операционные системы; сервисные программы; трансляторы языков программирования; программы технического обслуживания. Операционные системы обеспечивают управление процессом обработки информации и взаимодействие между аппаратными средствами и пользователем.

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

Однозадачные операционные системы предназначены для ра-

боты одного пользователя в каждый конкретный момент с одной конкретной задачей. Из однозначных операционных систем в большинстве случаев используется дисковая операционная система MS - DOS . Многозадачные операционные системы обеспечивают коллективное использование ЭВМ в мультипрограммном режиме разделения времени (в памяти ЭВМ находится несколько программ и процессор распределяет ресурсы компьютера между ними). Среди многозадачных операционных систем наиболее известны UNIX и OS/2 корпорации IBM , а также Microsoft Windows 95, Microsoft Windows NT и некоторые другие.

Сетевые операционные системы связаны с появлением локальных и глобальных сетей и предназначены для обеспечения доступа пользователей АСУ ко всем ресурсам компьютерной сети. В качестве сетевых операционных систем набольшее распространение получили: Novell NetWare , Microsoft Windows NT , Banyan Vines , IBM LAN , UNIX . С развитием операционных систем многие их функции передаются микропрограммам, которые "зашиваются" в аппаратную часть ЭВМ. Операционным системам также передаются функции по обеспечению работы многопроцессорных компьютеров, совместимости программ для различных типов компьютеров, параллельного выполнение программ.

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

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

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

Операционные оболочки предоставляют пользователю качественно новый интерфейс и освобождают его от детального знания операций и команд операционной системы. Функции большинства оболочек, например семейства MS - DOS , направлены на более эффективную организацию работы с файлами и каталогами. Они обеспечивают быстрый поиск файлов, создание и редактирование текстовых файлов, выдачу сведений о размещении файлов на дисках, о степени занятости дискового пространства и ОЗУ. Все операционные оболочки обеспечивают ту или иную степень защиты от ошибок пользователя, что уменьшает вероятность случайного уничтожения файлов. Среди имеющихся операционных оболочек для системы MS - DOS наиболее популярна оболочка Norton Commander .

Утилиты предоставляют пользователю дополнительные услуги, в основном, по обслуживанию дисков и файловой системы. В их перечень входят процедуры по обслуживанию дисков (форматирование, обеспечение сохранности информации, возможности ее восстановления в случае сбоя и т.д.), обслуживанию файлов и каталогов (аналогично оболочкам), созданию и обновлению архивов, предоставлению информации о ресурсах компьютера, дисковом пространстве, распределении ОЗУ между программами, печати текстовых и других файлов в различных режимах и форматах, защиты от компьютерных вирусов. Из утилит, получивших наибольшее применение, следует отметить интегрированный комплекс Norton Utilities .

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

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

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

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

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

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

Наиболее распространенными языками программирования высокого уровня, включающие средства компиляции и имеющие возможность работать в режиме интерпретатора, являются такие как: Basic , Visual C++, Fortran , Prolog , Delphi , Lisp и др.

В настоящее время ведутся интенсивные разработки языков четвертого поколения типа Visual Basic .

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

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

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

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

Пакеты прикладных программ общего назначения предназначены для автоматизированного решения как отдельных задач управления производством, так и для разработки целых подсистем и АСУ в целом. К этому классу программ можно отнести текстовые и графические редакторы, электронные таблицы, сис--темы управления базами данных (СУБД), интегрированные программные инструментарии, Case-технологии, оболочки экспертных систем и систем искусственного интеллекта.

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

иллюстрации; печать текстов; запись текстовых документов на машинные носители.

При работе с операционными системами Windows , Windows 95, Windows NT , OS/2 применяются мощные и удобные текстовые процессоры Microsoft Word , Word Perfect . Для подготовки несложных текстовых документов существуют редакторы ChiWriter , MultiEdit , Word Pro , Just Write , Лексикон и др.

Графические редакторы предназначены для обработки графических документов, включая диаграммы, иллюстрации, чертежи, таблицы. Допускается управление размером фигур и шрифтов, перемещение фигур и букв, формирование любых изображений. Из наиболее известных графических редакторов можно выделить Adobe Photoshop , Adobe Illustrator , Corel Draw , Photo - Paint , Fractal Design Painter , Fauve Matisse , PC Paintbrush , Boieng Graf , Pictire Man и др.

Издательские системы соединяют в себе возможности текстовых и графических редакторов, обладают развитыми возможностями по форматированию полос с графическими материалами и последующим выводом на печать. Эти системы, в основном, ориентированы на использование в издательском деле и называются системами верстки. Из таких систем можно назвать продукты PageMaker фирмы Adobe и Ventura Publisher корпорации Corel .

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

Современные табличные процессоры поддерживают трехмерные таблицы, позволяют создавать собственные входные и выходные формы, включать в таблицы рисунки, использовать такие средства автоматизации как макрокоманды, работать в режиме баз данных и др. К наиболее популярным электронным таблицам по праву относятся программные продукты Microsoft Excel (для Windows ), Lotus 1-2-3 и Quattro Pro (для DOS и Windows ) и др.

Одной из важнейших задач программно-математического обеспечения АСУ организация работы с базами данных. Под базой данных понимается совокупность специальным образом организованных наборов данных, хранящихся на диске. Управление базой данных включает в себя ввод данных, их коррекцию и манипулирование данными, то есть добавление, удаление, извлечение, обновление, сортировку записей, составление отчетов и т.д. Простейшие системы управления базами данных позволяют обрабатывать на ЭВМ один массив информации. Среди таких систем известны PC - File , Reflex , Q & A .

Более сложные системы управления базами данных поддерживают несколько массивов информации и связи между ними, то есть могут использоваться для задач, в которых участвует много различных видов объектов, связанных друг с другом различными соотношениями. Обычно эти системы включают средства программирования, но многие из них удобны и для интерактивного применения. Типичными представителями таких систем являются Microsoft Access , Microsoft FoxPro , Paradox , Clarion и др.

Для создания многопользовательских АСУ применяются системы управления базами данных типа "клиент-сервер". В них сама база данных располагается на мощном компьютере - сервере, который принимает от программ, выполняемых на других компьютерах - клиентов, запросы на получение той или иной информации из базы данных или осуществление тех или иных манипуляций с данными. Эти запросы, как правило, делаются с помощью структурного языка запросов SQL (Structured Query Language ).

Как правило, компьютер-сервер работает под управлением операционных систем типа Windows NT или UNIX , причем этот компьютер может быть не IBM PC совместимый. А приложения-клиенты могут создаваться для DOS , Windows и многих других операционных систем. В многопользовательских АСУ используются следующие системы управления базами данных:

Oracle , Microsoft SQL , Progress , Sybase SQL Server , Informix и др.

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

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

Наиболее типичными и известными пакетами такой организации являются Wicrosoft Works , Alphaworks , Framework , Symphony , Smartware II, основные функциональные характеристики которых приведены в сводной табл. 1.

Таблица 1. Функциональные возможности интегрированных пакетов

Функциональное назначение

Ws Works

Alpha Works

Frame work

Symphony

Smart-ware II

Текстовой процессор

Электронные таблицы

Деловая графика

СУБД

Телекоммуникация

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

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

Инструментальные средства CASE-технологий применяются на всех этапах жизненного цикла АСУ (от анализа и проектирования до внедрения и сопровождения), значительно упрощая решение возникающих задач. CASE-технологии позволяют отделить проектирование автоматизированной системы управления от собственно программирования и отладки. Разработчики АСУ занимаются проектированием на более высоком уровне, не отвлекаясь на детали. Такой подход исключает ошибки уже на стадии анализа и проектирования, что позволяет подготавливать более качественное программно-математическое обеспечение АСУ. Так, например, CASE-технологии дают возможность оптимизировать модели организационных и управленческих структур строительных предприятий. В большинстве случаев применение CASE-технологий сопровождается радикальным преобразованием деятельности строительного предприятия, направленного на оптимальную реализацию того или иного строительного проекта.

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

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

Рисунок 2

всего процесса создания АСУ . Из CASE- технологий , нашедших наибольшее применение , можно выделить : Application Development Workbench фирмы Knowledge Ware, BPwin (Logic Works), CDEZ Tods, (Oracle), Clear Case (Alria Software), Composer (Texas Instrument), Discover Development Information System (Software Emancipation Technology).

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

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

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

Применение экспертных систем в строительстве наиболее эффективно при решении задач целевого планирования и прогнозирования, а также управлении процессом функционирования. В качестве средств реализации экспертных систем на ЭВМ используют соответствующие языковые средства и программные оболочки. Из языков программирования, с помощью которых создается внутренний язык представления знаний, можно выделить языки общего назначения (Forth , Pascal , Lisp и др.), продукционные (OPSS , Planer , LOOPS и др.), логические (Prolog , Loglisp , и др.). Из наиболее известных оболочек следует отметить GURU, Xi Plus, OP55+, Personal Consultant, Expert System Consultation Environment и др .

Метод-ориентированные пакеты прикладных программ отличаются от пакетов общего назначения тем, что они имеют более узкую направленность и предназначены для решения какой-либо задачи в конкретной функциональной области. В основе каждого из них, как правило, лежит тот или иной математический метод, например: линейное программирование, динамическое программирование, математическая статистика, сетевое планирование и управление, теория массового обслуживания, стохастическое программирование и др. Исключение составляют программные пакеты Mathematica фирмы Wolfram Research sh , Mathcad фирмы Mathsoft , Maple фирмы Waterloo Maple Software и др., использующие математические методы общего назначения.

Для строительных предприятий из группы метод-ориентированных пакетов прикладных программ особо следует выделить информационные программные системы управления проектами:

Microsoft Project , Time Line , Prima Vera и др, в основе которых лежат методы сетевого планирования и управления. Их применение позволяет решать на принципиально более высоком качественном уровне важные задачи календарного планирования строительного производства.

В группе статистических программ общего назначения наиболее известны автоматизированные системы обработки статистических данных: SPSS , Statistica , Stadia . Из статистических специализированных программных продуктов можно отметить Forecast PRO фирмы Business Forecast Systems , а также отечественный пакет Эвриста Центра Статистических Исследований. Пакеты прикладных программ по статистике широко применяются а в строительстве при решении задач управления качеством, в инженерных расчетах.

Программные системы графики предназначены для вывода на экран, принтер или графопостроитель графики функций (заданных в табличном или аналитическом виде), линии уровня поверхностей, диаграммы рассеяния и т.д. Среди таких пакетов прикладных программ наиболее известны Grapher , Surfer , Harvard Graphics и др. Качественную научную и инженерную графику также можно получить с помощью математического программного пакета общего назначения типа Mathematica .

Вторая составляющая прикладного программного обеспечения, — рабочие программы пользователя и АСУ в целом. Ее можно разделить на три группы программных систем: проблемно-ориентированные, для глобальных сетей ЭВМ, организации вычислительного процесса. Проблемно-ориентированные пакеты представляют собой наиболее широкий класс прикладных программных средств АСУ. Практически нет ни одной предметной области, для которой не существует хотя бы одного такого программного инструментария. Из всего многообразия проблемно-ориентированных программных средств выделим две группы: а) предназначенные для комплексной автоматизации функций управления на предприятиях; б) пакеты прикладных

программ для предметных областей.

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

Следует отметить, что несмотря на достаточно высокую стоимость большинства комплексных проблемно-ориентированных программных систем, они находят все более широкое применение в отечественной и зарубежной практике информатизации производства. Существует целый ряд многофункциональных программных продукты этого класса: R /3 (SAP ), Oracle , Mac-Рас Open (A . Andersen ) и др. Из российских комплексных программных систем высшего ценового класса следует отметить интегрированный многопользовательский сетевой программный комплекс "Галактика", разработанный корпорацией "Галактика", в состав которой входят АО "Новый Атлант" (г. Москва) и НТО "Топ Софт" (г. Минск), ЗАО "ГэлэксиСПБ" (г. Санкт-Петербург) и др.

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

Например, для выполнения проектно-конструкторских работ применяется система автоматизированного проектирования AutoCad фирмы AutoDesk , относящаяся к системам малого и среднего класса. AutoCad является расширяемым программным

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

EVCLID, UNIGRAPHICS, CIMATRON и др .

Имеется ряд отечественных систем автоматизированного проектирования, которые позволяют выполнять разработку чертежей в полном соответствии с требованиями ЕСКД (единой системы конструкторской документации) и учитывают особенности отечественных стандартов. Их отличает от соответствующих зарубежных программных пакетов и значительно меньшие требования к техническим средствам АСУ, что позволяет существенно снизить затраты на автоматизацию проектирования. Наибольшее применение из отечественных систем автоматизации проектирования нашел интегрированный программный пакет "Компас", который разработан для операционных систем DOS и Windows .

Для подготовки строительных смет также существует ряд программных комплексов. Одни из программных прикладных пакетов, таких как, АВЕРС (автоматизированное ведение и расчет смет) и БАРС (большая автоматизация расчета смет), функционируют под управлением DOS . Другие, подобно программе составления строительных смет WinCMera , подготовлены для системы Windows . Большая часть программных средств для подготовки сметных материалов, независимо от применяемой операционной платформы, имеет в своем составе обширные нормативные базы, содержащие ценники на материалы, монтаж и комплектующие, единичные расценки, укрупненные расценки и другие нормативы, которые могут дополняться.

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

Для предприятий, совершающих небольшое количество хозяйственных операций, обычно применяются простые и недорогие программы бухгалтерского учета, позволяющие вести книгу хозяйственных операций, финансовую отчетность и баланс. Как правило, в такого класса программах имеются также программные модули начисления зарплаты, учета материалов и основных средств, печати банковских документов и др. Примерами таких систем являются: "1 (^Бухгалтерия", Инфо-бухгалтер фирмы Информатик, Турбо-бухгалтер фирмы ДИЦ, "Бест" фирмы Интелект-сервис и др.

Во многих организациях, включая строительные предприятия, наибольшее распространение нашла программная система "1С:Бухгалтерия", разработанная для DOS и Windows , и имеющая сетевую поддержку. Эта программа сочетает хорошую функциональность, простоту в использовании, невысокую стоимость и значительную гибкость. Ее можно адаптировать без участия разработчиков на особенности учета на предприятии, изменения законодательства и правил ведения бухгалтерского учета. Широкое распространение также получила программа Инфо-бухгалтер фирмы Информатик, которая хотя и обладает несколько меньшей гибкостью в сравнении с пакетом "1С:Бух-галтерия", но содержит больше встроенных возможностей для решения конкретных задач.

Для предприятий с большим объемом хозяйственных операций требуются более продвинутые возможности бухгалтерского учета, включающие кроме складского учета и управленческий учет, а также контроль за выполнением договоров, финансовый анализ деятельности предприятия и др. В этом случае наиболее целесообразно применение более мощных и, следовательно, более дорогих систем автоматизации бухгалтерского учета. Среди среднего ценового класса бухгалтерских программных пакетов эксплуатируются: Парус, Инфософт, Инфин, Атлант-Информ, КомТех+ и ряд других систем.

Существует третья группа программных прикладных пакетов обеспечения бухучета, предназначенных для эксплуатации на крупных предприятиях. Эти пакеты обычно интегрированы в комплексные системы автоматизации деятельности предприятия. Большинство из них работает под управлением операционной системы Windows и предназначено для эксплуатации в локальных сетях. Примером такой программной системы автоматизации бухгалтерии можно назвать ППП БУ "Офис", объединяющий продукты фирм 1С и Microsoft , позволяющий не только автоматизировать функции бухгалтера, но и организовать все делопроизводство фирмы в виде "электронного офиса". Другим примером встраивания бухгалтерских задач в комплексные автоматизированные системы управления крупными предприятиями может служить взаимодействие контуров административного управления, оперативного управления, управления производством, бухгалтерского учета в АСУ "Галактика".

Наряду с чисто бухгалтерскими пакетами прикладных программ имеется целый ряд программных систем для финансового анализа предприятия и планирования. Эти инструментарии, в первую очередь, необходимы инвесторам и финансовым менеджерам кампаний. Из программ анализа финансового состояния предприятия наиболее известны: ЭДИП фирмы ЦентрИнвест-Софт, "Альт-Финансы" фирмы Альт, "Финансовый анализ" фирмы Инфософт. Для анализа инвестиционных проектов разработаны пакеты: "Альт-Инвест" фирмы Альт, FOCCAL - UNI фирмы ЦентрИнвестСофт, Project Expert фирмы PRO - Invest Consulting , а также универсальные программы "Инвестор" фирмы ИНЕК.

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

Чтобы обеспечить удобный и надежный доступ при решении задач АСУ к территориально распределенным общесетевым ресурсам и базам данных, передать электронную почту, провести

телеконференцию, обеспечить конфиденциальность передаваемой информации необходимы компьютерные сети и соответствующие программные инструментарии. Для выполнения указанных задач и некоторых других имеются набор стандартных пакетов прикладных программ глобальной сети Internet , представляющих собой: средства доступа и навигации — Netscape Navigator , Microsoft Internet , Explorer ; электронную почту Eudora и др.

Для обеспечения организации администрирования вычислительного процесса в локальных и глобальных сетях ЭВМ в более чем 50% систем мира используется пакеты прикладных программ фирмы Bay Networks (США). Эти пакеты управляют администрированием данных, коммутаторами, концентраторами, маршрутизаторами, графиком сообщений.

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



А также другие работы, которые могут Вас заинтересовать

58321. English is a language of the world 46.5 KB
Цели урока: Триединая дидактическая цель Образовательная: сбалансированное и систематическое формирование ИКК в единстве всех ее составляющих. Тип урока: урок построения знаний и развития навыков перевода.
58322. How to Understand Those Mystifying Foreigners 343.5 KB
It was the British who started the fashion for seaside holidays. Not surprisingly, nobody in Britain lives mоrе than оnе hundred and twenty kilometers from the sea. The nearest holiday area of\France is only three or four hundred kilometers a\way.
58323. Правописание безударных гласных в корне слова 1.17 MB
Цели урока: Учить различать проверочное слово и проверяемое, подбирать проверочные слова к проверяемым; Развивать орфографическую зоркость, развивать речь учащихся, мышление; Расширять кругозор учащихся. Воспитывать бережное отношение к природе
58327. Единицы измерения информации 2.95 MB
Цель урока: Обобщить знания учащихся о представлении информации в памяти компьютера дать представление о единицах измерения информации. Задачи урока: образовательная: дать учащимся знания о единицах измерения информации научить находить информационный объем сообщений...
58328. Экономический рост и развитие 81.5 KB
Цель: раскрыть сущность и соотношение понятий экономический рост и экономическое развитие; охарактеризовать способы использования различных факторов производства для достижения экономического роста...
58329. Знакомство с мастером Украшения. Красоту надо уметь замечать. Изучение родной природы 53.5 KB
Цель: изучение приемов целенаправленного обследованию предметов наблюдения процессов и явлений окружающей действительности; творческое развитие личности ребенка направленное на развитие воображения фантазий...

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

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

Однако такой результат часто не удовлетворял профессиональных математиков, и вот почему. Подавляющее большинство результатов нетривиальных математических вычислений в классической математике традиционно записывается в символьной форме: с использованием специальных общеизвестных чисел: , , , а иррациональные значения – с помощью радикала. Считается, что в противном случае имеет место принципиальная потеря точности .

Другой классический пример, вызывающий замечание математика – выражение , знакомое любому школьнику:

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

На этом первый этап завершился...

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

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

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

Это привело к созданию компьютерных систем символьной математики, рассчитанных на широкие круги пользователей – непрофессионалов в математике. Так началась с середины 60-х годов ХХ века эра систем компьютерной математики (СКМ), по -английски CAS – Сomputer algebra system .

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

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

Данные об особенностях существующих СКМ приведены в табл. 12.1 .

Таблица 12.1. Современные СКМ и их возможности
Система Назначение и возможности Недостатки
Mathcad 13, Mathcad 14 Система универсального назначения в основном для непрофессиональных математиков и целей образования всех ступеней. Продуманный интерфейс представления данных в традиционной математической форме и изумительная графика на всех этапах работы, включая ввод. Ввод с помощью выбора из панелей инструментов или из меню практически без использования клавиатуры. Мощный и исчерпывающий набор операторов и функций. Множество примеров, электронных книг и библиотек, готовых решений практических задач. Ядро символьных вычислений импортировано из СКМ Maple . Предоставление серверных услуг профессионального пакета. Легкость переноса документа в другие приложения Достаточно примитивные средства программирования. Дороговизна электронных книг и библиотек, отсутствие русифицированных версий самого пакета и дополнительных библиотек (книг). Затруднена символьная обработка дифференциальных уравнений. Не создается итоговый исполняемый *.exe-файл; для запуска документа необходимо наличие пакета СКМ Mathcad . Затруднения при выполнении тригонометрических преобразований
Maple V R4/R5/R6 Университетское высшее образование и научные расчеты. Мощное ядро символьных вычислений – возможности аналогичны СКМ Mathcad , содержащее до 3000 функций. Мощнейшая графика. Удобная справочная система. Средства форматирования документов Повышенные требования к аппаратным ресурсам. Отсутствие синтеза звуков. Ориентация на опытных пользователей и специалистов по математике. Все недостатки аналитических действий аналогичны СКМ Mathcad
Mathematica 5/7 Высшее образование и научные расчеты. Наиболее развитая система символьной математики. Единственная СКМ, обеспечивающая символьное решение дифференциальных уравнений. Совместимость с разными компьютерными платформами. Уникальная трехмерная графика. Поддержка синтеза звука. Развитые средства форматирования документов. Программный синтез звуков. Высокие требования к аппаратным ресурсам. Чрезмерная защита от копирования. Слабая защита от некорректных задач. Ориентация на опытных пользователей. Ввод задач на уникальном языке функционального программирования. Непривычная индикация функций запуска вычислений.
MATLAB 7.* Образование (в том числе техническое), научные расчеты, численное моделирование, и расчеты, ориентированные на применение матричных методов, при этом скаляр рассматривается как матрица 1х1. Уникальные матричные средства, обилие численных методов, описательная (дескрипторная) графика, высокая скорость вычислений, легкость адаптации к задачам пользователя благодаря множеству пакетов расширения системы. Развитый язык программирования с возможностями объектно-ориентированного программирования (ООП), совместимость с алгоритмическим языком Java Очень высокие требования к аппаратным ресурсам. Практически отсутствует возможность символьных вычислений. Относительно высокая стоимость. Ввод задач на уникальном языке программирования

Рассмотрим внутреннюю архитектуру СКМ на примере наиболее мощной, по мнению ряда авторитетных специалистов , СКМ Mathematica, обладающей наиболее развитой системой символьной математики. На рис.12.1 представлена ее программная архитектура .


Рис. 12.1.

Центральная часть – ядро ( Kernel ) системы СКМ реализует алгоритм функционирования СКМ, обеспечивает совместное функционирование всех ее частей, организует прием и интеллектуальную обработку запроса пользователя, а затем – вызов нужной процедуры решения. В ядре помещается большое количество встроенных функций и операторов системы. Их количество в современных СКМ может достигать многих тысяч. Например, ядро системы Mathematica 4 содержит данные более чем 5000 одних только интегралов, хотя для интегрирования используются только несколько встроенных функций.

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

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

Все эти библиотеки, пакеты расширений и справочная система современных СКМ (назовем их инструментами СКМ) содержат не только и не просто знания в области математики, накопленные за много веков ее развития (этим никого не удивишь: именно такие возможности характерны для широко распространенного класса ИПО – информационно-поисковых систем). Но восхищает, что эти инструменты удивительным образом автоматически и творчески используют такие знания для решения задач, где нужно выбрать и уметь применить один, единственный из многих десятков, неочевидный метод решения . Например, СКМ могут мгновенно найти неопределенный интеграл либо сразу же сообщить о невозможности его представления элементарными функциями – задача непростая, даже для профессионального математика . Не менее впечатляет и то, что если после получения искомой формулы перейти к началу документа и задать входящим в эту формулу параметрам конкретные числовые значения, мгновенно будет получен ее численный результат. В состав любой СКМ входит набор редакторов (на рис.12.1 они названы редакторами по направлениям): текстовый, формульный, графический редакторы, средства поддержки работы в сети и HTML ( XML )-средства, пакеты анимации и аудиосредства.

Благодаря всем этим возможностям СКМ могут быть отнесены к программным продуктам самого высокого на сегодняшний день уровня – интеллектуального. Такие программы в настоящее время объединяются термином "базы знаний". Современные СКМ, по мнению признанных авторитетов [ , ], предоставляет неискушенному пользователю возможности выпускника математического вуза в областях численных методов расчета, математического анализа, теории матриц и других общих разделах высшей математики, позволяющих получить конструктивные результаты.

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

12.2. Интегрированная Среда СКМ MathCad

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

По сей день они остаются единственными математическими системами, в которых описание решения математических задач дается с помощью привычных математических формул и знакомых символов. Такой же вид имеют и результаты вычислений. СКМ MathCad не очень подходит для серьезной профессиональной научной деятельности математиков, она больше предназначена для решения не слишком изощренных математических задач, выполнения технических расчетов любой сложности, а главное – не имеет конкурентов в области образования. Благодаря высоким характеристикам, СКМ MathCad полностью оправдывает термин " CAD " в своем названии ( Computer Aided Design), подтверждающий принадлежность к классу наиболее сложных и совершенных систем автоматического проектирования – САПР . Система MathCad является типичной интегрированной системой, то есть объединяющей в своем составе несколько обособленных программных средств для решения определенного круга самостоятельных задач.. Первоначально она была предназначена для сугубо численных вычислений и ориентирована под MS-DOS , но, начиная с версии 3.0 (1990 г.), работает под ОС Windows и имеет достаточно широкий набор средств для символьных и графических вычислений.

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

На рис.12.2 приведена архитектура СКМ MathCad . Центральным блоком являются два ядра: собственно ядро СКМ и ядро символьных вычислений, аналогичное СКМ Maple , приобретенное у разработчика – фирмы Waterloo Maple .

Встроенные в среду MathCad электронные книги (e-Books) содержат примеры, справки и типовые расчеты из различных областей науки, техники, экономики. Любой фрагмент из этих книг можно скопировать на рабочий лист документа и выполнить.

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

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

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

Интерфейс интеллектуален – конечно, здесь далеко до интеллекта Visual Studio-2010, но во многих случаях он не допустит ошибочных действий пользователя.

Упомянутый входной язык ввода является интерпретирующим, то есть промежуточные результаты появляются по мере ввода очередной формулы. Сама же СКМ MathCad написана на одном из самых мощных языков – С++. По мере того, как пользователь набирает на рабочем листе текст алгоритма вычислений, среда сама составляет скрытую программу на промежуточном языке связи, которая затем сохраняется в виде файла с расширением.mcd. К сожалению, исполняемого файла с расширением.ехе пакет MathCad не формирует – для работы с импортированным документом необходимо наличие установленного приложения MathCad . А вот вставить образ документа либо отдельный его фрагмент в текстовый редактор , например, MS WORD , через системный буфер никакого труда не представляет. Именно так и вставлялись все иллюстрации в этой главе. Рекомендую после такой вставки фрагмента вызвать на нем контекстное меню – пункт "Формат рисунка…/Размер" и установить в окне "Масштаб по высоте" 128% – для шрифта 12-го кегля наиболее подходящий.

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

Контент (содержание) этой СКМ можно рассматривать в качестве исключительно мощного справочного средства по математике. Кроме того, в СКМ MathCad интегрированы формульный, текстовый и графический редакторы, позволяющие упростить ввод многоэтажных сложнейших формул и получить итоговый документ. Промежуточные действия в ходе символьных преобразований в СКМ MathCad скрыты от пользователя, но не следует забывать, что для получения конечного результата используются сложнейшие рекурсивные алгоритмы, мало знакомые широкому пользователю и зачастую не оптимальные на взгляд математика . При этом никто не запрещает пользователю пошаговое выполнение и индикацию знакомых из литературы алгоритмов, что значительно упрощает решение при известном конечном результате. В СКМ MathCad не создается итоговый исполняемый *.exe файл , значит, для просмотра готового (например, импортированного) документа требуется наличие установленного пакета СКМ MathCad .

Перечислим основные возможности Среды MathCad .

Общие возможности

  1. Разработка и редактирование документов, содержащих как математические формулы любой сложности, так и все встроенные инструменты Среды MathCad . Подготовка этих документов к изданию или передаче по сети Internet.
  2. Использование общепринятого расширяемого языка разметки XML как универсального способа организации обмена данными с другими приложениями. Это позволяет преобразовывать файлы MathCad в HTML-страницы и в формат PDF.
  3. Возможность вставки в документ широкого спектра объектов (см. рис.12.3 .)
  4. Разработка веб-документов и сетевые возможности по их пересылке, получению обновлений и поддержки.
  5. Получение документов
  6. Выполнение вычислений любой сложности – использование среды MathCad в качестве сверхмощного научного интеллектуального калькулятора с применением богатой библиотеки встроенных функций (более 680; для сравнения, в MS Excel их около 200), с точностью до 17 значащих цифр (а при использовании специальных операторов – и до 250) и с неограниченными возможностями запоминания промежуточных результатов. При этом имеется возможность вычислений как по введенной в документ формуле целиком, так и по отдельному, выделенному фрагменту формулы.
  7. Использование графического редактора для построения двумерных и трехмерных графиков любой сложности, наглядных диаграмм и не только для простого построения, но и для связи графика с формулой, при которой изменение параметра сразу отражается на кривой графика. Имеется также возможность создание объектов движущейся анимации и просмотра импортированных файлов, например, видеофильмов в формате AVI при помощи встроенного в среду MathCad проигрывателя Playback .
  8. Действия с размерностями.

Численные методы вычислений

  • Решение уравнений и систем уравнений, как линейных, так и нелинейных. Нахождение корней многочлена.
  • Решение неравенств.
  • Вычисление определенного интеграла.
  • Вычисление несобственных интегралов.
  • Вычисление кратных интегралов.
  • Численные методы дифференцирования.
  • Численное решение обыкновенных дифференциальных уравнений – задача Коши.
  • Численное решение обыкновенных дифференциальных уравнений – решение краевой задачи.
  • Решение дифференциальных уравнений в частных производных.
  • Вычисление определителя, размерности, ранга и следа матрицы, скалярное и векторное умножение векторов, вычисление якобиана, например, для перехода к другим системам координат в тройном интеграле. Вычисление собственных значений и собственных векторов , поиск максимального и минимального элемента матрицы.
  • Матричные преобразования: скалярное и векторное умножение векторов, поиск обратной матрицы и решение системы алгебраических линейных уравнений, всевозможные разложения матрицы на произведение матриц специального вида: двух треугольных – верхней и нижней (LU-преобразование), треугольной и ее же транспонированной (разложение Холецкого), ортогональной и верхней треугольной (QR-разложение), сингулярное разложение.
  • Интегрирование среды MathCad с матричной математической системой MATLAB и возможность использования ее аппарата открывает удивительные возможности эффективного решения матричных задач неограниченной сложности.
  • Решение дифференциальных уравнений

    Программирование

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

    Комплексные числа
  1. Представление комплексных чисел в традиционной форме, возможность выполнения основных арифметических действия с ними.
  2. Возможность автоматического получения результатов многих вычислений в виде комплексного числа (например, всех корней многочлена).
  3. Возможность задания комплексного аргумента для многих библиотечных функций и получение математически корректного результата.

Обработка данных и финансовые расчеты

Теория вероятностей и математическая статистика

Математическое моделирование

Специальные возможности по прикладным инженерным и научным расчетам

  1. Обработка электрических сигналов и расчет электронных устройств.
  2. Виртуальная генерация электрических сигналов и их обработка.

Итак, что же такое операционная система на компьютере? ОС — это самое важное программное обеспечение, которое работает на компьютере. Он управляет памятью, процессами, и всем программным и аппаратным обеспечением. Можно сказать, что ОС — это мост между компьютером и человеком. Потому что без операционной системы, компьютер бесполезен.

Apple Mac OS X

Mac OS представляет собой линейку операционных систем, созданных компанией Apple. Она поставляется предустановленной на всех новых компьютерах Macintosh или Mac. Последние версии этой операционной системы известны как OS X . А именно Yosetime (выпущенный в 2014 году), Mavericks (2013), Mountine Lion (2012), Lion (2011), и Show Leopard (2009). Также есть Mac OS X Server , который предназначен для работы на серверах.

По данным общей статистики StatCounter Global Stats, процент пользователей Mac OS X составляет 9,5% рынка операционных систем, по состоянию на сентябрь 2014 года. Это намного ниже чем процент пользователей Windows (почти 90% ). Одной из причин этого является то что компьютеры Apple очень дорогие.

Linux

Linux — семейка операционных систем с открытым исходным кодом. Это значит, они могут модифицироваться (изменяться) и распространятся любым человеком по всему миру. Это очень отличает эту ОС от других, таких как Windows, которая может изменяться и распространяться только самим владельцем (Microsoft). Преимущества Линукса в том, что он бесплатный, и есть много различных версий на выбор. Каждая версия имеет свой внешний вид, и самые популярные из них это Ubuntu , Mint и Fedora .

Linux назван в честь Линуса Торвальдса, который заложил основу в Linux в 1991 году.

По данным общей статистики StatCounter Global Stats, процент пользователей Linux составляет менее 2% рынка операционных систем, по состоянию на сентябрь 2014 года. Однако, из-за гибкости и легкости в настройках большинство серверов работают на Linux.

Операционные системы для мобильных устройств

Все операционные системы, о которых мы говорили выше разработаны для настольных и портативных компьютеров, таких как ноутбук. Есть операционные системы, которые разработаны специально для мобильных устройств, таких как телефоны, и MP3-плееры, например, Apple, IOS, Windows Phone и Google Android. На рисунке ниже вы можете увидеть Apple, IOS работающий на IPad.

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

На этом все. Оставьте в комментариях какой операционной системой пользуетесь вы и почему она вам нравиться