Швейцарские Эфемериды по-русски - Версия 1.2 (от 31 декабря 2009)

Скачать последнюю версию

Что нового?

  1. Исправлен ряд ошибок
  2. Появились новые функции, которые обеспечивают полноценную работут с системами управителей/диспозиторов (класска и модерн), термов, триплицитетов, а так же функции для работы с планетными картинами ГША и жребиями:

-  RulerNum() - Возвращает номер планеты (в системе ШЭ), которая управляет, знаком  Пример, если ввести “5” (лев), то функция возвратит “0” (Солнце)

RulerName() - Делает все тоже, что и RulerNum, только вместо номера, возвращает английское название планеты-управителя

На пример, если ввести 5 (Лев), то функция возвратит “Sun

Dispositor() - Возвращает долготу диспозитора или долготу планеты, которая в этом знаке в изгнании.

На пример, если ввести 40 (10 градус Тельца), то функция вернет 3 (Венера), или 4 (Марс), если запросить планету в изгнании.

Ruler() - Возвращает долготу управителя произвольной точки эклиптики или долготу планеты, которая в этом месте в изгнании.

Пример. Допустим, что  мы ввели 40 (10й градус Тельца), Тельцом управляет Венера, которая находится в 95 градусе, диспозитор которой Луна в 120 градусе. Если в параметрах задать управителя, то функция выдаст долготу Венеры (95), если задать диспозитора, то функция возвратит Луну (120).

- RulerHouse() –  Возвращает зодиакальную долготу управителя дома.

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

- RulerHouseInHouse() -  Возвращает номер дома, в котором находится управитель дома 

Пример. Нас интересует II дом. Второй дом в Весах. управитель II дома Венера в III доме, номер этого дома функция и вернет.

- DayHight() – Возвращает 1, если карта дневная, и 0, если карта ночная.

- jdayLT – Делает тоже самое, что и функция jdayLT, т.е. выводит юлианскую дату, только вводить нужно местное время + поправка, а не время по гринвичу. Думаю так многим это облегчит работу.

- Triplitsitet () – Возвращает номер управителя по триплицитету зодиакальной координаты Point,, в зависимости от того дневная карта или ночная (классика). Пример. Планета находиться в 10 градусе Стрельца. Карта дневная. Дневной управитель огненного триплицитета Солнца, следовательно его номер функция и выдаст.

- TriplitsitetName () – Делает тоже самое, что и функция Triplitsitet (), только вместо номера возвращает латинское название управителя по триплицитету.

Пример. Планета находиться в 10 градусе Стрельца. Карта дневная. Дневной управитель огненного триплицитета Солнца, следовательно его имя (Sun) функция и выдаст.

- Term() – Возвращает номер планету управителя термом.

Пример. Нас интересует 8 градус Овна. По Птолемею это терм Венеры. Следовательно функция выдаст 3 (номер Венеры в системе ШЭ).

- TermName() – Делает то же самое, что и функция Term(), только вместо номера возвращает имя планеты.

Пример. Нас интересует 8 градус Овна. По Птолемею это терм Венеры. Следовательно функция выдаст “Venus”

Midp() – Возвращает среднюю точку между А и Б

MidpHar() - Возвращает среднюю точку между А и Б в заданной гармонике. В градации 0-360

MidpHarN() - Возвращает среднюю точку между A и B в заданной гармонике в градации 0-360, деленной на номер гармоники 

Пример, для  4 гармоники (90 круг),  максимально возможная координата = 90 градусов). Для того, чтобы проверить картину вида: A/B=C/D, просто вычислите: MidpHarN(A,B) и MidpHarN(C,D), если разница меньше 1 градуса, значит картина есть (орб. 1 градус).

AandBsubC() - Вычисляет точку вида A+(B-C) в круге 360. Для перевода результата, на пример, в 90 круг, воспользуйтесь функцией Harmonica, а для того,  чтобы перевести то, что получилось в градацию 0-90 и т.д.,  разделите результат на номер гармоники

AandBdivC() - Вычисляет точку вида A+B/C в круге 360.

AandB() - Вычисляет точку вида A+B.

Grebiy() - Вычисляет жребий (формула вида A=B-C для дневной карты и A=C-B для ночной карты). Для вычисления жребия без учтета дневной/ночной карты просто воспользуйтесь функцией AandBsubC.

 

Более подробное описание новых функций см. ниже.

 

Люди, документация версталась в спешке, очень хотелось успеть закончить это дело до нового года, поэтому за верстку не судите строго )) Обещаю на праздниках подготовить нормальную документацию, и структурировать её в более удобочитаемом виде. :) Очень большая просьба в случае глюков, багов, косяков и пр. и пр.  отписаться на форуме: http://forum.argo-school.ru/showthread.php?t=904 , либо lordwilex@lordwilex.ru , а я побежал готовиться к НГ :)

 

 

 

Введение.

 

Проект Швейцарские эфемериды по-русски, - это набор функций, предназначенных для проведения астрологических / астрономических расчетов (пока только) в среде  MS Excel, однако, ни что не мешает использовать эти функции в Visual Basic for applications, и, с некоторыми доработками, в других Basic'ах.

Так же, я надеюсь, скоро выйдет аналогичный пакет для среды MathCad, который уже частично готов.

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

Так же, в рамках проекта планируется создать полный перевод документации по Швейцарским эфемеридам на русский язык (пока не готово), от сюда и название.

Проект, в основном, ориентирован на астрологов-исследователей, занимающихся астрологической статистикой, однако, я думаю, он будет полезен и для проведения разнообразных нестандартных прикладных астрологических / астрономических вычислений.

Для работы с пакетом, обычно, достаточно обладать базовыми навыками работы в среде MS Excel, однако, для того, чтобы возможности пакета полностью раскрылись, навыки программирования на Visual basic, очень не помешают.

Начиная с версии 1.0 , во избежание путаницы, вводится нумерация версий.

Так же я решил все-таки дать название проекту, а то как-то не удобно без названия :)

Теперь он называется Швейцарские эфемериды по-русски.

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

 

Автор будет искренне вам признателен, если вы предложите свои нароботки (кусочки исходного кода, готовые типовые макросы и т.п.) для включения в проект.

Сделать это можно написав на адрес мой электронной почты (см. ниже), либо обратившись на форум.

Я всего лишь один слабый человек, а нужно сделать еще очень и очень много, так что давайте делать проект вместе!

 

 

С уважением, Виталий Иванченко

Автор проекта Швейцарские эфемериды по – русски.

Официальный сайт проекта:  http://sweru.lordwilex.ru

Официальный форум проекта:  http://forum.argo-school.ru/showthread.php?t=904

Скачать последнюю версию: http://sweru.lordwilex.ru/sweru.zip

lordwilex@lordwilex.ru

ICQ: 26-666-71

 

 

 

 

 

Не много об авторских правах

 

            Проект абсолютно бесплатен.

 

Автор не налагает ни каких ограничений на использование пакета и своей части исходного кода (даже ссылку на сайт автора оставляю на вашей совести), разумеется, кроме тех, что налагает лицензионное соглашение Швейцарских эфемерид, но это уже вопросы не ко мне. 

 

То есть существуют 2 вида лицензий:

 

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

 

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

 

Подробности на сайте авторов Швейцарских эфемерид  http://astro.com

 

 

 

 

Начало работы

 

 

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

 

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

 

Если вы умеете немного праграммировать на Visual Basic, то в сочетании со математическими/статистическими возможностями в Exel и возможностью создавать макросы, - перед вами откроются безграничные возможности в моделировании Экспериментов, которые не может дать ни одна астрологическая/математичекая программа.

 

Но даже без знания Visual Basic можно сделать очень многое!!!

 

И так начнем с основ.

 

Для начала нам нужно будет подключить сами эфемериды к книге.

Т.е. задекларировать основные функции швейцарских эфемерид в рабочей книге и установить библиотеку швейцарских эфемерид.

 

 

 

Для этого:

1. Скопируйте файл: "swedll32.dll" в папку c:/windows/System32.  (Не забываем, это самое главное!!!)

 

Этот файл входит в комплект постави многих астрологических программ, на пример ZET , но если его у вас нет, скачать его (вместе с документацией на английском языке, исходниками и др. полезностями) можно по ссылке: ftp://ftp.astro.com/pub/swisseph/sweph.zip (4 MB).

 

Так же этот файл доступен в комплекте Швейцарских эфемерид по-русски, которые можно скачать по этой ссылке : http://sweru.lordwilex.ru/sweru.zip.

 

 

2.  Существует 2 способа подключения швейцарских эфемерид по русски к MS EXCEL

 

 

 

Вариант 1

 

Хорош, если вы предпочитаете работать с исходным кодом, либо желаете, чтобы функции хранились в отдельном файле книги.

 

Идем в Exel. Создаем новый документ.

Далее заходим: Меню "Сервис" -> "Макросы" -> "Редактор Visual basic".

 

Находим надпись "книга1.xls" (Если вы назвали документ по другому, то ваше название), и кликаем правой кнопкой мыши, выбираем "insert"->"module"

 

 

 

 

 

 

 

 

и вставляем в появившеся окне текст деклорации функций из файла SweRu.bas, который есть в комплекте Швейцарских эфемерид по-русски  http://sweru.lordwilex.ru/sweru.zip  .

 

 

 

 

Вариант 2

 

 

Открываем Excel.

Идем в меню «Сервис» ->  «Надстройки» -> «Обзор»

