Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

B-spline

В последнее время в вычислительной практике широкое распространение получили Б-сплайны (от английского слова bell — колокол), сосредоточенные на конечном носителе. Они используются как для интерполяции функций, так и в качестве базисных функций при построении методов типа конечных элементов. Б-сплайном, или базисным сплайном степени N - 1 дефекта 1 относительно узлов называется функция вида:

 

Пусть т.е. рассматривается случай равномерной сетки. Тогда, к примеру, при N = 4 (кубический сплайн) имеет вид:

Рисунок №№. График кубического B-сплайна.

 

В последние годы в практике геологоразведки стали всё чаще использовать т.н. многоуровневые методы, которые рассматривают поверхность на разных уровнях детализации и в результате способны отражать как глобальные, так и локальные тренды, имеющиеся в исходных данных. Кроме того, такой подход часто обеспечивает более высокую скорость вычислений. Различают Local B-spline и Global B-spline.

В отличии от Mask Method’а, алгоритм B-spline не работает с значениями в узлах сетки, а создаёт гладкое, параметрическое представление о значениях во всей области моделирования. При этом значение параметра можно расчитать в любой точке, однако Irap RMS в настоящее время не поддерживает данного преимущества и расчитывает на основе данного метода значения в узлах сетки.

Алгоритм создаёт бикубическую сплайн функцию f в области Ω, которая разбита на сетку Ф. Функция f имеет вид:

 

где ϕi,j – значение сетки Ф в узле (i,j), Bl, Bk­ – базисные фенкции кубического сплайна, описанного выше.

Каждый квадрат сетки [ i, j + 1]*[ i + 1, j ] представлен в виде отдельного участка кубического сплайна. Суть метода Local B-spline сводится к нахождению коэффициентов ϕi,j, при этом каждое отдельное значение ϕi,j влияет только на области [ i - 2, i + 2]*[ j - 2, j + 2]. Следовательно, представляется возможным определить ϕi,j, используя все входные данные, попадающие в область влияния. При этом отмечается, что:

· Участок сплайна, на который влияет только одна точка исходных данных, обязательно пройдёт чере эту точку;

· Участок сплайна, на который влияют сразу несколько точек исходных данных, будет представлять собой хорошую локальную аппроксимацию значений;

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

«Многоуровневость» алгоритма заключается в расчётах на разных уровнях детализации. Расчёт начинается на сетке Ф0, содержащей только 4х4 узлов. Следовательно, вся область будет описанна одним участком кубического сплайна. На этом уровне достигается лишь крайне грубое описание исходных данных, так как у нас сть 4*4=16 степеней свободы, после чего расчитывается расхождение между расчитаным значением (к примеру, модель поверхности) и исходными данным. После этого алгоритм удваивает число участков сплайна на каждой оси х и у. Используя результаты предыдущего этапа, алгоритм расчитывает новые значения, учитывающие расхождения первой итерации. Разумеется, сразу нельзя точно расчитать модель значения расхождения во всех исходных точках, т.к. число степеней свободы всё ещё крайне ограниченно. Поэтому алгоритм продолжает удваивать число участков кубического Б-сплайна на каждой следующей итерации до тех пор, пока не будет полученна модель, точно воспроизводящая все данные или же сетка Ф не будет менее детальна чем сетка собственно требующейся модели распределения искомого параметра.

Далее алгоритмс использует свойство Б-сплайнов, позволяющее измельчать сетку Ф, полученную на любой итерации, не изменяя расчитанного значения (например, поверхность). Предыдущая итерация алгоритма создала стеку Фn и имеются ещё n-1 более грубых сеток. Измельчая все эти сетки до той же степени, что и сетка Фn и суммируя все значения расчитывается сетка суммарных искомых коэффициентов ϕi,j, описывающая модель распределения искомого параметра во всей области Ω.

Алгоритм Global B-spline, в отличии от вышеописанного, основан не на изменении локальных коэффициентов, а на поиске общего решения путём миниизации функции вида:

где – сплайновая модель искомых значений, параметризованная через сетку Ф, N – чесло точек данных, α – коэффициент «гладкости», при помощи которого можно настраивать баланс между гладкостью распределения значений (например, гладкостью поверхности) и точностью воспроизведения иходных значений.

Однако, следует отметить, что такой алгоритм подходит лишь для сеток небольшой размерности [m*n], так как в ходе решения представляется необходимым решить систему линейных с числом неизвестных mn. При больших размерах сетки сделать этого прямыми методами практически невозможно: требуется многоуровневый подход, реализованный, например, в алгоритме Multigrid.


Дата добавления: 2015-07-08; просмотров: 303 | Нарушение авторских прав


<== предыдущая страница | следующая страница ==>
Mask Method| Реферат

mybiblioteka.su - 2015-2024 год. (0.006 сек.)