Разработка алгоритмов дискретных кватернионных преобразований для решения задач морской навигации в судовой навигационно-информационной сети тема диссертации и автореферата по ВАК РФ 05.12.13, кандидат технических наук Звягинцев, Николай Сергеевич

  • Звягинцев, Николай Сергеевич
  • кандидат технических науккандидат технических наук
  • 2006, Новороссийск
  • Специальность ВАК РФ05.12.13
  • Количество страниц 171
Звягинцев, Николай Сергеевич. Разработка алгоритмов дискретных кватернионных преобразований для решения задач морской навигации в судовой навигационно-информационной сети: дис. кандидат технических наук: 05.12.13 - Системы, сети и устройства телекоммуникаций. Новороссийск. 2006. 171 с.

Оглавление диссертации кандидат технических наук Звягинцев, Николай Сергеевич

Перечень принятых сокращений.

ВВЕДЕНИЕ.

1. МЕТОДЫ РЕШЕНИЯ ЗАДАЧ МОРСКОЙ НАВИГАЦИИ В СУДОВОЙ НАВИГАЦИОННО-ИНФОРМАЦИОННОЙ СЕТИ И ПОСТАНОВКА ЗАДАЧИ ИССЛЕДОВАНИЯ.

1.1 Математическое содержание траекторных задач морской навигации на плоскости и сфере.

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

1.1.2 Математическое содержание траекторных задач на плоскости.

1Л .3 Математическое содержание траекторных задач на сфере . .23 1.1.4 Особенности математического содержания траекторных задач на плоскости и сфере.

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

1.3 Алгоритмы координатных преобразований для реализации вращения вектора.

1.4 Анализ алгоритмов вращения вектора для решения траекторных задач морской навигации в судовой навигационно-информационной сети.

1.5 Развитие структуры судовой навигационно-информационной сети и постановка задачи исследования.

2. СИНТЕЗ АЛГОРИТМОВ ДИСКРЕТНОГО ВРАЩЕНИЯ

ВЕКТОРА ДЛЯ РЕШЕНИЯ ЗАДАЧ МОРСКОЙ НАВИГАЦИИ В СУДОВОЙ НАВИГАЦИОННО-ИНФОРМАЦИОННОЙ СЕТИ.

2.1 Синтез алгоритмов дискретного линейного вращения вектора методом численного интегрирования.

2.2 Частные алгоритмы дискретного линейного вращения вектора.

2.3 Геометрия трехмерного вращения вектора. Дискретное кватернионное преобразование.

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

2.4.1 Прямые и обратные преобразования.

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

3. ИССЛЕДОВАНИЕ СХОДИМОСТИ И ТОЧНОСТИ АЛГОРИТМОВ ДИСКРЕТНЫХ КВАТЕРНИОННЫХ ПРЕОБРАЗОВАНИЙ.

3.1 Анализ сходимости алгоритмов дискретных кватернионных преобразований.

3.2 Общая структура ошибки алгоритма дискретного кватернионного преобразования.

3.3 Методическая, трансформируемая и суммарная погрешности алгоритма дискретного кватернионного преобразования.

4. ПРЕДСТАВЛЕНИЕ ТРАЕКТОРНЫХ ЗАДАЧ МОРСКОЙ

НАВИГАЦИИ АЛГОРИТМАМИ ДИСКРЕТНЫХ КВАТЕРНИОННЫХ ПРЕОБРАЗОВАНИЙ ПО ДАННЫМ ИНФОРМАЦИОННЫХ ПОТОКОВ

СУДОВОЙ НАВИГАЦИОННО- ИНФОРМАЦИОННОЙ

СЕТИ.

4.1 Особенности представления траектории судна алгоритмами дискретного кватернионного преобразования.

4.2 Представление задачи автосопровождения алгоритмами дискретных кватернионных преобразований.

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

4.4 Определение пройденного расстояния алгоритмами дискретных кватернионных преобразований.

4.5 Методика выбора шага алгоритма дискретного кватернионного преобразования.

5. АППАРАТУРНАЯ РЕАЛИЗАЦИЯ ТРАЕКТОРНОГО ПРОЦЕССОРА СУДОВОЙ НАВИГАЦИОННО-ИНФОРМАЦИОННОЙ СЕТИ.

МАТЕМАТИЧЕСКОЕ МОДЕЛИРОВАНИЕ И ОЦЕНКА ЭФФЕКТИВНОСТИ АЛГОРИТМОВ ДИСКРЕТНЫХ КВАТЕРНИОННЫХ ПРЕОБРАЗОВАНИЙ

5.1. Аппаратурная реализация траекторного процессора судовой навигационно-информационной сети.

5.2. Программная реализация траекторных задач алгоритмами дискретных кватернионных преобразований.

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

5.4. Оценка эффективности применения алгоритмов дискретных кватернионных преобразований для решения траекторных задач.

5.4.1 Количественная оценка эффективности.

5.4.2 Качественная оценка эффективности.

Рекомендованный список диссертаций по специальности «Системы, сети и устройства телекоммуникаций», 05.12.13 шифр ВАК

Введение диссертации (часть автореферата) на тему «Разработка алгоритмов дискретных кватернионных преобразований для решения задач морской навигации в судовой навигационно-информационной сети»

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

Развитие информационных технологий и совершенствование технических средств навигации (ТСН) привело к объединению ТСН в рамках судового навигационно-информационного комплекса (СНИК), необходимой составляющей которого, согласно конвенционным требованиям, является транспондер автоматической информационной системы (АИС). Это позволяет судам и оператору системы управления движения судов (СУДС) автоматически обмениваться информацией сгенерированной и обработанной в СНИК, что в настоящий момент играет важную роль в обеспечении безопасности мореплавания. Развитие ТСН, входящих в СНИС приводит к увеличению информационных потоков и росту объема вычислений. Такие задачи, как расчет прогнозируемых и исполнительных траекторий судна [1], определение параметров движения, обеспечивающих безопасное плавание [2], а также элементов сближения маневрирующих судов [3] в настоящее время находят решение в СНИС[4],[5], что позволяет повысить безопасность мореплавания. Многие задачи судовождения решаются как в реальном так и в ускоренном масштабах времени (РМВ и УМВ). Это требует повышения производительности вычислительных средств (ВС) СНИС при высоком уровне их надежности. Такая необходимость обусловлена тем, что рост объема вычислений, реализуемых процессором в единицу времени приводит к повышению нагрузки на ВС, увеличению вероятности случайной ошибки в вычислениях, к росту времени решения задач и снижению точности расчетов в РМВ и УМВ [6],[7]. Традиционное решение проблемы повышения производительности за счет реализации вычислений в мощных универсальных процессорах не всегда эффективно. Такой путь приводит к усложнению аппаратной архитектуры ВС, повышению энергопотребления системы в целом и введению эффективных систем охлаждения [8]. Вышеперечисленные факторы снижают надежность вычислительного блока и повышают его стоимость [9],[10]. Современная статистика по судам, запрашивающим технический ремонт в порту Новороссийск, показывает, что 4% случаев выхода из строя таких терминальный частей СНИС, как новых РЛС/САРП и ЭКДИС обусловлены отказом вычислительных средств и в 9% - отказы средств энергообеспечения, что является подтверждением того, что надежность бортовых ВС остается актуальной проблемой в современных условиях. Одновременное удовлетворение таких противоречивых показателей работы ВС как производительность и надежность характеризует эффективность ВС, на повышения которой ориентированы разрабатываемые в работе алгоритмы.

Проблема производительности является актуальной для многих разработчиков ВС. В прошлом повышение производительности универсальных процессоров в основном происходило за счет увеличения тактовой частоты. Однако в настоящий момент практически все ведущие разработчики ВС, такие как Intel, AMD, Тега, Level One, IBM, Cray Research и др. пришли к тому, что дальнейшее повышение частоты оказалось неэффективным из-за ряда фундаментальных физических барьеров, связанных с повышением потребляемой мощности, выделением тепла, задержками при обращении к памяти, архитектурными ограничениями [И]. Выходом из сложившейся ситуации стало разделение задачи на множество одновременных операций и их распределение среди ряда небольших вычислительных устройств [12],[13],[14],[15],[16],[17]. Именно этот путь в настоящее время выбран ведущими производителями вычислительной техники, как наиболее перспективное решение проблемы повышения эффективности ВС как универсальных, так и специализированных [11],[18]. Эффективность подхода, основанного на реализации вычислений в проблемно-ориентированной аппаратуре, называемой сопроцессорами, расширителями, контроллерами, конверторами и др., заключается в следующем:

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