И выбираем файл  SweRuXLA.xla  (предворительно скачанный и распакованный из архива http://sweru.lordwilex.ru/sweru.zip ).

 

 

3. В принципе, если нет ни каких глюков, то можнопользоваться, все должно работать.

 

Однако,  в случае, если функции недоступны, попробуйте сделать следующее:

 

 

Скорей всего у вас запрещено выполнение макросов в эксели, нужно зайти в настройки (меню "сервис" - "параметры" - "безопасность" - "безопасность макросов") и их разрешить (низкая или средняя). Обещаю, макровирусов нет!!!  :)

 

 

4.  Ура!!! Теперь мы можем начать работать, давайте попробуем вычислить тропическую долготу Солнца на 10 авнуста 1980 года в 13:58:40 GMT.

 

 

Для начала нам все же понадобиться определить юлианскую дату, на это время (к сожаления все функции работают только с юлианскими датами).

 

 

Для этого либо нажимаем кнопку Fx на панели инструментов, либо заходим в меню "вставка" -> "функция", и в, появившеся окне выбираем категирию "определенные пользователем", дальще ищем функуцию "jday" и выбираем её.

 

 

Теперь у нас появится вот такое окно:

 

 

 

 

 

 

 

Вводим дату, нажимаем ОК. И так, юлианска дата на 10-8-1980 13:58:40 была: 2444462,082.

 

 

Теперь опять заходим во "вставка" -> "функция" -> "определенные пользователем", и ищем функцию plc

 

 

 

И дальше аналогично предыдущему пункту:

 

 

 

 

 

Параметр pl - это номер планеты в системе швейцарских эфемерид.

Параметр JD - это юлианская дата

Параметр CType - это выбор зодиака (STrop - трапический, SSid Сидерический). Буква S в начале означает швейцарские эфемериды, а T - эфемериды Мошьера (TTrop), которые тоже включены в файл swedll32.dll.

Параметр XPos - это выбор координаты (на пример 0 это долгота, 1 Широта, можно на пример получить XYZ координаты и т.д. )

 

Короче нажимаем ОК и получаем результат.

И так 10-8-1980 в 13:58:40 GMT Долгота Солнца была 138,0711226 (или 18-й градус льва).

 

 

 

Ну вроде бы все, описание остальных функций читайте ниже.

 

Если возникнут «нерешаемые» вопросы, - задавайте их на форуме: :  http://forum.argo-school.ru/showthread.php?t=904

 

 

 

 

 

 

 

 

 

 

 

 

Работа с нестандартными фиктивными планетами в ШЭ?

 

Что делать, если вашей любимой фиктивной планеты нет в Швейцарских Эфемеридах?

 

Две Прозерпины….

Вчера один из посетителей форума обратился ко мне с вопросом, «а куда вы, собственно говоря, дели мою любимую Прозерпину?». :)

Я с сей экзотичной планиДой ни когда не работал, но будучи уверен, что в ШЭ все есть, сначала посоветовал почитать внимательней форум, но когда внимательней поискал, все оказалось не так просто, как казалось, я обнаружил, что Прозерпины там действительно нет…

Верней я её конечно нашел, но эта Прозерпина оказалась какой-то не такой, во первых, её элементы оказались геоцентрическими, в то время, как мой знакомый уверял меня, что они должны быть геолиоцентрическими, во вторых координаты той Прозерпины, которая была в ШЭ (Ско 016° 22' 02,6953''), градусов на 5 отличались от того, что выдавала программа моего знакомого (Ско 011° 31' 50,3279'').

 

В общем-то если у вас имеются орбитальные элементы нужной вам фиктивной планеты, - это не проблема!

Достаточно создать файл seorbel.txt, добавить в него орбитальные элементы нужной «планеты» и поместить этот файл в папку со швейцарскими эфемеридами (или дописать элементы нужной фиктивной планеты в файл, если такой уже существует) и.. и все…

 

На пример, для этой самой Прозерпины, строка с орбитальными элементами будет выглядеть следующим образом (орбитальные элементы Прозерпины позаимствованы мной из программы ZET):

 

2445375.5, 2445375.5, 187.502320, 77.926077235, 0.08550236, 319.538004, 63.696644, 3.000799, Прозерпина # 19 (PLC = 59)

 

Где каждый элемент отделяется друг от друга запятой:

 

1. Эпоха относительно которой вычисляем координаты (Юлианская дата)

2. Эквоникс (Юлианская дата, либо один из этих: "J1900" или "B1950" или "J2000")

3. Средняя аномалия

4. Большая полуось орбиты

5. Экцентриситет

6. Аргумент перегелия

7. Долгота восходящего узла

8. Наклон орбиты к эклиптики

9. Название планеты

10. Если элементы геоцентрические, после названия, через запятую пишем еще и geo

 

Знак - '#' обозначает комментарий, после этого знака можите писать что угодно, программа это все равно не увидет :)

 

Для вычисления координат при помощи функции swe_calc() (в эксели функция PLC() ), используйте номер планеты

Который вычисляется по формуле:

ipl = SE_FICT_OFFSET_1 + номер элементов в этом файле. На пример, номер Крона ipl = 39 + 4 = 43

 

А вот и пример файла с орбитальными элементами (перевод с английского мой, прошу больно не пинать, если что не так перевелось :) ):

 

Цитата:# Орбитальные элементы фиктивных планет

# 27 Jan. 2000

#

# Этот файл является частью Швейцарских Эфемерид, версии 1.52.

# Пользователь может добавить свои собственные фиктивные планеты (максимум 960 планет).

#

# Порядок элементов в строке следующий:

# 1. Эпоха относительно которой вычисляем координаты (Юлианская дата)

# 2. Эквоникс (Юлианская дата, либо один из этих: "J1900" или "B1950" или "J2000")

# 3. Средняя аномалия

# 4. Большая полуось орбиты

# 5. Экцентриситет

# 6. Аргумент перегелия

# 7. Долгота восходящего узла

# 8. Наклон орбиты к эклиптики

# 9. Название планеты

# 10. Если элементы геоцентрические, после названия, через запятую пишем еще и geo

#

# Знак - '#' обозначает комментарий, после этого знака можите писать что угодно, программа это все равно не увидет :)

# Для вычисления координат при помощи функции swe_calc() (в эксели функция PLC() ), используйте номер планеты

# Который вычисляется по формуле:

# ipl = SE_FICT_OFFSET_1 + номер элементов в этом файле. На пример, номер Крона ipl = 39 + 4 = 43

#

# Транснептуны ГША, по данным Джейма Нили (James Neely)

J1900, J1900, 163.7409, 40.99837, 0.00460, 171.4333, 129.8325, 1.0833, Купидон # 1 (PLC = 40)

J1900, J1900, 27.6496, 50.66744, 0.00245, 148.1796, 161.3339, 1.0500, Гадес # 2 (PLC = 41)

J1900, J1900, 165.1232, 59.21436, 0.00120, 299.0440, 0.0000, 0.0000, Зевс # 3 (PLC = 42)

J1900, J1900, 169.0193, 64.81960, 0.00305, 208.8801, 0.0000, 0.0000, Крон # 4 (PLC = 43)

J1900, J1900, 138.0533, 70.29949, 0.00000, 0.0000, 0.0000, 0.0000, Апплалон # 5 (PLC = 44)

J1900, J1900, 351.3350, 73.62765, 0.00000, 0.0000, 0.0000, 0.0000, Адмет # 6 (PLC = 45)

J1900, J1900, 55.8983, 77.25568, 0.00000, 0.0000, 0.0000, 0.0000, Вулкан # 7 (PLC = 46)

J1900, J1900, 165.5163, 83.66907, 0.00000, 0.0000, 0.0000, 0.0000, Посейдон # 8 (PLC = 47)

#

# Изида трансплутоновая "Die Sterne" 3/1952, p. 70ff.

2368547.66, 2431456.5, 0.0, 77.775, 0.3, 0.7, 0, 0, Isis-Transpluto # 9 (PLC = 48)

# Нибиру элементы по Криятьяну Уолтегу (Christian Woeltge)

1856113.380954, 1856113.380954, 0.0, 234.8921, 0.981092, 103.966, -44.567, 158.708, Нибиру # 10 (PLC = 49)

# 10-я планета по Харингтону (Harrington), по данным Astronomical Journal 96(4), Oct. 1988

2374696.5, J2000, 0.0, 101.2, 0.411, 208.5, 275.4, 32.4, Harrington # 11 (PLC = 50)

# Другие попытки найти 10-ю "планету - X" по данным W.G. Hoyt, "Planets X and Pluto", Tucson 1980, p. 63

2395662.5, 2395662.5, 34.05, 36.15, 0.10761, 284.75, 0, 0, Leverrier (Neptune) # 12 (PLC = 51)

2395662.5, 2395662.5, 24.28, 37.25, 0.12062, 299.11, 0, 0, Adams (Neptune) # 13 (PLC = 52)

2425977.5, 2425977.5, 281, 43.0, 0.202, 204.9, 0, 0, Lowell (Pluto) # 14 (PLC = 53)

2425977.5, 2425977.5, 48.95, 55.1, 0.31, 280.1, 100, 15, Pickering (Pluto) # 15 (PLC = 54)

# Вулкан (интромеркуриарный :) ) по данным Л. Уестона (L.H. Weston)

J1900,JDATE, 252.8987988 + 707550.7341 * T, 0.13744, 0.019, 322.212069+1670.056*T, 47.787931-1670.056*T, 7.5, Vulcan # 16 (PLC = 55)

# Селена / Белая луна

J2000,JDATE, 242.2205555 + 5143.5418158 * T, 0.05280098949, 0.0, 0.0, 0.0, 0.0, Selena/White Moon, geo # 17 (PLC = 56)

