ВУЗ:
Составители:
Рубрика:
45
Если Kod
0, то первая слева цифра указывает, что на левой границе
(
1
x
) заданы: 2 - "без узла", 1 - в p(1) задана 1-ая производная, 0 - ну-
левая 2-ая производная. Вторая слева цифра указывает, что на правой
границе (
n
x
) заданы: 2 - "без узла", 1 - в p(N) задана 1-ая производная,
0 - нулевая 2-ая производная.
Если Kod>0, то массив p(1),...,p(N) считается заданным, он не изменя-
ется, а используется для вычисления значения сплайна. Kod при этом
указывает номер обращения к данной функции.
Выходные аргументы:
HS - ордината сплайна в точке u,
Если на входе задано Kod
0, то предварительно вычисляются элементы
массива производных p(2),...,p(N-1) и устанавливается Kod=1. Если же
на входе Kod>0, то при выходе Kod:=Kod+1.
KodErr – код завершения: KodErr = 0 - штатное завершение,
KodErr = №>0 - аварийное завершение, № - код ошибки.
KodErr = 1 - Ошибочное задание сетки узлов (N<2)!
KodErr = 20 - Узлы сетки не упорядочены по возрастанию!
KodErr = 21 - Узлы сетки не упорядочены строго по возрастанию!
KodErr = 3 - Ошибочное задание параметров сплайна!
KodErr = {4 | 5 | 6 | 7} - Ошибочное задание граничных условий!
KodErr = {8 | 9} - Ошибочное задание параметра Kod !
Кубическая сплайн-кривая (на плоскости) представляет собой пара-
метрический сплайн
)(),()( tYtXtV
, составленный из двух кубических
сплайнов
)()(),()( tSytYtSxtX
, зависящих от параметра
t
и заданного
на сетке
n
ttt
10
, в качестве узла
i
t
которой принята длина лома-
ной (с изломами в заданных точках)
от начальной точки
00
, yx
до
точки
ii
yx ,
. В каждом узле
ii
yx ,
сплайн-кривой определяются две
первые производные
ii
pypx ,
соответственно от
X и Y по параметру
t
,
вместе они задают вектор касательной к сплайн-кривой. Процедура
VSpline, вычисляющая недостающие производные
ii
pypx ,
, а также
рассчитывающая Xv, Yv - координаты сплайн-кривой, написана на
VBA и имеет вид:
Если Kod 0, то первая слева цифра указывает, что на левой границе ( x1 ) заданы: 2 - "без узла", 1 - в p(1) задана 1-ая производная, 0 - ну- левая 2-ая производная. Вторая слева цифра указывает, что на правой границе ( xn ) заданы: 2 - "без узла", 1 - в p(N) задана 1-ая производная, 0 - нулевая 2-ая производная. Если Kod>0, то массив p(1),...,p(N) считается заданным, он не изменя- ется, а используется для вычисления значения сплайна. Kod при этом указывает номер обращения к данной функции. Выходные аргументы: HS - ордината сплайна в точке u, Если на входе задано Kod 0, то предварительно вычисляются элементы массива производных p(2),...,p(N-1) и устанавливается Kod=1. Если же на входе Kod>0, то при выходе Kod:=Kod+1. KodErr – код завершения: KodErr = 0 - штатное завершение, KodErr = №>0 - аварийное завершение, № - код ошибки. KodErr = 1 - Ошибочное задание сетки узлов (N<2)! KodErr = 20 - Узлы сетки не упорядочены по возрастанию! KodErr = 21 - Узлы сетки не упорядочены строго по возрастанию! KodErr = 3 - Ошибочное задание параметров сплайна! KodErr = {4 | 5 | 6 | 7} - Ошибочное задание граничных условий! KodErr = {8 | 9} - Ошибочное задание параметра Kod ! Кубическая сплайн-кривая (на плоскости) представляет собой пара- метрический сплайн V (t ) X (t ),Y (t ), составленный из двух кубических сплайнов X (t ) Sx(t ), Y (t ) Sy(t ) , зависящих от параметра t и заданного на сетке t0 t1 tn , в качестве узла ti которой принята длина лома- ной (с изломами в заданных точках) от начальной точки x0 , y0 до точки xi , yi . В каждом узле xi , yi сплайн-кривой определяются две первые производные pxi , pyi соответственно от X и Y по параметру t , вместе они задают вектор касательной к сплайн-кривой. Процедура VSpline, вычисляющая недостающие производные pxi , pyi , а также рассчитывающая Xv, Yv - координаты сплайн-кривой, написана на VBA и имеет вид: 45
Страницы
- « первая
- ‹ предыдущая
- …
- 43
- 44
- 45
- 46
- 47
- …
- следующая ›
- последняя »