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

Расчет сил гидродинамического сопротивления сетных орудий рыболовства в задачах имитационного их моделирования Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
149
35
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
орудие рыболовства / гидродинамика / моделирование / ЭВМ / SIMD / ряд Тейлора / fishing gear / hydrodynamics / modeling / computers / SIMD / Taylor series

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Недоступ Александр Алексеевич, Ражев Алексей Олегович

В статье приводится алгоритм расчета сил гидродинамического сопротивления сетных орудий рыболовства, оптимизированный для работы на современных вычислительных системах. При определении гидродинамических коэффициентов используется математическая операция возведения в степень, достаточно трудоемкая при вычислениях на ЭВМ. Предложенный метод оптимизации основывается на разложении зависимостей сил гидродинамического сопротивления от скорости потока в ряд Тейлора четвертого порядка, в котором используются только операции умножения, сложения и вычитания. На современных процессорах они выполняются быстро (аппаратным способом). Вычисление производится с использованием SIMD-инструкций одновременно для двух гидродинамических коэффициентов c0 и c90. Для анализа адекватности описанного алгоритма и определения его основных характеристик (области определения, скорости работы, погрешности вычислений) создана компьютерная программа. При ее разработке был реализован предлагаемый алгоритм с использованием вычислительных ресурсов центрального процессора с набором инструкций SSE3. При помощи данной программы проведен численный эксперимент и определены скоростные характеристики оптимизированного алгоритма в сравнении с алгоритмом, использующим операцию возведения в степень. Результат замера показал, что скорость работы оптимизированного алгоритма в 35 раз выше. На интервале скоростей от 0.2 до 1.8 м/с погрешность минимальна и практически равна нулю, от 1.8 до 3.7 м/с она не превышает 5 %.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Недоступ Александр Алексеевич, Ражев Алексей Олегович

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

CALCULATION OF DRAG FORCES OF NETTING FISHING GEARS IN THE TASKS OF SIMULATION

The article presents the algorithm for calculation of drag forces of netting fishing gears, optimized to run on modern computer systems. Mathematical operation of expo-nentiation is used in calculation of drag forces coefficients. This operation is quite time-consuming if it is done on a computer. The proposed optimization method is based on the decomposition of the dependency of drag forces of flow velocity in a Taylor series 4th order which performs only operations of multiplication, addition and subtraction and which are fast in modern processors (by hardware). The computation is performed using SIMD instructions for two coefficients of drag forces c0 and c90. A computer program was developed to analyze the adequacy of the described algorithm and to identify its main characteristics (scope, speed, error of calculation. In the process of the program development the proposed algorithm using computing resources of CPU with the SSE3 instruction set was implemented. By using the computer program, a numerical experiment was carried and speed characteristics of the optimized algorithm were determined compared to the algorithm that uses exponentiation. Measurement result showed that the speed optimized algorithm is 35 times higher. In the velocity range from 0.2 to 1.8 m/s the error is minimal and is almost zero. In the interval of speeds above 1.8 to 3.7 m/s, the error does not exceed 5 %.

Текст научной работы на тему «Расчет сил гидродинамического сопротивления сетных орудий рыболовства в задачах имитационного их моделирования»

УДК 639.3.06

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

МОДЕЛИРОВАНИЯ

А. А. Недоступ, А. О. Ражев

CALCULATION OF DRAG FORCES OF NETTING FISHING GEARS IN THE TASKS OF SIMULATION

A.A. Nedostup, A. O. Razhev

В статье приводится алгоритм расчета сил гидродинамического сопротивления сетных орудий рыболовства, оптимизированный для работы на современных вычислительных системах. При определении гидродинамических коэффициентов используется математическая операция возведения в степень, достаточно трудоемкая при вычислениях на ЭВМ. Предложенный метод оптимизации основывается на разложении зависимостей сил гидродинамического сопротивления от скорости потока в ряд Тейлора четвертого порядка, в котором используются только операции умножения, сложения и вычитания. На современных процессорах они выполняются быстро (аппаратным способом). Вычисление производится с использованием SIMD-инструкций одновременно для двух гидродинамических коэффициентов - с0 и с90. Для анализа адекватности описанного алгоритма и определения его основных характеристик (области определения, скорости работы, погрешности вычислений) создана компьютерная программа. При ее разработке был реализован предлагаемый алгоритм с использованием вычислительных ресурсов центрального процессора с набором инструкций SSE3. При помощи данной программы проведен численный эксперимент и определены скоростные характеристики оптимизированного алгоритма в сравнении с алгоритмом, использующим операцию возведения в степень. Результат замера показал, что скорость работы оптимизированного алгоритма в 35 раз выше. На интервале скоростей от 0.2 до 1.8 м/с погрешность минимальна и практически равна нулю, от 1.8 до 3.7 м/с она не превышает 5 %.

орудие рыболовства, гидродинамика, моделирование, ЭВМ, SIMD, ряд Тейлора

The article presents the algorithm for calculation of drag forces of netting fishing gears, optimized to run on modern computer systems. Mathematical operation of exponentiation is used in calculation of drag forces coefficients. This operation is quite time-consuming if it is done on a computer. The proposed optimization method is based on the decomposition of the dependency of drag forces of flow velocity in a Taylor series 4th order which performs only operations of multiplication, addition and subtraction and which are fast in modern processors (by hardware). The computation is performed using SIMD instructions for two coefficients of drag forces c0 and c90. A computer pro-

gram was developed to analyze the adequacy of the described algorithm and to identify its main characteristics (scope, speed, error of calculation. In the process of the program development the proposed algorithm using computing resources of CPU with the SSE3 instruction set was implemented. By using the computer program, a numerical experiment was carried and speed characteristics of the optimized algorithm were determined compared to the algorithm that uses exponentiation. Measurement result showed that the speed optimized algorithm is 35 times higher. In the velocity range from 0.2 to 1.8 m/s the error is minimal and is almost zero. In the interval of speeds above 1.8 to 3.7 m/s, the error does not exceed 5 %.

fishing gear, hydrodynamics, modeling, computers, SIMD, Taylor series

ВВЕДЕНИЕ

Имитационное моделирование в отличие от других видов исследований (натурный эксперимент или физическое моделирование) является наименее затратным и наиболее оперативным [1-3]. С постоянным совершенствованием элементной базы ЭВМ и одновременно их удешевлением последние становятся все более доступными широкому кругу пользователей. Современные персональные компьютеры и рабочие станции имеют мощные вычислительные ресурсы, способные эффективно обрабатывать большие объемы данных в реальном времени. Это достигается возможностью одновременной обработки множества данных на одном или нескольких вычислительных модулях, таких как центральный и графический процессоры.

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

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

МЕТОДЫ

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

С

;

* = 1 £ 2

/ ч Jr ~ - r ~

c + (c - c _£

c0 ^ (c90 c0 )

\

1 Г Г 1 г г

ХУ = - С90 ^рЗРо ; ^ = - С90 , (1)

2 г 2 г

где Rx, Ry, Rz - проекции сил гидродинамического сопротивления; с0 -гидродинамический коэффициент для сети, расположенной параллельно потоку

воды; с90 - гидродинамический коэффициент для сети, расположенной перпендикулярно потоку воды; г - длина связи между узлами модели точечных масс; гх, Гу, г2 - длина проекции связи на оси прямоугольной декартовой системы координат, ось ОХ которой расположена по направлению вектора скорости перемещения узла относительно воды; V - абсолютное значение скорости перемещения узла относительно воды; р - плотность воды; £ - площадь участка сети; ¥а - сплошность сети.

Гидродинамические коэффициенты находятся по формулам

где Яе - число Рейнольдса для сети; ё - диаметр ниток сети; 3 -кинематическая вязкость воды; Ь - коэффициент, учитывающий тип материала сети (Ь=0.165 для капроновой сети, Ь=0.16 - для полиэтиленовой сети).

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

Рассмотрим метод оптимизации вычисления сил гидродинамического сопротивления, основанный на разложении их функции от скорости в ряд Тейлора [6] и применении БГМВ-инструкций [7] центрального и графического процессоров.

Подставив (2) в (1), получим:

где Я - одна из проекций сил гидродинамического сопротивления; к0, к1 - постоянные для участка сети коэффициенты, зависящие от параметров посадки и материала участка сети; х - безразмерный параметр, определяющий ориентацию участка в сети относительно вектора относительной скорости V.

Коэффициент к90 одинаков для каждой проекции Я, коэффициент к0 -различен. Для проекций на оси координат ОУ и 02, исходя из (1), к0=0. Данные коэффициенты постоянны в течение всего процесса моделирования и вычисляются перед началом работы основного цикла алгоритма.

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

В выражении (3) математические операции возведения переменной V в степень запишем в виде

где р=2-Ь для к0 и р=1.72 для к90 (3).

Разложим (4) в ряд Тейлора четвертого порядка [6]. Общий вид разложения задается выражением

(2)

(3)

/ ) = ^,

(4)

где / (г)(а) - значение производной 1-го порядка разлагаемой функции в

точке а.

При а=1 для разложения четвертого порядка получим:

1

1

1

Л

f(v) =1 + Р(V-1)^1 +1 (p-1)(v-1)^1 +1 (p-2)(v-1)^1 +- (p-3)(v- OJJJ. (5)

В выражении (5) используются только операции умножения, сложения и вычитания. На современных процессорах они выполняются аппаратным способом и быстро.

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

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

float _fastcall Func(float x, float y)

{

static float _one = l.f; static float& vals = Values[0]; float v;

asm {

mov eax, vals

movss xmml, x

subss xmml, _one

movsldup xmm0, xmml

paddd xmml, [eax+32]

movlhps xmm0, xmm0 // x,x,x,x

movlhps xmml, xmml //x,1,x,1

mulps xmml, xmml //xA2,l,xA2,l

mulps xmml, xmm0 //xA3,x,xA3,x

mulps xmm0, xmml //xA4,xA2,xA4,xA2

mulps xmml, [eax+0]

mulps xmm0, [eax+l6]

addps xmm0, xmml

haddps xmm0, xmm0

addss xmm0, _one

movss v, xmm0

}

return v;

}

РЕЗУЛЬТАТЫ

При помощи данной компьютерной программы был проведен численный эксперимент и определены скоростные характеристики оптимизированного алгоритма в сравнении с алгоритмом, использующим операцию возведения в степень. Замер времени выполнения производился для одного миллиарда узлов. В эксперименте использовался персональный компьютер с характеристиками, указанными в табл. 1. Результат замера показан в табл. 2. Из нее видно, что скорость работы оптимизированного алгоритма оказалась в 35 раз выше.

Таблица 1. Основные характеристики экспериментального оборудования Table 1. Main characteristics of experimental equipment_

Центральный процессор AMD Phenom II

Количество ядер 4

Тактовая частота 3.2 ГГц

Оперативная память 12 ГБ

Таблица 2. Параметры численного эксперимента Table 2. Parameters of numerical experiment_

Параметр Алгоритм

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

Количество узлов 1000000000

Длительность вычислений 5 мин 41.2 с 9.7 с

Максимальная относительная погрешность при у=[0.08.. .3.7] м/с - 5 %

Графики зависимостей результата _Ду) и относительной погрешности вычисления е(у) от относительной скорости приведены на рис. 1 и 2. На графиках сплошной линией изображена зависимость, полученная алгоритмом возведения в степень, пунктирной - зависимость, полученная оптимизированным алгоритмом, штрих-пунктирной - зависимость относительной погрешности вычислений от скорости для оптимизированного алгоритма.

0,00 0,04 0,08 0,12 0,16 0,20 0,24 0,28 0,32 0,36 0,40 0,44

V, м/с

Рис. 1. Графики зависимостей _Дv) и e(v) при низких скоростях Fig. 1. Dependence off(v) and e(v) at low velocity

Вчисление гидродинамических коэффициентов

I Углах, м/с ¡5,7

Возведением в степень 00:05:11.221

к; е, %

Бремя вычисления 1000000000 коэффициентов, с

Оптимизированным алгоритмом 00:00:09.704

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

k=flM; е=ВД

^ /

/ Степенна) I функция у

У У

ОТНОСИ! погреш ел ьная __ »ость, %

_ - -

0,00 0,37 01 r 11

Zr59 2,96

3,33 3,70

V, м/с

Рис. 2. Графики зависимостейfv) и e(v) при скоростях до 3.7 м/с Fig. 2. Dependence off(v) and e(v) at velocities of up to 3.7 m/s

ВЫВОДЫ

По графикам на рис. 2 видно, что на интервале скоростей от 0.2 до 1.8 м/с погрешность минимальна и практически равна нулю; от 1.8 до 3.7 м/с она не превышает 5 %; на интервале до 0.2 м/с при уменьшении скорости погрешность начинает увеличиваться. Более того, при скоростях менее 0.08 м/с (см. рис. 1) у оптимизированного алгоритма результат вычисления _Ду) становится отрицательным. Данное обстоятельство следует учесть в случаях, когда необходимо производить исследования при низких или нулевых скоростях.

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

Статья подготовлена в рамках выполнения гранта РФФИ №15-08-464а.

СПИСОК ИСПОЛЬЗОВАННЫХ ЛИТЕРАТУРНЫХ ИСТОЧНИКОВ

1. Математическое моделирование орудий и процессов рыболовства: монография: в 3 ч. / А. А. Недоступ. - Калининград: Изд-во ФГБОУ ВПО «КГТУ», 2013. - Ч. 1. - 253 с.