# Прозерпина, по данным http://www.geocities.com/Hollywood/A...roserpina.html

# J1900, 170.73 + 51.05 * T

J1900,JDATE, 170.73, 79.225630, 0, 0, 0, 0, Proserpina (гео) #18 (PLC = 57)

# Вторая Луна по Уальдемату (Waldemath's Second Earth Moon)

2414290.95827875,2414290.95827875, 70.3407215 + 109023.2634989 * T, 0.0068400705250028, 0.1587, 8.14049594 + 2393.47417444 * T, 136.24878256 - 1131.71719709 * T, 2.5, Waldemath, geo # 19 (PLC = 58)

##############################################

### Дополнительные элементы

# Прозерпина по элементам, позаимствованным из программы ZET

2445375.5, 2445375.5, 187.502320, 77.926077235, 0.08550236, 319.538004, 63.696644, 3.000799, Прозерпина # 19 (PLC = 59)

# Дхарма по элементам, позаимствованным из программы ZET

2448830.500, 2448830.500, 050.7800, 57.839761679, 0.11800000, 288.017908, 047.587053, 2.500595, Дхарма # 20 (PLC = 60)

 

 

 

Если у вас проблемы с открытием файла test.xls из предыдущего поста (всплывает сообщение, что макросы были отключены из-за настроек безопасности, а координаты планет все в нулях), сделайте следующее:

 

1. Закройте этот файл (но не эксель :) )

2. Меню сервис -> Макрос -> Безопасность

Установите уровень безопасности на низкий (вирусов нема, фырма г'арантырует).

3. Откройте файл.

 

Если файл открывается, но считаются не все планеты, то:

1. Скопируйте файл seorbel.txt (он находится в архиве test.zip) в папку где у вас находятся швейцарские эфемериды

2. Зайдите в:

Меню Сервис -> Макрос -> Редактор VB -> Найдите файл test.xls -> Module1

И в текстовом окне найдите строчки

swe_set_ephe_path ("C:\swe\")

и замените C:\swe\ на путь, где у вас ШЭ

 

теперь точно все должно работать....

 

 

 

 

 

 

Описание функций

 

 

 

SweInit

 

 

SweInit()

 

ВНИМАНИЕ!!!!!

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

Если вы хотите, чтобы все корректно работало НЕ ЗАБУДЬТЕ:

 

1. Установить путь (или пути, разделенные знаком ; )  к папке, где у вас лежат Швейцарские эфемериды (если вы ими пользуетесь). Сделать это можно изменив параметры процедуры swe_set_ephe_path() ниже.

 

2. Установить имя файла JPL эфемерид, в функции swe_set_jpl_file(), ниже, если вы ими пользуетесь.

 

3. Установить аянамсу в процедуре swe_set_sid_mode(), если вы планируете пользоваться, сидерическими зодиаками (по умолчанию аянамса Лахари).

 

 

Если вы пользуетесь только эфемеридами Мошьера (файл swedll32.dll и все), и не планируете, работать с сидерическим зодиаком, то ни чего менять тут вам не нужно, тока не забудьте, скинуть файл swedll32.dll в папку windows/system32/

 

Call swe_set_ephe_path("c:\sweph\")

Call swe_set_jpl_file("de406.eph")

Call swe_set_sid_mode(SE_SIDM_LAHIRI, 0, 0)

 

 

 

 

jday

 

jday(year As Integer, month As Integer, day As Integer, hour As Integer, min As Integer, sec As Double, Optional greg) As Double

 

Возвращает юлианскую дату

year = год

month = месяц

day = день

hour = час

min = минута, sec = секунда

greg = грегорианский флаг (по умолчанию 0)

 

В Швейцарских эфемеридах имеется функция swe_julday(), которая делает то же самое, однако я рекомендую пользоваться именно моей функцией jday(), поскольку последняя выдает результат с большим числом знаков после запятой.

 

 

JDToDay

 

JDToDay(ByVal JD As Double, ByVal per As Long) As Double

 

Переводит юлианскую дату в обычную.

 

JDToDay

 

JDToDay(JD, per)

 

Где:

JD - Юлианская дата

per - Одна из частей григорианской даты, которую нужно вывести (одна из 4-х цифр): 1 - день, 2 - месяц, 3- год, 4- час, 5 - минута, 6 - секунда

 

 

 

 

Plc

 

Plc(ByVal JD As Double, ByVal pl As Variant, Optional ByVal CType, Optional ByVal XPos) As Double

Возвращает координаты планет, домов, астероидов, фиктивных планет

JD = Юлианская дата

 

Pl   = Номер планеты (др. объекта) в система ШЭ + дополнительные возможности от меня :)

      pl=0..20 = Солнце..Веста

      pl = 99990..100018 вершина дома в Плацидусе (для других систем домов см. функции PlHouse() и PlAsc() )

      pl = 10001..бесконечность = номер астероида + 10000 (астероид по номеру, так же удобней можно найти при помощи функции Asteroid(), а имя астероида по номеру можно найти при помощи функции AsterNAme() )  Так же см. функцию PlName() для нахождения имени планеты по номеру

 

 

CType = Тип эфемерид и зодиака

 

 

Параметр CType, это выбор системы зодиака, а так же вида эфемерид. Первая буква в параметре, как я уже сказал, указывает тип эфемерид. Где: 1-я буква вид эфемерид, а остальная часть слова - вид зодиака.

 

 

S - Швейцарские эфемериды, - более точные, но требуют помимо библиотеки swedll32.dll присутствия на компьютере самих файлов эфемерид (хотя ты бы файлов: sepl_18.se1, semo_18.se1, seas_18.se1). Их точность сопоставима с точностью эфемерид DE200, поэтому их вполне можно использовать и для научных целей, хотя и не рекомендуется т.к. есть, на пример, DE421 которая в некоторых случаях считает с точностью до метров.

 

M - Эфемериды Мошьера. Встроены в файл swedll32.dll, поэтому ни чего дополнительного для работы с ними скачивать не нужно (к астероидам это утверждение не относится). Являются апроксимацией эфемериды DE200. Но, во первых, они не так точны, как швейцарские эфемериды, и для кретичных к точности научных задач, обычно не подходят. Во вторых работают они медленей швейцарских эфемерид, а при большом объеме вычислений это может отнять у вас лишних пару дней. Но для практических задач очень даже подойдут. Единственный существенный +, - это небольшой размер.

 

J - JPL эфемериды НАСА в последней версии ШЭ есть возможность подключить DE/LE эфемериды: de200, de405, de406, de414 и de421. Подробности о том, что за зверь и с чем его едят,- читайте в моей статье, которая, как я надеюсь, скоро последует.

 

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

STrop - тропический задиак по швейцарским эфемеридам.

MTrop - Тропический зодиак, Эфемериды Мошьера.

JTrop - Тропический зодиак, JPL Эфемериды НАСА.

 

SSid (MSid) - Вернуть координаты планеты в сидерическом зодиаке

SHel (MHel) - Вернуть координаты планеты в гелиоцентре

SXYZ (MXYZ) - Вернуть XYZ координаты (используется в астрономии)

SRad (MRad) - Вернуть координаты в радианах

 

 

 

      CType = Def   - Зодиак и эфемериды по умолчанию (эфемериды Мошьера + тропический зодиак)

 

      CType = STrop - Тропический зодиак, Швейцарские эфемериды

      CType = SSid  - Сидерический зодиак, Швейцарские эфемериды

      CType = SHel  - Тропический зодиак, гелиоцентрические координаты, Швейцарские эфемериды

      CType = SXYZ  - Прямоугольные X,Y,Z координаты, Швейцарские эфемериды

      CType = SRad  - Тропический зодиак (кажется...) , радианы, Швейцарские эфемериды

      CType = SEq   - Экваториальные координаты, градусы, Швейцарские эфемериды

      CType = SEqR  - Экваториальные координаты, радианы, Швейцарские эфемериды

 

      CType = MTrop - Тропический зодиак,  эфемериды Мошьера

      CType = MSid  - Сидерический зодиак,  эфемериды Мошьера

      CType = MHel  - Тропические зодиак, гелиоцентрические координаты,  эфемериды Мошьера

      CType = MXYZ  - Прямоугольные X,Y,Z координаты,  эфемериды Мошьера

      CType = MRad  - Тропический зодиак (кажется...) , радианы,  эфемериды Мошьера

      CType = MEq   - Экваториальные координаты, градусы,  эфемериды Мошьера

      CType = MEqR  - Экваториальные координаты, радианы,  эфемериды Мошьера

 

      CType = JTrop - Тропический зодиак, JPL эфемериды (по умолчанию DE406)

      CType = JSid  - Сидерический зодиак,  JPL эфемериды (по умолчанию DE406)

      CType = JHel  - Тропические зодиак, гелиоцентрические координаты,  JPL эфемериды (по умолчанию DE406)

      CType = JXYZ  - Прямоугольные X,Y,Z координаты,  JPL эфемериды (по умолчанию DE406)

      CType = JRad  - Тропический зодиак (кажется...) , радианы,   JPL эфемериды (по умолчанию DE406)

      CType = JEq   - Экваториальные координаты, градусы,   JPL эфемериды (по умолчанию DE406)

      CType = JEqR  - Экваториальные координаты, радианы,  JPL эфемериды (по умолчанию DE406)

 

 XPos = Тип возвращаемой координаты

       XPos =  1 = Широта (или X координата, если задано CType = SXYZ | MXYZ | JXYZ )

       XPos =  2 = Долгота (или Y координата)

       XPos =  3 = Расстояние от Земли (в геоцентре) или Солнца (в гелиоцентре) (или Z координата)

       XPos =  4 = Угловая скорость / сек по широте

       XPos =  5 = Угловая скорость / сек по долготе

       XPos =  6 = Угловая скорость / сек по расстоянию

 

 

      Хочу обратить ваше ВНИМАНИЕ!!!!

      1. Для работы с сидерическими зодиаками необходимо установить аянамсу при помощи функции   swe_set_sid_mode() по умолчанию используется аянамса Лахари

      2. Для работы с JPL эфемеридами необходимо указать файл эфемерид при помощи функции    swe_set_jpl_file() (по умолчанию DE406)

      3. Для работы с непосредственно Швейцарскими эфемеридами и астероидами, - необходимо указать  директорию, где они находятся при помощи функции swe_set_ephe_path()

      4. Для большинства задач практической астрологии, достаточно иметь файл swedll32.dll, в него  уже включены эфемериды Мошьера (которые являются апроксимацией DE200) и достаточно точно считают.

         Для научных целей эфемериды Мошьера обычно не подходят, так как при статистической обработке  большого объема данных накапливается систематическая погрешность, поэтому необходимо скачать хотя бы файлы Швейцарских эфемерид с сайта ftp://ftp.astro.com/pub/swisseph/ephe/, обычно Швейцарских эфемерид более чем достаточно.

         Но если у вас есть такая возможность, лучше все-таки скачать JPL эфемериды вот от сюда:  ftp.astro.com/pub/swisseph/ephe/jplfiles/ . Например, для Марса точность de421 измеряется десятками метров (!!!),   а для большинства планет точность de406 составляет несколько километров. В общем-то, это хорошо для полетов на Марс,  а для большинства задач астростатистики такая точность, на мой взгляд, пока избыточна. По крайней мере, я с  трудом представляю астрологические задачи, где такая точность действительно может понадобится.   Так же, если вы хотите работать с астероидами, вам нужно будет скачать необходимые вам файлы астероидов   все тут же: ftp.astro.com/pub/swisseph/ephe/  (астероиды находятся в папках asr* , в каждой попке по 1000 штук).

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

Очень часто их координаты в ШЭ не совпадают с тем, что выдает, на пример система JPL Horizons  (  telnet:\\horizons.jpl.nasa.gov:6775  ), однако, при всем богатстве выбора другой альтернативы нет, - ни чего лучше  Швейцарских эфемерид в распоряжении астрологов пока нет, и без них современная астрология отставала бы лет на 10   от нынешнего уровня, за что респект и уважуха авторам ШЭ.

 

Пара слов о системе нумерации планет в ШЭ

 

****

0 - Солнце

1 - Луна

2 - Меркурий

3 - Венера

4 - Марс

5 - Юпитер

6 - Сатурн

7 - Уран

8 - Нептун

9 - Плутон

 

**** (Система Луна-Земля)

10 - Средний Восх. узел

11 - Истинный Восх. узел

12 - Средний апогей Луны (Лилит)

13 - Истинный апогей Луны

14 - Земля (в любом случае, результат в гелиоцентре).

 

*** (Основные астероиды. Эти астероиды включены в стандартный файл seas_18.se1)

15 - Хирон

16 - Фол

17 - Церара

18 - Плалада

19 - Юнона

20 - Веста

****

 

21 - INTP APOG (не знаю, что это такое, очевидно какой-то апогей...)

23 - INTP PERG (тоже не знаю, но явно перигелий какой-то)

 

23 ... 39 - зарезервированные номера планет

 

**** (Транснептуны ГША)

40 - Купидон

41 - Гадес

42 - Зевс

43 - Крон

44 - Апалон

45 - Адмет

46 - Вулкан

47 - Посейдон

 

**** (Другие фиктивные планеты)

48 - Изида

49 - Нибиру (? В англиской транскрипции: Nibiru, Очевидно один из результатов "вычисления" 10-й планеты Солнечной системы).

50 - Харингтон (то же самое)

51 - Нептун Леверьера

52 - Нептун Адамса

53 - Плутон Лоуэла

54 - Плутон Пикеринга

 

Подробней об этом читайте в документации к ШЭ.

 

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

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

 

 

Особенности работы с астероидами. Номера астероидов.

 

Для того, чтобы вычислить астероид нужно:

а). Закачать файл с эфемеридами астероида (на сегодняшний момент на сайте швейцарских эфемерид их доступно уже десятки, если не сотни тысяч)и положить его в папку с эфемеридами.

б). Прибавить к номеру астероида 10000, а дальше, вставляем в функцию и вычисляем, как и все остальные планеты.

