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
4845
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
4845
Тогда у Вас всё правильно.
Гистограммы отличаются по виду, потому что, например, одному столбику справа на первой гистограмме (например, $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
4845
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
4845
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
4845
mauveferret в сообщении #1484811 писал(а):
Мне кажется удивительным, что вид кривой с правого графика идентичен графику 2 рисунка 1 (при том, что сейчас $\arccos$ я не применял). Как бы то ни было, домножение распределения на $\sin(\theta)$ кажется сомнительной идеей
Ну Вам же рассказали, как это выводится. Так что никаких чудес нет и никаких сомнений тоже быть не должно.
mauveferret в сообщении #1484811 писал(а):
ведь тогда в окрестности нуля градусов мы будем иметь минимум независимо от вида исходного распределения $F(\cos\theta)$. Или я что-то неправильно понимаю?
Чтобы на втором графике не было нуля при нуле градусов, нужно, чтобы первый уходил в бесконечность при приближении к единице. На практике "уход в бесконечность" означал бы очень быстрый рост - и это вполне реалистичная картина. Если бы первые восемь столбиков на второй гистограмме были бы не такие маленькие, а побольше, то последний столбик на первой гистограмме был бы огромным.

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

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



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

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


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

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