2. Недоступ, А. А. Математическое моделирование орудий и процессов рыболовства: монография: в 3 ч. / А. А. Недоступ, А. О. Ражев. -Калининград: Изд-во ФГБОУ ВПО «КГТУ», 2014. - Ч. 2. - 249 с.

3. Математическое моделирование орудий и процессов рыболовства: монография: в 3 ч. / А. А. Недоступ [и др.]. - Калининград: Изд-во ФГБОУ ВПО «КГТУ», 2014. - Ч. 3. - 183 с.

4. Недоступ, А. А. Гидродинамический расчет рыболовной сети / А. А. Недоступ, Д. А. Володько, А. О. Ражев // Инженерные системы - 2012: V международная научно-практическая конференция: сборник трудов / РУДН-Москва, 2012. - С. 27-31.

5. Nedostup A.A., Razhev A.O. A discrete model of gill nets for static and dynamic problems / 11t International workshop - Contributions on the theory of fishing gears and related marine systems DEMAT 2013. V. 8. 2013. Germany. Rostock. p. 13-22.

6. Ильин, В. А. Математический анализ / В. А. Ильин, В. А. Садовничий, Б. Х. Сендов / ред. А. Н. Тихонов: в 2 ч. - Москва: Проспект, 2004. -Изд. 3-е. - Ч. 1.

7. David A. Patterson, John L. Hennessy. Computer Organization and Design, Fourth Edition: The Hardware/Software Interface. — Morgan Kaufmann, 2011. — 914 p.

REFERENCES

1. Nedostup A. A., Naumov V. A., Razhev A. O., Belyh A. V. Matematicheskoe mo-delirovanie orudij i processov rybolovstva, ch. 1 [Mathematical simulation of fishing gear and processes, part 1]. Kaliningrad, Izdatel'stvo FGBOU VPO "KGTU", 2013, 253 p.

2. Nedostup A. A., Razhev A. O. Matematicheskoe modelirovanie orudij i processov rybolovstva, ch. 2. [Mathematical simulation of fishing gear and processes, part 2]. Kaliningrad, Izdatel'stvo FGBOU VPO "KGTU", 2014, 249 p.

3. Nedostup A. A., Razhev A. O. Matematicheskoe modelirovanie orudij i processov rybolovstva, ch. 2 [Mathematical simulation of fishing gear and processes, part 2]. Kaliningrad, Izdatel'stvo FGBOU VPO "KGTU", 2014, 249 p.

4. Nedostup A. A., Volod'ko D. A., Razhev A. O. Gidrodinamicheskij raschet ry-bolovnoj seti [Hydrodynamic calculation of a fishing net]. Sbornik trudov V mezhdunarodnoj nauchno-prakticheskoj konferencii "Inzhenernye sistemy-2012" [Proceedings of the V international scientific conference "Engineering systems-2012"]. RUDN, Moscow, 2012, pp. 27-31.

5. Nedostup A. A., Razhev A. O. A discrete model of gill nets for static and dynamic problems / 11th International workshop - Contributions on the theory of fishing gears and related marine systems DEMAT 2013. V. 8, 2013, Germany, Rostock, pp. 13-22.

6. Il'in V. A., Sadovnichij V. A., Sendov B. H. Matematicheskij analiz, ch. 1, izd. 3 [Mathematical analysis, part 1, issue 3], Moscow, Prospekt, 2004.

7. David A. Patterson, John L. Hennessy. Computer Organization and Design, Fourth Edition: The Hardware/Software Interface. Morgan Kaufmann, 2011. 914 p. ISBN 0123747503.

ИНФОРМАЦИЯ ОБ АВТОРАХ

Недоступ Александр Алексеевич - Калининградский государственный технический университет; проректор по информатизации и развитию, кандидат технических наук, доцент, заведующий кафедрой промышленного рыболовства;

E-mail: nedostup@klgtu.ru

Nedostup Alexander Alekseevich - Kaliningrad State Technical University; Vice Rector for informatization and development, PhD, Associate professor, the Head of the Department of Industrial Fishing; E-mail: nedostup@klgtu.ru

Ражев Алексей Олегович - Калининградский государственный технический университет; аспирант; E-mail: progacpp@live.ru

Razhev Aleksei Olegovich - Kaliningrad State Technical University; graduate student;

E-mail: progacpp@live.ru

i Надоели баннеры? Вы всегда можете отключить рекламу.