9.3 Формат файла TB2

В программном комплексе EULER файлы с типовым расширением .tb2 (формата TB2) используются для хранения таблицы значений функции от двух переменных при ее создании методом Функция по таблице двух переменных из файла. Файл содержит информацию в виде текста. Пользователь может создавать и редактировать этот файл с помощью обычных текстовых редакторов, не добавляющих служебные символы. Фактически, файл представляет собой таблицу значений функции с заданным числом столбцов и неограниченным числом строк. В столбцах располагаются значения функции в зависимости от значения первой переменной. В строках располагаются значения функции в зависимости от значения второй переменной.
Файл состоит из пяти секций, следующих друг за другом в строгой последовательности.
1.     Число столбцов в таблице значений функции.
2.     Описание функции.
3.     Описание первой переменной.
4.     Описание второй переменной.
5.     Строки (содержание) таблицы.
В качестве разделителей секций и отдельных лексем в секциях могут использоваться пробелы, символы горизонтальной и вертикальной табуляции, а также символы новой строки. Количество подряд идущих разделителей может быть любым.
Число столбцов в таблице значений функции
Число столбцов должно быть целым числом больше единицы.
Описание функции
Описание функции состоит из имени и единицы измерения. Имя функции в файле таблицы должно удовлетворять тем же требованиям, что и имена объектов в языке описания ММС. Имя функции в файле таблицы может отсутствовать. Это имя используется как комментарий и никак не связано с именем функции, являющейся объектом ММС и использующей данный файл с таблицей. Единицы измерения функции записываются в принятой в программном комплексе EULER форме. Они должны быть указаны в обязательном порядке. Для безразмерной функции эта запись имеет следующий вид: "[ ]".
Описание первой переменной
Описание первой переменной состоит из имени и единицы измерения, аналогично описанию функции. Имя переменной может отсутствовать. За описанием следует последовательность числовых констант. Они определяют значения первой переменной для значений функции, расположенных по столбцам. Количество этих числовых констант должно совпадать с количеством столбцов в таблице значений функции. Все числа следует располагать строго в порядке возрастания или убывания. Запись числовых констант должна удовлетворять тем же требованиям, что и запись числовых констант в языке описания ММС.
Описание второй переменной
Описание второй переменной аналогично описанию функции и состоит из имени и единицы измерения. Имя переменной может отсутствовать.
Строки (содержание) таблицы
Каждая строка таблицы представляет собой последовательность числовых констант. Первая константа определяет значение второй переменной, для которого задаются значения функции в данной строке. Далее следуют значения самой функции для значений первой переменной, указанных в ее описании. Количество строк не ограничено. Необходимо, чтобы все строки располагались строго в порядке возрастания или убывания значения второй переменной. Запись числовых констант должна удовлетворять тем же требованиям, что и запись числовых констант в языке описания ММС.
Комментарии
Комментарий – это текст, который рассчитан на пользователя. Транслятор программного комплекса этот текст игнорирует. Комментарий обозначается двумя способами.
1.     /* Произвольный текст */
2.     // Произвольный текст
В первом случае комментарий начинается парой символов ‘/*’ и заканчивается – ‘*/’. Во втором случае он начинается символами ‘//’ и завершается концом строки. Текст комментариев транслятором не анализируется и пропускается.
Пример
//Коэффициент лобового сопротивления Cx
// alfa - угол атаки
// M - число М полета
5
Cx [ ]
alfa [ deg ]         0          15        30         45        70
M [ ]
0.0                  0.38      0.38      0.36      0.33      0.205
0.6                  0.38      0.38      0.36      0.33      0.205
0.8                  0.39      0.39      0.37      0.33      0.208
0.9                  0.43      0.42      0.40      0.36      0.23
1.0                  0.59      0.57      0.54      0.49      0.34
1.2                  0.73      0.72      0.69      0.65      0.49
1.4                  0.71      0.70      0.67      0.62      0.47
1.6                  0.67      0.66      0.63      0.58      0.39
1.8                  0.62      0.61      0.58      0.53      0.34