Старый 02.01.2013, 15:36   #361
LordWilex
В отпуске
 
Аватар для LordWilex
 
Регистрация: 01.06.2008
Адрес: Таганрог
Сообщения: 28,983
LordWilex репутация выше +250LordWilex репутация выше +250LordWilex репутация выше +250LordWilex репутация выше +250
По умолчанию

Цитата:
Сообщение от gsvgsv12
Здравствуйте, уважаемые форумчане!

Помогите мне прояснить некоторые вопросы по работе со ШЭ:

1. Каким значением задается расстояние до объекта при использовании функции Plc (XPos)? "2" или "3"?
Извините, тут моя вина, -в документации ошибка, все никак руки не доходят переписать

Цитата:
XPos = Тип возвращаемой координаты
XPos = 1 = Широта (или X координата, если задано CType = SXYZ | MXYZ | JXYZ )
XPos = 2 = Долгота (или Y координата)
XPos = 3 = Расстояние от Земли (в геоцентре) или Солнца (в гелиоцентре) (или Z координата)
XPos = 4 = Угловая скорость / сек по широте
XPos = 5 = Угловая скорость / сек по долготе
XPos = 6 = Угловая скорость / сек по расстоянию

На самом деле широта с долготой перепутаны местами и нумерация начинается с нуля, а не с единицы.
т.е.
0 - долгота
1 - широта
2 - радиус-вектор


Цитата:
Сообщение от gsvgsv12
2. Расстояния до объектов с применением функции Plc расчитываются в каких единицах измерения?

Если имеется в виду фунгкция PLC - в астрономических единицах, вестимо

Приведу пример расчета.

1. Вычислим юлианскую дату на 10-08-1980 14:00 по гринвичу.

JD=jday(1980;8;10;14;0;0) = 2444462,083

2. Подставим её в функцию PLC()

=Plc(JD;Номер_планеты_Марс;"STrop";2) = Plc(2444462,083;4;"STrop";2) = 1,773061382

т.е. расстояние до Марса в этот момент равнялось 1,773061382 AE


Цитата:
Сообщение от gsvgsv12

3. Почему смена дат по Юлианскому календарю происходит в 12.00 (функция jday)? По Юлианскому календарю даты сменяются действительно в полдень?

Ну во первых юлианский календарь и юлианская дата - друг к другу никакого отношения не имеют.
Юлианская дата названа в честь отца астронома, который придумал эту систему измерения времени. А юлианский календарь ввел Юлий Цезарь

Во вторых действительно, юлианский день начинается в полдень.

http://ru.wikipedia.org/wiki/%D0%AE%...B0%D1%82%D0%B0

http://ru.wikipedia.org/wiki/%D0%AE%...B0%D1%80%D1%8C

Цитата:
Сообщение от gsvgsv12
4. Как рассчитать фазу Луны на определенную дату? Я попробовал функцию StartPoint, но там только два параметра (Солнце-0 и Луна-1). А как задается дата?

Заранее благодарен за вашу помощь!
Вычислить отдельно долготы солнца и луны при помощи функции PLC, подставить их в StartPoint, а потом перевести в проценты

Последний раз редактировалось LordWilex, 02.01.2013 в 15:47.
LordWilex вне форума   Ответить с цитированием
Старый 02.01.2013, 16:04   #362
gsvgsv12
Собеседник
 
Регистрация: 01.01.2013
Сообщения: 15
gsvgsv12 отключил(а) отображение уровня репутации
По умолчанию

Огромное спасибо Вам за вашу работу! Не знаю, чтобы я без нее делал.

Я получил исчерпывающие ответы на свои вопросы.

Прошу прощения за некоторые глупости. Я в астрономии и астрологии не силен, поэтому меня насторожили некоторые моменты.
gsvgsv12 вне форума   Ответить с цитированием
Старый 02.01.2013, 17:52   #363
gsvgsv12
Собеседник
 
Регистрация: 01.01.2013
Сообщения: 15
gsvgsv12 отключил(а) отображение уровня репутации
По умолчанию

Цитата:
Сообщение от LordWilex
Для работы с сами эфемеридыами обычно нужно иметь на компьютере всего 3 файла:
sepl_18.se1
semo_18.se1
seas_18.se1

Подскажите, пожалуйста, куда прописать путь к этим файлам, чтобы они заработали? Я подключал Швейцарские эфемериды по варианту 2. Или путь можно указать только по варианту 1?
gsvgsv12 вне форума   Ответить с цитированием
Старый 03.01.2013, 03:18   #364
LordWilex
В отпуске
 
Аватар для LordWilex
 
