Категории
Самые читаемые
onlinekniga.com » Научные и научно-популярные книги » Математика » Maple 9.5/10 в математике, физике и образовании - Владимир Дьяконов

Maple 9.5/10 в математике, физике и образовании - Владимир Дьяконов

Читать онлайн Maple 9.5/10 в математике, физике и образовании - Владимир Дьяконов

Шрифт:

-
+

Интервал:

-
+

Закладка:

Сделать
1 ... 22 23 24 25 26 27 28 29 30 ... 125
Перейти на страницу:

2.3.4. Идентификация констант

Функции type(x, constant) и type(x, realcons) возвращают логическое значение true, если х представляет целочисленную или вещественную константу, и false, если х не является константой. Таким образом, эти функции можно использовать для идентификации констант, например:

> type(Pi,constant);

true

> type(1/2,constant);

true

> type(.5,constant);

true

> type(x/y,constant);

false

> type(ln(-Pi),constant);

true

> type(infinity,constant);

true

> type(1.234, realcons);

true

> type(x*y,realcons);

false

> type(2+3*1,realcons);

false

2.3.5. Защита идентификаторов констант

Имена встроенных констант (как и имена функций) защищены специальным атрибутом protected. Поэтому (без его снятия) константам нельзя присваивать какие либо значения:

> Pi;

π

> Pi:=1;

Error, attempting to assign to `Pi` which is protected

> gamma;

γ

> gamma:=10;

Error, attempting to assign to `gamma` which is protected

Стоит упомянуть о такой экзотической возможности, как задание в Maple собственных констант путем описания алгоритма генерации входящих в константу цифр. Примеры этого творчества можно найти на сайте фирмы Waterloo Maple.

2.3.6. Задание новых констант

Следующий пример показывает, как можно определить новую константу g и ввести ее в список встроенных констант:

> type(g,constant);

false

> constants:=constants,g;

constants := false, γ, ∞, true, Catalan, FALL, π, g

> type(g,constant);

true

2.4. Работа с размерными величинами

2.4.1. Пакет поддержки размерных величин Units

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

> with(Units);

[Add Base Unit, Add Dimension, AddSystem, AddUnit, Converter, GetDimension, Get Dimensions, GetSystem, SetSystems, GetUnit, GetUnits, HasDimension, HasSystem, HasUnit, Natural, Remove Dimension, RemoveSystem, Standard, Unit, UseContexts, UseSystem, UsingContexts, UsingSystem]

Большинство функций этого пакета достаточно просты и даже очевидны.

2.4.2. Примеры работы с размерными величинами

Ограничимся несколькими характерными примерами их применения (файл units):

> convert(4.532, units, N/m^2, (lb*f t/s^2)/ft^2);

3.045363395

> convert(W, dimensions), convert(W, dimensions, base);

> with(Units[Standard]):

> distance := 3.5*Unit(ft) + 2.4*Unit(m);

distance := 3.466800000 [m]

> force := distance*Unit(lb)/Unit(s)^2;

force := 1.572514028 [N]

> convert(force, units, lbf);

.3535152166 [lbf]

> V := i*R;

V:=iR

> eval(V, [i = 2.3*Unit(mA), R = 50.0*Unit(uOmega)]);

.1150000000 10-6 [V]

> convert(%, units, nV );

115.0000000 [nV]

2.4.3. Ассистент преобразования размерных величин в Maple 9.5/10

В Maple 9.5/10 преобразования размерных величин упрощаются применением ассистента Unit Converter..., который преобразует значение Value размерной величины с размерностью Dimension с одной величины в другую. Окно ассистента показано на рис. 2.13. Дан пример преобразования 1 фута в метрическую величину (1 фут=0,3048 м).

Рис. 2.13. Окно ассистента — конвертора размерных величин

Списки Dimension, From и То задают наименование размерной величины, начальную единицу ее измерения и конечную единицу измерения. Нетрудно заметить, что для преобразования используется функция convert.

2.4.4. Пакет научных констант ScientificConstants

Еще в Maple 8 был добавлен пакет расширения для добавления и применения научных констант, химических элементов и свойств, что резко расширяет возможности применения системы в физических и химических расчетах. Вызов пакета ScientificConstants осуществляется командой:

> with(ScientificConstants);

Warning, the name Element has been rebound

[AddConstant, Add Element, AddProperty, Constant, Element, GetConstant, GetConstants, GetElement, GetElements, GetError, Get Isotopes, Get Properties, Get Property, GetUnit, GetValue, HasConstant, HasElement, HasProperty, ModifyConstant, ModifyElement]

Нетрудно заметить, что функции пакета обеспечивают следующие возможности для констант (Constant), элементов (Element) и свойств (Property):