- предоставляется возможность распараллеливания вычислений и, как следствие, увеличение производительности. Параллельная организация вычислений как на аппаратном, так и на программном уровне лежит в основе разделения вычислительного процесса на множество одновременных однотипных операций, реализуемых в проблемно-ориентированных ВС и является в настоящее время мощным инструментом, позволяющим повысить производительность [18],[19];

- проблемно-ориентированные средства отличаются простой аппаратной архитектурой и высокой надежностью [10], что выгодно отличает их при эксплуатации на подвижных объектах, в частности на борту судна.

Необходимо отметить, что распараллеливание и проблемная ориентация вычислений, выбранные ведущими производителями ВС в качестве генерального пути повышения эффективности ВС (ярким примером является оглашенная корпорацией Intel концепция «Разделяй и властвуй» [11]), не являются новыми, но давно признаны и реализуются в подавляющем большинстве специализированных технических средств, систем и приборов, в том числе навигационных.

Заметим, что аппаратурный состав специализированных ВС, как правило, базируется на основе процессоров общего назначения. Причиной этому является их массовое производство и низкая стоимость. При этом, специализация закладывается включением специальной аппаратуры, архитектура которой реализует проблемно-ориентируемые методы вычислений тех задач, которые требуют выполнения большого объема вычислений традиционными способами. Как правило, к такой аппаратуре относятся ВС работающие в жестком режиме реального времени [19]. Так, основное большинство производителей навигационных радаров, такие как DataBridge, JRC, Kelvin Huges, Furuno, Anschutz (радары линейки Pathfinder/ST) и др. для задач построения радарной развертки в РМВ используют отдельный процессор (как правило универсальный), с параллельно подключенной специальной аппаратурой, такой как графические контроллеры, контроллеры ввода/вывода (часто используется несколько контроллеров для каждого вида отображаемой информации) и др. [20],[21 ],[22],[23],[24]. Задачи цифровой обработки сигнала в подавляющем большинстве PJIC также реализуются в специальной аппаратуре [25],[26]. В других навигационных приборах, работающих в режиме реального времени, таких как лаги, эхолоты, приемоиндикаторы спутниковых навигационных систем (ПИ СНС), вычисления также реализуются в проблемно-ориентированных ВС [27],[28],[29].

Тенденция реализации вычислений в проблемно-ориентированных ВС, вместе с растущим объемом информации навигационного характера (конвенционное внедрение АИС, обмен данных между приборами по протоколам NMEA, IEE и др.) привели к целесообразности решения навигационных задач в спецпроцессорах и контроллерах реализующих специальные методы вычислений. Примеров - множество, среди них, такие известные современные PJI станции, как Furuno FR-8051/8111/8251, задачи автоматической радиолокационной прокладки (АРП) в которых решаются в спецпроцессоре [30], линейка PJIC JMA 5110/5106/5104 (производитель JRC), где задачи АРП решаются в рамках отдельной платы на базе спецпроцессора [31], PJIC PATHFINDER®/ST МК2 RADAR, задачи АРП в которой возложены на специальный Tracking Processor [25] и многие другие. Разработке и совершенствованию специальных методов решения навигационных задач как на аппаратном, так и на программном уровне посвящены труды таких ученых как Бранец [32], Д. Парини [33], Van der Veer [34], [35] и др.

Обобщая вышеизложенное отметим, что эффективность современных вычислительных средств во многом определяется их аппаратной архитектурой, отображающей проблемно-ориентированные методы и основанные на них алгоритмы. Роль методов вычислений является основополагающей в специализированной аппаратуре, где за счет проблемной ориентации достигаются повышенная производительность и надежность ВС. Вопрос специализации ВС является особо актуальным в бортовой аппаратуре, т.е в терминальной части СНИС, от которой требуется высокая производительность и надежность при решении задач в РМВ и УМВ по данным информационных потоков СНИС. В частности, эффективность решения навигационных задач на современной этапе также определяется проблемной ориентацией ВС, при этом задача совершенствования методов вычислений остается актуальной благодаря росту объема вычислений, встречающимся случаям отказа ВС и систем энергообеспечения.

В общем случае, снижение объема вычислений при обработке информационных потоков СНИС позволяет достичь следующих технических и экономических преимуществ [8], [9], [10]:

- увеличение объема решаемых задач без повышения производительности вычислительных средств;

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

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

Таким образом, эффективные методы вычислений и основанные на них алгоритмы должны быть ориентированы на специфику решаемых задач в плане сокращения объема и распараллеливания вычислений. Большинство вычислений навигационного характера, выполняемых при обработке информационных потоков СНИС, описываются аппаратом тригонометрии как на плоскости, так и в пространстве. Наиболее эффективный в настоящее время подход к выполнению тригонометрических преобразований, вращением вектора положен в работах Дж. Волдера, Дж. Меджита, Дж. Уолтера в конце 50-х и в 60-х годах [36], [37], [38]. Результатом стал известный алгоритм Волдера, реализующий ортогональное преобразование плоского ортонормированного базиса и устройство на его основе - CORDIC (Coordinate rotation digital computer - цифровой компьютер для преобразования координат). Далее, в работах российских и зарубежных ученых, таких как Байков В. Д. [39], [40], Смолов В. Б. [41], [42], Каляев А. В. [43], Духнич Е. В. [44], [45], [46], [47] Деревесков С. О. [48], Д. Парини [33], Van der Veer [34],[35],[49], J. Delosme [50], [51], S. Hsiao [52], [53], G. Cavalaro [54], [55], S. Paul [56], A. Elster [57], S. Freeman [58] и др. проведено обобщение алгоритмов вращения вектора и рассматривались вопросы реализации различных математических и прикладных задач (в том числе и навигационных) алгоритмами дискретных линейных преобразований (ДЛП), основывающимися на алгоритме Волдера.

Однако при весомом сокращении объема вычислений алгоритмы ДЛП имеют ряд существенных недостатков. Во-первых, независимо от величины угла для его отработки необходимо выполнить фиксированное количество итераций, равное разрядности углов. Поэтому такие алгоритмы неэффективны в задачах морской навигации, требующих пошагового вращения вектора на малые углы, таких как задачи автосопровождения, проигрывания маневра расхождения судов и др. Во-вторых, данные алгоритмы реализуют «псевдовращение» и им присущ такой недостаток, как удлинение вектора. Использование любого из существующих методов компенсации удлинения [59], [60] (модифицированных алгоритмов Волдера) вызывает значительное усложнение вычислений.

Альтернативный подход к реализации вращения вектора предложен в работах Владимирова В. В. [61], [62], [63], [64]. Предложенные алгоритмы выполняют «естественное», а не «псевдо», трехмерное дискретное линейное вращение вектора вокруг произвольно направленной оси в шкале угловой метрики, методом численного интегрирования. Такие алгоритмы имеют преимущества в сравнении с другими при реализации вращений на малые углы, в частности, исключается удлинение вектора. Более того, базовым операндом вращения, реализуемого этими алгоритмами является трехмерная (а не плоская как в алгоритме Волдера) матрица, в общем случае реализующая кватернионное преобразование, что позволяет существенно сократить объем вычислений в трехмерном пространстве. Однако использование предложенных алгоритмов для решения задач навигации проблематично по следующим причинам.

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

Целыо диссертационной работы является разработка алгоритмов дискретных кватернионных преобразований (ДКП), реализующих трехмерное вращение вектора в шкале времени и обеспечивающих сокращение объема вычислений, что способствует повышению надежности бортовых вычислительных средств входящих в состав СНИС и, как следствие, повышению безопасности мореплавания.

Исходными данными для синтеза являются результаты анализа математического содержания и известных методов реализации навигационных задач по данным информационных потоков СНИС.

Результаты работы направлены на сокращение объема и распараллеливание вычислений, при реализации задач морской навигации в судовой навигационно-информационной сети.

Объектом исследования являются алгоритмы для решения траекторных задач морской навигации по данным информационных потоков СНИС: спутниковых навигационных систем (СНС) и автоматических идентификационных систем (АИС) в траекторном процессоре СНИС, как составной части терминала телекоммуникаций.

Основные теоретические положения и прикладные вопросы, решенные автором, изложены в пяти разделах диссертационной работы.

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

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

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

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

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

В пятом разделе описывается примеры аппаратурной и программной реализации алгоритма ДКП, приводятся результаты проверки теоретических оценок точности, выполненной методом математического моделирования на основе данных реальных информационных потоков. Доказывается состоятельность применения алгоритмов ДКП для решения навигационных задач в СНИС путем сравнительного анализа вычислительной сложности задач навигации, реализованных алгоритмами ДКП, как описано в разд. 4 и тех же задач, но решенных ранее известными методами.

