Чтение онлайн

ЖАНРЫ

Maple 9.5/10 в математике, физике и образовании

Дьяконов Владимир Павлович

Шрифт:

2.6.5. Придание переменным статуса предполагаемых

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

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

assume(x,prop)

где х — переменная, имя или выражение, prop — свойство.

Следующие примеры (файл assume) показывают применение функции assume:

> restart;

> assume(х,positive);

> х;

х~

> s:=x->sqrt(х);

s:= х →√x

> s(2);

√2

> s(2.);

1.414213562

> s(-2);

I√2

> is(x,positive);

true

> is(x,negative);

false

>> about(x);

Originally x, renamed x~: is assumed to be: RealRange(Open(0), infinity)

Обратите внимание, что в этом примере переменная х помечена как положительная и при выводе сопровождается знаком тильды ~, как бы предупреждающем нас о ее особом статусе. Это не означает, что она не может принять отрицательное значение. Однако с помощью функции is можно убедиться в ее особом статусе и при необходимости программным путем исключить вычисления для х<0. Кроме того, о свойствах переменной можно узнать с помощью функции about(name).

Иногда к уже имеющимся признакам надо добавить новые. Для этого используется функция additionally:

> assume(a,nonnegative);

> additionally(а<=0);

> about(а);

Originally a, renamed а~: is assumed to be: 0

В этом примере переменной а вначале задан признак положительности, а затем а<=0. Оба признака удовлетворяются только при a=0, что и подтверждает вывод информации о статусе этой переменной функцией about(a).

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

> а:=123;

a:=123

> about(а);

123:

All numeric values are properties as well as objects. Their location in the property lattice is obvious, in this case integer.

Для отмены переменным статуса предполагаемых используются те же приемы, что и при отмене присвоенного значения. Например, запись х:='х' отменяет статус предполагаемой для переменной х.

2.7. Работа с файлами и документами

2.7.1. Типы файлов

К числу широко распространенных данных относятся файловые данные, которые представлены файлами. Файлом называют имеющую имя упорядоченную совокупность данных, размещенную на том или ином носителе —

обычно на жестком, гибком или компакт-диске.

В Maple используются файлы различных форматов, который указывается расширением файла (знак * означает произвольное имя файла):

*.ms — файлы документов для систем с графическим интерфейсом (Windows/Macintosh);

*.msw — файлы документов (Worksheets);

*.txt — текстовые файлы (включая формат Maple-текст);

*.tex — файлы в формате LaTeX;

*.ind и *.lib — файлы библиотек.

*.m — файлы внутреннего Maple-языка.

Работа с файлами документов удобна с применением команд меню и панели инструментов (см. Главу 1). Предусмотрена возможность записи документов и в особом формате LaTeX, предназначенном для создания книг и статей по математике. Текстовые файлы (с расширением .txt) можно просматривать и редактировать текстовыми редакторами, работающими с ASCII-кодировкой.

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

2.7.2. Запись данных в файлы

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

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

writedata[APPEND](fileID, data)

writedata[APPEND](fileID, data, format)

writedata[APPEND](fileID, data, format, default)

Здесь fileID — имя или дескриптор файла данных, data — список, вектор или матрица данных, format — спецификация формата данных (integer, float или string), default — процедура, задающая запись нечисловых данных, например:

writedata(F,A,float,proc(f,х)fprintf(f,`CMPLX(%g,%g)`,Re(x),Im(x)) end);

Необязательный указатель APPEND используется, если данные должны дописываться в уже созданный файл.

2.7.3. Считывание данных из файлов

Считывание данных из файла filename обеспечивает функция readdata:

readdata(fileID, n)

readdata(fileID, format, n)

readdata(fileID, format)

Здесь n — целое положительное число, задающее число считываемых столбцов.

Поделиться с друзьями: