2014 dxdy logo

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

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




На страницу 1, 2  След.
 
 Численное дифференцирование на неравномерных сетках
Сообщение09.12.2020, 21:17 
Аватара пользователя
Добрый день,

прошу прощения за очередной глупый вопрос, мозг совсем деградировал. Меня интересует численное дифференцирование вида $f_{xx}^{(2)}(x) = \sum_{k} w_k^{(2)} y_k$ для функций заданных на сетках $\{ x_k, y_k \}_k$, где $w_k^{(2)}$ -- некоторые веса, типа тех, что в конечных разностях, и $x_k$ распределены как-то произвольно на неком интервале. Единственное более-менее понятное, что я смог найти, это вот эта работа: https://doi.org/10.1137/S0036144596322507 (и её оригинал), и нечто в Numerical Recepies.
Как называются подобные штуки, и где найти об этом информацию? :oops:

 
 
 
 Re: Численное дифференцирование на неравномерных сетках
Сообщение09.12.2020, 21:33 
Аватара пользователя
madschumacher в сообщении #1495893 писал(а):
Как называются подобные штуки, и где найти об этом информацию?
Штуки называются "разностные методы", найти можно много где. Попробуйте начать с работ А.А. Самарского (см. например Введение в теорию разностных схем.)

 
 
 
 Re: Численное дифференцирование на неравномерных сетках
Сообщение10.12.2020, 00:22 
Аватара пользователя
Утундрий в сообщении #1495894 писал(а):
Штуки называются "разностные методы", найти можно много где. Попробуйте начать с работ А.А. Самарского

Спасибо, про разностные методы на сетках с постоянным шагом, когда $x_n = x_0 +n \cdot h$, я знаю, и даже постоянно пользуюсь. Вроде существуют адаптивные сеточные методы, но там вроде просто шаг сетки, где нужно, уменьшается.
Меня же интересует случай, когда расстояния между точками может быть произвольным:
madschumacher в сообщении #1495893 писал(а):
$x_k$ распределены как-то произвольно на неком интервале

И если уж пошла такая пьянка, это всё чтобы могло происходить в многомерном случае. :oops:

 
 
 
 Re: Численное дифференцирование на неравномерных сетках
Сообщение10.12.2020, 01:21 
Аватара пользователя
madschumacher в сообщении #1495907 писал(а):
Меня же интересует случай, когда расстояния между точками может быть произвольным:

madschumacher в сообщении #1495907 писал(а):
И если уж пошла такая пьянка, это всё чтобы могло происходить в многомерном случае.

Всё это там есть.

 
 
 
 Re: Численное дифференцирование на неравномерных сетках
Сообщение10.12.2020, 06:34 
Аватара пользователя
madschumacher в сообщении #1495893 писал(а):
Меня интересует численное дифференцирование вида $f_{xx}^{(2)}(x) = \sum_{k} w_k^{(2)} y_k$ для функций заданных на сетках $\{ x_k, y_k \}_k$, где $w_k^{(2)}$ -- некоторые веса, типа тех, что в конечных разностях, и $x_k$ распределены как-то произвольно на неком интервале.

Объясните, где тут что $f_{xx}^{(2)}(x) = \sum_{k} w_k^{(2)} y_k$

 
 
 
 Re: Численное дифференцирование на неравномерных сетках
Сообщение10.12.2020, 07:44 
Берете многочлен с неопределенными коэффициентами и записываете условие, что написанная Вами сумма тождественно (при любых коэффициентах) равна второй производной от этого многочлена. Чем больше узлов, тем многочлен большей степени можно взять, соответственно тем точнее разностное приближение.

 
 
 
 Re: Численное дифференцирование на неравномерных сетках
Сообщение10.12.2020, 18:08 
Аватара пользователя
Утундрий в сообщении #1495912 писал(а):
Всё это там есть.

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

Спасибо. А через интерполяционный полином Лагранжа можно это делать?

TOTAL в сообщении #1495922 писал(а):
Объясните, где тут чт

Слева -- вторая производная функции, справа её выражение через взвешенные значения на точках сетки.

 
 
 
 Re: Численное дифференцирование на неравномерных сетках
Сообщение11.12.2020, 07:26 
Аватара пользователя
madschumacher в сообщении #1495953 писал(а):
Слева -- вторая производная функции, справа её выражение через взвешенные значения на точках сетки.

Что такое $y_k$? В какой точке оценивается производная? Что такое двойка в скобках как верхний индекс?

 
 
 
 Re: Численное дифференцирование на неравномерных сетках
Сообщение11.12.2020, 11:07 
Аватара пользователя
TOTAL в сообщении #1495987 писал(а):
Что такое $y_k$?

Значение функции в этой точке.
TOTAL в сообщении #1495987 писал(а):
В какой точке оценивается производная?

На всех точках сетки.
TOTAL в сообщении #1495987 писал(а):
Что такое двойка в скобках как верхний индекс?

Вторая производная.

 
 
 
 Re: Численное дифференцирование на неравномерных сетках
Сообщение11.12.2020, 11:39 
Аватара пользователя
madschumacher в сообщении #1496009 писал(а):
TOTAL в сообщении #1495987 писал(а):
Что такое $y_k$?

Значение функции в этой точке.
TOTAL в сообщении #1495987 писал(а):
В какой точке оценивается производная?

На всех точках сетки.
TOTAL в сообщении #1495987 писал(а):
Что такое двойка в скобках как верхний индекс?

Вторая производная.

Если аргумент слева - сразу все точки сетки, то никакой формулы по значениям в конкретных узлах не получите.
Если аргумент слева - определённая точка $x_i$, то просто замените все $y_k$ на $f(x_k)$, дальше очевидно.

 
 
 
 Re: Численное дифференцирование на неравномерных сетках
Сообщение11.12.2020, 14:28 
Аватара пользователя
TOTAL в сообщении #1496015 писал(а):
Если аргумент слева - сразу все точки сетки, то никакой формулы по значениям в конкретных узлах не получите.

я не очень представляю как такое может быть в принципе.
TOTAL в сообщении #1496015 писал(а):
Если аргумент слева - определённая точка $x_i$, то просто замените все $y_k$ на $f(x_k)$, дальше очевидно.

Мне не очень очевидно. Есть как минимум, несколько вариантов: взять Тейлоровское разложение и найти коэффициенты по ближайшим точкам, а можно взять какую-нибудь более хитрую интерполяцию, например, по полиному Лагранжа, и результаты получатся разные.

 
 
 
 Re: Численное дифференцирование на неравномерных сетках
Сообщение11.12.2020, 15:01 
madschumacher
Вы приведите пример сетки. Какие узлы, на каком расстоянии друг от друга.

 
 
 
 Re: Численное дифференцирование на неравномерных сетках
Сообщение11.12.2020, 16:46 
Аватара пользователя
madschumacher в сообщении #1496037 писал(а):
Мне не очень очевидно. Есть как минимум, несколько вариантов

Четко сформулируйте задачу.

 
 
 
 Re: Численное дифференцирование на неравномерных сетках
Сообщение11.12.2020, 17:05 
Аватара пользователя
Padawan в сообщении #1496040 писал(а):
Вы приведите пример сетки. Какие узлы, на каком расстоянии друг от друга.

Буквально, есть интервал $[x_{\min}; x_{\max}]$, и на этом интервале с равномерным распределением генерятся точки $x_k \in [x_{\min}; x_{\max}]$. Выглядит это, например, так:
Изображение

TOTAL в сообщении #1496055 писал(а):
Четко сформулируйте задачу.

Имеется сетка точек с меняющимися расстояниями между ними, нужно оценить вторые производные функции на этой сетке.

 
 
 
 Re: Численное дифференцирование на неравномерных сетках
Сообщение11.12.2020, 17:11 
Аватара пользователя
madschumacher, а чем дифференцирование интерполяционного полинома не подходит?

 
 
 [ Сообщений: 21 ]  На страницу 1, 2  След.


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group