На пример, если вам нужно вычислить астероид Урания (Urania) порядковый № которого 30, мы:

- Скачиваем файл se00030s.se1, и кладем его в папку с эфемеридами.

- Прибавляем к 10000 № астероида. 10000 + 30 = 10030 , - это и будет номер, который мы подставляем в функцию plc

 

Однако, теперь так мучится не нужно, недавно появилась функция Asteroid, в которая работает аналогично функции PLC, единственное отличие, - не нужно прибавлять к номеру астероида 10000, можно в неё подавать номер напрямую.

 

 

Особенности работы с домами.

 

Так же при помощи этой функции можно вычислить координаты начала домов в системе Плацидуса.

Для этого нужно к номеру дома прибавить 99990 и подставить это число в функцию plc вместо планеты.

На пример:

Асцендент = 99990 +1 = 99991

II дом = 99990 + 2 = 99992

и т.д...

 

Вместо типа зодиака в CType нужно прописать географическую широту.

А вместо XPos нужно указать долготу

(результат выдается в тропическом зодиаке).

 

Широту и долготу в этой функции нужно вводить одним десятичным числом.

т.е. если широта 47 градусов 12 минут

мы делаем так:

1/60*минуты+градусы

 

в данном случае широта в десятичном формате: 1/60*12+47=47,2

 

Plc(Юлианская дата; 99990 + номер дома; Широта; Долгота)

 

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

 

 

 

 

Asteroid

 

Asteroid (ByVal JD As Double, ByVal pl As Variant, Optional ByVal CType, Optional ByVal XPos) As Double

 

Вычисляет координаты астероида по номеру

 

Для того, чтобы вычислить астероид нужно:

а). Закачать файл с эфемеридами астероида (на сегодняшний момент на сайте швейцарских эфемерид ( ftp.astro.com/pub/swisseph/ephe/ ) их доступно уже десятки, если не сотни тысяч)и положить его в папку с эфемеридами.

