2014 dxdy logo

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

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


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


Посмотреть правила форума



Начать новую тему Ответить на тему
 
 Преобразование распределения F(cos(x)) -> F(x)
Сообщение25.09.2020, 13:42 


25/09/20
6
Доброго времени суток, форумчане. Имеется проблема с постобработкой вычислений в древнем коде на фортране, выдающем помимо прочего распределение количества распылённых частиц по углам в формате $F(\cos \theta )$, где $\theta$ - полярный угол ($0<\theta<90 $ deg).

Проблема в том, что мне необходимо строить распределение в полярных координатах, иначе говоря, мне нужно $F(\theta)$. Так как матстат я совсем забыл, то очевидным решением показалось построить зависимость $F(\arccos (\cos \theta))$. Реально, у меня есть колонка с косинусами углов ($0<\cos \theta<1$) и колонка с количеством частиц, вылетевших в данном интервале "косинусов". И я от первой колонки взял арккосинус. Обе зависимости представлены на рисунке:

Изображение

Первичное распределение (график 1) полностью отвечает представлениям о том, что максимум распылённых должен соответствовать углам, близким к 0, что на оси косинуса это соответствует единице.
Однако после преобразования $\arccos(\cos\theta)$ мы получаем максимум, смещённый к 45 градусам (график 2), что не физично. Напрашивается вывод, что такое преобразование некорректно.

К сожалению, я не смог найти решения данной, казалось бы, несложной задачи самостоятельно. Мне представляется, что должно быть некое математически корректное преобразование распределения к нужному виду. Прошу подсказать, как такое преобразование может выглядеть или, по крайней мере, где я смогу об этом почитать.

 Профиль  
                  
 
 Re: Преобразование распределения F(cos(x)) -> F(x)
Сообщение25.09.2020, 14:01 
Заслуженный участник
Аватара пользователя


05/12/09
1813
Москва
Ваше решение было верным. Но похоже, что Вы взяли не арккосинус, а арксинус.

 Профиль  
                  
 
 Re: Преобразование распределения F(cos(x)) -> F(x)
Сообщение25.09.2020, 14:05 
Заслуженный участник
Аватара пользователя


26/01/14
4924
mauveferret
Непонятно, как у Вас получился второй рисунок.
Чтобы понять, что Вы неправильно делаете, приведите Вашу исходную таблицу (с двумя колонками) и получившуюся после взятия арккосинуса.
Если таблицы длинные, можете привести их не полностью, а например с шагом $0.1$ по $\cos\theta$. Этого должно быть достаточно.
Кстати, чему равно $\arccos 0$? Чему равно $\arccos 1$?

 Профиль  
                  
 
 Re: Преобразование распределения F(cos(x)) -> F(x)
Сообщение25.09.2020, 15:38 


25/09/20
6
Mikhail_K
Прошу прощения, вероятно, я некорректно пояснил НУ. Постараюсь понятнее. У меня есть одна колонка, куда записан $\cos\theta$. Каждая строка - отдельная частица. Количество строк очень большое, присутствуют углы во всем диапазоне $0<\cos\theta<1$. Я строю гистограмму по этой колонке в OriginLab, т.е я получаю количество частиц, вылетевших в разных интервалах $d\cos\theta$. Это представлено на графике 1 рисунка 1 (в форме гистограммы). Сама колонка представлена на рисунке 2 (колонка N ).
Затем я в новой колонке (колонка O) беру аркосинус от колонки N, и для колонки O получаю гистограмму с графика 2 рисунка 1.

Изображение
Рисунок 2.

$\arccos 0 = 90$ deg
$\arccos 1 = 0$ deg

Привожу таблицы, соответствующие обоим гистограмам, хотя едва ли они будут полезны.
Для графика 1:
Изображение
Для графика 2:
Изображение

 Профиль  
                  
 
 Re: Преобразование распределения F(cos(x)) -> F(x)
Сообщение25.09.2020, 15:53 
Заслуженный участник
Аватара пользователя


26/01/14
4924
Тогда у Вас всё правильно.
Гистограммы отличаются по виду, потому что, например, одному столбику справа на первой гистограмме (например, $0.99\leq\cos\theta\leq 1$) соответствует не один, а восемь столбиков слева на второй гистограмме ($0\leq\theta\leq 8.1$ градусов).
Суммарная высота этих восьми столбиков и будет как один столбик на первой гистограмме.
Ошибок нет.

 Профиль  
                  
 
 Re: Преобразование распределения F(cos(x)) -> F(x)
Сообщение25.09.2020, 16:23 


