Владимир Дьяконов - Maple 9.5/10 в математике, физике и образовании
- Название:Maple 9.5/10 в математике, физике и образовании
- Автор:
- Жанр:
- Издательство:СОЛОН-Пресс
- Год:2006
- Город:Москва
- ISBN:5-98003-258-4
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Владимир Дьяконов - Maple 9.5/10 в математике, физике и образовании краткое содержание
Книга является справочником и руководством пользователя по новейшим системам символьной (аналитической) математики — Maple 9.5 и Maple 10. Это признанные мировые лидеры в области аналитических вычислений, прошедшие серьезную сертификацию в этой области. Кратко описан интерфейс систем и подробно их обширные возможности в математике, физике и образовании. Особое внимание уделено технике практических вычислений и визуализации их результатов, а также решению дифференциальных уравнений различного типа. Описаны средства символьных и численных вычислений, графические и программные возможности систем, пакеты их расширения, маплеты и практика применения Maple в математических и физических расчетах. Прилагаемый CD-ROM содержит более 340 файлов с примерами вычислений. Для научно-технических работников, студентов и преподавателей университетов и вузов.
Maple 9.5/10 в математике, физике и образовании - читать онлайн бесплатно ознакомительный отрывок
Интервал:
Закладка:
> subs(c=a-b,(а^2-2*а*b+b^2)/с);
Здесь задана система из трех нелинейных уравнений, которая затем решена функцией solve. В конце примера с помощью функции подстановки выполнена проверка правильности решения. Оно верно, поскольку у всех уравнений значение левой части совпадает со значением правой части.
3.6.5. Подстановки правил и подвыражений
Для применения некоторого правила или списка правил rule к некоторому выражению expr используется функция applyrule(rule, expr). Применение этой функции достаточно очевидно:
> restart:applyrule(f(а::integer*х)=a*f(х),f(2*х)+g(х)-p*f(х));
> applyrule(х^2=у,f(x^2,ln(cos(x)+2*x^2)));
> applyrule(b+c=x,f(a+b+c+d));
Эта функция более мощная, чем subs, но она не выполняет математические вычисления, подобно тому, как это делает функция algsubs(a=b, f, v, options) с необязательными двумя последними параметрами. Проанализируйте следующие примеры
> algsubs(а^2=0, ехр(2-а+а^2/2-а^3/6));
> applyrule(а^2=0, ехр(2-a+a^2/2-a^3/6));
и различия между этими функциями подстановки станет ясным.
3.6.6. Функции сортировки и селекции
Сортировка и селекция выражений широко используются в практике символьных преобразований. Нередко она важна в статистических расчетах, обеспечивая повышение их точности.
Для выполнения сортировки служит функция sort, применяемая в одной из следующих форм:
sort(L)
sort(L, F)
sort(A)
sort(A, V)
Здесь L — список сортируемых значений, F — необязательная булева процедура с двумя аргументами, А — алгебраическое выражение, V — необязательные дополнительные переменные.
Примеры применения этих функций (файл sortsel)
> restart;
> sort([у, s,f,a,c,i] ); t([2,5,1,7,3,8]);
> sort([y,s,f,a,c,i]);
> sort([у,s,f,а,с,i],lexorder);
> sort(1+х^4-х^2+х);
> sort(у*х^2+х*у+у-х^2+х^4*у^5);
> sort((y+z+x)/(y-x-z),{x, y})
;

> names:= ["Peter","Anna","Vladimir", "Ivan"];
> sort(names);
> integers:=[$10..30];
Если функция сортировки меняет порядок расположения членов в выражении (или порядок расположения выражений), то другая функция — select — служит для выделения требуемого выражения:
select(f, е)
select(f, е, b1, ..., bn)
Как бы обратной ей по действию служит функция remove, устраняющая заданные выражения:
remove(f, е)
remove(f, е, b1,.... bn)
В этих функциях f — процедура, возвращающая логическое значение, е — список, множество, сумма, произведение или функция, b1, …, bn — необязательные дополнительные аргументы.
Ниже даны примеры применения этих функций (файл sortsel):
> integers := [$10..30]:
> select(isprime,integers);
> remove(isprime,integers);
> f:=2*ln(a*x)*exp(x)*ln(y);
> select(has,f,x);
> remove(has,f,x);
> f:=indets(f);
> select(type,f,name);
> remove(type,f,name);
> f:=2*ln(x)*(y+1);
> c:=remove(has,f,x);
> f/c;

> select(has,f,x);
Maple имеет также оператор селекции А[expr]. Его действие поясняют следующие примеры (файл sortsel):
> restart;
> S:=[a+b*c,х^2,с,1,2,3];
> S[1];
> S[1..2];
> S[-2..-1];
> S[3..3];
> S[3..2];
> S[4..6];
> X:=S[];
> X[1];
> X[1..2];
> X[-2..-1];
> S:={a,b,c};
> S[1];
> S[3];
> S[1..2];
> S[-2..-1];
3.7. Символьные преобразования выражений
3.7.1. Упрощение выражений — simplify
Функция simplify — одна из самых мощных в системах символьной математики. Она предназначена для упрощения математических выражений. «Все гениальное просто» — любим мы повторять, хотя это далеко не всегда так. Тем не менее, стремление представить многие математические выражения в наиболее простом виде поощряется в большинстве вычислений и нередко составляет их цель.
В системе Maple функция упрощения используется в следующем виде:
• simplify(expr) — возвращает упрощенное выражение expr или повторяет его, если упрощение в рамках правил Maple невозможно;
• simplify(expr, n1, n2, …) — возвращает упрощенное выражение expr с учетом параметров с именами n1, n2, … (в том числе заданных списком или множеством);
• simplify(expr,assume=prop) — возвращает упрощенное выражение expr с учетом всех условий, представленных равенством или списком равенств.
Функция simplify — многоцелевая. Она обеспечивает упрощение математических выражений, выполняя следующие типовые действия (для простоты обозначим их как ->):
• комбинируя цифровые подвыражения (3*х*5->15*х, 10*x/5->2*x);
• приводя подобные множители в произведениях (х^3*а*х->а*х^4);
• приводя подобные члены в суммах (5*х+2+3*х->8*х+2);
• используя тождества, содержащие ноль (а+0->а, х-0->х);
• используя тождества, содержащие единицу (1*х->х);
• распределяя целочисленные показатели степени в произведениях ((3*х*у^3)^2->9*х^2*у^6);
• сокращая expr на наибольший общий полиномиальный или иной множитель;
• понижая степень полиномов там, где это возможно;
• используя преобразования, способные упростить выражения.
Несмотря на свою гибкость, функция simplify не всегда способна выполнить возможные упрощения. В этом случае ей надо подсказать, в какой области ищутся упрощения и где можно найти соответствующие упрощающие преобразования. С этой целью в функцию simplify можно включать дополнительные параметры.
В качестве параметров могут задаваться имена специальных математических функций и указания на область действия упрощений: BesselI, BesselJ, BesselK, BesselY, Ei, GAMMA, RootOf, LambertW, dilog, exp, ln, sqrt, polylog, pg, pochhammer, trig (для всех тригонометрических функций), hypergeom, radical, power и atsign (для операторов).
Читать дальшеИнтервал:
Закладка: