2014 dxdy logo

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

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




На страницу Пред.  1, 2
 
 Re: МНК для трех координат
Сообщение17.07.2017, 10:44 
Цитата:
В формулах использована одноиндексная («сквозная») нумерация точек, потому что 1) такая нумерация всегда возможна, это общий случай и 2) методу наименьших квадратов всё равно, как перенумерованы точки и как они располагаются в пространстве. При желании формулы можно переписать под двухиндексную нумерацию.

Понял.
Благодарю всех участвующих в обсуждении вопроса. Буду считать-проверять. О результатах отпишусь.

 
 
 
 Re: МНК для трех координат
Сообщение17.07.2017, 11:13 
Аватара пользователя
Ещё раз хочу повторить, что
svv в сообщении #1233603 писал(а):
скорее всего, значения температуры равноотстоящие и одни и те же для каждого давления. А значения давления тоже равноотстоящие и одни и те же для каждой температуры. Если это верно, то записанную систему можно упростить до степени распада на отдельные атомы.

 
 
 
 Re: МНК для трех координат
Сообщение17.07.2017, 11:48 
Сейчас набор данных дискретный. Буду проверять на значениях максимально равноотстоящих. Если размер ошибки в таком варианте устроит - каким образом вычисления упрощать? Потому что например сумма квадратов значений - величина довольно большая. Не знаю поместиться ли она в вычисления МК...

 
 
 
 Re: МНК для трех координат
Сообщение17.07.2017, 11:59 
Аватара пользователя
Сдвинем координаты $x$ и $y$ так, чтобы точка $x=0, y=0$ соответствовала центру сетки (если количество отсчётов по обеим координатам нечётно, центр попадёт на одну из точек, если чётно — попадёт между точками, всё это не имеет значения). После решения задачи обратным сдвигом мы тривиально вернёмся к исходной системе координат.

Тогда суммы $\sum x_i, $\sum y_i и $\sum x_i y_i$ (и равная ей $\sum y_i x_i$) в силу симметрии обращаются в нуль. От системы остаются три независимых уравнения, каждое с одной неизвестной. Например, из третьего сразу находим:
$C=\frac{\sum Z_i}{\sum 1}=\frac{\sum Z_i}{N}$
Иначе говоря, после центрирования координат $C$ равно среднему арифметическому значений функции во всех точках (хотя после возврата к исходной системе добавятся ещё слагаемые).

 
 
 
 Re: МНК для трех координат
Сообщение17.07.2017, 14:20 
А насколько сложно сделать квадратичную интерполяцию? Ведь умножения и так есть, даже для плоскости, а храня в таблицах по нескольку сечений параболами (вдоль координатных осей) можно получить намного лучшую точность или сильно загрубить шаг сечений. Т.е. на мой взгляд переход от интерполяции плоскостью к интерполяции параболами (по обеим осям) не принципиально усложняет вычисления, а размеры таблиц параметров парабол могут оказаться совсем небольшими.

 
 
 
 Re: МНК для трех координат
Сообщение22.07.2017, 21:29 
Спасибо всем, алгоритм пока еще в Excel, но заработал!
Сейчас аппроксимирую всю поверхность точек шестью плоскостями: разбил диапазон температур на 3 части, давлений - на 2 части. Каждая поверхность аппроксимируется 9 точками: 3 $Tadc$ x 3 $Padc$. Есть одна не очень приятная штука - хоть и используется МНК, весь массив погрешностей сдвинут от нуля. Насколько я понимаю (рассматривая 2D), это получается по причине того, что парабола - она на любом отрезке парабола, и когда берется 3 точки то средняя (или как она правильно называется в МНК) проходит ближе к двум крайним. Возможно ли это как-то побороть, не увеличивая кол-во точек? И вообще, существует ли методика коррекции количества точек и их положения при аппроксимации, по данным ошибки?

Цитата:
Т.е. на мой взгляд переход от интерполяции плоскостью к интерполяции параболами (по обеим осям) не принципиально усложняет вычисления, а размеры таблиц параметров парабол могут оказаться совсем небольшими.
А каким образом интерполяционные данные с двух парабол объединять? Может быть есть способ описания поверхности, образуемой параболами по обеим плоскостям (не знаю как она называется)?

-- 22.07.2017, 21:38 --

Цитата:
способ описания поверхности, образуемой параболами по обеим плоскостям (не знаю как она называется)?
Посмотрел - судя по всему нужно создавать тему "МНК для эллиптического параболоида" :shock:

 
 
 
 Re: МНК для трех координат
Сообщение24.07.2017, 02:29 
Смысла создавать отдельную ветку не видно.

Во-первых, формулы могут быть получены аналогично рассмотренному выше случаю или занудным дифференцированием post1233595.html#p1233595, или как ортогональное проектирование. [Последнее можно найти в любом приличном учебнике. Наиболее раннее известное мне упоминание такого подхода — работа Клмогоров А.Н. К обоснованию метода наименьших квадратов // УМН, 1946. Эта работа имеется в сборнике статей Клмогоров А.Н. Теория вероятностей и математическая статистика, 1986. Там непосредственно об этом несколько строчек (с. 272).]