Научная новизна представлена следующими результатами:

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

- исследована и доказана сходимость алгоритмов ДКП;

- получены формулы оценки трансформируемой и суммарной погрешностей алгоритма ДКП, предложена методика выбора шага алгоритма ДКП в зависимости от заданного интервала решения задач и допустимой ошибки вычислений;

- на основании полученных результатов исследования предложен обобщенный подход к реализации траекторных задач алгоритмами ДКП по данным информационных потоков СНИС.

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

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

При выполнении работы использовались полученные самостоятельно автором теоретические результаты и совместные разработки, выполненные на кафедре «Технические средства судовождения» Морской государственной академии им. адмирала Ф. Ф. Ушакова.

Результаты проведенных в диссертации исследований использованы при модернизации программного обеспечения серийно выпускаемого изделия Наяда 25 Ml, а также в научно-исследовательских и опытно-конструкторских разработках по созданию современных средств автоматической радиолокационной прокладки (САРП) на предприятии ОАО «Горизонт», г. Ростов-на-Дону.

Основные положения проведенных исследований были доложены и обсуждены на четвертой Новороссийской городской научной конференции (апрель 2002г.), на Всероссийской научно-технической конференции с международным участием «Компьютерные информационные технологии в науке, инженерии и образовании», г. Таганрог, (май 2004г.), и дважды на Международной научно-практической конференции «Интеллектуальные многопроцессорные системы», г. Дивноморск (сентябрь 2005г.) г. Кацивели (Украина, 2006г.).

Похожие диссертационные работы по специальности «Системы, сети и устройства телекоммуникаций», 05.12.13 шифр ВАК

Заключение диссертации по теме «Системы, сети и устройства телекоммуникаций», Звягинцев, Николай Сергеевич

ЗАКЛЮЧЕНИЕ

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

Главные теоретические и практические результаты, полученные в работе, можно сформулировать следующим образом.

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

2. Исследована и доказана сходимость алгоритмов ДКП на шаге At. Выполнен анализ погрешностей и получены рабочие формулы для оценки предельной суммарной погрешности и интервала сходимости.

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

4. Представлен обобщенный подход к описанию траекторных задач алгоритмами ДКП.

5. Разработана подтвержденная патентом на изобретение структура траекторного процессора СНИС, реализующая вращение вектора по алгоритму ДКП (формула трапеций).

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

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

Основные теоретические положения и прикладные вопросы диссертационной работы представлены следующими частными результатами:

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

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

3. Получены аналитические зависимости связи значений шага, интервала сходимости и погрешности вычислений по алгоритму ДКП.

4. Предложен обобщенный подход к представлению траектории судна по данным информационных потоков СНИС алгоритмами ДКП. Дано описание представления задач АС, АП, ПМ и определения текущего значения пройденного расстояния алгоритмами ДКП. Предложена методика выбора шага и приращения угла вращения в зависимости от интервала решения навигационных задач и требований к точности.

5. В качестве примера аппаратурной реализации ДКП предложена функциональная схема траекторного процессора, также приведен пример программной реализации ДКП на языке Ассемблера. Проведен сравнительный анализ вычислительной сложности алгоритмов ДКП при решении задач АС, АП и ПМ. Анализ показал значительное сокращение объема вычислений в сравнении с классическими методами решения, а именно от 7 до 27 раз, в зависимости от порядка ДКП, и способа его реализации.

Основные материалы диссертации опубликованы в 11 статьях, получены свидетельство РФ об официальной регистрации программы для ЭВМ и патент РФ на изобретение.

Основные положения проведенных исследований были доложены и обсуждены на четвертой Новороссийской городской научной конференции (апрель 2002г.), на Всероссийской научно-технической конференции с международным участием «Перспективные информационные технологии и интеллектуальные системы в науке, инженерии и образовании», г. Таганрог, (май 2004г.) и дважды на Международной научно-практической конференции «Интеллектуальные и многопроцессорные системы», г. Дивноморск (сентябрь 2005г.), г. Кацивели (Украина, 2006г.).

Результаты проведенных в диссертации исследований использованы при модернизации серийно выпускаемого изделия Наяда 25 Ml, а также в научно-исследовательских и опытно-конструкторских разработках по созданию современных перспективных средств автоматической радиолокационной прокладки (САРП) на предприятии ОАО «Горизонт», г. Ростов-на-Дону.

139

Список литературы диссертационного исследования кандидат технических наук Звягинцев, Николай Сергеевич, 2006 год

1. Зайков В. И. Единая математическая модель маневрирующих судов/Крыловские чтения: тез. докл. Всесоюзн. Научно-техн. Конф./ НТО им. акад. А. Н. Крылова. - Л.Судостроение, 1978.

2. Ольшамовский С. Б. Повышение безопасности мореплавания. Часть 1,2,3. Новороссийск: НГМА, 2000г.

3. Ольшамовский С. Б., Перекрестов А. Н. Исследование расхождений крупнотоннажных судов в море. ЦБНТИ ММФ, серия «Безопасность мореплавания», вып. 2. (152), 1983.

4. Instruction manual for ECDIS JAN 3590 Japan Radio Co. LTD.

5. Operator's manual for ECDIS FEA 2100/2105 FURUNO Electric Co. LTD: Nishinomiya, Japan.

6. Кузнецов B.B., Смагин B.A. Прямая и обратная задачи надежности сложных программных комплексов / Надежность и контроль качества./ -1997.-№ 10.

7. Mysa J. A theory of software reliability and its application. /IEEE Trans, on software Eng./ sept. 1975. - vol.SE-1.

8. Литвинский И.Е., Прохоренко B.A. Обеспечение безотказности персональных ЭВМ. М.: Радио и связь, 1993.

9. Дмитриев С. П., Колесов Н. В., Осипов А. В. Информационная надежность, контроль и диагностика навигационных систем. СПб.: ГНЦ РФ - ЦНИИ «Элекроприбор», 2003.

10. Shreekant Thakkar, Tom Huff. The Internet Streaming SIMD Extentions. /Intel Technologies/ 1999. - vol.2.

11. Jagannath Keshava, Vladimir Pentkovskiy. Pentium III Processor Implementation Tradeoffs. /Intel Technologies/ 1999. - vol.2.

12. Glenn Hinton, Dave Sager и др. The Microarchitecture of Pentium 4 Processors. /Intel Technologies/ 2001. - vol. 1.

13. Marius Cornea-Hasegan. Providing the IEEE Correctness of Iterative Floating Point Square Root, Divide and Remainder Algorithms. /Intel Technologies/ -1998.-vol.3.

14. AMD Athlon™ Processor x86 Code Optimization Guide: Advanced Micro Devises Corp.

15. Mobile AMD-K6®-2+ Processor Data Sheet: Advanced Micro Devises Corp.

16. Стив Павловски. Архитектура платформ будущего. /Technology@Intel/ -2006.-vol.1.

17. А. П. Пятибратов, JI. П. Гудыно, А. А. Кириченко. Вычислительные системы, сети и телекоммуникации. М.: Финансы и статистика, 2005.20.1nstallation and user's manual for ECDIS "DataBridge 2000".

18. Radar 3000 Instruction manual. Japan, Tokyo: Japan Radio Co. LTD, 2001.22.0perating Information for Nucleus Radar Systems with AIS. England, London: Kelvin Hughes Publication №2029, 2003.

19. ECDIS EC 1000 EC1000B Technical Manual. Finland, Furuno Publication № 802013.

20. Pathfinder®ST ECDIS Operator Manual. Germany, Kiel: Raytheon Marine, 2002.

21. Pathfinder®ST MK2 Radar Operator Manual. Germany, Kiel: Raytheon Marine, 2002.

22. Workshop Manual Technical and Maintenance Information for Nucleus 3 Radar Systems. England, London: Kelvin Hughes Publication, 2003.

23. SIMRAD GN33 GPS Navigator Manual.- Germany, Hamburg: SIMRAD A Kongsberg Company, 2002.

24. GP-90 Dual Operator Manual. Japan, Nishinomiya: Furuno Electric Co. Publ. № ОМЕ 44271,2003.

25. Color Echo Sounder JFV-90 Instruction Manual. Japan, Tokyo: Japan Radio Co. LTD, 2002.

26. Marine Radar FR 8051/8111/8252 Installation Manual. Japan, Nishinomiya: Furuno Electric Co. Publ. № IME 34240 F, 2001.

