SVET project

Документация на программу "СВЕТ": справочная информация

Данный файл скомпилирован на основе исходного текста встроенной справочной системы программы
Программа SVET-TV - Scalar and VEctor Tools (вариант Turbo Vision)
Дифференциальные операции
Операции суммирования, осреднения и вычисления потоков
Дополнительный инструментарий по работе с сетками и полями
Дополнительные возможности программы
Загрузка текущей расчетной сетки
Вычисление градиента скалярного поля
Вычисление дивергенции векторного поля
Вычисление ротора векторного поля
Вычисление дифференциальных величин
Суммирование и осреднение поля по части трехмерной области
Суммирование и осреднение поля по части граничной поверхности трехмерной области
Суммирование и осреднение поля по части внутренней сеточной поверхности трехмерной области
Поток через граничную поверхности трехмерной области
Поток через внутреннюю сеточную поверхность трехмерной области
Суммирование и осреднение поля по части поверхности двумерной области
Суммирование и осреднение поля по части внешней линии двумерной области
Суммирование и осреднение поля по части внутренней сеточной линии двумерной области
Поток через часть поверхности двумерной области
Поток через часть граничной линии двумерной области
Поток через часть внутренней сеточной линии двумерной области
Изменение установки текущей размерности расчетов, размерности и форматы файлов
Команды управления загрузкой текущей расчетной сетки
Формирование константного скалярного поля
Формирование константного векторного поля
Вычисление скалярного произведения двух векторных полей
Вычисление векторного произведения двух векторных полей
"Вырезка" подобласти из сетки либо поля
Вычисление модуля радиус-вектора векторного поля
Алгебраические операции над полями
Формирование поля по заданной формуле (формулам) и расчетной сетке
Осреднение значений в ячейках
Восстановление вершин (узлов) сетки
Использование калькулятора с расширенными вычислительными возможностями
Просмотр и изменение текущих установок программы
Окно информации о текущем состоянии программы
Окно с информацией о вычислительном процессе
Оптимальное управление памятью
"Недокументированные" возможности
Встроенный транслятор формул
Нумерация поверхностей
Параметры командной строки
Сообщения о критических ошибках
Диалог: операции суммирования и осреднения на внешней границе, вычисление потоков, вычисления на части плоской области
Диалог: операции суммирования и осреднения на внутренней линии или поверхности, вычисление потоков
Особенности интерфейса программы
Диалог при формировании константного векторного либо скалярного поля
Методы вычисления дифференциальных величин
Формирование прямоугольной сетки
Программа SVET-TV - Scalar and VEctor Tools
Прочитать из файла и установить в качестве текущих установки размера расчетной области
Определение ограничений по расчетной области
Формирование установок-ограничений по расчетной области
Команды управления текущей расчетной областью
Программа ведет протокол текущих вычислений и других производимых операций
Просмотр текстового файла
Сброс установки текущей сетки
Сброс установки ограничений по расчетной области
Меню в расширенном варианте
"Сборка" векторного поля из скалярных полей
"Разложение" векторного поля на скалярные составляющие
Описание диалогов при выполнении сервисных операций над полями
Различные алгебраические операции над полями
Другие функции программы, связанные с обработкой полей
Поддержка формата трехмерных векторов, заданных на плоской области
Общая структура программы
Добавление константы к скаляру
Умножение скаляра на константу
Добавление константы к вектору
Масштабирование вектора
Умножение скаляра на скаляр
Умножение вектора на скаляр
Сложение скалярных полей
Вычитание скалярных полей
Сложение векторных полей
Вычитание векторных полей
Формирование "стартового" поля с задаваемым пользователем числом нулевых компонент
Обработка полей с возможностью покомпонентного обращения
Особенности интерфейса
Перезаписать данные в заданном формате
Демонстрационная версия
Файлы пакета
Техническая поддержка
Просмотр последнего выводного файла
Сообщения об ошибках
Запуск задаваемой пользователем ДОС-команды
Запуск программ пакета FLAG

Программа SVET-TV - Scalar and VEctor Tools (вариант Turbo Vision)

Программа SVET (Scalar and VEctor Tools - скалярно-векторный инструментарий) создавалась на кафедре аэродинамики Санкт-Петербургского Государственного Технического Университета начиная с весны 1996 года до настоящего времени.

Программа позволяет работать со скалярными и векторными полями, заданными на структурированных сетках (трехмерных и плоских), выполнять различные сервисные операции, вычислять дифференциальные величины (градиент, дивергенцию и ротор), суммировать и осреднять поля, вычислять конвективные потоки скаляров.

В двух последних частях программы использованы различные готовые разработки студентов кафедры, но большая часть работы проделана Левченя Александром. В программе использованы процедуры, разработанные Евгением Михайловичем Смирновым, студентами Владиславом Арановым и Сергеем Грушиным; за консультации по процессу создания программы автор благодарит Владимира Вольдемаровича Риса и Эдуарда Анатольевича Рудинского.

При выполнении операций комплекса AverTool (суммирование, осреднение и вычисление потоков) следует помнить о несовпадении размерностей поля и сетки. Это сказывается на том, что не следует во избежание ошибки указывать близкие ограничения по одному из индексов - разница между его минимальным и максимальным значениями должна быть по крайней мере равна двум. Также при работе с данными процедурами следует помнить, что все ограничения по расчетной области указываются для исследуемого поля, т.е. могут быть на единицу больше соответствующей размерности сетки.

ВНИМАНИЕ! При расчете дифференциальных полей реализован тот же метод работы с памятью, что и в программе AverTool, т.е. вычисления выполняются за один прогон. Таким образом, на ПК с недостаточной оперативной памятью будет происходить ошибка, при обнаружении которой после соответствующего предупреждения работа прекращается. В данном случае необходимо для корректного окончания расчетов использовать неполные поля и сетки, причем при выполнении дифференциальных операций для этого не требуется предварительного "вырезания" областей из файлов.


Нумерация поверхностей
Оптимальное использование памяти
"Недокументированные" возможности программы
Встроенный транслятор формул
Обработка критических ошибок
Параметры командной строки
Особенности интерфейса
Размерности и форматы файлов
Особенности меню программы
Методы вычисления дифференциальных величин
Вывод протокола
Последние рекомендации
Демонстрационная версия
Файлы пакета
Техническая поддержка



