На главную страницу сайта

Система символьной математики Derive на Pocket PC

При решении математических задач очень часто требуется получить результат в символьной форме. Для этих целей создано много мощных программ, таких как Matematica, Derive, Maple, MathCAD. Но все эти приложения работают на персональном компьютере, а что делать, если у Вас под рукой только карманный? Выход, конечно же, есть. В статье будет рассмотрен способ установки Derive на Pocket PC.

Основные возможности пакета символьных вычислений Derive:

Установка Derive на Pocket PC

На данный момент существуют версии Derive под операционные системы MS-DOS и MS Windows 9x, до Pocket PC руки разработчиков еще не дошли. Но к счастью Pocket может эмулировать обе эти платформы. Учитывая, что установка Windows 9x на Pocket связана с большими проблемами (требования к объему флешкарты, быстродействию карманника, разрешению экрана), остановим свой выбор на MS-DOS.

Таким образом, установка разбивается на две части: установка эмулятора MS-DOS и установка непосредственно Derive.

Эмулировать MS-DOS мы будем по средствам PocketDOS. Для этого:

Берем архив Derive версии 2.58 (почему-то работают не все версии), распаковываем в отдельный каталог на карту памяти или в основную память. Например, в директорию \SD\Derive\. Не рекомендую использовать директорию Program Files т.к. у PocketDOS проблемы с длинными именами.

В дистрибутиве Derive много разных файлов, но для работы достаточно, только derive.exe, остальные же файлы это:

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

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

*.MTH - файлы расширений (определяют дополнительные функции), или просто интересные примеры работы;

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

Небольшое замечание, версия Derive 2.58, будет корректно работать не только на Pocket, но и на ПК под любой версией Windows. Так, что разбираться с Derive Вы можете на большом компьютере, что, замечу, значительно быстрее.

Не обязательно использовать Derive версии 2.58, если найдете, то можно взять версию старше (младше, очевидно, смысла не имеет).

Запуск

Запускаем PocketDOS, дожидаемся появления приглашения:

C:\>

По умолчанию диск C: соответствует корневому разделу карты памяти. Если каталог с Derive находится на ней в директории DERIVE, то выполняем следующие команды:

cd derive 
derive

т.е. делаем текущим каталог с Derive, и запускаем саму программу на выполнение. Если Вы намерены использовать PocketDOS только для запуска Derive, то можете автоматизировать этот процесс, приписав выше приведенные команды в конец файла autoexec.bat, который находится (по умолчанию) в директории \Program Files\PocketDOS.

Если каталог Derive находится не на карточке, а в памяти карманника, например \Math\Derive, то команды будут:
D:
cd  \Math\Derive
derive
т.к. диск D: соответствует корневому разделу.

Сообщение Bad command or file name говорит о том, что Вы неправильно напечатали слово derive или перешли не в ту директорию.

Окно Derive после запуска будет выглядеть так:

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

Не нужно пугаться того, что программа разработана в 1993 году, тогда уже умели писать хорошие программы:-)

Работа с программой Derive

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

Кратко рассмотрим основные пункты меню.

Author - ввод нового выражения. Конец ввода - Enter или Ctrl-Enter, если хотите сразу его упростить. Кнопки F3 и F4 позволяют скопировать в строку ввода выделенное выражение (F4 - заключает его в скобки).

Build - построение выражения из уже введенных.

Calculus - позволяет произвести действия с выражением, содержит подпункты:


Пример дифференцирования и интегрирования.

Declare - позволяет объявлять:


Пример нахождения детерминанта матрицы.

Expand - раскрывает скобки.

Factor - преобразование выражения в форму:

Применительно к числовому выражению Factor осуществляет разложение на множители.

Help - продемонстрирует Вам в удобной форме содержимое файла DERIVE.HLP.

Jump - переход на выражение по его номеру.

soLve - решить уравнение, неравенство, систему уравнений.

Manage - управление логикой обработки выражений. Содержит подразделы:

Options - разнообразные опции, рассмотрим главные:

Plot - построение графиков функций.

Quit - выход из Derive, если у Вас остались не сохраненные на диске выражения, то программа запросит подтверждение операции.

Remove - удалить текущее (по умолчанию) или несколько выражений из заданного диапазона.

Simplify - упростить выражение. Результат работы этой функции сильно зависит от установок в пунктах Options и Manage.

Transfer - операции с диском.

Print - печать.

Window - операции с окнами.

approX - упростить и показать результат в десятичной нотации.

Примеры вычислений

Пример 1

В качестве несложного примера найдем корни квадратного уравнения.
Выбираем Author, вводим:
6 x x - 13 x + 6 = 0
Выбираем soLve получаем:
     2
x = ---
     3

     3
x = ---
     2
А теперь поинтересуемся, по каким формулам Derive это посчитал.
Выбираем Author, вводим:
a x x + b x + c = 0
Выбираем soLve, получаем:
           2
     SQRT(b - 4 a c) - b
x = --------------------
             2 a

           2
       SQRT(b - 4 a c) + b
x = - --------------------
               2 a


Пример решения квадратного уравнения.

Но, эти формулы нам известны со школы, а вот для уравнения третьей степени...
Выбираем Author, вводим:
a x x x + b x x + c x + d = 0
Выбираем soLve, и, подождав три минуты, получаем...

       3      2              