б).  Поместить этот файл в папку со Швейцарскимми эфемеридами, указанную в  “swe_set_ephe_path("c:\sweph\")” функции SweInit (см. выше)

На пример, если вам нужно вычислить астероид Урания (Urania) порядковый № которого 30, мы:

-  скачиваем файл se00030s.se1, и кладем его в папку с эфемеридами.

- Подаем в параметр Pl номер астероида.

 

 

 

JD = Юлианская дата

 

Pl = Номер астероида ( имя астероида по номеру можно найти при помощи функции AsterNAme() )

 

 

 

CType = Тип эфемерид и зодиака

      Где: 1-я буква вид эфемерид, а остальная часть слова - вид зодиака.

      CType = Def   - Зодиак и эфемериды по умолчанию (эфемериды Мошьера + тропический зодиак)

 

      CType = STrop - Тропический зодиак, Швейцарские эфемериды

      CType = SSid  - Сидерический зодиак, Швейцарские эфемериды

      CType = SHel  - Тропический зодиак, гелиоцентрические координаты, Швейцарские эфемериды

      CType = SXYZ  - Прямоугольные X,Y,Z координаты, Швейцарские эфемериды

      CType = SRad  - Тропический зодиак (кажется...) , радианы, Швейцарские эфемериды

      CType = SEq   - Экваториальные координаты, градусы, Швейцарские эфемериды

      CType = SEqR  - Экваториальные координаты, радианы, Швейцарские эфемериды

 

      CType = MTrop - Тропический зодиак,  эфемериды Мошьера

      CType = MSid  - Сидерический зодиак,  эфемериды Мошьера

      CType = MHel  - Тропические зодиак, гелиоцентрические координаты,  эфемериды Мошьера

      CType = MXYZ  - Прямоугольные X,Y,Z координаты,  эфемериды Мошьера

      CType = MRad  - Тропический зодиак (кажется...) , радианы,  эфемериды Мошьера

      CType = MEq   - Экваториальные координаты, градусы,  эфемериды Мошьера

      CType = MEqR  - Экваториальные координаты, радианы,  эфемериды Мошьера

 

      CType = JTrop - Тропический зодиак, JPL эфемериды (по умолчанию DE406)

      CType = JSid  - Сидерический зодиак,  JPL эфемериды (по умолчанию DE406)

      CType = JHel  - Тропические зодиак, гелиоцентрические координаты,  JPL эфемериды (по умолчанию DE406)

      CType = JXYZ  - Прямоугольные X,Y,Z координаты,  JPL эфемериды (по умолчанию DE406)

      CType = JRad  - Тропический зодиак (кажется...) , радианы,   JPL эфемериды (по умолчанию DE406)

      CType = JEq   - Экваториальные координаты, градусы,   JPL эфемериды (по умолчанию DE406)

      CType = JEqR  - Экваториальные координаты, радианы,  JPL эфемериды (по умолчанию DE406)

 

 XPos = Тип возвращаемой координаты

       XPos =  1 = Широта (или X координата, если задано CType = SXYZ | MXYZ | JXYZ )

       XPos =  2 = Долгота (или Y координата)

       XPos =  3 = Расстояние от Земли (в геоцентре) или Солнца (в гелиоцентре) (или Z координата)

       XPos =  4 = Угловая скорость / сек по широте

       XPos =  5 = Угловая скорость / сек по долготе

       XPos =  6 = Угловая скорость / сек по расстоянию

 

 

 

 

AsterName

 

AsterName(n) As String

 

Выдает имя астероида по его номеру

В каталоге с эфемеридами должен лежать файл с именами астероидов ("SEASNAM.TXT" и "SEASNAM2.TXT"),

если эфемерид самого астероида нет. Если эфемериды астероида есть на компьютере, то его имя вычисляется автоматически

 

 

stars

 

stars(JD As Double, StarName As String, Optional ByVal CType, Optional ByVal XPos)

Выдает координату звезды на заданную юлианскую дату

 

В каталоге с эфемеридами должен лежать файл "FIXSTARS.CAT"

Напоминаю, что путь к каталогу с эфемеридами задается в функции "SweInit()" (см. выше)

 

JD = Юлианская дата

 

StarName - имя звезды

 

CType = Тип эфемерид и зодиака

      Где: 1-я буква вид эфемерид, а остальная часть слова - вид зодиака.

      CType = Def   - Зодиак и эфемериды по умолчанию (эфемериды Мошьера + тропический зодиак)

 

      CType = STrop - Тропический зодиак, Швейцарские эфемериды

      CType = SSid  - Сидерический зодиак, Швейцарские эфемериды

      CType = SHel  - Тропический зодиак, гелиоцентрические координаты, Швейцарские эфемериды

      CType = SXYZ  - Прямоугольные X,Y,Z координаты, Швейцарские эфемериды

      CType = SRad  - Тропический зодиак (кажется...) , радианы, Швейцарские эфемериды

      CType = SEq   - Экваториальные координаты, градусы, Швейцарские эфемериды

      CType = SEqR  - Экваториальные координаты, радианы, Швейцарские эфемериды

 

      CType = MTrop - Тропический зодиак,  эфемериды Мошьера

      CType = MSid  - Сидерический зодиак,  эфемериды Мошьера

      CType = MHel  - Тропические зодиак, гелиоцентрические координаты,  эфемериды Мошьера

      CType = MXYZ  - Прямоугольные X,Y,Z координаты,  эфемериды Мошьера

      CType = MRad  - Тропический зодиак (кажется...) , радианы,  эфемериды Мошьера

      CType = MEq   - Экваториальные координаты, градусы,  эфемериды Мошьера

      CType = MEqR  - Экваториальные координаты, радианы,  эфемериды Мошьера

 

      CType = JTrop - Тропический зодиак, JPL эфемериды (по умолчанию DE406)

      CType = JSid  - Сидерический зодиак,  JPL эфемериды (по умолчанию DE406)

      CType = JHel  - Тропические зодиак, гелиоцентрические координаты,  JPL эфемериды (по умолчанию DE406)

      CType = JXYZ  - Прямоугольные X,Y,Z координаты,  JPL эфемериды (по умолчанию DE406)

      CType = JRad  - Тропический зодиак (кажется...) , радианы,   JPL эфемериды (по умолчанию DE406)

      CType = JEq   - Экваториальные координаты, градусы,   JPL эфемериды (по умолчанию DE406)

      CType = JEqR  - Экваториальные координаты, радианы,  JPL эфемериды (по умолчанию DE406)

 

 XPos = Тип возвращаемой координаты

       XPos =  1 = Широта (или X координата, если задано CType = SXYZ | MXYZ | JXYZ )

       XPos =  2 = Долгота (или Y координата)

       XPos =  3 = Расстояние от Земли (в геоцентре) или Солнца (в гелиоцентре) (или Z координата)

       XPos =  4 = Угловая скорость / сек по широте

       XPos =  5 = Угловая скорость / сек по долготе

       XPos =  6 = Угловая скорость / сек по расстоянию

 

 

CHouse

 

CHouse(ByVal JD As Double, ByVal HSys As Variant, ByVal CType As Variant, ByVal csp As Integer, ByVal LonH As Double, ByVal LonM As Double, ByVal LatH As Double, ByVal LatM As Double)

 

Работа с раскладкой домов (координаты вершин домов, Asc, Dsc, Vetrex и т.д.)

 

JD = Юлианская дата

 

HSys = Система домов (на пример P = плацидус, K- кох и т.д. подробней см. документацию к ШЭ).

 

P Плацидус

K Кох

O Порфирий

R Региомонтанус

C Кампанус

A or E Равнодомная от Asc

V Vehlow equal (Asc. in middle of house 1) (? Трудности перевода, возможно: Равнодомная, Asc в середине 1-го дома)

X Меридианная

H Горизонтальная система

T Polich/Page (“topocentric” system)

B Алькабитус

G Гукленовы сектора

M Моринус

 

 

 

CType = Тип эфемерид и зодиака

      Где: 1-я буква вид эфемерид, а остальная часть слова - вид зодиака.

      CType = Def   - Зодиак и эфемериды по умолчанию (эфемериды Мошьера + тропический зодиак)

 

      CType = STrop - Тропический зодиак, Швейцарские эфемериды

      CType = SSid  - Сидерический зодиак, Швейцарские эфемериды

      CType = SHel  - Тропический зодиак, гелиоцентрические координаты, Швейцарские эфемериды

      CType = SXYZ  - Прямоугольные X,Y,Z координаты, Швейцарские эфемериды

      CType = SRad  - Тропический зодиак (кажется...) , радианы, Швейцарские эфемериды

      CType = SEq   - Экваториальные координаты, градусы, Швейцарские эфемериды

      CType = SEqR  - Экваториальные координаты, радианы, Швейцарские эфемериды

 

      CType = MTrop - Тропический зодиак,  эфемериды Мошьера

      CType = MSid  - Сидерический зодиак,  эфемериды Мошьера

      CType = MHel  - Тропические зодиак, гелиоцентрические координаты,  эфемериды Мошьера

      CType = MXYZ  - Прямоугольные X,Y,Z координаты,  эфемериды Мошьера

      CType = MRad  - Тропический зодиак (кажется...) , радианы,  эфемериды Мошьера

      CType = MEq   - Экваториальные координаты, градусы,  эфемериды Мошьера

      CType = MEqR  - Экваториальные координаты, радианы,  эфемериды Мошьера

 

      CType = JTrop - Тропический зодиак, JPL эфемериды (по умолчанию DE406)

      CType = JSid  - Сидерический зодиак,  JPL эфемериды (по умолчанию DE406)

      CType = JHel  - Тропические зодиак, гелиоцентрические координаты,  JPL эфемериды (по умолчанию DE406)

      CType = JXYZ  - Прямоугольные X,Y,Z координаты,  JPL эфемериды (по умолчанию DE406)

      CType = JRad  - Тропический зодиак (кажется...) , радианы,   JPL эфемериды (по умолчанию DE406)

      CType = JEq   - Экваториальные координаты, градусы,   JPL эфемериды (по умолчанию DE406)

      CType = JEqR  - Экваториальные координаты, радианы,  JPL эфемериды (по умолчанию DE406)

 

 

 

csp - Вершина дома или другой объект, зависящий от раскладки домов (подробней см. документацию к ШЭ).

 

Csp – Куспид дома

1...12 это дома с 1 по 12

13 - Asc

14 - MC

15 – ARMC

16 – Вертекс

17 – Экватариальный Asc

18 - CoAsc (Кох)

19 - CoAsc (Мункасей)

20 – Полярный Asc

 

 

 

LonH - Географическая Долгота градусы

LonM - Географическая долгота минуты

 

LatH - Географическая Широта градусы

LatM - Географическая Широта минуты

 

 

PlHouse

 

 

PlHouse(ByVal JD As Double, ByVal pl As Double, ByVal HSys As Variant, ByVal CType As Variant, ByVal LonH As Double, ByVal LonM As Double, ByVal LatH As Double, ByVal LatM As Double)

 

 

Возвращает координаты планеты в доме

Параметры те же, что и у CHouse()

 

JD = Юлианская дата

 

HSys = Система домов (на пример P = плацидус, K- кох и т.д. подробней см. документацию к ШЭ).

 

Pl = Номер планеты (др. объекта) в система ШЭ + дополнительные возможности от меня :)

      pl=0..20 = Солнце..Веста

      pl = 10001..бесконечность = номер астероида + 10000, а имя астероида по номеру можно  найти при помощи функции AsterNAme() )

 

      Так же см. функцию PlName() для нахождения имени планеты по номеру

 

CType = Тип эфемерид и зодиака

 

 

 