27. JMA 5104/5106/5110 Instruction Manual. Japan, Tokyo: Japan Radio Co. LTD, Code № 7ZPRD0590,2001.

28. Бранец В. H., Шмыглевский И. П. Введение в теорию безплатформенных инерциальных систем. М.: Наука, 1992.

29. Парини Д. Система «Дивик» для решения сложных навигационных задач. -Жура. «Электроника», 1966, №18.

30. Van der Veen A.J., Deprettere E.F. Parallel VLSI matrix pencil algorithm for high resolution direction finding /IEEE Trans, on signal processing./-1991.-Vol.39,No.2.

31. Van der Veen A.J., Ober P.B., Deprettere E.F. Azimuth and elevation computation in high resolution DOA estimation /IEEE Trans, on signal processing./-1992.-Vol.40,No.7.

32. Voider J.E. The CORDIC Trigonometric Computing Technique. /IRE Trans. On Electronic Computers./ ,1959, Vol. EC-8 (3)

33. Meggit J.~E. Pseudo Division and Pseudo Multiplication Processes /IBM Journal of Research and Development. /,1962, Vol.6.

34. Walther J.S. A Unified Algorithm for Elementary Functions. /AFIPS Conf. Proc. / ,1971, Vol. 38.

35. Байков В. Д. Вычисление логарифмических и показательных функций по методу «цифра за цифрой» в ЦВМ с плавающей запятой. Изв. вузов. Приборостроение, 1977, т. 20, - №5.

36. Банков В. Д. Селютин С. А. Аппаратурно-ориентированный метод решения задач линейной алгебры. АВТ, 1983, - №1.

37. Смолов В.Б., Байков В. Д. Перспективные направления использования метода вычислений «цифра за цифрой» в микропрограммных процессорах. Изв. Вузов. Приборостроение. 1978,- т.21,№5.

38. Байков В. Д. Смолов В. Б. Аппаратурная реализация элементарных функций в ЦВМ. Л.: Изд. ЛГУ, 1975.

39. Каляев А. В. Многопроцессорные системы с программируемой архитектурой. -М.: Радио и связь, 1984.

40. Духнич Е. В. Каляев А.В. Алгоритмы для аппаратурной реализации преобразования компонент тензоров /Автоматика и вычислительная техника./ I977.-N2.

41. Духнич Е. В. Мурашов С.В. Два варианта алгоритмов для быстрой аппаратурной реализации линейного преобразования отражения /Проектирование ЭВМ: Межвуз. Сб. Научн. трудов.ЛРязань: РГРА, 1992.

42. Духнич Е.И., Егунов В.А. Алгоритмы многомерных отражений, ориентированные на систолическую реализацию /Проектирование ЭВМ: Межвузовский сборник научных трудов./ Рязань : РГРА, 1994.

43. Духнич Е.И. Алгоритмы быстрого преобразования Якоби для мультипроцессорной реализации /Многопроцессорные вычислительные структуры: Межведомственный тематический научный сборник./ -Таганрог: ТРТИ, 1989.- вып. II (XX).

44. Деревенсков С.О. Быстрый ДЛП-алгоритм многомерного вращения вектора /Волгоград.гос.техн.ун-т./ Волгоград, 1995.-4с.- Деп. В ВИНИТИ. № 2442 - В95.

45. Van der Veen A.J., Deprettere E.F., Swindlehurst A.L. Subspace-based signal analysis using singular value decomposition /Proc. of the IEEE./-1993 .-Vol.81.

46. Delosme J.-M., Ipsen I.C. Parallel Solution of Symmetric Positive Definite Systems with Hyperbolic rotations /LINEAR ALGEBRA AND ITS APPLICATIONS./- 1986.- Vol.77.

47. Hsiao S.-F., Delosme J.-M. Parallel Processing of Complex Data Using Quaternion and Pseudo-Quaternion CORDIC Algorithms /In Proceedings of the ASAP'94 Conf./- University of California: 1994.

48. Hsiao S.-F., Delosme J.-M. Householder CORDIC Algorithms /IEEE Transactions on Computers./ 1995. - Vol. 44(8).

49. Hsiao S.-F., Delosme J.-M. Parallel Singular Value Decomposition of Complex Matrices Using Multidimensional CORDIC Algorithms. /IEEE Trans. On Signal Processing./- 1996. Vol. (3).

50. Cavallaro J.R., Elster A.C. Complex Matrix Factorizations with CORDIC Arithmetic /Technical Report 89-1071/ Department of Computer Science, Cornell University.- 1989.

51. Cavallaro J.R., Hemkumar N.-D. Efficient complex matrix transformationsthwith CORDIC /In Proceedings of the 11 IEEE Symposium on Computer Arithmetic./- Windsor, Ontario.- 1993.

52. Paul S., Gotze J, Sauer M. Error Analysis of CORDIC-Based Jacobi Algorithms. /IEEE Transactions on Computers./ 1995. - Vol. 44(7).

53. Elster A.C. A CORDIC Processor Array for the SVD of a Complex Matrix. /R. Vaccaro, Ed., SVD and Signal Processing II./-Amsterdam: Elsevier Science, 1991.

54. Freeman S., O'Donnell M. A Complex Arithmetic Digital Signal Processor Using CORDIC Rotators /In Proceedings of the APPLICATION IMPLEMENTATIONS AND MAPPINGS Conf./ 1995. - Vol. 5.

55. Духнич Е.И., Лукашева Г.Н., Серов A.A. Модифицированные алгоритмы дискретных линейных преобразований вращения /Многопроцессорные вычислительные структуры./ -Таганрог, 1990.-Вып.12 (XXI).

56. Сверхбольшие интегральные схемы и современная обработка сигналов: Пер. с англ./Под ред. С.Гуна, Х.Уайтхауза, Т.Кайлата./- М.: Радио и связь, 1989.

57. Владимиров В. В. Алгоритм кватернионного преобразования и его вычислительные возможности./Многопроцессорные вычислительные структуры. /- Таганрог: ТРТИ, 1987.- Вып. 9.

58. Авторское свидетельство № 1472902. Устройство для преобразования координат (Владимиров В. В.) опубл. БИ. №14,- 1989.

59. Владимиров В. В. Алгоритм сопроцессора дискретного кватернионного преобразования. /Многопроцессорные вычислительные структуры./.-Таганрог: ТРТИ, 1989 с. Вып. 11.

60. Авторское свидетельство № 1403062. Устройство для преобразования координат вектора в трехмерном пространстве (Владимиров В. В. и др.) опубл. БИ. №22,- 1988.

61. Владимиров В. В. Звягинцев Н. С. Решение задачи автосопровождения по спутниковым обсервациям. / Сборник научных трудов НГМА / -Новороссийск: НГМА 2003, вып. №8.

62. Лукин А. Н. Кожухов В. П. и др. Математические основы судовождения. -М.: Транспорт, 1993.

63. Владимиров В. В. Звягинцев Н. С. Вычислительные возможности алгоритма трехмерного дискретного вращения вектора. /Проблемы водного транспорта./ Известия ВУЗов, Северо-Кавказский регион, 2004.

64. Сизов В. В. Морские навигационно-картографические системы. -Ростов н/Д: ИРИДИС, 2000.

65. Кешин М. О. и др. Кинематическое позиционирование в реальном масштабе времени с помощью используемой Интернет дифференциальной GPS разработки НАСА. /Гироскопия и Навигация/СПб.: ЦНИИ «Электроприбор», 2004г, вып. 47.

66. Пелевин А. Е. Стабилизация движения судна на криволинейной траектории. /Гироскопия и Навигация./- СПб.: ЦНИИ «Электроприбор», 2002, вып. 37.

67. Кузнецов В.В., Смагин В.А. Прямая и обратная задачи надежности сложных программных комплексов / Надежность и контроль качества./ -1997.-№ 10.

68. Муса Дж.Д. Измерение и обеспечение надежности программных средств. /ТИИЭР/, 1980, Т.68, №9.

69. Карповский Е.Я., Чижов С.А. Надежность программной продукции. -Киев: Техника, 1990.

70. Mysa J. A theory of software reliability and its application. /1ЕЕЕ Trans, on software Eng./ sept. 1975. - vol.SE-1.

71. Духнич Е.И. Синтез класса алгоритмов и вычислительных структур для реализации дискретных линейных преобразований: Диссерт. на соискание уч. степени д.т.н. Таганрог, 1985.

