Записи с меткой «линейной»

Пакет поддержки стандарта MathML

Пакет поддержки стандарта MathML
Для представления математической информации на страницах Интернета в последние годы был создан специальный язык MathML. Пока для большинства пользователей MathML — просто «экзотика», но так как наряду с XML его поддерживает World Wide Web Consortium, его вынуждены поддерживать все солидные фирмы — причем не только создающие системы Компьютерной математики. Среди них такие крупные корпорации, как Intel, IBM и Microsoft. В Maple 15 предусмотрена новая возможность поддержки стандарта MathML 2.O. Для такой поддержки используются MathML Viewer (см. урок 2) и пакет MathML.
Пакет MathML дает минимальный набор функций для использования языка MathML:
> with(HathML);
[Export, ExportContent, ExportPresentation, Import, ImportContent]
В нем всего 5 функций, что позволяет разобрать их достаточно детально. Первые три функции служат для экспорта выражений:

  •  Export(expr) — преобразует Maple-выражение ехрr в параллельное MathML-выражение;
  •  ExportContent (expr) — преобразует Maple-выражение ехрr в MathML-выра-жение в формате содержания;
  •  ExportPresentation (ехрr) -преобразует Maple-выражение expr в MathML-выражение в формате представления.

Еще две функции служат для импорта строки в формате MathML и его преобразования в Maple-выражение:
Import(mnlstring) и ImportConterrt(mmlstnng)
Следующий пример наглядно иллюстрирует применение функций пакета расширения MathML для преобразования математического выражения а*х+b вначале в запись на MathML, а затем преобразование этой записи str в Maple-выражение:
> str:=MathML[Export]
( а*х + b );
str := "<math xmlns-http://www.w3.org/1998/Math/MathML’>   <semanticsXmrow xrfe f=’id5’xmrow xref=’id3’xnii xref=’idl ‘>a</mi><mo>&InvisibleTimes;</moXml xref=’id2′>x</mi></mrowxmo>+</mo><mixref=’id4’>b</mi>
</mrowXannotati on-xml encodrag=’MathML-Content’><apply id=’id5′><plus/><apply id=’id3’xtft mes/xci id=’idl’>             a</ci><ci id=’id2′>x</cix/applyxci id=’id4′>b</ci></apply>    </annotation-xml>     <annotationencoding=’Maple’> a*x+b                 </annotationx/semantics ></math>" > Import(str):a x + b
Этот пример показателен тем, что дает представление о виде записей на языке MathML. далее…

Пакет для студентов student

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

  •  D — дифференциальный оператор;
  •  Diff — инертная форма функции вычисления производной;
  •  Doubleint — инертная форма функции вычисления двойного интеграла;
  •  Int — инертная форма функции интегрирования int;
  •  Limit — инертная форма функции вычисления предела limit;
  •  Lineint — инертная форма функции вычисления линейного интеграла lineint;
  •  Point — тестирование объекта на соответствие типу точки (point);
  •  Product — инертная форма функции вычисления произведения членов последовательности;
  •  Sum — инертная форма функции вычисления суммы членов последовательности;
  •  Tripleint — инертная форма функции вычисления тройного интеграла;
  •  changevar — замена переменной;
  •  combine — объединение подобных членов;
  •  completesquare — вычисление полного квадрата (многочлена);
  •  distance — вычисление расстояния между точками;
  •  equate — создание системы уравнений из списков, таблицы, массивов;
  •  extreme — вычисление экстремума выражения;
  •  integrand — вывод подынтегрального выражения из-под знака инертного интеграла;
  •  intercept — нахождение точки пересечения двух кривых;
  •  intparts — интегрирование по частям;
  •  isolate — выделение подвыражения;
  •  leftbox — графическая иллюстрация интегрирования методом левых прямоугольников;
  •  leftsum — числовое приближение к интегралу левыми прямоугольниками;
  •  makeproc — преобразование выражения в процедуру Maple;
  •   maximize — вычисление максимума функции;
  •  middlebox — графическая иллюстрация интегрирования методом центральных прямоугольников;
  •  middlesum — числовое приближение к интегралу центральными прямоугольниками;
  •  midpoint — вычисление средней точки сегмента линии;
  •  minimize — вычисление минимума функции;
  •  powsubs — подстановка для множителей выражения;
  •  rightbox — графическая иллюстрация интегрирования методом правых прямоугольников;
  •  rightsum — числовое приближение к интегралу правыми прямоугольниками;
  •  showtangent — график функции и касательной линии;
  •  simpson — числовое приближение к интегралу по методу Симпсона;
  •  slope — вычисление и построение касательной к заданной точке функции;
  •  trapezoid — числовое приближение к интегралу методом трапеций;
  •  value — вычисление инертные функции.

 

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

  •  Int(expr,x) — инертная форма вычисления неопределенного интеграла;
  •  Doubleint(expr,x,y,Domain) — вычисление двойного интеграла по переменным х и у по области Domain;
  •  Tripleint(expr,x,y,z) — вычисление тройного интеграла;
  •  intparts(f,u) — интегрирование по частям.

