|
|
ru.algorithms- RU.ALGORITHMS ---------------------------------------------------------------- From : Sergey Andrianov 2:5020/1507.400 20 Sep 2002 23:26:02 To : Maxim Balagansky Subject : Re: Линия тока -------------------------------------------------------------------------------- Однажды 20-Sep-02 в 08:54 Maxim Balagansky (2:5001/27.5) написал All по поводу -=- Линия тока -=- MB> Есть трехмерное поле скоростей (U,V,W). Требуется построить линию тока из MB> произвольной точки объема, как это умеет делать TecPlot. Единственное, что MB> я могу придумать это такой алгоритм: MB> 1) Берем произвольную точку объема $x^0=(x_1^0,x_2^0,x_3^0)$ MB> 2) Вычисляем вектор скорости $\bar u=(u,v,w)$ в этой точке MB> 3) Следующую точку кривой получаем MB> $x_1^1=x_1^0+u*h$ MB> $x_2^1=x_2^0+v*h$ MB> $x_3^1=x_3^0+w*h$, где h -+- заданный шаг MB> 4) K пункту 2 MB> Есть одно слабое место в данном алгоритме: пункт 2) :). Hа самом деле слабое место совсем не там. Представь на минутку, что твое поле - не что иное, как вращающееся вокруг оси твердое тело. В этом случае линии тока будут окружностями с центром на оси вращения. У тебя же вместо окружностей получатся раскручивающиеся спирали. MB> Kак мне расчитать MB> скорости в произвольной точке, если заданы сеточные данные? Очевидно надо MB> как-то интерполировать, вот только каким способом? Ведь u,v,w функции трех MB> (!!!) переменных. Простейший случай - трилинейная интерполяция. По крайней мере, если поле полученно численно при помощи схемы первого порядка, то это же и наилучший выриант. При численном решении с использованием схемы более высокого порядка, лучше бы и интерполяционный многочлен взять порядком повыше. MB> А может есть способ и попроще? Есть посложнее, но устраняющие указанный выше недостаток. 1. Использование более высоких производных (ты используешь только скорости, т.е. первые производные по времени, но можно взять ускорения и т. д.) 2. Вычислять скорость итерационно: найти точку, куда указывает вектор, вычисленный по твоим формулам, найти вектор в этой точке, взять среднее, найти новую конечную точку и т. д... MB> ЗЫЖ TecPlot меня вполне устраивает, просто это дело принципа. Я еще не MB> зная о TecPlot'е пытался написать свою программу. Уже не могу MB> остановиться... :) Поле для поиска здесь довольно обширно, так что дерзай :). До свидания, в 23:16 MSK Sergey --- * Origin: Sergiev Posad (2:5020/1507.400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.algorithms/52053D8BAE8A.html, оценка из 5, голосов 10
|