72. Андреев А. Е. Аппаратурно-ориентируемые алгоритмы типовых унитарных преобразований линейной алгебры: Диссерт. на соискание уч. степени к.т.н. Волгоград, 1998.

73. Тесленко А. В. Разработка и исследование аппаратурно-ориентированных алгоритмов дискретных косинусных преобразований: Диссерт. на соискание уч. степени к.т.н. Волгоград, 1998.

74. Духнич Е. И. Об одном подходе к выполнению цифровых линейных преобразований // Кибернетика. 1985.- N5.

75. Егунов В.А. Разработка и исследование аппаратурно-ориентированных алгоритмов быстрого преобразования Хаусхолдера: Диссерт. на соискание уч. степени к.т.н.- Волгоград, 1996.

76. Стрельников Олег Иванович. Разработка и исследование аппаратурно-ориентированных алгоритмов для нахождения собственных значений матриц. Диссерт. на соискание уч. степени к.т.н. Волгоград, 2002.

77. Духнич Е.И., Деревенсков С.О. ДЛП-алгоритмы многомерных вращений для СБИС-реализации /Многопроцессорные вычислительные структуры: Междуведомственный тематический научный сборник сборник./ -Таганрог: ТРТИ, 1995.- Вып. 15-16.

78. Деревенсков С.О. Быстрый ДЛП-алгоритм многомерного вращения вектора /Волгоград.гос.техн.ун-т./- Волгоград, 1995.-4с.- Деп. В ВИНИТИ. № 2442 В95.

79. Авторское свидетельство №959071. Вычислительное устройство. (Владимиров В. В. и др.) опубл. БИ №34, 1982.

80. Духнич Е. И., Лученко А. Е. и др. Итерационный способ решения ОГЗ для преобразования гиперболических координат в геодезические. Деп. рук. №3-6679, МРС, ТТЭ, серия 0, №31,1981.

81. Духнич Е. И., Лученко А. Е. и др. Векторный метод решения обратной геодезической задачи. /Вопросы радиоэлектроники./ Сер. ОТ, 1980, вып.9.

82. Духнич Е. И., Митраков В. А. О возможности расширения набора операций вычислителя DIVIC. / В кн.: III Всесоюзная конференция по аналоговой вычислительной технике./ М.: НТО РЭС им. А. Н. Попова, 1969.

83. Духнич Е. И., Бартошевский В. Д. Алгоритмы решения ОГЗ для функциональных расширителей навигационных ЭВМ. /Известия ЛЭТИ./ -Л.: 1981,-вып. 285.

84. Демидович Б. П., Марон И. А. Основы вычислительной математики. М. : Наука, 1966.

85. Каляев А. В. Теория цифровых интегрирующих машин и структур. М.: «Советское радио», 1970.

86. Г.Корн, Т. Корн. Справочник по математике для научных работников и инженеров. СПб.: издательство «Лань», 2003.

87. Владимиров В. В. Звягинцев Н. С. Анализ и синтез алгоритмов дискретного вращения вектора для решения задач морской навигации. /Проблемы водного транспорта./ Известия ВУЗов, Северо-Кавказский регион, 2004.

88. Казанова Г. Векторная алгебра. М. Мир, 1979.

89. Владимиров В. В. Звягинцев Н. С. Граждан Д. В. Анализ сходимости алгоритмов дискретных кватернионных преобразований. /Перспективные информационные технологии и интеллектуальные системы. /- Таганрог: ТРТУ, 2005,-№1(21).

90. В.В. Владимиров, Н. С. Звягинцев, Д. В. Граждан. Применение кватернионных преобразований для описания траектории судна. /Проблемы водного транспорта./ Известия ВУЗов, Северо-Кавказский регион, 2004.

91. Программный код алгоритма ДКП (п=0)386р

92. STK SEGMENT STACK USE16 DB 256 DUP (?) STK ENDS

93. DATA SEGMENT PARA PUBLIC "DATA" USE16kSISW DB 1 ;REVERSE/DIRECT SWITCHgXO DD 10.0 ;INPUT COORDINATES gYO DD 10.0 gZO DD 10.0mAAx DD 12.0 ;ANGLES TO ROTATE ON mAAyDD 12.0 mAAz DD 12.0

94. M DD 1.0 ;ACCURACY DATA ENDS

95. EXTRN ITERALGOR:FAR EXTRN REVERSE:FAR

96. CODE SEGMENT PARA PUBLIC "CODE" USE16 MAIN:

97. ASSUME CS:CODE, DS:DATA MOV AX, DATA MOV DS, AX XOR AX, AX

98. CALL ITERALGOR JMP EXIT REVSCALL:

99. XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

100. CLUDE SGNMACRO.INC INCLUDE macroSC.INC INCLUDE macroROT.INC INCLUDE NULLaxis.INC INCLUDE ALGOmacr.INC INCLUDE STOPcond.INC KSIS STRUC STRUCTURE FOR ROTAXIS X DD (?) Y DD (?) Z DD (?) KSIS ENDS .386p

101. ROTATION AXIS & kSi SWITCH1. RTAXIS DB (?)

102. STOPAXIS DB (?) ;STOP CRITERIA FOR REVERSE CALCULATIONS kSISW DB (?) ; 1 IS TRUE, 0 FALSE - REVERSE CALC SWITCHхххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххх COMMONDATA ENDS

103. DATA SEGMENT PUBLIC PARA "DATA" USE16 ADDRSTOP DW ENDCYCLE

104. RADS DD 0.017453292519943295769236907684886 ;PI/180 RADSdiv60 DD 0.0002908882086657215961539484614 ;RADS/60 AuxAccDD 1.1547005383792515290182975610039 ;2/SQR(3) ;INPUT ANGLES

105. AAx DD (?) AAy DD (?) AAz DD (?)1.TERMIDIATE ANGLES

106. Aix DD (?) AiyDD (?) Aiz DD (?)1. SCALE VALUESdAx DD (?) dAy DD (?) dAzDD (?)

107. Mx DD (?) My DD (?) Mz DD (?)kSi VALUES

108. KSIKSIS о ;STRUCTURE FOR ROTAXIS

109. SGNS KSIS о ;KSIS STRUC FOR MEMORIZING SGN (AAx, AAy, AAz)

110. NLAXISBF KSIS о ; FOR NULLAXIS MACRO

111. NLAXISAF KSIS о ;F0R ALTERNATIVE STOPkSiX DD (?)kSiY DD (?)kSiZ DD (?)1. STEP & ACCURACY1. STP DD (?) ;M DD 600.01. COORDINATEScX0 DD 10.0 ;cY0 DD 10.0 ;cZ0 DD 10.0cXl DD (?) cYl DD (?) cZl DD (?)cX2 DD (?) cY2 DD (?) cZ2 DD (?)

112. XFINAL DD (?) YFINAL DD (?) ZFINAL DD (?)

113. ROTATION AXIS & KSI SWITCH ;RTAXIS DB "X"

114. STOPAXIS DB "Y" ;STOP CRITERIA FOR REVERSE CALCULATIONS ;kSISW DB 1 ; 1 IS TRUE, 0 FALSE - REVERSE CALC SWITCH1. THREE DD 3.0 TWO DD 2.01.DD (?)1. DD (?)1.I DD (?) DATA ENDS1. PUBLIC ITERALGOR

115. CODE SEGMENT PUBLIC PARA "CODE" USE16 ASSUME CS:CODE, DS:DATA, ES:COMMONDATA1. MAIN:1.ERALGOR PROC FAR1. MOV AX, COMMONDATA1. MOV ES, AX1. XORAX, AX1. MOV AX, DATA1. MOV DS, AX1. XORAX, AX1. FINIT

116. FLD gAAz FLD gAAy FLD gAAx FSTP AAx FSTP AAy FSTP AAz1. XXXXXXXXXX

117. SCALING & CALCULATING STEP ;XXXXXXXXXX1.fl: ;FIRST KSI SWITCH CONDITION

118. MOV AL, kSISW CMP AL, 1 JETRUE1

119. ELSE1: ;KSI SWITCH IS FALSE1. SCALE AAx, AAy, AAz, RADS

120. FSTP Mx RETRIEVING SCLAED ANGLES FROM NCP STACK1. FSTP My FSTP Mz1. CALCULATING STEP

121. FMUL RADSdiv60 RADIANS FSTM1. FMUL AuxAcc FSTP STP1. JMP ENDIF1

122. TRUE1: FLDM FLD1 FLD1 FLD1 FSTP Mx FSTP My FSTP Mz

123. FMUL RADSdiv60 RADIANS FSTP STP1. ENDIF1:1. XOR AL, AL ;END IF11. FLDMz ;dAj=Mj*STP