25/09/20
6
Mikhail_K
Это мне понятно. Но есть ли алгоритм получения функции $f(\theta)$, имея на входе вышеуказанное распределение (гистограмма 1 рисунка 1). C максимумом в положенных 0 градусах.

 Профиль  
                  
 
 Re: Преобразование распределения F(cos(x)) -> F(x)
Сообщение25.09.2020, 16:28 
Заслуженный участник
Аватара пользователя


26/01/14
4924
mauveferret
Ещё раз: у Вас всё сделано правильно. Максимум и должен получиться там, где он получился.
Сформулируйте, почему, на Ваш взгляд, "положены" 0 градусов.

 Профиль  
                  
 
 Re: Преобразование распределения F(cos(x)) -> F(x)
Сообщение25.09.2020, 17:02 
Аватара пользователя


09/08/11
137
СПб
Все у вас правильно, как уже не раз сказали.
mauveferret, ваши проблемы с практической трактовой результатов связаны с тем, что ``ящики'' на этих двух рисунках имеют различную ширину - если на левом рисунке взять два ``ящика'' одинаковой ширины 0.01 в разных местах, допустим, $\cos\theta\in [0.49, 0.5]$ и $\cos\theta\in [0.99, 1]$, то на правом рисунке им соответствуют ``ящики'' $\theta\in[60^\circ, 60.7^\circ]$ - ширина $0.7^\circ$ и $\theta\in[0^\circ, 8.1^\circ$] - ширина $8.1^\circ$ - разница более, чем в 10 раз.
Вы должны сами решить, что более адекватно практике дела - график по $\theta$ или по $\cos\theta$. Это не вопрос математики, а вопрос постановки эксперимента. Вообще-то обычно зависимость по $\theta$ много чаще встречается, когда говорят об угловой зависимости.
Попробуйте найти формулу, связывающую зависимость $F(\theta)$ на левом и $f(\theta)$ - на правом рисунках. Подсказка: если бы вы интегрировали, то в интеграле функции на левом рисунке стоял бы дифференциал $dx$, $x=\cos\theta$, для правого рисунка - просто $d\theta$. Это объяснит вам почему максимум не там получился на втором рисунке.

 Профиль  
                  
 
 Re: Преобразование распределения F(cos(x)) -> F(x)
Сообщение26.09.2020, 13:53 


25/09/20
6
Mikhail_K, я согласен, что максимум на правом графике стоит "на своём месте". И более-менее представляю, почему так происходит (собственно, AlexValk
отлично это пояснил).
Но мне кажется, что сам переход от $F(\cos\theta)$ к $F(\theta)$ с помощью оператора $\arccos$ некорректен. Мне кажется, должен существовать корректный оператор, при действии которого на $F(\cos\theta)$ мы получим зависимость $F(\theta)$, такую, что максимум на кривой $F(\theta)$ будет в окрестности нуля градусов.
Почему, собственно, я решил, что максимум на искомой зависимости $F(\theta)$ должен быть в окрестности нуля? Оба графика: $F(\cos\theta)$ и $F(\theta)$ должны описывать одно и то же физическое распределение частиц по направлениям вылета, которое с точки зрения физики должно иметь максимум вблизи нормали к поверхности. И моя задача построить в угловых координатах такую зависимость.

Здравствуйте, AlexValk, моя основная проблема как раз в неспособности найти формулу, о которой вы говорите. Мне кажется, подобные преобразования должны быть в базовом курсе мат.статистики, но поиски мои пока не увенчались успехом.

 Профиль  
                  
 
 Re: Преобразование распределения F(cos(x)) -> F(x)
Сообщение26.09.2020, 14:06 
Заслуженный участник
Аватара пользователя


26/01/14
4924
mauveferret в сообщении #1484781 писал(а):
Но мне кажется, что сам переход от $F(\cos\theta)$ к $F(\theta)$ с помощью оператора $\arccos$ некорректен. Мне кажется, должен существовать корректный оператор, при действии которого на $F(\cos\theta)$ мы получим зависимость $F(\theta)$, такую, что максимум на кривой $F(\theta)$ будет в окрестности нуля градусов.
Вам неправильно кажется.