• Add — добавление;

• Get — вывод;

• Has — проверка на наличие объекта в пакете;

• Modify — модификация. Функция

GetError(sc_obj)

возвращает значение ошибки, с которой задана константа — объект sc_obj. Знание ошибки существенно при организации критичных к ошибкам научно-технических расчетов.

2.4.5. Работа с научными константами

Вызов всех научных констант осуществляется следующим образом (файл sconst):

> with(ScientificConstants):

> GetConstants();

Eh, F, G, G0, Kf, MEarth, MSun, Ф0, R, REarth, RK, R∞, Vm, Z0, a0, ae, aμ, α, b, с, c1.L, c1, c2, e, ε0, g, ge, gμ, gn, gp, γe, γn, γp, gamma_primeh, gamma_primep, h, k, lp, λC.T, λC.μ, λC.n, λC.p, λC,, mP, mτ, mα, md, me, mh, mμ, mn, mp, mu, μ0, μB, μN, μd, μe, μμ, μn, μp, mu_primeh, mu_primep, n0, re, σ, σe, sigma_primep, tp

Теперь уточним данные по константе g — ускорению свободного падения:

> Constant(g);

Constant(g)

> GetValue(%); GetUnit(%%);

> Units: -UsingSystem();

SI

> Constant(g, units);

А теперь проверим, есть ли в пакете константы g и edu

> HasConstant(g);

true

> HasConstant(edu);

false

и вычислим погрешность, с которой задана константа G:

> GetError(Constant(G));

0.11 10-12

2.4.6. Вызов списка и свойств химических элементов

Для вызова имен всех элементов периодической таблицы Менделеева можно использовать следующую команду:

> GetElements();

Н, Не, Li, Be, В, С, N, О, F, Ne, Na, Mg, Al, Si, P, S, Cl, Ar, K, Ca, Sc, Ti, V, Cr, Mn, Fe, Co, Ni, Cu, Zn, Ga, Ge, As, Se, Br, Kr, Rb, Sr, Y, Zr, Nb, Mo, Tc, Ru, Rh, Pd, Ag, Cd, In, Sn, Sb, Те, I, Xe, Cs, Ba, La, Ce, Pr, Nd, Pm, Sm, Eu, Gd, Tb, Dy, Ho, Er, Tm, Yb, Lu, Hf, Та, W, Re, Os, Ir, Pt, Au, Hg, Tl, Pb, Bi, Po, At, Rn, Fr, Ra, Ac, Th, Pa, U, Np, Pu, Am, Cm, Bk, Cf, Es, Fm, Md, No, Lr, Rf, Db, Sg, Bh, Hs, Mt, Uun, Uuu, Uub, Uuq, Uuh

А теперь выведем характеристики элемента А — алюминия:

> GetElement(Al, name, meltingpoint, boilingpoint);

13, name = aluminium, meltingpoint = [value = 933.47, uncertainly = undefined, units = K], boilingpoint = [value = 2792., uncertainly = undefined, units = K]

2.4.7. Применение пакета ScientificConstants

В справке системы Maple 9.5 можно найти примеры применения пакета ScientificConstants в химических и физических расчетах. Интересные примеры таких расчетах даны в документе «Applications of the ScientificConstants Package». Ha рис. 2.14 показано начало этого документа, в котором содержится пример на вычисление количества молекул, которое необходимо для получения 10 граммов вещества с химической формулой С3Н6O. Вначале математически синтезируется молекула этого вещества, ее вес конвертируется в систему единиц SI и в конце находится число молекул вещества.

Рис. 2.14. Пример вычисления числа молекул для получения 10 граммов вещества С3Н6O

Приведенный документ является наглядным примером создания в среде Maple электронных документов, уроков и книг. Он построен с применением открывающихся и закрывающихся ячеек. Читателю, всерьез работающего с системой Maple стоит приучить себя готовить свои документы в таком же стиле — средства для этого были описаны в Главе 1.

В другом примере (рис. 2.15) вычисляется энергия ионизации вещества и строится график ее зависимости от порядкового номера элемента вещества в таблице периодической системы элементов. График наглядно демонстрирует характерные почти периодические колебания энергии ионизации.

Рис. 2.15. Построение зависимости энергии ионизации вещества от его номера в таблице периодической системы элементов

2.5. Функции для работы со строковыми данными

2.5.1. Создание и применение строковых данных

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

1 ... 22 23 24 25 26 27 28 29 30 ... 125
Перейти на страницу:
На этой странице вы можете бесплатно читать книгу Maple 9.5/10 в математике, физике и образовании - Владимир Дьяконов.
Комментарии