124. FLD My FLD Mx FMUL STP FSTP dAx FMUL STP FSTP dAy FMUL STP FSTP dAz ;XXXXXXXXXX

125. END SCALING & CALCULATING STEP ;XXXXXXXXXX

126. XXXXXXXXXX ;SETTING ROTATION AXIS ;XXXXXXXXXX

127. SGN1 AAx FSTP SGNS.X SGN1 AAy FSTP SGNS.Y SGN1 AAz FSTP SGNS.Z•xxxxxxxxxx

128. HERE BEGINS THE CYCLE ;ХХХХХХХХХХ

129. MOV ECX, 1 ;STOP CONDITIONS PUT ZERO IN THIS REGISTER

130. CONVERTING IN MINUTES AND MINUTES IN

131. SAVING ACCURACY FOR NORMSTOP

132. STP = 2*M/SQR(3) ;SAVING STP1. KSI SWITCH IS TRUE1. Mx=My=Mz=I ;STP=M

133. CONVERTING STEP IN MINUTES AND MINUTES IN1. DO CYCLE:1.ITIAL ALGORITHM DATA1. CMP ECX, 1 JNE COUNTER2

134. FLD cZO ;IF IT IS FIRST STEP X1=X2=X0, SAME OTHER COORDS1. FLD cYO FLD cXO

135. FST cX2 FSTP cXl FST cY2 FSTP cYl FST cZ2 FSTP cZl1. JMP ENDCOUNTER

136. COUNTER2: CMP ECX,2 JNE ENDCOUNTER

137. FLD cZO ;IF IT IS SECOND STEP X1=X0, SAME OTHER COORDS1. FLD cYO1. FLD cXO1. FSTPcXl1. FSTP cYl1. FSTP cZl1. ENDCOUNTER:

138. END INITIAL ALGORITHM DATA

139. SECOND KSI SWITCH CONDITION1.f2:

140. MOV AL, kSISW CMP AL, 1 JE TRUE2 ELSE2: SGN2 AAx, Aix FSTP kSiX SGN2 AAy, Aiy FSTP kSiY SGN2 AAz, Aiz FSTP kSiZ

141. KSI SWITCH IS FALSE kSiX=SGN(Ax-Aix) kSiY=SGN(Ay-Aiy) kSiZ-SGN(Az-Aiz)1. JMP ENDIF2

142. TRUE2: ;KSI SWITCH IS TRUE

143. ROTAXIS KSI, RTAXIS, cX2, cY2, cZ2 ;SETTING kSis AS PER REQ ROTATION AXIS FSTP kSiX FSTP kSiY1. FSTP kSiZ1. ENDIF2: ;END IF21. XORAL, AL

144. XXXXXXXXXX ; ALGORITHM MACRO :XXXXXXXXXX1. ALGORITHM

145. XXXXXXXXXX ; ALGORITHM ENDS ;XXXXXXXXXX

146. RE-ASSINING INITIAL DATA AND CHECKING FOR STOP1. FLD cZ2 FLD cY2 FLD cX2

147. FSTP cXl FSTP cYl FSTP cZl1. X1=X2 ;Y1=Y2 ;Z1=Z21.f3: ;THIRD KSI SWITCH CONDITION

148. MOV AL, kSISW ;MEMORIZING INITIAL kSiS

149. CMP AL, 1 JNE ENDIF3 TRUE3: ;KSI SWITCH IS TRUE

150. NULLAXIS NLAXISBF, STOPAXIS, cX2, cY2, cZ21. ENDIF3: ;END IF31. XOR AL, AL

151. FLD ZFINAL FLD YFINAL FLD XFINAL

152. FSTP cX2 FSTP cY2 FSTP cZ21.f4: ;FOURTH KSI SWITCH CONDITION

153. MOV AL, kSISW CMP AL, 1 JE TRUE4

154. ELSE4: ;KSI SWITCH IS FALSE1. FLD dAz FLD dAy FLD dAx

155. FMUL SGNS.X FSTP dAx FMUL SGNS.Y FSTP dAy FMUL SGNS.Z FSTP dAz

156. CALCULATING Aij=Aij+dAj*SGN(Aj)

157. FLD dAx FLD Aix FLD dAz FLD Aiz FLD dAy FLD Aiy

158. FADD FXCH ST(1) FADDP ST(2),ST FXCH ST(2)

159. FADDP ST(3),ST ;RESULT IN NCP Z, Y, X

160. FSTP Aiz FSTP Aiy FSTP Aix

161. NORMSTOP AAx, AAy, AAz, Aix, Aiy, Aiz, M CMP ECX, 0 JNEDONEXT JMP ADDRSTOP DONEXT: ;IF STOP TRUE STOP ;ELSE CONTINUE CYCLE JMP ENDIF4 TRUE4: ;KSI SWITCH IS TRUE

162. NULLAXIS NLAXISAF, STOPAXIS, XFINAL, YFINAL, ZFINAL ALTSTOP NLAXISBF, NLAXISAF ZEROCHECK kSiX, kSiY, kSiZ

163. EXIT CYCLE HERE IF STOP IS TRUE CMP ECX, 0 JNE DONEXT 1

164. JMP ADDRSTOP ;IF STOP TRUE STOP DONEXT1: ;ELSE CONTINUE CYCLE

165. FLD dAx ;CALCULATING Aij=Aij+dAj1. FLD Aix1. FLD dAz1. FLD Aiz1. FLD dAy1. FLD Aiy

166. FADD FXCH ST(1) FADDP ST(2),ST FXCH ST(2) FADDP ST(3),ST

167. FSTP Aiz FSTP Aiy FSTP Aix ENDIF4: XORAL, AL1. RESULT IN NCP Z, Y, X1. END IF4

168. C ECX JMP DOCYCLE !!!!!!!!!!!!!!!!!!!!!!! XXXXXXXXXX ENDING ALGORITHM CYCLE XXXXXXXXXX ENDCYCLE: FINIT FLD Aiz FDIV RADS FLD Aiy FDIV RADS FLD Aix FDIV RADS FLD ZFINAL FLD YFINAL FLD XFINAL

169. CREASING CYCLE COUNTER ;IF STOP FALSE CONTINUE

170. CONVERTING BACK IN DEGREES

171. CONVERTING BACK IN DEGREES

172. CONVERTING BACK IN DEGREES1. FLDZ

173. FST NLAXISBF.X ;RE-INITIALIZING ALL DATA IN CASE OF LATER USE1. FST NLAXISBF.Y1. FST NLAXISBF.Z1. FST NLAXISAF.X1. FST NLAXISAF.Y1. FST NLAXIS AF.Z

174. FST Aix FST Aiy FST Aiz FST dAx FST dAy FSTP dAz1. RET ENDP

175. EXITALL: MOV AX, 4C00h INT21H1. CODE ENDS END MAIN386p

176. ROTATION AXIS & kSi SWITCH1. RTAXIS DB (?)

177. STOPAXIS DB (?) ;STOP CRITERIA FOR REVERSE CALCULATIONS kSISW DB (?) ;1 IS TRUE, 0 FALSE - REVERSE CALC SWITCH ;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx COMMONDATA ENDS

178. DATA SEGMENT PARA PUBLIC "DATA" USE 16mXO DD 20.0 ;INPUT COORDINATES mYO DD 20.0 mZO DD 20.0mAAx DD (?) ;ANGLES TO ROTATE ON mAAy DD (?) mAAz DD (?)mM DD 0.1 ;ACCURACY

179. ROTATION AXIS & kSi SWITCH mRTAXIS DB "X"'mSTOPAXIS DB "Y" ;STOP CRITERIA FOR REVERSE CALCULATIONS mkSISW DB (?) ; 1 IS TRUE, 0 FALSE - REVERSE CALC SWITCH

180. REVERSE CALCULATIONS OUTPUT VALUES1. AxP DD (?) AyP DD (?)1. AzP DD (?)

181. AxVrDD (?) Ay Vr DD (?) AzVr DD (?)

182. PrjYOZ DD (?) PijXOZ DD (?) PrjXOY DD (?)1. DATA ENDS

183. CODE SEGMENT PARA PUBLIC "CODE" USE16

184. EXTRN ITERALGOR-.FAR MAIN:

185. ASSUME CS:CODE, DS:DATA, ES:COMMONDATA MOV AX, DATA MOV DS, AX XORAX, AX