Регистрация: 01.06.2008
Адрес: Таганрог
Сообщения: 28,983
LordWilex репутация выше +250LordWilex репутация выше +250LordWilex репутация выше +250LordWilex репутация выше +250
По умолчанию

Цитата:
Сообщение от gsvgsv12
Подскажите, пожалуйста, куда прописать путь к этим файлам, чтобы они заработали? Я подключал Швейцарские эфемериды по варианту 2. Или путь можно указать только по варианту 1?
По умолчанию в "c:\sweph\", но Вы можете задать любой путь просто подредактировав функцию SweInit()
И еще, я не в курсе что за задачи Вы решаете, но если Вам принципиальна большая точность, то лучше скачать файл DE406.eph от сюда: ftp://ftp.astro.com/pub/swisseph/ephe/jplfiles/ и положить его в c:\sweph\, а при вызове функций использовать букву J вместо S, например, "JTrop" вместо "STrop".
LordWilex вне форума   Ответить с цитированием
Старый 03.01.2013, 09:53   #365
gsvgsv12
Собеседник
 
Регистрация: 01.01.2013
Сообщения: 15
gsvgsv12 отключил(а) отображение уровня репутации
По умолчанию

Спасибо!

Я пока только собираю данные для оценки влияния факторов космической среды на состояние биологических систем.

Еще один вопрос. Я как-то сразу упустил тот момент, что нужно подключить файлы
sepl_18.se1
semo_18.se1
seas_18.se1
+ рекомендованный Вами DE406.eph

Сейчас я это сделал, но результаты моих расчетов от этого не меняются (в том числе я заменял Strop на Jtrop). Я рассчитывал только расстояния до объектов 0-9 и дома Плацидуса для этих же объектов. Это нормально или у меня какие-то технические проблемы с подключением файлов ШЕ?

И еще я сличил ваши расчеты со своими по приведенному Вами примеру. Получаются разные результаты.

Ваш пример:
1. Вычислим юлианскую дату на 10-08-1980 14:00 по гринвичу.

JD=jday(1980;8;10;14 ;0;0) = 2444462,083

2. Подставим её в функцию PLC()

=Plc(JD;Номер_планет ы_Марс;"STrop";2) = Plc(2444462,083;4;"S Trop";2) = 1,773061382

Мои расчеты:
https://docs.google.com/open?id=0B1e...0tuRm9aS1pHd0E
gsvgsv12 вне форума   Ответить с цитированием
Старый 03.01.2013, 10:26   #366
LordWilex
В отпуске
 
Аватар для LordWilex
 
Регистрация: 01.06.2008
Адрес: Таганрог
Сообщения: 28,983
LordWilex репутация выше +250LordWilex репутация выше +250LordWilex репутация выше +250LordWilex репутация выше +250
По умолчанию

Цитата:
Сообщение от gsvgsv12
Спасибо!

Я пока только собираю данные для оценки влияния факторов космической среды на состояние биологических систем.

Отличная тема
Если что-нибудь интересное найдете - буду признателен, если расскажите о своих исследованиях тут:

http://forum.argo-school.ru/forumdisplay.php?f=69


Цитата:
Сообщение от gsvgsv12
Еще один вопрос. Я как-то сразу упустил тот момент, что нужно подключить файлы
sepl_18.se1
semo_18.se1
seas_18.se1
+ рекомендованный Вами DE406.eph

Сейчас я это сделал, но результаты моих расчетов от этого не меняются (в том числе я заменял Strop на Jtrop). Я рассчитывал только расстояния до объектов 0-9 и дома Плацидуса для этих же объектов. Это нормально или у меня какие-то технические проблемы с подключением файлов ШЕ?

И еще я сличил ваши расчеты со своими по приведенному Вами примеру. Получаются разные результаты.

Ваш пример:
1. Вычислим юлианскую дату на 10-08-1980 14:00 по гринвичу.

JD=jday(1980;8;10;14 ;0;0) = 2444462,083

2. Подставим её в функцию PLC()

=Plc(JD;Номер_планет ы_Марс;"STrop";2) = Plc(2444462,083;4;"S Trop";2) = 1,773061382

Мои расчеты:
https://docs.google.com/open?id=0B1e...0tuRm9aS1pHd0E


Тут проблема вот в чем. Формулы exel чувствительны к регистру символов.
Вводить надо не Strop именно STrop т.е. вторая T так же с заглавной буквы.

Если функция не понимает, что вы ей хотите сказать - она автоматически присваивает параметр "def", а у него флаги несколько отличаются.


