linspace
генерирует линейно распределённые числа между двумя достижимыми границами
Синтаксис
row = linspace(x1, x2) row = linspace(x1, x2, n) Matrix = linspace(Col1, Col2) Matrix = linspace(Col1, Col2, n)
Аргументы
- x1, x2
Вещественные или комплексные скаляры, или кодированные целочисленные скаляры: границы между которыми должны быть сгенерированы значения.
- Col1, Col2
Вектор-столбцы одинаковой высоты, состоящие из вещественных или комплексных чисел или кодированных целочисленных скаляров.
- n
целое количество запрошенных значений или столбцов. Значение по умолчанию: 100.
- row
вектор-строка из
n
чисел.- Matrix
Матрица, в которой
n
столбцов чисел.
Описание
linspace(x1, x2)
генерирует вектор-строку из
n
равномерно распределённых значений в диапазоне
точно от x1
до x2
.
Синтаксис Вместо фиксированного шага указанным значением, функция
|
Если x1
или x2
являются комплексными
числами, то linspace(x1,x2)
интерполирует отдельно вещественную
и мнимую части x1
и x2
.
Если указаны вектор-столбцы Col1
и Col2
,
то функция linspace
работает по строкам: результирующая
матрица Matrix
имеет то же количество строк и
n
столбцов, которое мы получим Matrix(i,:) = linspace(Col1(i), Col2(i), n)
.
В случае, когда указанные границы являются кодированными целыми числами, то фактический шаг
может колебаться на единицу в последовательности. |
Примеры
linspace(1, %pi, 0) // n = 0 linspace(1, 2, 10) // x2 > x1 : значения увеличиваются linspace(2, 1, 10) // x2 < x1 : значения уменьшаются linspace(1+%i, 2-2*%i, 5) // с комплексными числами linspace([1:4]', [5:8]', 10) // со столбцами на входе
--> linspace(1, %pi, 0) // n = 0 ans = [] --> linspace(1, 2, 10) // x2 > x1 : значения увеличиваются ans = 1. 1.111 1.222 1.333 1.444 1.556 1.667 1.778 1.889 2. --> linspace(2, 1, 10) // x2 < x1 : значения уменьшаются ans = 2. 1.889 1.778 1.667 1.556 1.444 1.333 1.222 1.111 1. --> linspace(1+%i, 2-2*%i, 5) // с комплексными числами ans = 1. +i 1.25 +0.25i 1.5 -0.5i 1.75 -1.25i 2. -2.i --> linspace([1:4]', [5:8]', 10) // со столбцами на входе ans = 1. 1.444 1.889 2.333 2.778 3.222 3.667 4.111 4.556 5. 2. 2.444 2.889 3.333 3.778 4.222 4.667 5.111 5.556 6. 3. 3.444 3.889 4.333 4.778 5.222 5.667 6.111 6.556 7. 4. 4.444 4.889 5.333 5.778 6.222 6.667 7.111 7.556 8.
С кодированными целыми числами: Шаг может колебаться на единицу в последовательности:
--> x = linspace(int8([5;127]), int8([127;5]), 10) ans = 5 18 32 45 59 72 86 99 113 127 127 114 100 87 73 60 46 33 19 5 --> x(:,1:$-1) - x(:,2:$) ans = -13 -14 -13 -14 -13 -14 -13 -14 -14 13 14 13 14 13 14 13 14 14
Смотрите также
История
Версия | Описание |
5.4.0 |
|
6.0 |
|
6.0.2 | Теперь linspace() может быть надёжно использован для последовательностей кодированных целых чисел. |
Report an issue | ||
<< eye | Элементарные матрицы | logspace >> |