186. MOV AX, COMMONDATA MOV ES, AX XORAX, AX1. SETTING ACCURACY1. FINIT1. FLD mM1. FSTP M1. XXXXXXXXXX1. FIRST ROUND OF CYCLES1. XXXXXXXXXX1. ROTATION AROUND X ON ZOX1. XXXXXXXXXX

187. SETTING INPUT DATA FOR ALGORITHM FLD mZO FLD mYO FLDmXO FSTP cXO FSTP cYO FSTP cZO MOV AL, "Y" MOV STOPAXIS, AL MOV AL, "X" MOV RTAXIS, AL MOV AL, 1 MOV kSISW, AL

188. CALL ITERALGOR ;SAVING OUTPUT DATA1. FSTP сХО FSTP cYO

189. FST PrjYOZ ;SAVING PROJECTION ON YOZ FSTP cZO

190. FSTP AxP ;Ax ANGLE ;XXXXXXXXXX

191. END ROTATION AROUND X ON ZOX1. XXXXXXXXXX1. XXXXXXXXXX

192. ROTATION AROUND Y ON XOY ;XXXXXXXXXX FINIT

193. SETTING INPUT DATA FOR ALGORITHM MOVAL, "Z"

194. MOV STOPAXIS, AL ;NO NEED TO RESET cXO, cYo, cZO THEY WERE RE-SAVED ABOVE

195. MOV AL, "Y" ;NO NEED TO SET kSISW TO 1 IT WAS SET TO 1 ABOVE1. MOV RTAXIS, AL1. CALL ITERALGOR FXCH ST(4)

196. FSTP AxVr ;SAVING YOZ PROJECTION ANGLE FINIT1. XXXXXXXXXX1. END FIRST ROUND OF CYCLES1. XXXXXXXXXX1. XXXXXXXXXX1. SECOND ROUND OF CYCLES1. XXXXXXXXXX1. ROTATION AROUND Y ON XOY1. XXXXXXXXXX

197. SETTING INPUT DATA FOR ALGORITHM FLD mZO FLD mYO FLD mXO FSTP cXO FSTP cYO FSTP cZO MOVAL, "Z" MOV STOPAXIS, AL MOV AL, "Y" MOV RTAXIS, AL

198. CALL ITERALGOR ;SAVING OUTPUT DATA FST PrjXOZ ;SAVING PROJECTION ON YOZ FSTP cXO FSTP cYO FSTP cZO1. FXCH ST(1)

199. FSTPAyP ;Ay ANGLE ;XXXXXXXXXX

200. END ROTATION AROUND Y ON XOY ;XXXXXXXXXX ;XXXXXXXXXX ROTATION AROUND Z ON ZOY ;XXXXXXXXXX FINIT

201. SETTING INPUT DATA FOR ALGORITHM MOV AL, "X"

202. MOV STOPAXIS, AL ;NO NEED TO RESET cXO, cYo, cZO THEY WERE RE-SAVED ABOVE

203. MOV AL, "Z" ;NO NEED TO SET kSISW TO 1 IT WAS SET TO 1 ABOVE1. MOV RTAXIS, AL1. CALL ITERALGOR FXCH ST(5)

204. FSTP AyVr ;SAVING XOY PROJECTION ANGLE FINIT1. XXXXXXXXXX

205. END SECOND ROUND OF CYCLES iXXXXXXXXXX1. XXXXXXXXXX1. THIRD ROUND OF CYCLES1. XXXXXXXXXX1. ROTATION AROUND Z ON ZOY1. XXXXXXXXXX

206. SETTING INPUT DATA FOR ALGORITHM FLD mZO FLD mYO FLD mXO FSTP cXO FSTP cYO FSTP cZO MOV AL, "Xм MOV STOPAXIS, AL MOV AL, "Z" MOV RTAXIS, AL

207. CALL ITERALGOR ;SAVING OUTPUT DATA FSTP cXO

208. FST PrjXOY ;SAVING PROJECTION ON XOY FSTP cYO FSTP cZO FXCH ST(2)

209. FSTPAzP ;Az ANGLE ;XXXXXXXXXX

210. END ROTATION AROUND Z ON ZOY ;XXXXXXXXXX ;XXXXXXXXXX ROTATION AROUND X ON XOZ ;XXXXXXXXXX FINIT

211. SETTING INPUT DATA FOR ALGORITHM MOV AL, "Y" MOV STOPAXIS, AL MOV RTAXIS, AL1. CALL ITERALGOR FXCH ST(3)

212. FSTP AzVr ;SAVING XOY PROJECTION ANGLE1. XXXXXXXXXX1. END THIRD ROUND OF CYCLES1. XXXXXXXXXX1. FINIT1. FLD AzVr1. FLD AyVr1. FLD AxVr1. FLD PrjXOY1. FLD PrjYOZ1. FLD PrjXOZ

213. EXIT: MOV AX, 4C00h INT21H CODE ENDS END MAIN1. ALGORITHM MACRO FINIT

214. CALCULATING I, II, III FLD cXl FLD cX2 FMULTHREE FSUBR

215. FDIV TWO ;I = (3*X2-Xl)/2 FSTI

216. FLD cYl FLD cY2 FMUL THREE FSUBR

217. FDIV TWO ;II = (3*Y2-Yl)/2 FST II1. FLD cZl FLD cZ21. FMUL THREE FSUBR

218. FDIV TWO ;III = (3*Z2-Zl)/2 FST III1. FLD dAy FLD kSiY FMUL

219. FMUL ;dAy*kSiY*III, STACK RESLT1III00.

220. FXCH ST(1) ; STACK IIRESLT1I00. FLD dAz FLD kSiZ FMUL

221. FMUL ;dAz*kSiZ*II, STACK RESLT2RESLT1I00 FSUB ;RESULT 1 -RESU LT2, STACK NEWRSLTI00 FLD cX2

222. FADD ;XFINAL FSTP XFINAL ; STACK I00.1. FLD dAz FLD kSiZ FMUL

223. FMUL ;dAz*kSiZ*I, STACK RESLT100.1. FLD III1. FLD dAx1. FLD kSiX1. FMUL

224. FMUL ;dAx*kSiX*III, STACK RESLT2RESLT100. FSUB ;RESULT1-RESULT2, STACK NEWRSLT00. FLD cY2 FADD1. FSTP YFINAL ;STACK 00.

225. FLD II FLD dAx FLD kSiX FMUL

226. FMUL ;dAx*kSiX*II, STACK RESULT00.1. FLD I1. FLD dAy1. FLD kSiY1. FMUL

227. FMUL ;dAy*kSiY*I, STACK RESLT2RESLT100. FSUB ;RESULT1-RESULT2, STACK NEWRSLT00., FLD cZ2 FADD1. FSTP ZFINAL ;STACK 00.1. ENDM

228. THIS MACRO REQUIRES PRE-DIFENED KSIS STRUC ;XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX ROTAXIS MACRO KSI:REQ, STRING 1:REQ, X2:REQ, Y2:REQ, Z2:REQ LOCAL Xc, Yc, Zc, GoOUT

229. XORAX, AX MOV AL, STRING 1 CMP AL, "X" JE Xc1. CMP AL, "Y" JE Yc1. CMP AL, "Z" JE Zc1. Xc:1. SGN1 Y2

230. FSTP KSI.X; USING FREE FIELD TO STORE INTERMIDIATE SGN VALUE SGN1 Z2 FMUL KSI.X FSTP KSI.X FLDZ FST KSI.Y FSTP KSI.Z JMP GoOUT Yc:1. SGN1 X2

231. FSTP KSI.Y ; USING FREE FIELD TO STORE INTERMIDIATE SGN VALUE SGN1 Z2 FMUL KSI.Y FSTP KSI.Y FLDZ FST KSI.X FSTP KSI.Z JMP GoOUT Zc:1. SGN1 X2

232. FSTP KSI.Z; USING FREE FIELD TO STORE INTERMIDIATE SGN VALUE SGN1 Y2 FMUL KSI.Z FSTP KSI.Z FLDZ FST KSI.X FSTP KSI.Y GoOUT: FINIT FLD KSI.Z FLD KSI.Y FLD KSI.X ENDM

233. XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

234. ХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХхххххххххххххххххххххх1. PART OF ITERALGOR

235. COMPARES 3 SIGNED/UNSIGNED DWORD VALUES ;RETURNES 3 SCALED ABS VALUES ;OUTPUT ON TOP OF NCP STACK

236. XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXхххххххххххххххххххххх

237. SCALE MACRO X:REQ, Y:REQ, Z:REQ, CONV:REQ

