Создайте полуточность числовой объект
Используйте half
конструктор, чтобы присвоить тип данных полуточности номеру или переменной. Тип данных полуточности занимает 16 битов памяти, но ее представление с плавающей точкой позволяет ему обработать более широкие динамические диапазоны, чем целое число или типы данных с фиксированной точкой, одного размера.
Для получения дополнительной информации смотрите Числа с плавающей запятой (Fixed-Point Designer).
v
— Входной массивВходной массив, заданный как скалярный, векторный, матричный или многомерный массив.
Типы данных: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| logical
Поддержка комплексного числа: Да
Эти функции поддерживаются для использования с входными параметрами полуточности.
abs | Абсолютное значение и комплексная амплитуда |
acos | Обратный косинус в радианах |
asin | Обратный синус в радианах |
atanh | Гиперболический арктангенс |
ceil | Округление в сторону плюс бесконечности |
conv | Свертка и умножение полиномов |
conv2 | 2D Свертка |
cos | Косинус аргумента в радианах |
cospi | Вычислите cos(X*pi), точно |
dot | Скалярное произведение |
exp | Экспоненциал |
expm1 | Вычислите exp (x)-1 точно для маленьких значений x |
fix | Округление в сторону нуля |
floor | Округление в сторону минус бесконечности |
fma | Умножьте и добавьте, что сплавленное использование умножается, добавляет подход |
hypot | Квадратный корень из суммы квадратов (гипотенуза) |
ldivide | Левое деление массива |
log | Натуральный логарифм |
log1p | Вычисление log(1+x) точно для маленьких значений x |
mean | Среднее значение массива |
minus | Вычитание |
mod | Остаток после деления (операция с модулем) |
mtimes | Умножение матриц |
plus | Сложение |
pow10 | Основывайте 10 степеней и числа полуточности шкалы |
pow2 | Основывайте 2 степени и числа с плавающей запятой шкалы |
prod | Произведение элементов массива |
rdivide | Деление правого массива |
rem | Остаток после деления |
round | Округление к самому близкому десятичному числу или целому числу |
rsqrt | Взаимный квадратный корень |
sin | Синус аргумента в радианах |
sinpi | Вычислите sin (X*pi) точно |
sqrt | Квадратный корень |
sum | Сумма элементов массива |
tanh | Гиперболическая касательная |
times | Умножение |
uminus | Унарный минус |
uplus | Унарный плюс |
cast | Преобразуйте переменную в другой тип данных |
cell | CellArray |
double | Массивы с двойной точностью |
eps | Относительная точность с плавающей точкой |
Inf | Создайте массив всего Inf значения |
int16 | 16-битные массивы целого числа со знаком |
int32 | 32-битные массивы целого числа со знаком |
int64 | 64-битные массивы целого числа со знаком |
int8 | 8-битные массивы целого числа со знаком |
isa | Определите, задал ли введенный тип данных |
isfloat | Определите, является ли введенный типом данных с плавающей точкой |
islogical | Определите, ли введенный логический массив |
isnan | Определите, какие элементы массива являются NaN |
isnumeric | Определите, является ли введенный числовым массивом |
isreal | Определите, является ли массив вещественным |
logical | Преобразуйте числовые значения в logicals |
NaN | Создайте массив всего NaN значения |
single | Массивы с одинарной точностью |
uint16 | 16-битные массивы беззнаковых целых чисел |
uint32 | 32-битные массивы беззнаковых целых чисел |
uint64 | 64-битные массивы беззнаковых целых чисел |
uint8 | 8-битные массивы беззнаковых целых чисел |
all | Определите, являются ли все элементы массива ненулевыми или true |
and | Найдите логический AND |
any | Определите, являются ли какие-либо элементы массива ненулевыми |
eq | Определите равенство |
ge | Определите больше, чем или равный |
gt | Определите больше, чем |
le | Определите меньше чем или равный |
lt | Определите меньше, чем |
ne | Определите неравенство |
not | Найдите логическими НЕТ |
or | Найдите логический OR |
cat | Конкатенация массивов |
colon | Векторное создание, индексирование массивов и for - итерация цикла |
eye | Единичная матрица |
full | Преобразуйте разреженную матрицу в полное устройство хранения данных |
horzcat | Горизонтальная конкатенация для разнородных массивов |
iscolumn | Определите, является ли входной параметр вектором - столбцом |
isempty | Определите, пуст ли массив |
isfinite | Определите, какие элементы массива конечны |
isinf | Определите, какие элементы массива бесконечны |
ismatrix | Определите, является ли входной параметр матрицей |
isrow | Определите, является ли входной параметр вектором - строкой |
isscalar | Определите, является ли входной параметр скаляром |
isvector | Определите, является ли входной параметр вектором |
length | Длина самого большого измерения массива |
max | Максимальные элементы массива |
min | Минимальные элементы массива |
ndims | Количество измерений массива |
numel | Количество элементов массива |
ones | Создайте массив из всех единиц |
repmat | Копирование массива |
reshape | Изменение размерности массива |
size | Размер массивов |
subsasgn | Переопределите преобразованное в нижний индекс присвоение |
subsref | Преобразованная в нижний индекс ссылка |
transpose | Транспонируйте вектор или матрицу |
vertcat | Вертикальная конкатенация для разнородных массивов |
zeros | Создайте массив всех нулей |
bar | Столбчатый график |
barh | Горизонтальный столбчатый график |
fplot | Постройте график выражения или функции |
line | Создайте примитивную линию |
plot | 2D график |
plot3 | 3-D точка или линейный график |
plotmatrix | Матрица графика поля точек |
rgbplot | Постройте палитру |
scatter | График поля точек |
scatter3 | 3-D точечный график |
xlim | Установите или запросите x - пределы по осям |
ylim | Установите или запросите y - пределы по осям |
zlim | Установите или запросите z - пределы по осям |
Чтобы бросить номер с двойной точностью к половине точности, используйте half
функция.
a = half(pi)
a = half 3.1406
Можно также использовать half
функционируйте, чтобы бросить существующую переменную к половине точности.
v = single(magic(3))
v = 3x3 single matrix
8 1 6
3 5 7
4 9 2
a = half(v)
a = 3x3 half matrix 8 1 6 3 5 7 4 9 2
Следующие функции, которые поддерживают входные параметры полуточности, не поддерживают комплексные входные параметры полуточности.
rsqrt
fma
Все функции, которые поддерживают входные параметры полуточности, поддерживают генерацию кода, за исключением rsqrt
функция.
В MATLAB®, isobject
функция возвращает true с входом полуточности. Однако в сгенерированном коде, эта функция возвращает false.
Если ваш целевой компьютер не имеет нативной поддержки полуточности, то половина используется в качестве типа хранения с арифметическими операциями, выполняемыми в одинарной точности.
Некоторые функции используют половину только в качестве типа хранения, и арифметика всегда выполняется в с одинарной точностью, независимо от целевого компьютера.
Генерация кода для 32-битных целей не поддержана, если ваш код MATLAB содержит типы данных полуточности.
CUDA® вычисляет возможность 5,3, или выше требуется для того, чтобы сгенерировать и выполнить код с типами данных полуточности.
Версия инструментария CUDA 10,0 или выше требуется для того, чтобы сгенерировать и выполнить код с типами данных полуточности.
Выделение памяти (malloc
) режим для генерации кода CUDA должен быть установлен в 'Discrete'
.
Для получения дополнительной информации смотрите coder.gpuConfig
.
Сложные типы данных полуточности не поддержаны для генерации кода графического процессора.
Для Генерации кода графического процессора умножение матриц полуточности может только быть выполнено с действительными входными параметрами.
В MATLAB, isobject
функция возвращает true с входом полуточности. Однако в сгенерированном коде, эта функция возвращает false.
Если ваш целевой компьютер не имеет нативной поддержки полуточности, то половина используется в качестве типа хранения с арифметическими операциями, выполняемыми в одинарной точности.
Некоторые функции используют половину только в качестве типа хранения, и арифметика всегда выполняется в с одинарной точностью, независимо от целевого компьютера.
Генерация кода для 32-битных целей не поддержана, если ваш код MATLAB содержит типы данных полуточности.
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.