2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки


Правила форума


В этом разделе нельзя создавать новые темы.



Начать новую тему Ответить на тему
 
 Касательный вектор к кривой и производная по параметру
Сообщение26.02.2014, 15:56 


05/07/07
9
Ижевск
Помогите, пожалуйста, разобраться, как соотносится вектор производной на концах кривой Эрмита, который задает вручную пользователь, со значением производной этой кривой по параметру u.

Разбираю вот эту лекцию. На страницах 102-103 там дается пример (перевожу):
Цитата:
Пусть концы сегмента сплайна $\mathbf{p}_i = (1, 1)$, $\mathbf{p}_{i+1} = (4, 3)$, тогда
$\frac{du_i}{dx} = \frac{1-0}{4-1} = \frac{1}{3},
\frac{du_i}{dy} = \frac{1-0}{3-1} = \frac{1}{2}$
($u \in [0, 1]$ - параметр).
Пусть векторы касательных $\mathbf{t}_i = \begin{bmatrix}0 \\ 1.5 \end{bmatrix}, \mathbf{t}_{i+1} = \begin{bmatrix}1\\-1 \end{bmatrix}$.
Так как векторы касательных заданы пользователем в виде $\quad\begin{bmatrix}\Delta x \\ \Delta y \end{bmatrix}\quad$, а нам нужны касательные в параметрической форме, векторы касательных должны быть масштабированы:
$Dp_i = \begin{bmatrix}\Delta x \frac{du_i}{dx}, \Delta y \frac{du_i}{dy} \end{bmatrix} = \begin{bmatrix} 0 \\ \frac{3}{4}\end{bmatrix},$
$Dp_{i+1} = \begin{bmatrix} \Delta x \frac{du_{i+1}}{dx}, \Delta y \frac{du_{i+1}}{dy} \end{bmatrix} = \begin{bmatrix} \frac{1}{3}\\ -\frac{1}{2} \end{bmatrix}.$
- и далее в расчетах используются уже $\begin{bmatrix} 0 \\ \frac{3}{4}\end{bmatrix}$ и $\begin{bmatrix} \frac{1}{3}\\ -\frac{1}{2} \end{bmatrix}$

Как получены эти формулы для $Dp_i$ и $Dp{i+1}$ (почему дельты умножают именно на указанные значения, а не на обратные, например) и как эти значения производных соотносятся с другими источниками о сплайнах Эрмита, где ничего не говорится про "масштабирование касательных векторов", а просто дается формула наподобие:
Цитата:
$P(u) = \begin{bmatrix} 1 - 3u^2 + 2u^3 & 3u^2 - 2u^3 & u-2u^2+u^3 & -u^2 + u^3 \end{bmatrix}\begin{bmatrix}\mathbf{P}_0 \\ \mathbf{P}_1 \\ \mathbf{P}^\prime_0 \\ \mathbf{P}^\prime_1\end{bmatrix}$,
где $\mathbf{P}_0, \mathbf{P}_1$ - радиус-векторы конечных точек, $\mathbf{P}^\prime_0, \mathbf{P}^\prime_1$ - векторы, задающие направление касательных в этих точках?

Векторы $\mathbf{P}^\prime_0 = \mathbf{P}^\prime(0)$ и $\mathbf{P}^\prime_1 = \mathbf{P}^\prime(1)$ - это те же самые векторы, что и $\mathbf{t}_i$ и $\mathbf{t}_{i+1}$ из первого примера? Если да, то почему во второй формуле нет масштабирования с учетом $\Delta x$ и $\Delta y$? Если нет, то, опять же, в чем геометрический смысл масштабирования?
Помогите, пожалуйста, выбраться из этих формул. Ломаю голову второй день - верный признак, что все проще, чем я думаю...

 Профиль  
                  
 
 Re: Касательный вектор к кривой и производная по параметру
Сообщение28.02.2014, 02:03 
Заслуженный участник
Аватара пользователя


23/07/08
10909
Crna Gora
Sunny
Я не вижу в выкрутасе автора никакого смысла.

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

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

Но в Вашем случае векторы $\mathbf p_0$ и $\mathbf p'_0$ задаются в одних и тех же единицах. В этом играет роль и то, что параметр $u$ безразмерный. Отношение длин этих векторов не зависит ни от базиса, ни от выбора единицы измерения (хотя в других ситуациях могло бы зависеть). Так что автор зря усложняет.

-- Пт фев 28, 2014 01:35:06 --

На всякий случай проверил, что при Вашей формуле для $\mathbf p(u)$ справедливо
$\left.\frac{d\mathbf p(u)}{du}\right|_{u=0}=\mathbf p'_0,\quad \left.\frac{d\mathbf p(u)}{du}\right|_{u=1}=\mathbf p'_1$,
то есть что обозначения этих векторов оправданны. Это значит, что они являтся касательными к кривой в соответствующих точках. Тогда нет никакого смысла считать, что пользователь вводит какие-то другие векторы $\mathbf t$. Пусть вводит сразу $\mathbf p'$.

 Профиль  
                  
 
 Re: Касательный вектор к кривой и производная по параметру
Сообщение28.02.2014, 16:47 


05/07/07
9
Ижевск
svv, спасибо за подробный ответ! Все встало на свои места.
Получается, учитывать "единицу измерения" нужно в том случае, если кривая Эрмита используется для интерполяции функции $y = f(x)$, когда происходит замена $x$ на параметр $u$ - потому что исходные значения производной заданы для $dy/dx$, а не для $dy/du$. А для геометрического сплайна и $x$, и $y$ изначально задаются через $u$, поэтому с производной все в порядке.

 Профиль  
                  
 
 Re: Касательный вектор к кривой и производная по параметру
Сообщение01.03.2014, 00:08 
Заслуженный участник
Аватара пользователя


23/07/08
10909
Crna Gora
Да, верно.

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 4 ] 

Модераторы: Модераторы Математики, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group