CType = Тип эфемерид и зодиака

      Где: 1-я буква вид эфемерид, а остальная часть слова - вид зодиака.

      CType = Def   - Зодиак и эфемериды по умолчанию (эфемериды Мошьера + тропический зодиак)

 

      CType = STrop - Тропический зодиак, Швейцарские эфемериды

      CType = SSid  - Сидерический зодиак, Швейцарские эфемериды

      CType = SHel  - Тропический зодиак, гелиоцентрические координаты, Швейцарские эфемериды

      CType = SXYZ  - Прямоугольные X,Y,Z координаты, Швейцарские эфемериды

      CType = SRad  - Тропический зодиак (кажется...) , радианы, Швейцарские эфемериды

      CType = SEq   - Экваториальные координаты, градусы, Швейцарские эфемериды

      CType = SEqR  - Экваториальные координаты, радианы, Швейцарские эфемериды

 

      CType = MTrop - Тропический зодиак,  эфемериды Мошьера

      CType = MSid  - Сидерический зодиак,  эфемериды Мошьера

      CType = MHel  - Тропические зодиак, гелиоцентрические координаты,  эфемериды Мошьера

      CType = MXYZ  - Прямоугольные X,Y,Z координаты,  эфемериды Мошьера

      CType = MRad  - Тропический зодиак (кажется...) , радианы,  эфемериды Мошьера

      CType = MEq   - Экваториальные координаты, градусы,  эфемериды Мошьера

      CType = MEqR  - Экваториальные координаты, радианы,  эфемериды Мошьера

 

      CType = JTrop - Тропический зодиак, JPL эфемериды (по умолчанию DE406)

      CType = JSid  - Сидерический зодиак,  JPL эфемериды (по умолчанию DE406)

      CType = JHel  - Тропические зодиак, гелиоцентрические координаты,  JPL эфемериды (по умолчанию DE406)

      CType = JXYZ  - Прямоугольные X,Y,Z координаты,  JPL эфемериды (по умолчанию DE406)

      CType = JRad  - Тропический зодиак (кажется...) , радианы,   JPL эфемериды (по умолчанию DE406)

      CType = JEq   - Экваториальные координаты, градусы,   JPL эфемериды (по умолчанию DE406)

      CType = JEqR  - Экваториальные координаты, радианы,  JPL эфемериды (по умолчанию DE406)

 

 

LonH - Географическая Долгота градусы

LonM - Географическая долгота минуты

 

LatH - Географическая Широта градусы

LatM - Географическая Широта минуты

 

 

 

PlAsc

 

PlAsc(ByVal JD As Double, HSys As Variant, CType, csp, LonH, LonM, LatH, LatM, pl)

 

Возвращает координату планеты в системе относительных домов.

На пример, если в параметр csp поставить 1, то функция вернет координату планеты в раскладке, где за первый дом принят Asc (т.е. обычная раскладка домов), а вот если поставить 2, то функция вернет координату планеты в раскладке, где за Asc принята вершина 2 дома и т.д.

 

JD = Юлианская дата

 

HSys = Система домов (на пример P = плацидус, K- кох и т.д. подробней см. документацию к ШЭ).

 

Pl = Номер планеты (др. объекта) в система ШЭ + дополнительные возможности от меня :)

      pl=0..20 = Солнце..Веста

      pl = 10001..бесконечность = номер астероида + 10000, а имя астероида по номеру можно

      найти при помощи функции AsterNAme() )

 

      Так же см. функцию PlName() для нахождения имени планеты по номеру,

CType = Тип эфемерид и зодиака

 

 

 

CType = Тип эфемерид и зодиака

      Где: 1-я буква вид эфемерид, а остальная часть слова - вид зодиака.

      CType = Def   - Зодиак и эфемериды по умолчанию (эфемериды Мошьера + тропический зодиак)

 

      CType = STrop - Тропический зодиак, Швейцарские эфемериды

      CType = SSid  - Сидерический зодиак, Швейцарские эфемериды

      CType = SHel  - Тропический зодиак, гелиоцентрические координаты, Швейцарские эфемериды

      CType = SXYZ  - Прямоугольные X,Y,Z координаты, Швейцарские эфемериды

      CType = SRad  - Тропический зодиак (кажется...) , радианы, Швейцарские эфемериды

      CType = SEq   - Экваториальные координаты, градусы, Швейцарские эфемериды

      CType = SEqR  - Экваториальные координаты, радианы, Швейцарские эфемериды

 

      CType = MTrop - Тропический зодиак,  эфемериды Мошьера

      CType = MSid  - Сидерический зодиак,  эфемериды Мошьера

      CType = MHel  - Тропические зодиак, гелиоцентрические координаты,  эфемериды Мошьера

      CType = MXYZ  - Прямоугольные X,Y,Z координаты,  эфемериды Мошьера

      CType = MRad  - Тропический зодиак (кажется...) , радианы,  эфемериды Мошьера

      CType = MEq   - Экваториальные координаты, градусы,  эфемериды Мошьера

      CType = MEqR  - Экваториальные координаты, радианы,  эфемериды Мошьера

 

      CType = JTrop - Тропический зодиак, JPL эфемериды (по умолчанию DE406)

      CType = JSid  - Сидерический зодиак,  JPL эфемериды (по умолчанию DE406)

      CType = JHel  - Тропические зодиак, гелиоцентрические координаты,  JPL эфемериды (по умолчанию DE406)

      CType = JXYZ  - Прямоугольные X,Y,Z координаты,  JPL эфемериды (по умолчанию DE406)

      CType = JRad  - Тропический зодиак (кажется...) , радианы,   JPL эфемериды (по умолчанию DE406)

      CType = JEq   - Экваториальные координаты, градусы,   JPL эфемериды (по умолчанию DE406)

      CType = JEqR  - Экваториальные координаты, радианы,  JPL эфемериды (по умолчанию DE406)

 

 

LonH - Географическая Долгота градусы

LonM - Географическая долгота минуты

 

LatH - Географическая Широта градусы

LatM - Географическая Широта минуты

 

 

 

aps_nods

 

aps_nods(ByVal JD As Double, ByVal pl As Variant, ByVal CType As Variant, ByVal XType As Variant, ByVal XPos As Variant, ByVal method As Variant)

 

Возвращает координаты планетных узлов, а так же апоцентров/перицентров орбит объектов Солнечной Системы

 

JD = Юлианская дата

 