Дифференциальные операции

Возможно вычисление градиента скалярного, дивергенции и ротора векторного полей, поддерживаются декартова и цилиндрическая системы координат.

Первые две команды меню позволяют выбрать метод вычисления дифференциальных величин

Вычисляется градиент скаляра, дивергенция и ротор вектора в трехмерной и двумерной декартовой и цилиндрической системах координат (в последнем случае поле задается в меридиональной плоскости), ротор вычисляется у трехкомпонентного вектора, заданного на двумерной сетке.

В результате некорректного ввода исходных данных возможно получение сообщений о недопустимом формате файлов или размере исходной области


Операции суммирования, осреднения и вычисления потоков

Возможно суммирование и осреднение скалярных и векторных полей по части граничной или внутренней сеточной поверхности, по части внутренней или граничной сеточной линии (двумерный случай). В аналогичных областях вычисляются потоки векторных полей и конвективные потоки скалярных полей. Набор возможных команд меню зависит от текущей размерности!

ВНИМАНИЕ! При вычислении потока через внутреннюю или граничную сеточную линию в цилиндрическом осесимметричном случае производится вычисление для всей "трубы", т.е. либо через поперечное сечение, либо через боковую стенку.

В результате некорректного ввода исходных данных возможно получение сообщений о недопустимом формате файлов или размере исходной области, при вводе ограничений по области вычислений сообщается об ошибочном по каким-то причинам значении ограничителя


Дополнительный инструментарий по работе с сетками и полями

Возможно вычисление скалярного и векторного произведений векторных полей, а также другие произвольные математические операции с полями. Возможно выделение подобласти из сетки либо поля, вычисление модуля радиус-вектора и формирование поля по сетке и заданным формулам для компонент поля (см. Встроенный транслятор формул). Выполняются преобразования между двумя форматами вывода чисел в файлах данных. Производится осреднение значений по ячейкам и восстановление узлов сетки.

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


Дополнительные возможности программы

Simple calculator

Здесь находятся команды вызова
простейшего калькулятора, его варианта с более широкими возможностями (см. Встроенный транслятор формул) и диалога по настройке параметров программы.


Загрузка текущей расчетной сетки

Осуществляется выбор и установка в качестве текущей (с выводом информации в соответствующем окне) сетки. После выбора файла на диске производятся вычисления объемов и векторов поверхностей ячеек с сохранением информации в оперативной памяти. В случае использования пределов по расчетной области (установлены ДО загрузки сетки) запрашивается имя файла для записи в него "вырезанной" сетки - ее используемой части; если нет необходимости выводить данный файл, укажите в качестве его имени пустую строку.

Методы вычисления дифференциальных величин

Выдается предупреждение о невозможности работы с данной сеткой, если хотя бы один из ее размеров меньше 3


Вычисление градиента скалярного поля

Описание процедуры - Вычисление дифференциальных величин


Вычисление дивергенции векторного поля

Описание процедуры - Вычисление дифференциальных величин


Вычисление ротора векторного поля

Описание процедуры - Вычисление дифференциальных величин

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


Вычисление дифференциальных величин

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

В случае, если не выбрана сетка, то производится установка в качестве текущей сетки из файла, который требуется указать.

Методы вычисления дифференциальных величин


Суммирование и осреднение поля по части трехмерной области

Укажите файл со входным полем и введите ограничения по объему подобласти, где будут производиться вычисления.


Суммирование и осреднение поля по части граничной поверхности трехмерной области

Описание диалогового окна


Суммирование и осреднение поля по части внутренней сеточной поверхности трехмерной области

Описание диалогового окна


Поток через граничную поверхности трехмерной области

Описание диалогового окна


Поток через внутреннюю сеточную поверхность трехмерной области

Описание диалогового окна


Суммирование и осреднение поля по части поверхности двумерной области

Описание диалогового окна


Суммирование и осреднение поля по части внешней линии двумерной области

Описание диалогового окна


Суммирование и осреднение поля по части внутренней сеточной линии двумерной области

Описание диалогового окна


Поток через часть поверхности двумерной области

Описание диалогового окна


Поток через часть граничной линии двумерной области

Описание диалогового окна


Поток через часть внутренней сеточной линии двумерной области

Описание диалогового окна


Изменение установки текущей размерности расчетов, размерности и форматы файлов

Данные задаются на структурированных трехмерных или двумерных сетках, в общем случае криволинейных и неортогональных. Структурированная (упорядоченная по индексам) сетка задается координатами узлов в декартовом пространстве или в меридиональной плоскости, если рассматривается осесимметричное поле. Трехмерная сетка делит рассматриваемую часть пространства на ячейки - восьмивершинники, а двумерная - на четырехугольники.

Программа позволяет работать в декартовой (трехмерный и двумерный случаи) и цилиндрической системах координат (в последнем случае поле задается в меридиональной плоскости). Все файлы сеток и полей содержат в первой строке размеры поля в стандартном порядке индексов - I, J, K. Последующие строки (их число равно произведению указанных размерностей) содержат значения скалярного поля (одно число), компоненты векторного поля (две или три компоненты; возможна работа с двумерными векторами, заданными на плоскости и трехмерными векторами, заданными как на плоскости, так и в пространстве) или координаты узлов сетки. Все вещественные числа в программе выводятся в экспоненциальном формате.

Величины в файле располагаются в определенном порядке, обусловленном удобством программирования на языке Фортран: быстрее всех изменяется первый индекс, медленнее - последний (величины, соответствующие ему, располагаются правее). При задании поля в цилиндрической системе координат роль первой компоненты выполняет высота, роль второй - радиус-вектор. Поля на сетке задаются одним из двух способов: либо в узлах сетки (первый способ), либо в центрах ячеек плюс в серединах ребер восьмивершинников, центрах граней граничных ячеек и угловых узлах (второй способ).

ВНИМАНИЕ! В текстовых файлах с исходными сетками и полями возможно использование запятых в качестве разделителей - они приравниваются к пробелам. Для использования данной возможности следует указать параметр /COMMA, однако в данном варианте загрузка файлов будет происходить медленнее.


Команды управления загрузкой текущей расчетной сетки

Возможна загрузка сетки из файла в качестве текущей, при этом вычисляются ее геометрические параметры; возможно снятие этих установок.


Формирование константного скалярного поля

