вопрос между физикой и программированием

Аватар пользователя
NT
Сообщений: 3384
Зарегистрирован: 25 янв 2010, 21:00

вопрос между физикой и программированием

Сообщение NT » 01 фев 2012, 21:16

return (z*z*cos(phi/2)*cos(phi/2)-z*dy*sin(phi)+(dy*dy-y*y)*sin(phi/2)*sin(phi/2))*exp(-1/(2*a)*(sqrt((x+dx)*(x+dx)+(y+dy)*(y+dy)+z*z)+sqrt((x-dx)*(x-dx)+(y-dy)*(y-dy)+z*z)));


$$\displaystyle  f=( z^2\cos^2{\frac{\varphi}{2}} - {z}\Delta y \sin{\varphi} \ +$$
$$\displaystyle (\Delta y^2-y^2)\sin{\frac{\varphi}{2}}{e}^{-\frac{1}{2a}}(\sqrt{(x+\Delta x)^2+(y+\Delta y)^2+z^2}+\sqrt{(x-\Delta x)^2+(y-\Delta y)^2+z^2}})$$
Переписал вашу "Подинтегральную функцию".
Это она?

1. Проверьте это верно записано?
$$\displaystyle (\Delta y^2-y^2) ...$$

2. И аргументы под радикалами,
корни у вас должны возвращаться толко положительные или плюс/минус?

PS.Проверить значит - не в программе, а в физической формуле.
Например, в программе машина вычисляет корень только положительный.
А в физической формуле как надо ?
Надеюсь вы меня поняли.
Последний раз редактировалось NT 28 ноя 2019, 17:33, всего редактировалось 1 раз.
Причина: test

Аватар пользователя
laplas
Сообщений: 1927
Зарегистрирован: 18 окт 2009, 21:00

вопрос между физикой и программированием

Сообщение laplas » 01 фев 2012, 21:39

NT писал(а):Source of the post
return (z*z*cos(phi/2)*cos(phi/2)-z*dy*sin(phi)+(dy*dy-y*y)*sin(phi/2)*sin(phi/2))*exp(-1/(2*a)*(sqrt((x+dx)*(x+dx)+(y+dy)*(y+dy)+z*z)+sqrt((x-dx)*(x-dx)+(y-dy)*(y-dy)+z*z)));


$$\displaystyle  f=( z^2\cos^2{\frac{\varphi}{2}} - {z}\Delta y \sin{\varphi} \ +$$
$$\displaystyle (\Delta y^2-y^2)\sin{\frac{\varphi}{2}}{e}^{-\frac{1}{2a}}(\sqrt{(x+\Delta x)^2+(y+\Delta y)^2+z^2}+\sqrt{(x-\Delta x)^2+(y-\Delta y)^2+z^2}})$$
Переписал вашу "Подинтегральную функцию".
Это она?

1. Проверьте это верно записано?
$$\displaystyle (\Delta y^2-y^2) ...$$

2. И аргументы под радикалами,
корни у вас должны возвращаться толко положительные или плюс/минус?



вот она

$$\displaystyle {f=( z^2\cos^2{\frac{\varphi}{2}} - {z}\Delta y \sin{\varphi} \ +}$$
$$\displaystyle (\Delta y^2-y^2)\sin^2{\frac{\varphi}{2}}){e}^{-\frac{1}{2a}(\sqrt{(x+\Delta x)^2+(y+\Delta y)^2+z^2}+\sqrt{(x-\Delta x)^2+(y-\Delta y)^2+z^2})}}}$$
Последний раз редактировалось laplas 28 ноя 2019, 17:33, всего редактировалось 1 раз.
Причина: test

Аватар пользователя
NT
Сообщений: 3384
Зарегистрирован: 25 янв 2010, 21:00

вопрос между физикой и программированием

Сообщение NT » 01 фев 2012, 21:49

Да вы правы - еще раз посмотрел код и поправил.

Upss ...

$$\displaystyle  f=( z^2\cos^2{\frac{\varphi}{2}}-{z}\Delta y \sin{\varphi}+(\Delta y^2-y^2)\sin^2{\frac{\varphi}{2}}){e}^{-\frac{1}{2a}(\sqrt{(x+\Delta x)^2+(y+\Delta y)^2+z^2}+\sqrt{(x-\Delta x)^2+(y-\Delta y)^2+z^2})}$$

PS. А по пункту 2 ?
Последний раз редактировалось NT 28 ноя 2019, 17:33, всего редактировалось 1 раз.
Причина: test

Аватар пользователя
laplas
Сообщений: 1927
Зарегистрирован: 18 окт 2009, 21:00

вопрос между физикой и программированием

Сообщение laplas » 01 фев 2012, 22:11