Pl = Номер планеты (др. объекта) в система ШЭ + дополнительные возможности от меня :)

      pl=0..20 = Солнце..Веста

      pl = 99990..100018 вершина дома в Плацидусе (для других систем домов

            см. функции PlHouse() и PlAsc() )

      pl = 10001..бесконечность = номер астероида + 10000 (астероид по номеру

 

 

XType - Тип объекта (от 0 до 3). Где:

       XType = 0  - Восходящий узел планеты/астероида

       XType = 1  - Нисходящий узел планеты/астероида

       XType = 2  - Перецентр орбиты планеты/астероида

       XType = 3  - Апоцентр орбиты планеты/астероида

XPos - Тип координаты

       XPos =  1 = Широта (или X координата)

       XPos =  2 = Долгота (или Y координата)

       XPos =  3 = Расстояние от Земли (в геоцентре) или Солнца (в гелиоцентре) (или Z координата)

       XPos =  4 = Угловая скорость / сек по широте

       XPos =  5 = Угловая скорость / сек по долготе

       XPos =  6 = Угловая скорость / сек по расстоянию

 

CType = Тип эфемерид и зодиака

      Где: 1-я буква вид эфемерид, а остальная часть слова - вид зодиака.

      CType = Def   - Зодиак и эфемериды по умолчанию (эфемериды Мошьера + тропический зодиак)

 

      CType = STrop - Тропический зодиак, Швейцарские эфемериды

      CType = SSid  - Сидерический зодиак, Швейцарские эфемериды

      CType = SHel  - Тропический зодиак, гелиоцентрические координаты, Швейцарские эфемериды

      CType = SXYZ  - Прямоугольные X,Y,Z координаты, Швейцарские эфемериды

      CType = SRad  - Тропический зодиак (кажется...) , радианы, Швейцарские эфемериды

      CType = SEq   - Экваториальные координаты, градусы, Швейцарские эфемериды

      CType = SEqR  - Экваториальные координаты, радианы, Швейцарские эфемериды

 

      CType = MTrop - Тропический зодиак,  эфемериды Мошьера

      CType = MSid  - Сидерический зодиак,  эфемериды Мошьера

      CType = MHel  - Тропические зодиак, гелиоцентрические координаты,  эфемериды Мошьера

      CType = MXYZ  - Прямоугольные X,Y,Z координаты,  эфемериды Мошьера

      CType = MRad  - Тропический зодиак (кажется...) , радианы,  эфемериды Мошьера

      CType = MEq   - Экваториальные координаты, градусы,  эфемериды Мошьера

      CType = MEqR  - Экваториальные координаты, радианы,  эфемериды Мошьера

 

      CType = JTrop - Тропический зодиак, JPL эфемериды (по умолчанию DE406)

      CType = JSid  - Сидерический зодиак,  JPL эфемериды (по умолчанию DE406)

      CType = JHel  - Тропические зодиак, гелиоцентрические координаты,  JPL эфемериды (по умолчанию DE406)

      CType = JXYZ  - Прямоугольные X,Y,Z координаты,  JPL эфемериды (по умолчанию DE406)

      CType = JRad  - Тропический зодиак (кажется...) , радианы,   JPL эфемериды (по умолчанию DE406)

      CType = JEq   - Экваториальные координаты, градусы,   JPL эфемериды (по умолчанию DE406)

      CType = JEqR  - Экваториальные координаты, радианы,  JPL эфемериды (по умолчанию DE406)

 

method - Методика рассчета узла (от 1 до 3) (долго объяснять, что сие означает, читайте инструкцию к ШЭ или   просто ставьте 1, - не ошибетесь)

 

 

 

 

 

ASPECT

 

ASPECT(x, y)

 

Возвращает угловое расстояние между объектами x и y

в диапазоне от 0 до 180 градусов

 

 

ASPECT2

 

ASPECT2(x, y)

 

Возвращает угловое расстояние между объектами x и y

в диапазане от -180 до 180 градусов

см. так же функцию StartPoint()

 

 

StartPoint

 

StartPoint(SPoint, pl)

 

Возвращает угловое расстояние между точками SPoint и pl

в диапазане от 0 до 360 градусов.

Иными словами, - возвращает долготу точки pl в зодиаке, в котором за нулевой градус принята точка SPoint.

ИМХО, очень важная функция, полезная во многих приложениях астрологии!!!

На пример, если мы за SPoint возьмем координату Восходящего узла

а за pl любую планету, то получим её координату в Драконическом зодиаке

Если за SPoint приймем Асц, - то получим раскладку домов (правда равнодомную)

Если за SPoint принять Луну, а за pl Солнце, и умножить это на 100/360  то получим

фазу Луны в процентах.

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

 

 

 

 

FixY

 

FixY(ByVal x As Double, ByVal y As Double)

 

Сохраняет координату планеты x в диапазоне y

 

 

Harmonica

 

Harmonica(ByVal pl As Double, ByVal har As Double)

 

Возвращает координату планеты pl в гармонике № har

2-я гармоника соответствует кругу 180 гр в ГША

4-я гармоника соответствует кругу 90 гр в ГША и т.д.

 

Пример:

Harmonica(138,0711, 4) = 192,2844905 (4-я гармоника = 90 диск)

 

MoonDayDjotish

 

MoonDayDjotish(Moon, sun)

 

Возвращает лунный день по джотишу (от 0 до 29)

На вход нужны долготы Солнца и Луны

 

 

ZodSec

 

 

ZodSec(ByVal sig As Double, ByVal sectors As Double)

 

Возвращает сектор (знак) координаты sig в системе разбитой на sectors секторов

Поясню:

Если мы в параметр sectors поставим 12, то получим обычный номер знака зодиака, в котором находится координата sig.

Если мы разобьем зодиакальный круг на 36 частей по 10 градусов (на декады), то получим номер декады в котором находится объект sig  (sectors = 36).

Если мы разобьем зодиак на 27 частей (накшатр), то получим номер накшатры по джотишу (sectors = 27)

 

Если планета имеет долготу 138 градусов, то в 12-ти секторной системе (т.е. обычный зодиак) номер её сектора будет 5 (т.е. знак Льва). ZodSec (138, 12) = 5

 

В 36 секторной системе (т.е. делим зодиак на декады) ZodSec (138, 36) = 27 (27 декада)

 

Или, на пример, мы можем поделить зодиак на 27 накшатр ZodSec (138, 27) = 21 (накшатра Ашлеша по джотишу).

 

 

 

GetDMS

 

GetDMS(ByVal Deg As Double, Optional ByVal par As Variant) As String

 

Переводит координату Deg из обсолютной долготы (десятичной нотации) в градусы, минуты, секнуды

par = 0 (или пусто) = выводит градусы, минуты секунды в текстовом виде (пример: 269° 51' 37,4093'' )

par = 1 (или grad) = выводит только градусы  в числовом виде

par = 2 (или min) = выводит только минуты  в числовом виде

par = 3 (или sec) = выводит только секунды  в числовом виде

 

 

 

DegInSign

 

DegInSign(x As Double)

 

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

т.е. берет абсолютную координату, и выводит градус внутри знака зодиака.

 

На пример: DegInSign (269,8) = 29,8 (29 градус Стрельца)

 

 

DegInSign1

 

DegInSign1(x As Double) As String

 

Возвращает градус координаты x в нотации градусы/минуты/секунды внутри знанка, который она занимает, на вход подать абсолютную координату

т.е. делает то же самое, что и DegInSign, только в формате градус, минута, секунда (пример: 029° 51' 37,4093'' )

 

 

znname

 

znname(n As Double)

 

Возвращает первые 3 буквы названия знака зодиака, в котором находится координата n

На пример znname(188) = лев

 

 

hsname

 

hsname(n As Double)

 

Возвращает римское число номера дома в котором находится координата n

 

т.е. берет абсолютную долготу и выдает номер дома римскими цифрами (можно использовать совместно с функцией PlAsc),

На пример: hsname(228) =VII

 

 

NAKSATRA

 

NAKSATRA(LPlan As Double) As Double

 

Возвращает номер накшатры по джотишу, в котором находится координата LPlan

 

Пример: NAKSATRA(138)=21

 

 

calcayan

 

calcayan(ByVal JD As Double) As Double

 

Возвращает аянасу Лахари на заданный юлианский день (см. так же функцию ШЭ swe_set_sid_mode() )

 

Пример: Calcayan(2444462,082) = -23,5842409

 

 

 

plname

 

plname(n) As String

 

Возвращает имя планеты по номеру

 

rad

 

rad(f As Double) As Double

 

Переводит градусы в радианы (нужно для VectorH)

 

VectorH

 

VectorH(a, b, n As Integer, par As Integer) As Double

 

Функция для расчета параметров векторного гороскопа (кстати, разработка вашего покорного слуги :) )

Выводит "центр тяжести" гороскопа и длину вектора центра тяжести

 

Подробней о том, что такое векторный гороскоп читайте тут:

http://lordwilex.ru/?p=40

и тут:

http://forum.argo-school.ru/showthread.php?t=1885

 

Входные параметры:

a - Массив - столбец с эклиптическими (или асцендентальными) долготами объектов

b - массив-столбец весовых коэффициентов объектов (если вы не знаете

что это такое, читайте мою статью, которая скоро поспеет или можете просто

просто заполнить его единицами или орбисами планет, которые вы используете в

своей практике.

n - количество объектов, которые вы задали в массиве a или b

par - Форма вывода функции

Если поставить в par единицу и больше - выдаст длину вектора центра тяжести

Если поставить в par ноль - выдаст эклиптическую долготу

центра тяжести гороскопа/космограмы

 

 

parans

 

parans(JD As Double, pl, CType, LonH, LonM, LatH, LatM, Alt As Double, rsmi) As Double

 

Расчет паранов планет (восход, верхняя кульминация, заход, нижняя кульминация)

 

Выводит юлианскую дату времени восхода/захода, а так же верхней/нижней кульминаций (Внимание!!! Дата выводится по гринвичу!!! Чтобы учесть поправку нужно прибавить к этой дате (1/24)*поправка )

 

JD - Ближайшая Юлианская дата до ожидаемого времени (захода/восхода/кульминации)

pl - Номер планеты в системе швейцарских эфемерид (см. функцию plc).

 

CType - Тип зодиака (STrop, SSid и.т.д.), (см. функцию plc).

 

LonH и LonM - Географическая широта места наблюдения (градусы и минуты)

LatH и LatM - Географическая долгота места наблюдения (градусы и минуты)

Alt - Высота над уровнем моря (думаю, можно поставить 0)

rmsi - Что выводить? Одна из 4-х цифр:

       1 - время восхода планеты

       2 - время захода

       3 - время верхней кульминации

       4- время нижней кульминации

 

Замечние. Хочется обратить внимание, что функция выдает результат из расчета, что атмосферное давление 800 мм. ртутного столба, а температура места наблюдения - 15 градусов цельсия.

Если вы хотите изменить эти параметры замените их в переменных

 

atpress = 800

attemp = 15

 

внутри самой функции на то, что вам нужно.

 

 

parans2

 

parans2(JD As Double, pl, CType, LonH, LonM, LatH, LatM, Alt As Double, rsmi, ByVal t As Integer, popr As Double)

 

Выводит то же самое, что и функция parans, только не в виде юлианской даты, а в виде привычной нам грегорианской, а так же учитывает поправку на местное время :)))

 

parans2(JD, pl, CType, LonH, LonM, LatH, LatM, Alt, rsmi, t, popr)

 

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

 

Параметр t - выводит одну из частей григорианской даты (одна из 4- цифр: 1 - день, 2 - месяц, 3- год, 4- час, 5 - минута, 6 - секунда).

 

Параметр popr - Поправка к GMT (на пимер: +3, 3, -1.. и т.д.).

 

 

RulerNum

Public Function RulerNum(ByVal lon As Double, ByVal Style As String)

Возвращает номер планеты (в системе ШЭ), которая управляет знаком, в которой находится точка lon.

Для того, чтобы получить не номер, а имя объекта, есть функция RulerName()

Где:

 lon - долгота объекта (если поставить сюда куспид дома, то получим его управителя, если поставить долготу планеты, - получим её диспозитора)

Style - Система управителей:

   Class или 0 (по умолчанию) - классическая система управителей по Птолемею

    (Овен-Марс, Телец-Венера, Близнецы-Меркурий, Рак-Луна, Лев-Солнце, Дева-Меркурий

     Весы-Венера, Скорпион-Марс, Стрелец-Юпитер, Козерог-Сатурн, Водолей-Сатурн,

     Рыбы-Юпитер)

    ClassF или 1 Вместо номера управителя по Птолемею, возвращает номер планеты, которая

     в этом знаке в изгнании.

     Moddern или 2 Система управителей астрологии модерна.

    (Овен-Марс, Телец-Венера, Близнецы-Меркурий, Рак-Луна, Лев-Солнце, Дева-Меркурий

     Весы-Венера, Скорпион-Плутон, Стрелец-Юпитер, Козерог-Сатурн, Водолей-Уран,

     Рыбы-Нептун)

     ModernF или 3 Вместо номера управителя по модерну, возвращает номер планеты, которая

    в этом знаке в изгнании.

     Если вам нужна другая система управителей, отредактируйте переменные вручную

 

RulerName

RulerName(ByVal lon As Double, ByVal Style As String) As String

 

' Возвращает долготу диспозитора или долготу планеты, которая в этом знаке в изгнании

' Парраметры те же, что и в функции PLC, кроме параметра Style

' Использует функции PLC и RulerNum

'

' Style - Система управителей:

'

'     Class или 0 (по умолчанию) - классическая система управителей по Птолемею

'     (Овен-Марс, Телец-Венера, Близнецы-Меркурий, Рак-Луна, Лев-Солнце, Дева-Меркурий