При создании константного векторного или скалярного поля требуется указать имя выходного файла, размерность поля (если какая-либо сетка установлена в качестве текущей, берется ее размерность) и значения величин. ВНИМАНИЕ! В этих процедурах следует помнить о реальном способе реализации плоских расчетов в программе - через приписывание третьей компоненты к сетке и полям СЛЕВА (т.к. левый индекс по установленным стандартам изменяется быстрее). Поэтому в двумерном случае будут запрашиваться NJ- и NK- размерности, аналогично значения величин. В других местах программы от нелогичной нумерации удалось избавиться, однако в данных процедурах нашлись соображения в пользу "неудобного" способа ввода. Будьте внимательны несмотря на устойчивость программы к некорректному вводу !


Формирование константного векторного поля

Формирование константного скалярного поля


Вычисление скалярного произведения двух векторных полей

Действия аналогичны вычислению радиус-вектора


Вычисление векторного произведения двух векторных полей

Действия аналогичны вычислению радиус-вектора


"Вырезка" подобласти из сетки либо поля

Для корректной отработки данной процедуры следует установить размеры обрабатываемого файла в качестве размеров расчетной области и указать ограничения в пределах данной области. Для собственно "вырезки" следует указать исходный файл и ввести имя для выходного файла.


Вычисление модуля радиус-вектора векторного поля

При вычислении модуля вектора, скалярного или векторного произведений требуется указать на диске исходный файл(ы) и ввести имя выходного файла (полнота имени подразумевает наличие расширения).


Алгебраические операции над полями

Возможно использование формулы произвольной сложности с вызовом трансцендентных функций, см. Встроенный транслятор формул.

Для выполнения вычислительных операций с полями вводится число исходных файлов, на диске указываются все исходные файлы; вводится полное имя выходного файла и вычислительная формула, единая для всех компонент. Ссылки на значения данного исходного файла записываются в виде $#, где # - номер исходного файла в списке; например, для получения поля модуля разности между двумя векторными полями одинаковой размерности надо ввести формулу "abs($1-$2)" ; возможно использование не более семи исходных файлов.


Формирование поля по заданной формуле (формулам) и расчетной сетке

Для формирования нового поля указывается сетка на диске, полное имя выходного файла и его тип: вектор или скаляр. Затем вводится нужное количество формул для каждой из компонент выходного файла. Абсцисса, ордината и аппликата в данной точке указываются ссылками вида x, y и z соответственно; в случае цилиндрической осесимметричной модели возможно использование ссылок r и z (см. Встроенный транслятор формул).

Возможность использования тех или иных букв для указания на координаты узлов сетки зависит от текущей установки системы координат. Для того чтобы установить иную систему координат взамен текущей, можно выбрать ее по команде смены размерности подменю управления расчетной областью (команда смены размерности включена только в расширенный вариант меню). Можно вызвать команду вычисления дифференциальной величины в соответствующей системе координат, но вычислений не производить, т.е. отменить производимые действия. Это приведет к нужному результату, т.к. все процедуры вычисления дифференциальных величин в начале своей работы принудительно устанавливают в качестве текущей требуемую систему координат.

Число компонент создаваемого файла определяется на данный момент также не самым удобным способом. Вы выбираете, какое поле будете создавать: векторное или скалярное. Число компонент векторного поля (3 в трехмерном варианте, 2 в двумерном и 3 в двумерном с поддержкой трехкомпонентных) зависит от текущей установки размерности, изменение которой описано выше.


Осреднение значений в ячейках

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

Для проведения данного преобразования необходимо указать на диске исходный файл и ввести имя для файла - результата. ВНИМАНИЕ ! Преобразование производится только для целого поля без возможности использования пределов, поэтому иногда теоретически возможна нехватка памяти для данной операции.


Восстановление вершин (узлов) сетки

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

Для проведения данной операции необходимо указать на диске исходный файл и ввести имя для файла - результата. ВНИМАНИЕ ! Преобразование производится только для целой сетки без возможности использования пределов, поэтому иногда теоретически возможна нехватка памяти для данной операции.


Использование калькулятора с расширенными вычислительными возможностями

Scientific calculator

Вы просто вводите выражение, разрешенное синтаксисом
встроенного транслятора выражений, естественно, не используя букв-переменных, т.е. выражение однозначно рассчитывается в константу. После нажатия Enter при попытке расчета выражения либо выдается его числовое значение, либо сообщается об ошибке трансляции выражения.


Просмотр и изменение текущих установок программы

В диалоговом окне выводится информация о доступных для расчетов размеров сетки (максимальный размер зависит от производимой операции, см. Оптимальное управление памятью). Далее указывается путь к файлам программы (программа, справочная информация и дополнительные файлы).

Settings

В списке-переключателе перечислены опции программы, которые можно переключать в процессе ее работы: проверка ошибок (замедляет работу программы, но повышает ее надежность, рекомендуется при обнаружении неполадок для поиска ошибки); флаг поддержки запятой в качестве разделителя в файлах с исходными данными (замедляет загрузку файлов) и указатель формата вывода (широкий формат - фиксированная ширина полей мантиссы и порядка, узкий - оптимальная форма записи числа в зависимости от его порядка, исключение лишних нулей).

Там же устанавливается режим записи файла протокола (см. подробнее)

В списке-переключателе устанавливается режим экстраполяции данных при вычислении дифференциальных величин в поверхностном слое. Значения получаются "перетаскиванием" величины из ближайшей точки или линейным приближением по двум точкам вглубь по сеточной линии.

При выводе числовых величин всеми функциями программы используется значение максимальной ширины поля вывода как в экспоненциальном (столбчатом), так и экономичном формате. По умолчанию данная величина равна 15. Это значение, как и режим экстраполяции данных, можно изменять интерактивно в данном диалоге и в конфигурационном файле.

Управление некоторыми из данных ключей возможно при запуске программы (см. Параметры командной строки).

Программа запоминает установленные параметры в файле SVET.CFG, находящемся в одном каталоге с самой программой, и загружает эти установки при своем запуске в случае наличия на диске такого файла. Установки конфигурационного файла имеют более высокий приоритет, нежели параметры командной строки; запоминание установок в SVET.CFG производится при их изменении в диалоге настройки.

Файл SVET.CFG имеет текстовый формат и может выглядеть так:


