- •Введение
- •1 Анализ предметной области
- •1.1 Анализ задач допускового проектирования
- •1.2 Анализ средств моделирования выходных характеристик рэа
- •1.3 Анализ возможностей сапр в задачах допускового проектирования.
- •1.4 Анализ языков представления математических формул
- •1.4.1 Язык разметки математических текстов MathMl
- •1.4.2 LaTeX – типографическая разметка
- •1.6 Выводы к разделу 1
- •2 Анализ програмных средств
- •2.1 Обзор особенностей выбранного языка программирования
- •1.5 Функциональные требования
- •2.2 Достоинства платформы .Net
- •2.3 Недостатки платформы .Net
- •2.4 Особенности среды разработки
- •2.5 Использование сторонних библиотек
- •2.6 Выводы к разделу 2
- •3 Основные решения по реализации компонентов системы
- •3.1 Реализация общей архитектуры программной системы
- •3.2 Библиотека формирования математических моделей
- •3.2.1 Разработка языка представления математических моделей
- •3.2.2 Разработка основных алгоритмов формирования мм
- •3.2.3 Взаимодействие компонента формирования мм с внешними системами
- •3.2.4 Разработка диаграмм классов
- •3.3 Библиотека расчета допусков
- •3.3 Библиотека обмена данными с внешними источниками
- •3.4 Выводы к разделу 3
- •4 Руководство программиста
- •4.1 Назначение и условия применения программы
- •4.2 Характеристика программы
- •4.3 Обработка ошибочных ситуаций
- •5 Руководство пользователя
- •5.5 Сообщения
- •6 Экономико-организационная часть
- •6.1 Введение
- •6.2 Организационно-экономическая часть
- •6.2.1 Планирование разработки программного изделия
- •6.2.2 Определение затрат на разработку программы
- •6.3 Оценка экономической эффективности
- •6.4 Анализ технико-экономических показателей
- •7 Охрана труда и безопасность при чрезвычайных ситуациях
- •7.1 Анализ потенциальных опасностей
- •7.2 Мероприятия по обеспечению безопасности
- •7.3 Мероприятия по производственной санитарии и гигиене труда
- •7.3 Мероприятия по пожарной безопасности
- •7.4 Мероприятия по обеспечению безопасности в чрезвычайных ситуациях
- •Перечень ссылок
- •Приложение а Техническое задание
- •3 Листа
- •3 Листа
- •Приложение б Спецификация Спецификация
- •Приложение в Описание программы
- •В.4 Требования к составу и параметрам технических средств
- •Приложение г Текст программы
- •15 Листов
- •Приложение д Слайды презентации
1.4.1 Язык разметки математических текстов MathMl
С распространением глобальных компьютерных сетей (в частности, Интернет) появилась необходимость размещения в ней в т.ч. и математических текстов.
Язык MathML является подмножеством языка XML (eXtensible Markup Language – расширяемый язык разметки), который часто служит для создания других языков. Такое использование XML сегодня вполне естественно и хорошо зарекомендовало себя и в других случаях, когда применение HTML для передачи данных новых типов наталкивалось на ограничения этого формата. К настоящему времени консорциум W3C опубликовал 2-е издание версии 2.0 спецификации языка MathML, что говорит о жизнеспособности и устойчивости проекта [11].
Среди целей, которые ставились рабочей группой W3C по математике при создании MathML, были:
обеспечение кодирования материалов математического характера для коммуникаций всех уровней образовательного и научного типа;
обеспечение кодировани, как математической символики, так и ее значений;
поддержка создания шаблонов и других приемов математического редактирования;
обеспечение преобразования в другие математические форматы как чисто презентационного, так и семантического характера, а также – из этих форматов в создаваемый язык математической разметки.
Первое, с чем приходится столкнуться в MathML и что отличает данный язык разметки от аналогов, — это использование двух способов кодирования выражений. Один из них основан на непосредственной передаче синтаксиса формулы (presentation), другой, напротив, отражает семантику выражения (content). Презентационная разметка описывает математическую символику с выражениями, которые строятся с использованием некоторых схем вывода, с заданием способов размещения подвыражений, таких, как дроби, верхние и нижние индексы. Семантическая разметка описывает математические объекты и функции, где для каждого узла конструируется дерево выражения согласно некоторой конкретной схеме, а ветви этого дерева отвечают подвыражениям.
Из популярных броузеров с MathML работают (ОС Windows):
IE 5.0 с плагином Techexplorer
IE 5.5 с плагинами MathPlayer или Techexplorer
IE 6.0+ (необязательно) с плагинами MathPlayer или Techexplorer
Netscape 6.1 с плагином Techexplorer
Netscape 7.0+
Amaya, все версии (только Presentation MathML)
Mozilla 0.9.9+
Все элементы MathML делятся на три группы: элементы представления, элементы содержания и интерфейсные элементы.
Элементы представления описывают визуально ориентированную двухмерную структуру математической нотации. Например, элемент mrow обычно применяется для обозначения горизонтального ряда частей выражения, и элемент msup, который отмечает верхний индекс. Как правило, каждый элемент представления соответствует одному типу нотационной схемы, такой как ряд, верхний индекс, нижний индекс и т.д. Любая формула состоит из частей, которые могут состоять из простейших элементов, таких как цифры, буквы или другие символы.
Наиболее важными элементами представления являются mi, mn и mo, используемые для представления идентификаторов, чисел и операторов соответственно. Обычно эти элементы отображаются разными стилями: числа — прямым шрифтом, идентификаторы — наклонным, вокруг операторов оставляется дополнительное свободное пространство.
В терминах разметки, большинство элементов MathML определяются открывающим и закрывающим тегами, которые ограничивают содержание элемента. Некоторые элементы, например, знаки операций (<plus/>) определяются одиночным тегом.
Рассмотрим более подробно некоторые элементы, необходимые для верстки математических формул, на примере презентационной разметки.
Токены (token elements) представляют индивидуальные символы, названия, числа, обозначения и т. д. В основном в качестве содержания токены могут иметь только символы.
MathML игнорирует пробельные символы, встречающиеся вне токенов. Непробельные символы здесь запрещены. Пробельные символы, встречающиеся в содержании токенов, удаляются на концах, то есть удаляются все пробельные символы в начале и конце содержания. Пробельные символы, расположенные внутри содержания элементов MathML свертываются канонически, то есть каждая последовательность из 1 или более таких символов заменяется на 1 (иногда называемый пустым символом) [11].
Пример разметки математического выражения приведен ниже:
<mfrac>
<mrow>
<msup><mi>a</mi><mn>2</mn></msup>
<mo>+</mo>
<mi>a</mi>
<mi>b</mi>
<mo>+</mo>
<msup><mi>b</mi><mn>2</mn></msup>
</mrow>
<mrow>
<mi>a</mi>
<mo>+</mo>
<mi>b</mi>
</mrow>
</mfrac>
Общий принцип использования MathML состоит в том, что математические конструкции встраиваются в обычный HTML-документ и (если браузер либо специальная программа поддерживает эту спецификацию) адекватно воспроизводятся при загрузке документа из сети.
