Квадратный корень из суммы квадратов (гипотенуза)
C = hypot(A,B)
Вычислите гипотенузу прямоугольного треугольника с длинами стороны 3
и 4
.
C = hypot(3,4)
C = 5
Исследуйте различие между использованием hypot
и кодированием основного уравнения hypot
в М-коде.
Создайте анонимную функцию, которая выполняет по существу ту же основную функцию как hypot
.
myhypot = @(a,b)sqrt(abs(a).^2+abs(b).^2);
myhypot
не имеет того же фактора для потери значимости и переполняет поведения, которое предлагает hypot
.
Найдите верхний предел, в котором myhypot
возвращает полезное значение. Вы видите, что эта тестовая функция достигает своего максимума приблизительно в 1e154
, возвращая бесконечный результат в той точке.
myhypot(1e153,1e153)
ans = 1.4142e+153
myhypot(1e154,1e154)
ans = Inf
Сделайте то же использование функции hypot
и заметьте, что hypot
работает со значениями приблизительно до 1e308
, который приблизительно равен значению для realmax
на вашем компьютере (самое большое представимое число с плавающей запятой с двойной точностью).
hypot(1e308,1e308)
ans = 1.4142e+308
hypot(1e309,1e309)
ans = Inf
A, B
Входные массивыВходные массивы, заданные как скаляры, векторы, матрицы или многомерные массивы. Входные параметры A
и B
должны или быть одного размера или иметь размеры, которые совместимы (например, A
является M
-by-N
матрица, и B
является скаляром или 1
-by-N
вектор - строка). Для получения дополнительной информации см. "Совместимые размеры массивов для основных операций".
Если ни A
, ни B
не является Inf
, но одни или оба входных параметров NaN
, то hypot
возвращает NaN
.
Типы данных: single | double
Поддержка комплексного числа: Да
Для действительных входных параметров hypot
имеет несколько поведений, которые отличаются от рекомендуемых в Стандарте IEEE®-754.
MATLAB® | IEEE | |
---|---|---|
|
|
|
|
|
|
hypot(Inf,NaN) |
|
|
hypot(-Inf,NaN) |
|
|
Эта функция полностью поддерживает "высокие" массивы. Для получения дополнительной информации см. Раздел "Высокие массивы".
Эта функция полностью поддерживает массивы графического процессора. Для получения дополнительной информации смотрите функции MATLAB Выполнения на графическом процессоре (Parallel Computing Toolbox).
Эта функция полностью поддерживает распределенные массивы. Для получения дополнительной информации смотрите функции MATLAB Выполнения с Распределенными Массивами (Parallel Computing Toolbox).
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.