Если выбрать def (или любое непонятное для функции сочетание символов, например, Strop), то будут использоваться такие флаги:
iflag = SEFLG_SPEED + SEFLG_MOSEPH

А если написать STrop, то будут использоваться такие флаги: iflag = SEFLG_TRUEPOS + SEFLG_SWIEPH

Первый вариант работает быстрей, а второй - точней
LordWilex вне форума   Ответить с цитированием
Старый 03.01.2013, 10:54   #367
gsvgsv12
Собеседник
 
Регистрация: 01.01.2013
Сообщения: 15
gsvgsv12 отключил(а) отображение уровня репутации
По умолчанию

Спасибо!

Все заработало. Ранее я пробовал записывать функции по-разному, но не заметил разницы в результатах. Чисто моя невнимательность.

Если задуманное удастся, о результатах обязательно напишу.
gsvgsv12 вне форума   Ответить с цитированием
Старый 04.01.2013, 14:59   #368
gsvgsv12
Собеседник
 
Регистрация: 01.01.2013
Сообщения: 15
gsvgsv12 отключил(а) отображение уровня репутации
По умолчанию

Ваша система позволяет проводить расчеты в топоцентрической системе координат? Соответствующей функции я, кажется, не нашел, но я мог во что-то просто пока не вникнуть.
gsvgsv12 вне форума   Ответить с цитированием
Старый 04.01.2013, 17:43   #369
LordWilex
В отпуске
 
Аватар для LordWilex
 
Регистрация: 01.06.2008
Адрес: Таганрог
Сообщения: 28,983
LordWilex репутация выше +250LordWilex репутация выше +250LordWilex репутация выше +250LordWilex репутация выше +250
По умолчанию

Цитата:
Сообщение от gsvgsv12
Ваша система позволяет проводить расчеты в топоцентрической системе координат? Соответствующей функции я, кажется, не нашел, но я мог во что-то просто пока не вникнуть.
Вопрос конечно интересный.
Среди флагов есть такой SEFLG_TOPOCTR, но как его использовать не понятно
Для того, чтобы сконвертировать координаты в топоцентр - необходимо в функцию как-то подать географические координаты местности, но в функции swe_calc_ut() из Swedll.dll (которую использует функция PLC), просто не предусмотрены параметры для ввода географических координат

Завтра пороюсь в документации, в крайнем случае найду формулы для перевода из геоцентра в топоцентр и напишу функцию.

Но у меня по этому поводу несколько замечаний.

1. Топоцентрические координаты имеет смысл использовать только с JPL эфемеридами (de406 или более свежие, те в которых букву Jнадо при вызове функции PLC добавлять), что касается швейцарских эфемерид и тем более эфемерид Мошьера, то там погрешность явно больше диаметра Земли или сопоставима с ним.

2. Даже если использовать точные JPL эфемериды то в масштабах Солнечной системы разница будет незаметная. Верней разница между топоцентром и геоцентром заметна только для Луны. Хотя как раз Луна вроде бы больше всего и влияет на биологические процессы.

3. С учетом того, что радиус Земли равен 6300км, а сама Земля движется со скоростью 30км/сек, для только чтобы был смысл использовать топоцентр, точность Ваших экспериментальных данных должна быть не меньше 6300/30= 210 секунд. Если погрешность ваших данных - составляет хотя бы половину этой величины - разницы между топоцентром и геоцентром - Вы не заметите Разумеется, речь идет о разницы для Луны - для планет разница между топоцентром и геоцентром в любом случае пренебрежительно мала.
LordWilex вне форума   Ответить с цитированием
Старый 04.01.2013, 18:57   #370
gsvgsv12
Собеседник
 
Регистрация: 01.01.2013
Сообщения: 15
gsvgsv12 отключил(а) отображение уровня репутации
По умолчанию

Если появится и такая функция, то ваша утилита будет для меня бесценна. Я смогу получить абсолютно все необходимые для исследования данные. Заранее спасибо!
gsvgsv12 вне форума   Ответить с цитированием
Старый 06.01.2013, 11:43   #371
LordWilex
В отпуске
 
Аватар для LordWilex
 
Регистрация: 01.06.2008
Адрес: Таганрог
Сообщения: 28,983
LordWilex репутация выше +250LordWilex репутация выше +250LordWilex репутация выше +250LordWilex репутация выше +250
По умолчанию

Цитата:
Сообщение от gsvgsv12
Если появится и такая функция, то ваша утилита будет для меня бесценна. Я смогу получить абсолютно все необходимые для исследования данные. Заранее спасибо!

С топоцентром проблему решил.