+;Error checking Проверка ошибок
-;Comma support Поддержка запятых
+;Short value format Экономичный формат
A;Log state - None,Overwrite,Append Режим вывода протокола
HELPSVET.HLP;help file name Имя файла справки
-;Zero gradient extrapolation Режим экстраполяции
13;Output field width Ширина поля вывода
NC;User defined DOS command Задаваемая пользователем ДОС-команда

Значения флагов задаются представленными в комментариях вариантами, возможно указание имени файла из программного каталога, который будет использоваться при вызове справочной системы; данная установка не изменяется из программы, в диалоге настройки параметров можно лишь посмотреть ее значение (узнать путь к файлу справочной системы). Основная документация к программе не распространяется отдельным текстом во избежании дублирования либо несвоевременности информации об обновлениях, поэтому содержательная информация о функциях программы сосредоточена только в данной гипертекстовой справочной системе.

В новой версии программы в диалог выводится информация о заданной пользователем команде ДОС и флаге необходимости ссоздания трассировочных файлов в вычислительных процедурах (вывод промежуточных сеток и полей, отладочной информации - см. подробнее "Недокументированные" возможности программы).


Окно информации о текущем состоянии программы

Содержит информацию о текущей установленной размерности (возможные варианты см. в пункте Поддерживаемые размерности). Выводится имя файла текущей сетки и ее размер (или размер подобласти, в случае частичной загрузки). Отображается информация об установленных ограничениях по подобласти, если они есть: размер расчетной области и ограничения по ней; сообщается о выполняемой в данный момент операции и уровне ее выполнения (в процентах).

Vector Plus Vector


Окно с информацией о вычислительном процессе

В процессе вычислений сюда выводится протокол - информация обо всех производимых действиях.

Working window

Возможно дублирование протокола в файл (см.
подробнее)

Протокол может выглядеть, например, следующим образом:


Calculation of divergence
3D cartesian coordinates
Cell-vertex (FDM) data
Input G:\...D\3D_GRID.DAT
Output G:\...OBAL\3D\1.VAL



SVET: summaring and averaging,
calculation on the boundary
(1st boundary - minimum of I):
Input grid: G:\...AL\3D\CUB.MSH
Input field: G:\...AL\3D\CUB.XYZ
Surface limits: 1-4, 1-3
Summary area: 0.000024
Summary X-component: 0.24E-7
Summary Y-component: 0.72E-7
Summary Z-component: 0.48E-7
Value of summary vector: 0.897998E-7
Mean X-component: 0.001
Mean Y-component: 0.003
Mean Z-component: 0.002
Value of mean vector: 0.003742



Combine fields
Expressions:
[1,1]*3
[2,2]-[1,1]
Input file #1: G:\...BAL\3D\10.UVW
Input file #2: G:\...BAL\3D\11.UVW
Output field with size 512
Output file G:\...LOBAL\3D\5.UV


Таким образом выводится информация о вычислении дифференциальных величин, суммировании-осреднении и выполненных алгебраических преобразованиях соответственно.


Оптимальное управление памятью

При выполнении различных сервисных операций размер оперативной памяти на Вашем ПК не имеет значения, и для работы достаточно лишь необходимого пространства на диске для выходного файла. Но при выполнении дифференциальных операций, суммировании, осреднении и вычислении потоков наличие большей оперативной памяти выигрышно сказывается на производимых операциях. Кстати, программа использует защищенный режим процессора, поэтому для ее успешной работы желателен больший размер оперативной памяти (от 1 МБайт, чем больше, тем лучше). Также необходимо наличие на диске в доступном для поиска месте файлов, обеспечивающих работу в защищенном режиме.

Все дальнейшие рекомендации не касаются Вашей работы, если размер используемой сетки меньше минимального размера доступной для расчетов памяти (сообщается по команде Settings вместе с минимальным и максимальным размером массива - использование наименьших массивов требуется для вычисления потока через внутреннюю сеточную поверхность, а использование наибольших массивов возможно при осреднении скаляра в объеме). Однако в противном случае иногда может создаваться впечатление, что памяти недостаточно, а это не всегда соответствует действительности.

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

Загрузка текущей сетки (включающая вычисление векторов-поверхностей граней ячеек и объемов ячеек) облегчает работу, при многократном использовании одной и той же сетки экономит время и обязательно требуется для вычисления дифференциальных величин, но занимает в памяти 13 массивов.

Для оптимальной работы полезно знать, сколько массивов требуется для той или иной функции. Кроме загрузки сетки, для вычисления дифференциальных величин требуется от 4 до 6 массивов (первое число в случае вычисления градиента, второе в остальных случаях; в дальнейшем первое число означает загрузку скаляра, второе - вектора).

В процедурах пакета AverTool загрузка сетки занимает, как всегда, 13 массивов, хотя реально требуется меньше. Суммирование/осреднение в объеме требует 4 + от 1 до 3 массивов (4 под сетку, 1 - для скаляра и 3 - для вектора), на граничной поверхности - 12 + от 1 до 3, на внутренней сеточной поверхности - 12 + от 4 до 7. Вычисление потока через граничную поверхность требует 12 + 4 массива, через внутреннюю сеточную поверхность - 12 + 7 массивов. Меньше всего памяти требуется для преобразования расчетного поля скаляра в выводное - 2 массива.


"Недокументированные" возможности