Ниже дан пример применения функции Tripleint пакета student:

Объективности ради надо отметить, что вычисление тройного интеграла с помощью функции Tripleint занимает много времени (около 20 с на компьютере с процессором Pentium II 350 МГц). далее…

Графика статистического пакета stats

Графика статистического пакета stats
Статистический пакет stats имеет свою небольшую библиотечку для построения графиков. Она вызывается в следующем виде:
stats[statplots, function](args)
или
statplots[function](args)
Вид графика задается описанием function: boxplot, histogram, notehedbox, quantile, quantile2, scatterld, scatter2d и symmetry. Данные функции обеспечивают построение типовых графиков, иллюстрирующих статистические расчеты. В качестве примера показано задание множества случайных точек и его отображение на плоскости в ограниченном прямоугольником пространстве.
По равномерности распределения точек можно судить о качестве программного генератора случайных чисел, встроенного в Maple 15.
Довольно часто для визуализации вычислений используется построение гистограмм. Для их создания пакет stats имеет функцию histogram:
stats[statplotsб histogram](data) :
statplots[h1stogram](data) 
stats[statplots, histogram[scale](data) 
statp1ots[histogram[scale](data)
Здесь data — список данных, scale — число или описатель. Детали применения этой простой функции поясняет рис. 16.14. На нем дан два примера — построение столбцов заданной ширины и высоты и построение гистограммы 100 случайных чисел с нормальным распределением.

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

далее…

Обзор пакетов специального назначения

Обзор пакетов специального назначения

Пакет решения задач линейной оптимизации simplex
Обзор средств пакета
Задачи линейной оптимизации важны как в фундаментальных, так и в прикладных приложениях математики. В пакете simplex имеется небольшой, но достаточно представительный набор функций и определений для решения таких задач:
> with(simplex);
Warning, the protected names maximize and minimize have been redefined and unprotected
[basis, convexhull, cterm, deftne_zero, display, dual,feasible, maximize, minimize,pivot, pivoteqn, pivotvar, ratio, setup, standardize ]
Приведем краткое назначение этих функций:

Прочитать остальную часть записи »

Логические операторы

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

Обозначение

Оператор

<

Меньше

Меньше или равно

>

Больше

>=

Большее или равно

Равно

О

Не равно

and

Логическое «и»

or

Логическое «или»

Конструкции с этими операторами, такие как х=у, возвращают логическое значение — константу true, если условие выполняется, и false, если оно не выполняется. Кроме того, к логическим операторам относится унарный оператор not — он представляет логическое «нет». Для возврата логических значений выражений с этими операторами используется функция evalb(условие), например:

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

Специальные типы операторов
Операторы в Maple описывают операции по преобразованию данных, в частности выражений. Последние, в свою очередь, можно отнести к данным абстрактного типа. Могут быть описаны следующие типы операторов:

  • неопределенные (f); 
  •  нейтральные (&);
  •   процедурные; 
  •  функциональные; 
  •  композиционные (@).

Оператор относится к неопределенным, если он не был заранее определен. Такой оператор не выполняет никаких действий и просто повторяется в строке вывода:
> restar:f(1,2,а):
 f(l,2,a)
Композиционные операторы (на базе знака @) мы уже применяли. далее…