Откройте exel.
Нажмите ALT+F11, в появившемся окне найдите модуль SweRuXla.xla, а в нем найдите module1 и в самый конец открывшегося окна вставьте содержимое этого файла: plcTopo.txt.
Это в принципе та же функция PLC, только немного подредактированная и называется PlcTopo().

Параметры те же, что и в PLC, только в конце еще такие параметры:
1. GeoLonGr - градус географической долготы
2. GeoLonMin - минута географической долготы
3. GeoLatGr - то же самое, только для широты
4. GeoLonMin - широта минуты
5. GeoAlt - Высота над уровнем моря.

Пример использования:

Широта: 47°12' северной широты
Долгота: 38°54' восточной долготы
Высота: 30 метров над уровнем моря
Дата: 10-08-1980 14:00 GMT, JD=2444462,083
Планета Марс = 4


=PlcTopo(2444462,083; 4; "JTrop"; 2; 38; 54; 47; 12; 30) = 1,773019782 AE

Для сравнения, если вызвать функцию PLC с теми же параметрами - то получится 1,773061319 AE
LordWilex вне форума   Ответить с цитированием
Старый 07.01.2013, 08:46   #372
gsvgsv12
Собеседник
 
Регистрация: 01.01.2013
Сообщения: 15
gsvgsv12 отключил(а) отображение уровня репутации
По умолчанию

Спасибо огромное! Сейчас буду пробовать.
gsvgsv12 вне форума   Ответить с цитированием
Старый 22.01.2013, 08:21   #373
DoReMi
Бухгалтер
 
Аватар для DoReMi
 
Регистрация: 23.04.2008
Адрес: Волгодонск
Сообщения: 338
DoReMi репутация выше +50DoReMi репутация выше +50
По умолчанию

Из Yahoo группы ШЭ пришло

Цитата:
Hello,

This email message is a notification to let you know that
a file has been uploaded to the Files area of the swisseph
group.

File : /SE_Excel spreadsheet and files.zip
Uploaded by : a_edwall1 otie_nospam@cox.net>
Description : SE functions in Excel spreadsheet

You can access this file at the URL:
http://groups.yahoo.com/group/swisseph/files/SE_Excel%20spreadsheet%20and%20files.zip

To learn more about file sharing for your group, please visit:
http://help.yahoo.com/l/us/yahoo/gro...web/index.html
Regards,

a_edwall1 otie_nospam@cox.net>

Посмотрел - внутри довольно примитивный примерчик.
Проверить не могу - экселя нет, а Open(Libre)Office по-прежнему не окучивает этот код :)
DoReMi вне форума   Ответить с цитированием
Старый 22.01.2013, 08:27   #374
LordWilex
В отпуске
 
Аватар для LordWilex
 
Регистрация: 01.06.2008
Адрес: Таганрог
Сообщения: 28,983
LordWilex репутация выше +250LordWilex репутация выше +250LordWilex репутация выше +250LordWilex репутация выше +250
По умолчанию

Цитата:
Сообщение от DoReMi
Из Yahoo группы ШЭ пришло



Посмотрел - внутри довольно примитивный примерчик.
Проверить не могу - экселя нет, а Open(Libre)Office по-прежнему не окучивает этот код :)
Спасибо!
LordWilex вне форума   Ответить с цитированием
Старый 22.01.2013, 10:52   #375
hoh
Собеседник
 
Аватар для hoh
 
Регистрация: 21.01.2013
Сообщения: 4
hoh отключил(а) отображение уровня репутации
По умолчанию

Вот смотрю я здесь насовские эфемериды ftp://ftp.astro.com/pub/swisseph/ephe/jplfiles/

и не понимаю в чем разница между de406e.eph и de406.eph кроме размера?
hoh вне форума   Ответить с цитированием
Старый 22.01.2013, 11:14   #376
DoReMi
Бухгалтер
 
Аватар для DoReMi
 
Регистрация: 23.04.2008
Адрес: Волгодонск
Сообщения: 338
DoReMi репутация выше +50DoReMi репутация выше +50
По умолчанию

Предположу, что если с буквой E файл больше, то по моим скромным знаниям английского там Еxtended или Еnhanced данные, то есть с более высокой точностью.
DoReMi вне форума   Ответить с цитированием
Старый 22.01.2013, 11:48   #377
hoh
Собеседник
 
Аватар для hoh
 
Регистрация: 21.01.2013
Сообщения: 4
hoh отключил(а) отображение уровня репутации
По умолчанию

Предпологаю тогда что файл de422.eph самый точный для планет от Луны до Нептуна с Солнцем если он больше этого de406e.eph почти в полтора раза.
hoh вне форума   Ответить с цитированием
Старый 22.01.2013, 12:28   #378
LordWilex
В отпуске
 