238. CAL XABS, YABS, ZABS, RADconv, XmoreYxUnZ, XxIsMAX, YxIsMAX, ZxIsMAX,1. GoOUT1. XABS DD (?)1. YABS DD (?)1. ZABS DD (?)1. FINIT FLDX FLDY FLDZ

239. FMUL CONV CALCULATING THEIR ABS VALUES AND CONVERTING DEGREES IN REQ UNITS FSTZ FABS1. FSTP ZABS

240. FMUL CONV CALCULATING THEIR ABS VALUES AND CONVERTING DEGREES IN REQ UNITS FSTY FABS1. FSTP YABS

241. FMUL CONV CALCULATING THEIR ABS VALUES AND CONVERTING DEGREES IN REQ UNITS FSTX FABS1. FSTP XABS1. FLD YABS FLD XABS

242. FCOM COMPARING XABS AND YABS1. FSTSWAX1. SAHF1. JAE XmoreYxUnZ1. FINIT FLD ZABS FLD YABS

243. FCOM COMPARING YABS AND ZABS1. XOR АХ, АХ1. FSTSWAX1. SAHF1. JAE YxIsMAX

244. JMP ZxIsMAX ;Z is MAX and goes for output

245. XmoreYxUnZ: ;XABS >YABS, COMPARING XABS AND ZABS

246. FXCH ST(1) FSTP YABS FLD ZABS FXCH ST(1) FCOM1. XOR AX, AX FSTSW AX SAHF

247. JAE XxIsMAX ;OTHEWISE Z IS MAX1. ZxIsMAX:1. FINIT

248. FLD ZABS ;Z is MAX and goes for output ;SCALING CALCULATIONS WITH MAX = Z1. FLD XABS1. FDIVR ; XABS/ZABS

249. FSTP XABS ;NOW XABS IS SCALED

250. FLD ZABS ;ZABS IS MAX ANGLE FLD YABS1. FDIVR ; YABS/ZABS

251. FSTP YABS ;NOW YABS IS SCALED1. FLD1

252. FSTP ZABS ; Z IS MAX ANGLE, ITS SCALE -1 JMP GoOUT1. YxIsMAX:1. FINIT

253. FLD YABS ;Y is MAX and goes for output ;SCAL1NG CALCULATIONS WITH MAX = Y FLD XABS1. FDIVR ; XABS/YABS

254. FSTP XABS ;NOW XABS IS SCALED

255. FLD YABS ;YABS IS MAX ANGLE FLD ZABS1. FD1VR ; ZABS/YABS

256. FSTP ZABS ;NOW ZABS IS SCALED1. FLD1

257. FSTPYABS ; Y IS MAX ANGLE, ITS SCALE -1 JMP GoOUT1. XxIsMAX:1. FINIT

258. FLD XABS ;X is MAX and goes for output ;SCALING CALCULATIONS WITH MAX = X FLD YABS1. FDIVR ; YABS/XABS

259. FSTP YABS ;NOW YABS IS SCALED

260. FLD XABS ;YABS IS MAX ANGLE FLD ZABS1. FDIVR ; ZABS/XABS

261. FSTP ZABS ;NOW ZABS IS SCALED1. FLD1

262. FSTP XABS ; X IS MAX ANGLE, ITS SCALE -11. GoOUT:

263. FLD ZABS FLD YABS FLD XABS1. ENDM

264. REQUIRES PRE-DEFINED KSIS STRUC ;XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX NULLaxis MACRO KSINAME:REQ, STRING 1:REQ, X2:REQ, Y2:REQ, Z2:REQ LOCAL Xc, Yc, Zc, GoOUT

265. XORAX, AX MOV AL, STRING 1 CMP AL, "X" JE Xc1. CMP AL, "Y" JE Yc1. CMP AL, "Z" JE Zc1. Xc:1. SGN1 X21. FSTP KSINAME.X1. JMP GoOUT Yc:1. SGN1 Y2

266. FSTP KSINAME.Y JMP GoOUT Zc: SGN1 Z21. FSTP KSINAME.Z GoOUT:1. ENDM

267. XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

268. ITIALIZE MACRO MOV AX, @DATA MOV DS, AX XORAX, AX ENDM

269. XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXxxxxxxx

270. SGN MACRO ;PART OF ITERALGOR

271. CALCULATES SGN OF DIFFERENCE OF 2 FLOAT VALUES ;ONE OF VALUES IS REQ, ANOTHER OPTIONAL

272. ХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХxxxxxxx

273. SGN2 MACRO VALUE 1:REQ, VALUE2:REQ LOCAL POSITIVE, ZERO, NEGATIVE, OUTING FINIT

274. FLD VALUE 1 FLD VALUE2 FSUB1. XORAX, AX FTST

275. FSTSWAX SAHF JZ ZERO JC NEGATIVE POSITIVE: FINIT FLD1

276. JMP OUTING ZERO: FINIT FLDZ

277. JMP OUTING NEGATIVE: FINIT FLD1 FCHS OUTING:

278. ХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХххххххх

279. SGN1 MACRO VAL1:REQ LOCAL POS, ZEROl, NEGG, OUTING 1 FINIT FLD VAL1 XOR AX, AX FTST

280. FSTSWAX SAHF JZ ZEROl JC NEGG POS: FINIT FLD1

281. JMP OUTING 1 ZEROl: FINIT FLDZ

282. JMP OUTING 1 NEGG: FINIT FLD1 FCHS OUTING 1: ENDM

283. XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX NORMSTOP MACRO AA:REQ, BB:REQ, CC:REQ, A:REQ, B.REQ, C:REQ, M:REQ LOCAL CONTINUE, ELSESTOP1. FINIT1. CALCULATING ABS(Aj-Aij)

284. FLD A FLD AA FLD С FLD CC FLD В FLD BB

285. FSUBR FXCH ST(1) FSUBRP ST(2),ST FXCH ST(2)

286. FSUBRP ST(3),ST ;RESULT IN NCP C, B,A FABS1. FXCH ST(2) FABS1. FXCH ST(1)

287. FABS ;RESULT IN NCP А, С, В

288. FCOMPM COMPARING FIRST VALUE DIFF AX1. FSTSWAX1. SAHF1. JA CONTINUE

289. FCOMP M COMPARING 2ND VALUE DIFF AZ1. FSTSWAX1. SAHF1. JA CONTINUE

290. FCOMP M COMPARING 3RD VALUE DIFF AY1. FSTSWAX1. SAHF1. JA CONTINUE1. ELSESTOP: FINIT

291. XOR ECX, ECX ;SETTING COUNTER RG TO ZERO1. CONTINUE: FINIT ENDM

292. XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX ;REQUIRES TWO KSIS STUCTURES ALTSTOP MACRO BEFORE:REQ, AFTER:REQ LOCAL STOPIT, CONTINUE XOR AX, AX FINIT

293. FLD BEFORE.Z FLD BEFORE. Y FLD BEFORE.X FCOMP AFTER.X FSTSW AX SAHF

294. JNE STOPIT FCOMP AFTER.Y FSTSWAX SAHF

295. JNE STOPIT FCOMP AFTER.Z FSTSW AX SAHF1. JNE STOPIT JMP CONTINUE1. STOPIT:

296. XOR ECX, ECX ;SETTING COUNTER RG TO ZERO1. CONTINUE: ENDM

297. VIM! I'Ж Л \!<» ичкаа ы pc i i1 'p /f^A^Ul'i!1. K Iо pia.m (лини pc IN. п. I a Kill пнчч'р l aiinoiiiinii рамп i ы Jiuii тмина 11.< . I'a ipafioi ка а.м ори i мин лпскреi in.i\ una u pinioniii.i \ npt-nnpa touaiimi l.ni решения ta.ia'i ммрскми наши ашш»

298. Li/i ia J" Ml". a ia.'wi.c и Н.Л чпи-ж \ k'.iHH.i iv' iu-m:\ h oi;u i • >-KiMK i p\ ■■ Ivi-1:\ pa -.panoi lie оч. lamno ;iqvi;cK'iiiaiii.!\ c|v jc : я аыома-. i: msi p: n:n !>'.j!,,ti'MiH»M срок sa и

299. Pan.»;;,; !.»:-1ч.!»!сь и рлмкл\ .jm »>.",< >pj о ic\t:H'io Кем ом р\ :.ч»."кч ; ьс .V" J о.; i,i :! ;: jno-j;.1 kiMa.ii.ii;ii, и: юла ра qv.no i км комплскоп. \с Ipoiu ! нл.ижпикчж К ). В. С '.'-'>' г,г- 'Г*

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