спасибо, да в формуле вроде правильно) корни это модуль радиус-вектора
Последний раз редактировалось laplas 28 ноя 2019, 17:33, всего редактировалось 1 раз.
Причина: test

Аватар пользователя
NT
Сообщений: 3384
Зарегистрирован: 25 янв 2010, 21:00

вопрос между физикой и программированием

Сообщение NT » 02 фев 2012, 00:07

Rectangle method
$$\displaystyle \int_a^b f(x)\,dx \approx h \sum_{n=0}^{N-1} f(x_{n}) $$
...
For a function f which is twice differentiable, the approximation error in each section (a,a + Δ) of the midpoint rule decays as the cube of the width of the rectangle. (For a derivation based on a Taylor approximation, see Midpoint method)
$$\displaystyle    E_i \le \frac{\Delta^3}{24}\,f''(\xi) $$ ...


У вас это так запрограммировано:

$$\displaystyle   \int=\frac{h^3}{32\pi a^5} \sum \limits_{i=1}^n\sum \limits_{j=1}^n\sum\limits_{k=1}^nf( a + h * (i - 0.5), a + h * (j - 0.5),a + h * (k - 0.5), m )$$



Проверил программу и вышло:

Вызов интеграла:
integral=rectangle_integrate(-1,1,100,f);
с параметрами
a = -1; b = 1; n = 100;
и ввод параметра например m=3
даёт :
шаг h=0.02 и интеграл : The value of the integral is: -0.001748
Последний раз редактировалось NT 28 ноя 2019, 17:33, всего редактировалось 1 раз.
Причина: test

Аватар пользователя
NT
Сообщений: 3384
Зарегистрирован: 25 янв 2010, 21:00

вопрос между физикой и программированием

Сообщение NT » 02 фев 2012, 10:12

По программе знак интеграла определяется этим множителем :
$$\displaystyle  \displaystyle   \int=\frac{h^3}{32\pi a^5} ...$$
а точнее :
$$\displaystyle   \frac{(b-a)^3}{32\pi a^5n^3} $$

отсюда для заданных параметров :
$$\displaystyle  a = -1; \\  \tab b = 1; \\  \tab n = 100; $$
получается отрицательная величина.
Последний раз редактировалось NT 28 ноя 2019, 17:33, всего редактировалось 1 раз.
Причина: test

Аватар пользователя
Сан Иваныч
Сообщений: 943
Зарегистрирован: 26 сен 2006, 21:00

вопрос между физикой и программированием

Сообщение Сан Иваныч » 04 фев 2012, 07:45

СергейП писал(а):Source of the post Видимо 3.14 это пи такое

В math.h есть константа M_PI.
Последний раз редактировалось Сан Иваныч 28 ноя 2019, 17:33, всего редактировалось 1 раз.
Причина: test

k1ng1232
Сообщений: 1673
Зарегистрирован: 21 ноя 2008, 21:00

вопрос между физикой и программированием

Сообщение k1ng1232 » 04 фев 2012, 12:38

Сан Иваныч писал(а):Source of the post
СергейП писал(а):Source of the post Видимо 3.14 это пи такое

В math.h есть константа M_PI.

не вижу смысла ее использовать, если это просто макрос, если 2ух знаков хватает то ее использование нерационально
Последний раз редактировалось k1ng1232 28 ноя 2019, 17:33, всего редактировалось 1 раз.
Причина: test

Аватар пользователя
YURI
Сообщений: 5373
Зарегистрирован: 12 дек 2007, 21:00

вопрос между физикой и программированием

Сообщение YURI » 04 фев 2012, 15:34

k1ng1232 писал(а):Source of the post не вижу смысла ее использовать, если это просто макрос, если 2ух знаков хватает то ее использование нерационально

Тогда уж нужно было для порядка воспользоваться директивой define:

Код: Выбрать все

#define PI 3.14
Последний раз редактировалось YURI 28 ноя 2019, 17:33, всего редактировалось 1 раз.
Причина: test

Аватар пользователя
Сан Иваныч
Сообщений: 943
Зарегистрирован: 26 сен 2006, 21:00

вопрос между физикой и программированием

Сообщение Сан Иваныч » 04 фев 2012, 19:04

k1ng1232 писал(а):Source of the post не вижу смысла ее использовать, если это просто макрос, если 2ух знаков хватает то ее использование нерационально

Точность не важна? Тогда можно просто const BYTE pi = 3. Один байт. И память сэкономится...
Последний раз редактировалось Сан Иваныч 28 ноя 2019, 17:33, всего редактировалось 1 раз.
Причина: test


Вернуться в «Computer Science»

Кто сейчас на форуме

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