matlab.io.fits.createTbl

Создайте новое расширение ASCII или двоичной таблицы

Синтаксис

fptr = createTbl(fptr,tbltype,nrows,ttype,tform,tunit,extname)

Описание

fptr = createTbl(fptr,tbltype,nrows,ttype,tform,tunit,extname) создает новое расширение ASCII или связуемой таблицы. tbltype должно быть либо 'binary' или 'ascii'. The nrows аргумент задает начальное количество строк, которые будут созданы в таблице, и обычно должен быть нулем. tunit задает модули для каждого столбца, но может быть пустым массивом ячеек, если не требуется модулей. extname задает имя внутреннего абонента, но может быть опущено.

tform содержит формат столбца, заданный как массив ячеек из векторов символов или строковые массивы. Для двоичных таблиц значения должны быть в форме 'rt', где 'r' количество повторений и 't' является одной из следующих букв.

'A'ASCII- символа
'B'Байт или uint8
'C'Комплекс (одинарная точность)
'D'Двойная точность
'E'Одинарная точность
'I'int16
'J'int32
'K'int64
'L'Логичный
'M'Комплекс (двойная точность)
'X'Бит (int8 нули и таковые)

Столбец также может быть задан как имеющий переменную ширину, если tform значение имеет форму '1Pt' или '1Qt', где 't' задает тип данных, как описано выше.

Для таблиц ASCII, tform содержит значения, которые принимают форму:

'Iw'int16 столбец с 'w' ширины
'Ай'Столбец ASCII с 'w' ширины
'Fww.dd'Фиксированная точка
'Eww.dd' Одинарная точность с 'ww' ширины и точность 'dd'
'Dww.dd'Двойная точность с 'ww' ширины и точность 'dd'

Эта функция соответствует fits_create_tbl(ffcrtb) функция в CFITSIO library C API.

Примеры

Создайте двоичную таблицу. Первый столбец содержит строки длиной девять символов каждая. Второй столбец содержит четырехэлементные последовательности бит. Третий столбец содержит трехэлементные последовательности uint8 значения. Четвертый столбец содержит скаляры двойной точности.

import matlab.io.*
fptr = fits.createFile('myfile.fits');
ttype = {'Col1','Col2','Col3','Col4'};
tform = {'9A','4X','3B','1D'};
tunit = {'m/s','kg','kg/m^3','candela'};
fits.createTbl(fptr,'binary',10,ttype,tform,tunit,'my-table');
fits.closeFile(fptr);
fitsdisp('myfile.fits');

Составьте двухколоночную таблицу, в которой первый столбец имеет одно значение двойной точности, но второй столбец имеет значение двойной точности переменной длины.

import matlab.io.*
fptr = fits.createFile('myfile2.fits');
ttype = {'Col1','Col2'};
tform = {'1D','1PD'};
fits.createTbl(fptr,'binary',0,ttype,tform);
fits.closeFile(fptr);
fitsdisp('myfile2.fits');