'      Весы-Венера, Скорпион-Марс, Стрелец-Юпитер, Козерог-Сатурн, Водолей-Сатурн,

'      Рыбы-Юпитер)

'

'      ClassF или 1 Вместо номера управителя по Птолемею, возвращает номер планеты, которая

'      в этом знаке в изгнании.

'

'      Moddern или 2 Система управителей астрологии модерна.

'     (Овен-Марс, Телец-Венера, Близнецы-Меркурий, Рак-Луна, Лев-Солнце, Дева-Меркурий

'      Весы-Венера, Скорпион-Плутон, Стрелец-Юпитер, Козерог-Сатурн, Водолей-Уран,

'      Рыбы-Нептун)

'

'      ModernF или 3 Вместо номера управителя по модерну, возвращает номер планеты, которая

'      в этом знаке в изгнании.

 

Ruler

Ruler(ByVal JD As Double, ByVal Point As Variant, ByVal CType, Style As String) As Double

 

' Возвращает долготу управителя произвольной точки эклиптики или долготу планеты, которая в этом месте в изгнании

' Парраметры те же, что и в функции PLC, кроме параметра Style, и парамметра Point

'

'

' Point - Любая произвольная точка эклиптики. На пример, если мы введем 121 градус (2й градус Льва),

'         то функция выдаст долготу Солнца (потому что Солнце управляет Львом)

'

' Style - Система управителей:

'

'     Class или 0 (по умолчанию) - классическая система управителей по Птолемею

'     (Овен-Марс, Телец-Венера, Близнецы-Меркурий, Рак-Луна, Лев-Солнце, Дева-Меркурий

'      Весы-Венера, Скорпион-Марс, Стрелец-Юпитер, Козерог-Сатурн, Водолей-Сатурн,

'      Рыбы-Юпитер)

'

'      ClassF или 1 Вместо номера управителя по Птолемею, возвращает номер планеты, которая

'      в этом знаке в изгнании.

'

'      Moddern или 2 Система управителей астрологии модерна.

'     (Овен-Марс, Телец-Венера, Близнецы-Меркурий, Рак-Луна, Лев-Солнце, Дева-Меркурий

'      Весы-Венера, Скорпион-Плутон, Стрелец-Юпитер, Козерог-Сатурн, Водолей-Уран,

'      Рыбы-Нептун)

'

'      ModernF или 3 Вместо номера управителя по модерну, возвращает номер планеты, которая

'      в этом знаке в изгнании.

'

 

 

RulerHouseInHouse

RulerHouseInHouse(ByVal JD As Double, ByVal csp As Integer, ByVal HSys As Variant, ByVal CType As Variant, ByVal LonH As Double, ByVal LonM As Double, ByVal LatH As Double, ByVal LatM As Double, Style As String)

 

' Возвращает номер дома, в котором находится управитель дома № csp

' Парраметры те же, что и в функции PlHouse, кроме параметра Style

' Style - Система управителей:

'

'     Class или 0 (по умолчанию) - классическая система управителей по Птолемею

'     (Овен-Марс, Телец-Венера, Близнецы-Меркурий, Рак-Луна, Лев-Солнце, Дева-Меркурий

'      Весы-Венера, Скорпион-Марс, Стрелец-Юпитер, Козерог-Сатурн, Водолей-Сатурн,

'      Рыбы-Юпитер)

'

'      ClassF или 1 Вместо номера управителя по Птолемею, возвращает номер планеты, которая

'      в этом знаке в изгнании.

'

'      Moddern или 2 Система управителей астрологии модерна.

'     (Овен-Марс, Телец-Венера, Близнецы-Меркурий, Рак-Луна, Лев-Солнце, Дева-Меркурий

'      Весы-Венера, Скорпион-Плутон, Стрелец-Юпитер, Козерог-Сатурн, Водолей-Уран,

'      Рыбы-Нептун)

'

'      ModernF или 3 Вместо номера управителя по модерну, возвращает номер планеты, которая

'      в этом знаке в изгнании.

'

 

 

DayHight

 

' Возвращает 0 если карта ночная и 1, если карта дневная

 

DayHight(ByVal JD As Double, ByVal LonH As Double, ByVal LonM As Double, ByVal LatH As Double, ByVal LatM As Double) As Integer

 

jdayLT

jdayLT(year As Integer, month As Integer, day As Integer, hour As Integer, _

 

' Тоже, что и jday, толкьо на входе дата/время не по гринвичу, а местное.

' Где:

' PoprHour, PoprMin и PoprSec разница местного времени с гринвичем

 

Triplitsitet

 

Triplitsitet(ByVal JD As Double, ByVal Point As Double, ByVal LonH As Double, ByVal LonM As Double, ByVal LatH As Double, ByVal LatM As Double) As Integer

 

' Возвращает номер управителя по триплицитету зодиакальной координаты Point,

' в зависсимости от того, дневная карта или ночная. Управители триплицитета по Птолемею.

' Если вам нужно получить имя, а не номер управителя по триплицитету, см. функцию TriplitsitetName()

 

TriplitsitetName

TriplitsitetName(ByVal JD As Double, ByVal Point As Double, ByVal LonH As Double, ByVal LonM As Double, ByVal LatH As Double, ByVal LatM As Double) As String

 

' Возвращает Имя управителя по триплицитету зодиакальной координаты Point,

' в зависсимости от того, дневная карта или ночная. Управители триплицитета по Птолемею.

 

Term

Term(ByVal Point As Double) As Integer

' Возвращает номер планеты- управителя термом

 

 

TermName

' Возвращает имя планеты - управителя терма

 

Midp

' Возвращает среднюю точку между A и B

 

MidpHar

MidpHar(ByVal A As Double, ByVal B As Double, ByVal har As Double) As Double

 

' Возвращает среднюю точку между A и B в заданной гармонике в градации 0-360

' A и B задаються в абсолютных эклиптических координатах

' На пример, пусть Солнце находиться в 135 градусе, а Луна в 138

' Найдем средню точку между ними в 4й гармонике (90 круг в ГША)

' MidpHar(135, 138, 4)=186

' Для получения координаты в том виде, как это используется астрологических программах

' для работы с ГША (т.е. в градации 0-180, 0-90 и т.д.) воспользуйтесь функцией MidpHarN

 

MidpHarN

MidpHarN(ByVal A As Double, ByVal B As Double, ByVal har As Double) As Double

 

' Возвращает среднюю точку между A и B в заданной гармонике в градации 0-360, деленной на номер гармоники

' A и B задаються в абсолютных эклиптических координатах

' На пример, пусть Солнце находиться в 135 градусе, а Луна в 138

' Найдем средню точку между ними в 4й гармонике (90 круг в ГША)

' MidpHarN(135, 138, 4)=46.5

'

' Для того, чтобы проверить картину вида: A/B=C/D, просто вычислите:

' MidpHarN(A,B) и MidpHarN(C,D), если разница меньше 1 градуса, значит картина есть (орб. 1 градус)

 

AandBsubC

AandBsubC(ByVal A As Double, ByVal B As Double, ByVal C As Double) As Double

 

' Вычисляет точку вида A+(B-C) в круге 360

' Для перевода результата, на пример, в 90 круг, воспользуйтесь функцией Harmonica, а для того,

' чтобы перевести то, что получилось в градацию 0-90 и т.д.,  разделите результат на номер гармоники

' Для того, чтобы проверить картину вида X=A+(B-C), просто сравните результат этой функции с X,

' если разница меньше 1 градуса (для орба 1 град), значит картина есть.

 

AandBdivC

AandBdivC(ByVal A As Double, ByVal B As Double, ByVal C As Double) As Double

 

' Вычисляет точку вида A+B/C в круге 360

' Для перевода результата, на пример, в 90 круг, воспользуйтесь функцией Harmonica, а для того,

' чтобы перевести то, что получилось в градацию 0-90 и т.д.,  разделите результат на номер го=армоники

'

' Для того, чтобы проверить картину вида X=A+B/C, просто сравните результат этой функции с X,

' если разница меньше 1 градуса (для орба 1 град), значит картина есть.

 

AandB

AandB(ByVal A As Double, ByVal B As Double) As Double

 

' Вычисляет точку вида A+B

' Для перевода результата, на пример, в 90 круг, воспользуйтесь функцией Harmonica, а для того,

' чтобы перевести то, что получилось в градацию 0-90 и т.д.,  разделите результат на номер го=армоники

'

' Для того, чтобы проверить картину вида A+B=C+D, просто:

' Вычислите AandB(A,B) и AandB(C,D) , затем сравните результат

' если разница меньше 1 градуса (для орба 1 град), значит картина есть.

 

Grebiy

Grebiy(ByVal A As Double, ByVal B As Double, ByVal C As Double, ByVal JD As Double, ByVal LonH As Double, ByVal LonM As Double, ByVal LatH As Double, ByVal LatM As Double) As Integer

 

' Вычисляет жребий (формула вида A=B-C для дневной карты и A=C-B для ночной карты)

' Для вычисления жребия без учтета дневной/ночной карты просто воспользуйтесь функцией AandBsubC

'

' На пример, формула Колеса фортуны для дневного рождения Асц+Солнце-Луна (A+B-C), для ночного Асц+Луна-Солнце (A+C-B)

 

 

 

 

С уважением, Виталий Иванченко

Автор проекта Швейцарские эфемериды по – русски.

Официальный сайт проекта:  http://sweru.lordwilex.ru

Официальный форум проекта:  http://forum.argo-school.ru/showthread.php?t=904

Скачать последнюю версию: http://sweru.lordwilex.ru/sweru.zip

lordwilex@lordwilex.ru

ICQ: 26-666-71