Типы данных Octave - плавающие и двойные - PullRequest
0 голосов
/ 29 марта 2010

Я пишу фреймворк для записи файлов HDF с JAVA (используя некоторые существующие фреймворки). Мне нужно сохранить совместимость с октавой. То есть октава должна иметь возможность читать файлы, которые пишет мой фреймворк, и наоборот.

У меня вопрос: есть ли у Octave два типа данных - float и double, или он использует только double?

спасибо

1 Ответ

1 голос
/ 29 марта 2010

Внутренне Octave обрабатывает как двойной скаляр, так и скаляр с плавающей точкой, а также матрицы с плавающей точкой или двойную. octave использует шаблоны для создания экземпляра скалярного типа, поэтому octave может эффективно обрабатывать оба типа.

Но, похоже, ваша проблема в том, какой формат данных использовать при обмене данными с Octave с использованием файлов.

Формат данных октав по умолчанию для сохранения в двоичном формате, например значения с плавающей запятой двойной точности. Но Octave может сохранять в формате с плавающей запятой, обрезая данные.

Octave также можно сохранять в формате HDF5. Все поддерживаемые форматы перечислены здесь .

Сериализация двоичных объектов Java, с другой стороны, немного сложнее. Это потому, что Java поддерживает рефлексию и может автоматически сериализовать и создавать экземпляры объектов, но, по моему опыту, написанный файл несовместим между версиями JVM.

...