Аватар для LordWilex
 
Регистрация: 01.06.2008
Адрес: Таганрог
Сообщения: 28,983
LordWilex репутация выше +250LordWilex репутация выше +250LordWilex репутация выше +250LordWilex репутация выше +250
По умолчанию

Цитата:
Сообщение от DoReMi
Предположу, что если с буквой E файл больше, то по моим скромным знаниям английского там Еxtended или Еnhanced данные, то есть с более высокой точностью.

Да, именно так Еxtended расширенныё

Цитата:
Сообщение от hoh
Предпологаю тогда что файл de422.eph самый точный для планет от Луны до Нептуна с Солнцем если он больше этого de406e.eph почти в полтора раза.
Ну размер файла зависит от интервала времени для которого эфемериды рассчитаны. Если эфемериды покрывают интервал в 100 лет, то и файл будет не такой большой, как для эфемерид, охватывающих интервал в 3000 лет.
А на счет точности, - более старшие версии обычно более точней, потому что свежей - хотя не всегда, тут нужно читать документацию к каждой конкретной эфемериде на сайте NASA.
Например, DE414 (или DE421 уже не помню точно) делалась специально для миссии марсоходов, поэтому координаты Марса она считает очень хорошо, чуть ли не до метров точность доходит, но к сожалению охватывает слишком малый интервал времени.
А вот DE406 такой точностью похвастаться не может, но зато покрывает очень большой интервал времени и для астрологических нужд её более чем достаточно

Последний раз редактировалось LordWilex, 22.01.2013 в 12:33.
LordWilex вне форума   Ответить с цитированием
Старый 22.01.2013, 14:03   #379
hoh
Собеседник
 
Аватар для hoh
 
Регистрация: 21.01.2013
Сообщения: 4
hoh отключил(а) отображение уровня репутации
По умолчанию

Цитата:
Сообщение от LordWilex
Да, именно так Еxtended расширенныё

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

Оставили свою затею?
hoh вне форума   Ответить с цитированием
Старый 22.01.2013, 23:37   #380
LordWilex
В отпуске
 
Аватар для LordWilex
 
Регистрация: 01.06.2008
Адрес: Таганрог
Сообщения: 28,983
LordWilex репутация выше +250LordWilex репутация выше +250LordWilex репутация выше +250LordWilex репутация выше +250
По умолчанию

Цитата:
Сообщение от hoh
Вы года три назад, смотря по сообщениям форума здесь хотели сделать отдельную библиотеку на ассемблере для экселя где все функции были бы запрограммированы, а в экселе только остались бы описания, как я понимаю это может увеличить скорость вычислений в несколько раз.

Оставили свою затею?
Оставил.
Вообще-то не только для экселя, а просто библиотеку, типа ШЭ, но менее точную, на аналитических формулах, но зато очень быструю для обработки больших массивов.
Есть несколько задач для которых точность не так важна, но зато для обработки всего этого на обычном железе - нужны недели, если не месяцы, а код на ассемблере мог бы сэкономить время (если не считать того времени, что требуется на его написания )

Начал было, и даже написал 2 функции для работы и юлианскими датами - но, на том работа и зависла, а потом понял, что погорячился.

Во первых, - писать на асме - это большой геморой, не для меня это, особенно с учетом того, что реально круг задач, для которых это действительно нужно не такой уж большой и реально воспользуются этим 3 калеки в 3 задачах, в остальных случаях ШЭ с головой хватит

Во вторых, - простая установка по-больше памяти и SSD диска даст куда больший прирост производительности, чем изобретение велосипеда и переписывание его на ассемблере.

В третьих, - x86 архитектура похоже доживает последние деньки, а производительность процессоров все больше растет. Дык что на если на перспективу делать что-то на ассемблере пустая трата времени.

А если применительно к эксель, - то использовать такую библиотеку выгодно только когда в функцию загоняешь сразу большой массив данных, который в ней обрабатывается и выдает результат в виде такого же массива. Но с учетом времени, которое эксель тратит на заполнение ячеек - разницы с аналогичной функцией, написанной на СИ Вы не заметите. Да и не помещается на листе эксель столько ячеек, чтобы их было на ассемблере обрабатывать заметно выгодней, чем на СИ

Последний раз редактировалось LordWilex, 22.01.2013 в 23:42.
LordWilex вне форума   Ответить с цитированием
Ответ


Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +1, время: 23:41.


Powered by vBulletin Version 3.5.4
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.
© 1995-2019, ARGO