Смотрите: из Ваших данных (хоть представленных на первом графике, хоть представленных на втором - это одни и те же данные) следует, что частиц, вылетевших под углами в интервале $[44^\circ,46^\circ]$, гораздо больше, чем вылетевших под углами в интервале $[0^\circ,2^\circ]$ или в интервале $[88^\circ,90^\circ]$.
Понимаете, это факт, который не изменить никакими математическими преобразованиями.
Можете считать, что на первом рисунке этот факт замаскирован, а на втором он виден ясно. Но от этого он не перестаёт быть фактом.
Если этот факт противоречит физическим соображениям (в этом я Вас не проконсультирую), значит, что-то не так с проведением эксперимента, а вовсе не с математикой или графиками.

 Профиль  
                  
 
 Re: Преобразование распределения F(cos(x)) -> F(x)
Сообщение26.09.2020, 14:12 


25/09/20
6
Mikhail_K, благодарю вас за консультацию! Вероятно, вы правы, и проблема в модели.

 Профиль  
                  
 
 Re: Преобразование распределения F(cos(x)) -> F(x)
Сообщение26.09.2020, 15:11 
Аватара пользователя


09/08/11
137
СПб
mauveferret в сообщении #1484781 писал(а):
Здравствуйте, AlexValk, моя основная проблема как раз в неспособности найти формулу, о которой вы говорите. Мне кажется, подобные преобразования должны быть в базовом курсе мат.статистики, но поиски мои пока не увенчались успехом.

mauveferret, искомая формула имеет вид $f(\theta)=F(\cos\theta)\sin\theta$ - поэтому у вас и получился ноль при $\theta\to 0$ на правом графике, что соответствует $\cos\theta\to 1$ на левом. Без особой науки эту связь легко получить из соотношения $F(\cos\theta)d\cos\theta=-f(\theta) d\theta$ (знак минус связан с убыванием $\cos\theta$). Данный вопрос относится к теории вероятности, а не к мат. статистике - связь между плотностями вероятности при замене переменной. Он много где изложен, вплоть до Википедии (https://ru.wikipedia.org/wiki/%D0%9F%D0 ... 1%82%D0%B8).
Общий принцип: если плотность $f_1(y)$ - распределения по переменной $y$, то плотность распределения $f_2(x)$ по переменной $x$, связанной с $y$ соотношением $y=g(x)$, дается формулой $f_2(x)=f_1(g(x))\left|f\g'(x)\right|$; и, наоборот, при известной плотности $f_2(y)$ плотность $f_1(x)=f_2(g^{-1}(y))\left|(g^{-1}(y))'\right|$. Естественно, эти формулы связи относятся к простой ситуации взаимной однозначности (и дифференцируемости) функции $y=g(x)$, что у вас имеется для функции $\cos\theta$, $\theta\in[0, \pi/2]$ или $\arccos\xi$, $\xi\in[0;1]$.

 Профиль  
                  
 
 Re: Преобразование распределения F(cos(x)) -> F(x)
Сообщение26.09.2020, 18:10 


25/09/20
6
AlexValk, добрый вечер. Благодарю за совет, преобразование по вашей формуле даёт следующие графики:
Изображение
Рисунок 3.

Мне кажется удивительным, что вид кривой с правого графика идентичен графику 2 рисунка 1 (при том, что сейчас $\arccos$ я не применял). Как бы то ни было, домножение распределения на $\sin(\theta)$ кажется сомнительной идеей, ведь тогда в окрестности нуля градусов мы будем иметь минимум независимо от вида исходного распределения $F(\cos\theta)$. Или я что-то неправильно понимаю?

 Профиль  
                  
 
 Re: Преобразование распределения F(cos(x)) -> F(x)
Сообщение26.09.2020, 18:28 
Заслуженный участник
Аватара пользователя


26/01/14
4924
mauveferret в сообщении #1484811 писал(а):
Мне кажется удивительным, что вид кривой с правого графика идентичен графику 2 рисунка 1 (при том, что сейчас $\arccos$ я не применял). Как бы то ни было, домножение распределения на $\sin(\theta)$ кажется сомнительной идеей
Ну Вам же рассказали, как это выводится. Так что никаких чудес нет и никаких сомнений тоже быть не должно.
mauveferret в сообщении #1484811 писал(а):
ведь тогда в окрестности нуля градусов мы будем иметь минимум независимо от вида исходного распределения $F(\cos\theta)$. Или я что-то неправильно понимаю?
Чтобы на втором графике не было нуля при нуле градусов, нужно, чтобы первый уходил в бесконечность при приближении к единице. На практике "уход в бесконечность" означал бы очень быстрый рост - и это вполне реалистичная картина. Если бы первые восемь столбиков на второй гистограмме были бы не такие маленькие, а побольше, то последний столбик на первой гистограмме был бы огромным.

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

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



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

Сейчас этот форум просматривают: mihaild


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

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