1:  a x  + b x  + c x + d = 0

                                 /     /                                    2                  3                       \ \         
                                 |     |                       SQRT(3) (27 a  d - 9 a b c + 2 b )                      | |         
                                 | ATAN|-------------------------------------------------------------------------------| |         
                                 |     |                         /     2  2             2             2           2  \ | |         
                                 |     |       2         3/2     | 27 a  d  + 2 a c (2 c  - 9 b d) + b  (4 b d - c ) | | |         
                                 |     | 9 a (b  - 3 a c)    SQRT|---------------------------------------------------| | |         
                                 |     |                         |                             2 3                   | | |         
                   2             |     \                         \                   (3 a c - b )                    / / |         
           2 SQRT(b  - 3 a c) SIN|---------------------------------------------------------------------------------------|         
                                 \                                           3                                           /      b  
2:  x =   ----------------------------------------------------------------------------------------------------------------- - -----
                                                                3 |a|                                                          3 a 

                                /     /                                    2                  3                       \        \         
                                |     |                       SQRT(3) (27 a  d - 9 a b c + 2 b )                      |        |         
                                | ATAN|-------------------------------------------------------------------------------|        |         
                                |     |                         /     2  2             2             2           2  \ |        |         
                                |     |       2         3/2     | 27 a  d  + 2 a c (2 c  - 9 b d) + b  (4 b d - c ) | |        |         
                                |     | 9 a (b  - 3 a c)    SQRT|---------------------------------------------------| |        |         
                                |     |                         |                             2 3                   | |        |         
                  2             |     \                         \                   (3 a c - b )                    / /     pi |         
          2 SQRT(b  - 3 a c) SIN|--------------------------------------------------------------------------------------- + ----|         
                                \                                           3                                                3 /      b  
3: x = - ------------------------------------------------------------------------------------------------------------------------ - -----
                                                                   3 |a|                                                             3 a 

                              /     /                                    2                  3                       \        \         
                              |     |                       SQRT(3) (27 a  d - 9 a b c + 2 b )                      |        |         
                              | ATAN|-------------------------------------------------------------------------------|        |         
                              |     |                         /     2  2             2             2           2  \ |        |         
                              |     |       2         3/2     | 27 a  d  + 2 a c (2 c  - 9 b d) + b  (4 b d - c ) | |        |         
                              |     | 9 a (b  - 3 a c)    SQRT|---------------------------------------------------| |        |         
                              |     |                         |                             2 3                   | |        |         
                2             |     \                         \                   (3 a c - b )                    / /     pi |         
        2 SQRT(b  - 3 a c) COS|--------------------------------------------------------------------------------------- + ----|         
                              \                                           3                                                6 /      b  
4: x = ------------------------------------------------------------------------------------------------------------------------ - -----
                                                                 3 |a|                                                             3 a 
Лучше этого не знать... Проверьте на досуге правильность формул.

Пример 2

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

Например, даны две стороны (a = 3, b = 4) и площадь (S = 6) треугольника, необходимо найти третью сторону.

Формула, очевидно, такая:

S = sqrt(p(p-a)(p-b)(p-c)),

где

a,b,c, - стороны,

p = (a+b+c)/2 - полупериметр,

S - площадь.

Вычисления можно произвести на обычном калькуляторе, выразив из формулы любую сторону, но не зря эта статья про Derive, и ничего выражать мы не будем, а пишем прямо:

Author 
s = sqrt(p(p-a)(p-b)(p-c)),
Author 
p := (a+b+c)/2
Author
a := 3
Author
b := 4
Author 
s := 6
стрелкой вверх джойстика подсвечиваем выражение 1 нажимаем soLve, и получаем
c = 5
c = - 5

Поскольку мы не задали диапазон допустимых значений для переменной c, то получили один лишний ответ (c = -5).

Пример 3

Теперь, посмотрим, как Derive умеет строить графики функций.

Настроим PocketDOS на альбомный режим. Для этого в меню PocketDOS выбираем

Setting->Display->Orientation->Landscape(rotated CW)

Выходим из PocketDOS, и снова ее запускаем. Запускаем Derive. Настраиваем его на работу в графическом режиме:

Options->Display
Mode: Graphics
Resolution: Medium

Для большего эффекта построим график функции двух переменных. Такие графики Derive строит в виде проволочного каркаса, удаляя при этом невидимые линии.

Author
x x + z z
Plot
PLOT: Overlay
Grids
x: 20
y: 20
Plot


Пример построения графика функции двух переменных.

Скажем прямо, что построение графиков не является коньком Derive и для Pocket PC есть много программ, которые делают это лучше.

Пример 4

Найдем 100-й член ряда Фибоначчи. Для этого загрузим файл расширений MISC.MTH, в котором определена функция FIBONACCI(n).
Transfer
Load
Utility
MISC.MTH

Теперь найдем член Фибоначчи.
Author
FIBONACCI(100)
Simple
Получаем:
354224848179261915075.
approX
Более привычный вид:

          20
3.54224 10


Нахождение члена ряда Фибоначчи.

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

Заключение

Отметим недостатки описанной связки - PocketPC+PocketDOS+Derive.

Теперь подведем итоги по ситуациям, когда Derive просто незаменим:

Если Вы захотите подробней изучить возможности данной системы, то обратитесь к книгам:

1. Дьяконов В. П. Справочник по системе символьной математики Derive. - М.: СК Пресс, 1998.
2. Лобанова О. В. Практикум по решению задач в математической системе Derive. Алгебра. Геометрия. Математический анализ. Математическая статистика. Теория вероятностей. - М.: Изд. <Финансы и статистика>, 1999.

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

22.11.2004

Герман Бузин
wareforpalm.narod.ru

На главную страницу сайта

Хостинг от uCoz