math::complexnumbers
ИМЯ
math::complexnumbers — простой пакет для работы с комплексными числами
Содержание
КРАТКОЕ ОПИСАНИЕ
package require Tcl 8.5 9
package require math::complexnumbers ?1.0.3?
::math::complexnumbers::+ z1 z2
::math::complexnumbers::- z1 z2
::math::complexnumbers::* z1 z2
::math::complexnumbers::/ z1 z2
::math::complexnumbers::conj z1
::math::complexnumbers::real z1
::math::complexnumbers::imag z1
::math::complexnumbers::mod z1
::math::complexnumbers::arg z1
::math::complexnumbers::complex real imag
::math::complexnumbers::tostring z1
::math::complexnumbers::exp z1
::math::complexnumbers::sin z1
::math::complexnumbers::cos z1
::math::complexnumbers::tan z1
::math::complexnumbers::log z1
::math::complexnumbers::sqrt z1
::math::complexnumbers::pow z1 z2
ОПИСАНИЕ
Математический модуль complexnumbers предоставляет простую реализацию комплексных чисел на чистом Tcl. Предполагается, что пользователь знает, что работает с комплексными числами в абстрактном виде, и хочет добиться максимально возможной производительности в рамках ограничений интерпретируемого языка.
Поэтому процедуры, определённые в этом пакете, предполагают, что аргументы являются корректными (представлениями) «комплексными числами», то есть списками из двух чисел, задающих действительную и мнимую части комплексного числа (хотя это лишь деталь: используйте команду complex для создания корректного числа).
Большинство процедур реализуют основные арифметические операции или элементарные функции, а несколько других выполняют преобразование в различные представления и обратно:
set z [complex 0 1]
puts "z = [tostring $z]"
puts "z**2 = [* $z $z]
получим:
z = i
z**2 = -1
ДОСТУПНЫЕ ПРОЦЕДУРЫ
Пакет реализует все или большинство основных операций и элементарных функций.
Арифметические операции:
-
::math::complexnumbers::+ z1 z2
Складывает два аргумента и возвращает полученное комплексное число
-
complex z1 (входной)
Первый аргумент при сложении
-
complex z2 (входной)
Второй аргумент при сложении
-
-
::math::complexnumbers::- z1 z2
Вычитает второй аргумент из первого и возвращает полученное комплексное число. Если указан только один аргумент, возвращается противоположное число z1 (т. е. -z1)
-
complex z1 (входной)
Первый аргумент при вычитании
-
complex z2 (входной)
Второй аргумент при вычитании (необязательный)
-
-
::math::complexnumbers::* z1 z2
Перемножает два аргумента и возвращает полученное комплексное число
-
complex z1 (входной)
Первый аргумент при умножении
-
complex z2 (входной)
Второй аргумент при умножении
-
-
::math::complexnumbers::/ z1 z2
Делит первый аргумент на второй и возвращает полученное комплексное число
-
complex z1 (входной)
Первый аргумент (числитель) при делении
-
complex z2 (входной)
Второй аргумент (знаменатель) при делении
-
-
::math::complexnumbers::conj z1
Возвращает сопряжённое к заданному комплексному числу
-
complex z1 (входной)
Рассматриваемое комплексное число
-
Процедуры преобразования и получения сведений:
-
::math::complexnumbers::real z1
Возвращает действительную часть заданного комплексного числа
-
complex z1 (входной)
Рассматриваемое комплексное число
-
-
::math::complexnumbers::imag z1
Возвращает мнимую часть заданного комплексного числа
-
complex z1 (входной)
Рассматриваемое комплексное число
-
-
::math::complexnumbers::mod z1
Возвращает модуль заданного комплексного числа
-
complex z1 (входной)
Рассматриваемое комплексное число
-
-
::math::complexnumbers::arg z1
Возвращает аргумент (угол в радианах) заданного комплексного числа
-
complex z1 (входной)
Рассматриваемое комплексное число
-
-
::math::complexnumbers::complex real imag
Создаёт комплексное число «real + imag*i» и возвращает его
-
float real (входной)
Действительная часть нового комплексного числа
-
float imag (входной)
Мнимая часть нового комплексного числа
-
-
::math::complexnumbers::tostring z1
Преобразует комплексное число к виду «real + imag*i» и возвращает строку
-
float complex (входной)
Комплексное число для преобразования
-
Элементарные функции:
-
::math::complexnumbers::exp z1
Вычисляет экспоненту для заданного комплексного аргумента и возвращает результат
-
complex z1 (входной)
Комплексный аргумент функции
-
-
::math::complexnumbers::sin z1
Вычисляет синус заданного комплексного аргумента и возвращает результат
-
complex z1 (входной)
Комплексный аргумент функции
-
-
::math::complexnumbers::cos z1
Вычисляет косинус заданного комплексного аргумента и возвращает результат
-
complex z1 (входной)
Комплексный аргумент функции
-
-
::math::complexnumbers::tan z1
Вычисляет тангенс заданного комплексного аргумента и возвращает результат
-
complex z1 (входной)
Комплексный аргумент функции
-
-
::math::complexnumbers::log z1
Вычисляет логарифм (главное значение) заданного комплексного аргумента и возвращает результат
-
complex z1 (входной)
Комплексный аргумент функции
-
-
::math::complexnumbers::sqrt z1
Вычисляет квадратный корень (главное значение) заданного комплексного аргумента и возвращает результат
-
complex z1 (входной)
Комплексный аргумент функции
-
-
::math::complexnumbers::pow z1 z2
Вычисляет «z1 в степени z2» и возвращает результат
-
complex z1 (входной)
Комплексное число, возводимое в степень
-
complex z2 (входной)
Комплексная степень
-
Ошибки, идеи, отзывы
В этом документе и описываемом в нём пакете, несомненно, могут содержаться ошибки и другие проблемы. Сообщайте о них в категории math :: complexnumbers в системе отслеживания Tcllib. Также сообщайте о любых идеях по улучшению пакета и/или документации.
Предлагая изменения кода, пожалуйста, предоставляйте унифицированные различия, то есть вывод команды diff -u.
Обратите также внимание, что вложения предпочтительнее вставленных непосредственно в текст патчей. Вложения можно добавить, перейдя к форме Edit соответствующей заявки сразу после её создания, а затем воспользовавшись самой левой кнопкой на дополнительной панели навигации.
КАТЕГОРИЯ
Математика
АВТОРСКИЕ ПРАВА
Авторские права © 2004 Arjen Markus