Возможен запуск программы с параметром /ERROR, который может помочь при отладке программы, при этом в случае возникновения ошибки времени выполнения будет выдано дополнительное диагностическое сообщение о процедуре, в которой произошла ошибка (Error indicator: ...), а также стандартное сообщение об ошибке, помогающее локализовать ее в исходном тексте (Runtime error ### at position ####:####).

Параметр /$$$ предназначен для формирования файлов *.$$$, в которые производится вывод промежуточных результатов работы расчетных процедур (при отладке программы). Такие файлы создаются в следующих случаях:


AVERTOOL.$$$ - информация о процедурах пакета AverTool
SVTUNIT5.$$$ - информация о работе процедур "5-го модуля" - суммирование/осреднение


SI-1.$$$, SJ-1.$$$, SK-1.$$$
SI-2.$$$, SJ-2.$$$, SK-2.$$$
SI-3.$$$, SJ-3.$$$, SK-3.$$$ - вектора-площадки граней ячеек - при их вычислении


grid_X.$$$
grid_Y.$$$
grid_Z.$$$ - сетка после ее загрузки



VOL.$$$ - объемы ячеек



IM_FIELD.$$$
IM_FLD2.$$$ - "промежуточные" поля с вычисленными дифференциальными величинами ДО интерполяции, вычисленные по методу FDM и при задании данных в центрах ячеек соответственно,
IM_GRID.$$$ - соответствующая первому полю сетка, второму полю будет соответствовать выводная сетка на единицу больших размерностей, нежели исходная (в трехмерном случае, в двумерном из поля нужно вырезать один слой)


PRE_UI.$$$, PRE_VI.$$$, PRE_WI.$$$,
PRE_UJ.$$$, PRE_VJ.$$$, PRE_WJ.$$$,
PRE_UK.$$$, PRE_VK.$$$, PRE_WK.$$$ - входное поле после предварительной интерполяции при вычислении дифференциальных величин по второму методу

Программа создает временные файлы с расширением *.SVT в своей директории, по окончании работы программы такие файлы автоматически удаляются.

Запуск программы с параметром /PRIVATE расширяет ее функциональные возможности (появляются дополнительные пункты меню), добавляемые операции исключены по соображениям логической стройности из окончательного варианта интерфейса, и их использование связано с личными пристрастиями создателя.

В файле системной конфигурации SYSTEM.CFG записывается информация о регистрации и количестве запусков программы, эту информацию (имя, на которое зарегистрирована программа, и число запусков) можно узнать по команде Ctrl+F1. За информацией об условиях регистрации обращайтесь к автору. В этом файле сохраняется и другая системная информация, например, содержимое протоколов, связанных со строками ввода.


Встроенный транслятор формул

В выражении допустимо использование любого уровня вложенности скобок, арифметических операций (+,-,*,/ и ^ -возведение в степень) и стандартных функций, аргументы которых указываются в скобках: ln(), lg() (десятичный логарифм), sin(), cos(), tg(), exp(), arcsin(), arccos(), arctg(), sqrt() (квадратный корень), cbrt() (кубический корень), fact() (факториал целого числа) и abs() (модуль числа). Числовые константы допускается записывать в произвольной форме (в том числе и экспоненциальной); возможно использование стандартной константы: число Пи = 3.141592654, указывается: pi.

ВНИМАНИЕ ! в новой версии произведены некоторые изменения, связанные с работой встроенного транслятора. Во-первых, он подключен к стандартному окну ввода числа, т.е. при вводе можно набирать не только числовую константу, но и некоторое однозначно вычисляемое математическое выражение, синтаксис которого рассмотрен выше.

Сообщения транслятора об ошибках


1: Unexpected symbol - нераспознанный символ в выражении, скорей всего символ просто не на своем месте, т.к. при вводе выражения автоматически контролируется принадлежность множеству допустимых символов;
2: Illegal parenthesis using - некорректное использование скобок, скорей всего, не хватает соответствующей открывающей или закрывающей круглой (!) скобки;
3: Illegal value format - некорректная запись числовой константы - проверьте, не перешли ли Вы на шестидесятиричную систему счисления древних индейцев !
4: Value conversion error - ошибка преобразования числовой константы - с ее форматом явно что-то не то...
5: Unexpected power symbol - символ степени ^ найден не на своем месте - короче, в данной ситуации он неприменим;
6: Illegal call of power function - некорректный вызов возведения в степень, например, отрицательное число возводится в дробную степень;
7: Unexpected "*" or "/" symbol - кто-то из умножения или деления оказался не к месту;
8: Division by zero - всего-то деление на нуль;
9: Could not find a numbers - расшифровывали-расшифровывали выражение, и не нашли в нем ни одного числа;
10: Illegal expression - выражение в целом некорректно - чтобы получить эту ошибку, надо сильно постараться;
11: Unexpected end of expression - неожиданный конец выражения - это если в его конце приписать поздравление с 8 марта;
16:Bad argument number - некорректный номер аргумента, или, скорее всего, неверное число аргументов.
101-112: Illegal call of $$$ function - некорректный вызов функции $$$ - скорей всего, недопустимый аргумент при вычислении значения функции, где в качестве $$$ могут быть:


1: sqrt - квадратный корень неотрицательного аргумента;
2: cbrt - кубический корень;
3: fact - факториал целого положительного числа;
4: arcsin - арксинус числа не большего единицы по модулю;
5: arccos - арккосинус того же, что и в арксинусе;
6: arctg - арктангенс;
7: exp - экспонента;
8: ln - натуральный логарифм положительного числа;
9: lg - десятичный логарифм положительного числа;
10: sin - синус аргумента в радианах;
11: cos - косинус того же самого;
12: tg - тангенс (без слов);
13: abs - модуль;


Встроенный компилятор формул

Встроенный транслятор выражений, используемый в программах МАТРИЦЫ и SOLVER, заменен на компилятор для увеличения скорости работы программ (данное нововведение реализовано во всех версиях SVET'а).

Что это значит с точки зрения программиста ? Раньше при вычислении нового значения выражения каждый раз (даже при простом изменении аргумента функции в SOLVER'е) выражение расшифровывалось транслятором и постепенно вычислялось в процессе дешифровки. Налицо некоторая неэффективность, отрицательно сказывавшаяся на быстродействии; но сделать было фактически ничего невозможно, т.к. основное достоинство транслятора - его универсальность, т.е. пригодность для вычисления ЛЮБОГО выражения, что и обеспечивалось.

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

Чем это все обернется для пользователя ? Во-первых, возрастет скорость работы (в несколько раз !). И во-вторых, как на этапе расшифровки, так и при вычислении выражения могут возникнуть новые, специфические ошибки, обусловленные особенностями работы компилятора.


Calculation memory overflow - переполнение вычислительной памяти: введенное выражение слишком сложно;
Program memory overflow - переполнение программной памяти: Ваше выражение слишком сложно;
There is no function - введенное выражение равно константе, т.е. не зависит от заявленных аргументов; в данном случае компилятор не может создать программу-описание формулы, поэтому если Вы не можете другим способом реализовать данное действие (например, данная ошибка возможна при попытке формирования константного поля по данной сетке, в этом случае воспользуйтесь процедурой формирования стартового поля и другими алгебраическими процедурами), попробуйте "хитростью" обойти программу - написать что-нибудь вроде 1+X-X;
Couldn't find any program - при попытке вычисления не найдена программа - каким-то образом Вы пропустили момент ее создания, это возможно если программа не перехватила предыдущую ошибку;

ВНИМАНИЕ ! Не стоит жалеть места и представлять константы в выражении в виде готовых чисел, а не более наглядных выражений - компилятор составляет оптимальную программу, и не будет делать одно и то же несколько раз подряд: например, смело заменяйте 0.333... на 1/3 или 3^(-1).


Нумерация поверхностей

В программе принята стандартная нумерация граничных и внутренних сеточных поверхностей, а именно: для внутренних поверхностей - первая поверхность при постоянстве индекса I, вторая - для индекса J, третья - для К. Граничные поверхности нумеруются от 1 до 6 в том же порядке индексов, но для каждого индекса вначале рассматривается поверхность с его минимальным значением, затем - с максимальным.


Параметры командной строки

Возможен запуск программы (файл SVET*.EXE) с параметрами: // служит для указания директории с файлами справки и конфигурации, если они находятся не в одной директории с исполнимым файлом; пример использования данного параметра: //D:\SVET. Возможно использование параметра /COMMA для эквивалентности запятых пробелам во входных файлах. Параметр /SHORT задает сокращенный формат вывода файлов, по умолчанию используется расширенный формат. В сокращенном данные выглядят оптимально, и размера он меньшего, но при использовании расширенного формата числа располагаются строго по столбцам.

В файле системной конфигурации программы (SYSTEM.CFG) сохраняются данные протоколов строк ввода диалоговых окон, так что при перезапуске программы она "помнит" данные, введенные в диалогах (числа, формулы, имена файлов). Естественно, при долговременной работе программы этот файл заполняется "мусором" - множеством неиспользуемых данных. Возможна очистка протоколов ВСЕХ строк ввода программы, если запустить ее с параметром /CLEARHISTORY.


Сообщения о критических ошибках

При остановке программы по т.н. ошибке времени выполнения выдается диагностическое сообщение и взамен стандартного номера ошибки и адреса в программе сообщается о ее характере. В случае, если ошибка не распознана, выдается лишь ее номер (Unknown error #$$$).


Normal termination - нормальное завершение;



File not found - файл не найден;
Path not found - путь не найден;
Too many files open - слишком много открытых файлов;
File is locked - файл недоступен;
Error in file descriptor - ошибка дескриптора файла;
Error in file handler - ошибка файловой переменной;
Error in drive number - ошибка в номере диска;
Couldn't erase current directory - невозможно стереть текущую директорию;
Couldn't rename to other drive - невозможно переименование на другой диск;
Error reading from disk - ошибка чтения с диска;
Error writing to disk - ошибка записи на диск;
No link between file and file descriptor - нет связи между файлом и файловой переменной;
File wasn't open - файл не был открыт;
File wasn't for input - файл не был открыт для ввода;
File wasn't open for output - файл не был открыт для вывода;
Error in value format - неверный числовой формат;
Disk is locked for writing - диск защищен от записи;
Unknown unit - неизвестный модуль;
Disk not ready - диск не готов;
Unknown command - неизвестная команда;
Error in checksum - неверная контрольная сумма;
Error in disk structure length - ошибка в длине структуры при работе с диском;
Disk search error - ошибка поиска на диске;
Unknown drive type - неизвестный тип носителя;
Sector not found - сектор не найден;
Out of paper on printer - нет бумаги на принтере;
Device writing error - ошибка записи на устройство;
Device reading error - ошибка чтения с устройства;
Hardware error - ошибка оборудования;
Division by zero - деление на нуль;
Range check error - выход за границы типа (массива);
Stack overflow - переполнение стека;
Not enough memory - недостаточно оперативной памяти;
Error in pointer operation - ошибочная операция с указателем;
Floating point overflow - переполнение вещественного;
Lost floating point - потеря точности в вещественном;
Floating point error - ошибочная операция с вещественным;
Overlay controller not found - нет диспетчера оверлеев;
Overlay file reading error - ошибка чтения оверлейного файла;
Ariphmetic overflow error - ошибка целочисленной арифметики;
General protection fault - глобальная ошибка защиты, некорректное управление распределением памяти в защищенном режиме работы процессора.


Диалог: операции суммирования и осреднения на внешней границе, вычисление потоков, вычисления на части плоской области

Необходимо выбрать границу и ввести ограничения по области (части) этой границы, где будут производиться вычисления.

Choose needed boundary

Первое диалоговое окно выбора граничной поверхности аналогично таковому при выборе внутренней сеточной поверхности


Диалог: операции суммирования и осреднения на внутренней линии или поверхности, вычисление потоков

Необходимо выбрать тип внутренней линии (поверхности) и ограничения по ее длине (площади), где будут производиться вычисления, а также указать номер этой самой внутренней линии (поверхности).


Особенности интерфейса программы

Интерфейс программы построен средствами пакета Turbo Vision, поэтому ее внешний вид и принципы работы идеально совпадают с продуктами фирмы Borland (системами программирования Turbo Pascal, Turbo C и многочисленными приложениями, при разработке которых использован данный пакет. Особенности имеют место лишь в общем оформлении программы (см. описание окна протокола и статусного окна) и оформлении отдельных диалоговых окон.

File dialog

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

В окончательный вариант программы включено локальное меню, вызываемое по нажатию правой кнопки мыши или комбинацией Alt+F10. Меню содержит наиболее используемые команды, например, просмотр последнего выходного файла.

В программе реализована стандартная возможность Turbo Vision - деактивация (обеспечение недоступности) некоторых команд в зависимости от состояния параметров программы, пункты меню в этом случае выделяются цветом. Специфика состоит лишь в работе механизма блокировки команд.

Введено понятие блока вычислительных команд, к ним отнесены операции вычисления дифференциальных величин, суммирования, осреднения и вычисления потоков. Эти команды заблокированы, если установлены пределы по размерам расчетной подобласти (например, при формировании стартового поля; чтобы снять ограничения, вызовите команду считывания размера расчетной области из внешнего файла, но сам файл не указывайте).

Вычисление потока через часть сеточной поверхности в двумерном случае возможно только при установленной поддержке трехкомпонентных векторов на плоскости.

Команды принудительного снятия установок размера расчетной области и ограничений по ее части доступны только при наличии самих установок.

Формирование стартового поля возможно только при установленных размерах расчетной области.


Диалог при формировании константного векторного либо скалярного поля

Если не сделано установки текущей сетки, введите размеры поля. После этого введите необходимые числовые выражения для компонент формируемого поля.


Методы вычисления дифференциальных величин

В первом варианте исходное поле задает значения в узлах текущей сетки, в процессе вычисления получаются значения в центрах ячеек, а затем в результате интерполяции получается поле окончательных значений - в узлах исходной сетки. Это - метод FDM (Cell-Vertex data).

Во втором варианте в качестве текущей сетки следует установить основную (расчетную) сетку (такой файл либо имеется, либо его можно получить с помощью соответствующей функции меню Other из выводной сетки). Исходное поле имеет на единицу большие размерности, т.е. содержит величины центров ячеек и граничных точек: вершин, граней и ребер (см. Размерности и форматы файлов). В процессе предварительной интерполяции поле переносится на центры граней, затем вычисляется результирующее поле. Значения в его точках и есть значения во внутренних узлах соответствующей выводной сетки для текущей установленной, а значения в граничном слое получаются экстраполяцией (несколькими способами, способ регулируется в диалоге настройки параметров программы (см. соответствующую главу). Таким образом, полученное поле аналогично исходному и задано на выводной сетке, соответствующей установленной в качестве текущей расчетной сетке.


Формирование прямоугольной сетки

Указывается имя выходного файла, потом в диалоге задаются параметры сетки, после чего происходит формирование и запись файла. В диалоге для каждой из размерностей следует задать три параметра из четырех (минимальное и максимальное значение величины, шаг сетки и ее размер) и указать, значение какого из четырех параметров неизвестно, т.е. будет вычислено по остальным трем. Для проверки установленных значений предназначена команда Test, по которой происходит пересчет неизвестных параметров с установкой полученных значений в поля диалогового окна.


Программа SVET-TV - Scalar and VEctor Tools

скалярно-векторный инструментарий, оболочка для работы с данными на структурированных сетках (вариант Turbo Vision).

Авторы: Е.М.Смирнов и А.Левченя, спасибо В.В.Рису за помощь в создании программы

О программе

Вы можете выбрать размерность полей, с которыми будете работать, или закончить работу с программой.


Прочитать из файла и установить в качестве текущих установки размера расчетной области

Команда входит в меню Domain и имеет самый высокий приоритет в этом меню - производится сброс установок текущей сетки и пределов по расчетной подобласти с установкой введенных ограничений, лишь при их вводе по возможности поля диалоговых окон заполняются численными значениями предыдущих установок


Определение ограничений по расчетной области

Необходимо в том случае, если Вы хотите работать только с ее частью.

Define work domain

Здесь, как и в других аналогичных диалоговых окнах задания каких-либо ограничений по индексам, используются строки ввода для задания числовых значений, кнопки для подтверждения корректности ввода и выхода из диалога без сохранения введенных данных. Конкретно в данном диалоге введена дополнительная кнопка сброса ограничений до максимально возможных значений. Команда входит в меню
Domain и может использоваться совместно с командой загрузки сетки (неявно вызываемой при отсутствии установки текущей сетки, если Вы запускаете при этом вычисление дифференциальных или интегральных величин).


Формирование установок-ограничений по расчетной области

В первом диалоговом окне при отсутствии установленной в качестве текущей сетки следует указать ее размеры.

Во втором диалоговом окне указываются пределы по расчетной области.

При необходимости снять ограничения ("растянуть" их на всю область) следует нажать кнопку Full (полный размер), при этом в строки ввода будут подставлены граничные значения. Если эти значения и будут установлены кнопкой OK, всякие ограничения будут сняты.


Команды управления текущей расчетной областью

Загрузка сетки, считывание размеров расчетной области из внешнего файла, установка ограничений по размерам расчетной области.

Эти команды согласованы между собой и взаимодействуют при необходимости с еще двумя недоступными из меню (в его стандартной конфигурации) - команды сброса текущих установленной сетки и пределов по расчетной подобласти.


Программа ведет протокол текущих вычислений и других производимых операций

Протокол выводится в рабочее окно, в начале его указывается версия программы (дата ее создания) и дата и время создания протокола. В таком виде протокол может дублироваться в файле SVET.LOG, находящемся в каталоге программы, причем управление возможными опциями сосредоточено в диалоге настройки параметров программы. Протокол можно не выводить в файл, можно перезаписывать файл (создавать новый) при каждом запуске программы, протокол можно обновлять, добавляя новые данные в конец файла.


Просмотр текстового файла

В отличие от стандартного файлового окна, реализованного средствами Turbo Vision, создаваемый объект позволяет только просматривать дисковые файлы, не редактируя их, однако возможен корректный просмотр файлов произвольного размера, в то время как стандартный Turbo Vision - редактор работает только с файлами не больше 64К. Диалог выбора файла аналогичен команде открытия файла для редактирования (см. соответствующую статью)


Сброс установки текущей сетки

Данная команда входит в расширенный вариант меню


Сброс установки ограничений по расчетной области

Данная команда входит в расширенный вариант меню


Меню в расширенном варианте

(с добавлением некоторых "ненужных", но иногда полезных команд) загружается при запуске программы с параметром /PRIVATE (см. подробнее)


"Сборка" векторного поля из скалярных полей

См. описание диалогов


"Разложение" векторного поля на скалярные составляющие

См. описание диалогов


Описание диалогов при выполнении сервисных операций над полями

При выполнении сервисных операций над полями требуется ответить на запросы, связанные с выбором исходных файлов, указать имя (имена) выходных файлов и при необходимости ввести числовые значения параметров преобразования


Различные алгебраические операции над полями

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

Остальные процедуры аналогичны с точки зрения интерфейса


Другие функции программы, связанные с обработкой полей

преобразование полей на разных типах сеток, формирование базовых полей для последующих преобразований


Поддержка формата трехмерных векторов, заданных на плоской области

Эта команда доступна в двумерном варианте программы (подробнее о меню). См. также подробнее о поддерживаемых размерностях и форматах файлов


Общая структура программы

Программа представляет собой совокупность двух блоков для работы на трех- и двумерных областях, выбор варианта программы производится в стартовом диалоге и определяет структуру меню: некоторые команды доступны только в двумерном варианте.


Добавление константы к скаляру


Описание требуемых действий



Умножение скаляра на константу


Описание требуемых действий



Добавление константы к вектору


Описание требуемых действий



Масштабирование вектора


Описание требуемых действий



Умножение скаляра на скаляр


Описание требуемых действий



Умножение вектора на скаляр


Описание требуемых действий



Сложение скалярных полей


Описание требуемых действий



Вычитание скалярных полей


Описание требуемых действий



Сложение векторных полей


Описание требуемых действий



Вычитание векторных полей


Описание требуемых действий



Формирование "стартового" поля с задаваемым пользователем числом нулевых компонент

Для работы данной процедуры необходимо наличие установки пределов по расчетной области - ее размер и будет использован в качестве размера результирующего поля.


Обработка полей с возможностью покомпонентного обращения

Аналогична ранее реализованной команде.

В первом диалоге надо указать число исходных файлов (от 1 до 7) и количество компонент результирующего поля (от 1 до 3). Затем выбираются все исходные файлы, вводятся формульные выражения для компонент результирующего поля и имя выходного файла.

Формулы описываются по правилам встроенного транслятора формул, ссылки на аргументы оформляются в виде [N,M], где первое число обозначает номер исходного файла, а второе - номер компоненты в нем. Таким образом, формула скалярного произведения двух плоских векторов может быть реализована так: [1,1]*[2,1]+[2,1]*[2,2], хотя в программе есть отдельная функция вычисления подобных выражений.

Сообщается о следующих ошибках при задании параметров обработки файлов:


Error in value link - ошибка в записи ссылки на число,
Too many arguments - слишком много аргументов в формуле,
Error: ... - конкретная ошибка трансляции формулы,
Too high file number - слишком большой номер обрабатываемого файла,
Too high component number - слишком большой номер компоненты файла



Особенности интерфейса

В последних версиях программы сделаны принципиальные изменения в "стратегии" работы интерфейса, на которые следует обратить внимание.

Полностью устранена необходимость наличия отдельной команды загрузки сетки - перед выполнением дифференциальных операций или вычислением интегральных величин при отсутствии текущей установки требуется загрузка сетки, а при ее наличии запрашивается, необходимо ли загрузить другую сетку или использовать текущую установку; отдельная команда выбора размерности имеет смысловую нагрузку, например, перед формированием поля по сетке и формуле (формулам), при наличии установки цилиндрических координат вместо переменных x, y используются обозначения z и r.

Устранена необходимость наличия отдельных команд сброса текущих установок сетки и пределов по расчетной области; такие команды были необходимы, например, перед началом работы с расчетной областью нового (произвольного) размера, если перед этим была загружена сетка (из которой, может быть, была выделена подобласть в качестве расчетной). Для того чтобы "сбросить" обе текущие установки, можно вызвать процедуру загрузки в качестве установки размерности данных внешнего файла, при этом в случае наличия текущих установок будет запрошено подтверждение; но новый файл не указывать - старые установки будут "сброшены", а новых сделано не будет.

Ни в дифференциальных операциях, ни в интегральных не поддерживается работа с ограничениями по расчетной области. Вначале она организовывалась через специальные файлы пределов, что было связано с ограниченными ресурсами ПК, затем ограничения при необходимости задавались интерактивно, но чтобы не усложнять структуру программы, реализованы они были только в некоторых процедурах. Теперь для единообразия поддержка таких ограничений устраняется полностью, а при необходимости может использоваться процедура "вырезки" подобласти сетки или поля для подготовки к расчетам необходимой их части.


Перезаписать данные в заданном формате

Программа может выводить данные в двух форматах - столбчатом и экономичном. В первом случае данные записываются в столбец стандартно заданной ширины (например, 15) в экспоненциальной форме с фиксированным количеством цифр в мантиссе и порядке, со всеми "лишними" нулями. В экономичном формате ограничение на размер мантиссы сохраняется, а число в целом записывается либо в экспоненциальной форме, либо в форме с фиксированной десятичной точкой в зависимости от его величины, но в любом случае без "лишних" нулей, столбцы разделяются одним пробелом. Такая запись получается сокращенной, но столбцы имеют различную ширину.

Данная процедура позволяет, указав в качестве исходного текстовый файл с числовыми данными (естественно, в т.ч. в любом из вышеперечисленных форматов), преобразовать этот файл в конкретный формат: требуется указать имя выводного файла и формат записи данных.


Демонстрационная версия

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


Файлы пакета

В пакет программы в процессе ее работы входят следующие файлы:
SVETTV1.EXE - основная программа,
SVET.CFG - текстовый конфигурационный файл,
SYSTEM.CFG - бинарный конфигурационный файл,
HELPSVET.HLP - файл справочной системы,
SVET.LOG - файл протокола.



Техническая поддержка

За технической поддержкой обращайтесь к автору, Левченя Александру,


E-mail: levchenya@aerofmf.stu.neva.ru
WWW: http://aerofmf.stu.neva.ru/~levchenya/svet/

На данной интернет-странице представлена развернутая документация по программе: принятые соглашения, возможности программы, математическая база - вычислительные формулы и их реализация, форматы файлов и другая информация.


Просмотр последнего выводного файла

В текстовом окне просмотра открывается файл, выбранный в соответствующем диалоговом окне; в отличие от стандартного окна просмотра файла, реализованного встроенными средствами Turbo Vision, возможен просмотр файла произвольного размера.


Сообщения об ошибках

В процессе работы программы при задании некорректных параметров процедурам возможно получение различных сообщений об ошибках

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

Выдается предупреждение о невозможности работы с данной сеткой, если хотя бы один из ее размеров меньше 3.

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


Запуск задаваемой пользователем ДОС-команды

В конфигурационном фале (см. просмотр и изменение параметров программы) можно задать ДОС-команду (например, вызов программы оболочки NC - Norton Commander), запуск которой будет производиться по команде подменю File


Запуск программ пакета FLAG

Здесь находятся команды запуска пакета FLAG (FLow Analysis Graphics), вызывающие программы визуализации полей и сеток. Команды включены в расширенный вариант меню и доступны только зарегистрированным пользователям; при регистрации кроме получения пароля доступа к расширенным возможностям программы Вы получите программы пакета ФЛАГ и инструкцию по их установке.