Во-вторых, не ясно зачем использовать именно МНК. Из самой прикладной задачи нужно выудить требования к качеству аппроксимации. Для простоты можно рассмотреть случай, когда погрешности измерений по сравнению с погрешностями аппроксимации столь малы, что ими можно пренебречь.
Наиболее типичным пожеланием будет получить такую аппроксимацию, чтобы абсолютная (или относительная) погрешность не превосходила некоторой заданной величины. Наиболее простым подходом — последовательная интерполяция. См., например, главу III, § 1, п. 11 Многомерная интерполяция в книге Калиткин Н.Н. Численные методы. (Сейчас не вспомню где это было описано лучше. Сама идея совсем простая.) При таком подходе может потребоваться некоторое количество памяти для хранения таблицы. Естественно, чем большую точность необходимо получить, тем больший объём памяти потребуется.
Если же так просто не получится (таблица не помещается в памяти), то тогда уже надо точнее формулировать требования к аппроксимации.

 
 
 
 Re: МНК для трех координат
Сообщение24.07.2017, 17:50 
Уперся в непонятную вещь. Аппроксимирую плоскость через $Padc$, $Tadc$, $K=(Padc - P0) / P$. Где $P0$ - это смещение на нулевом давлении от температуры, $P$ - фактическое давление в атм. Интерполирую обратно, соответственно $K=A \cdot Padc + B \cdot Tadc + C$. Соответственно $P=(Padc - P0)/K$. Приведенная погрешность получается замечательной. Далее хочу избавиться от к-та передачи $K$ и аппроксимирую напрямую через ($Padc - P0$), $Tadc$, $P$. Соответственно $P = A \cdot (Padc - P0) + B \cdot Tadc + C$. И погрешности куда-то едут...
Файл с данными: https://yadi.sk/i/9wISJUTY3LMVbi

 
 
 
 Re: МНК для трех координат
Сообщение24.07.2017, 18:27 
pathto, я не смог понять ваше сообщение. Если никто не ответит, то лучше, на мой взгляд, написать подробно и приложить текстовый файл (с xls-возиться у многих нет желания) с таблицей экспериментально найденных значений: $T$, $P$,$K$. Например, вдоль столбца меняется температура, вдоль строки — давление, а значения в ячейках таблицы — это экспериментально найденные значения $K$).

 
 
 
 Re: МНК для трех координат
Сообщение24.07.2017, 19:41 
pathto
А Вам не кажется, что если в формулу $P=(Padc-P0)/K$ подставить выражение $K=A\cdot Padc+B\cdot Tadc+C$, то получится вовсе не $P=A\cdot(Padc-P0)+B\cdot Tadc+C$? И значит неверна или последняя формула, или выражение для $K$.

 
 
 
 Re: МНК для трех координат
Сообщение25.07.2017, 11:19 
Цитата:
не смог понять ваше сообщение ... написать подробно и приложить текстовый файл

Файл: https://yadi.sk/i/AieVGXQo3LNsHm
Цитата:
Уперся в непонятную вещь...

Да, перечитал, не особо понятно. Еще раз, думаю более понятно, описываю проблему.
При аппроксимации плоскости МНК по $x=(Padc - P0)$, $y=Tadc$, $z=P$ и при попытке сразу интерполировать $P = A \cdot (Padc - P0) + B \cdot Tadc + C$, погрешность получается плохая.
При аппроксимации по $x=(Padc - P0)$, $y=Tadc$, $z=K$, где $K=(Padc - P0) / P$, и при последующей интерполяции $K = A \cdot (Padc - P0) + B \cdot Tadc + C$ и дальнейшем расчете $P=(Padc-P0)/K$, погрешность хорошая.
Вроде математически все правильно, голову уже сломал...

 
 
 
 Posted automatically
Сообщение26.07.2017, 12:21 
 i  Тема перемещена из форума «Помогите решить / разобраться (М)» в форум «Карантин»
по следующим причинам:

Переменные нужно описывать при первом их использовании. Ваш текст невозможно понять. Оставьте пока МНК. Просто опишите результаты эксперимента. В xls-файле видно:
значения 14 температур
Код:
-9.95, -0.07, 10, 19.9, 29.88, 39.86, 49.9, 59.91, 69.93, 79.96, 89.99, 100.01, 110.03, 125.09

значения 12 давлений
Код:
50, 100, 150, 200, 250, 300, 350, 400, 450, 500, 550, 600

Вот и вставьте эти два массива в своё сообщение последнее сообщение (остальные сообщения заблокированы, чтобы не нарушать "развитие темы").

Далее запишите массив 14x12 измерений (чего?)
Код:



Что измерялось при каждом значении температуры и давления?
Если не измерялось, а вычислялось, то по какой формуле?

Исправьте все Ваши ошибки и сообщите об этом в теме Сообщение в карантине исправлено.
Настоятельно рекомендуется ознакомиться с темами Что такое карантин и что нужно делать, чтобы там оказаться и Правила научного форума.

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


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