Вернуться   Астрологические форумы ARGO > Делимся информацией. Тестируем астрологию. Прогнозируем. > Астрологические программы

Ответ
 
Опции темы Опции просмотра
Старый 19.02.2009, 05:45   #61
LordWilex
В отпуске
 
Аватар для LordWilex
 
Регистрация: 01.06.2008
Адрес: Таганрог
Сообщения: 28,983
LordWilex репутация выше +1000LordWilex репутация выше +1000LordWilex репутация выше +1000LordWilex репутация выше +1000LordWilex репутация выше +1000LordWilex репутация выше +1000LordWilex репутация выше +1000LordWilex репутация выше +1000
По умолчанию

ну это это кажется старые данные, этот код остался от первых версий ШЭ, когда у них было мало астероидов и больше не планировали, попробуйте его поставить в 200000, в swedll32.dll примерно так и будет прописанно, должно работать раз эфемериды астероидов с такими номерами в системе есть.

я то больше чем с 2000 пока не работал и не предвидел эту проблему..
LordWilex вне форума   Ответить с цитированием
Старый 19.02.2009, 10:13   #62
Алексей
Собеседник
 
Аватар для Алексей
 
Регистрация: 01.11.2007
Сообщения: 8,521
Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000
По умолчанию

LordWilex, можете ли Вы сделать процедуру для расчета азимута и высоты планеты относительно горизонта?
Алексей вне форума   Ответить с цитированием
Старый 19.02.2009, 10:19   #63
solar
Собеседник
 
Аватар для solar
 
Регистрация: 02.02.2009
Сообщения: 61
solar репутация выше +10
По умолчанию

Цитата:
ну это это кажется старые данные, этот код остался от первых версий ШЭ, когда у них было мало астероидов и больше не планировали, попробуйте его поставить в 200000, в swedll32.dll примерно так и будет прописанно, должно работать раз эфемериды астероидов с такими номерами в системе есть.

Так тип integer только до 32787. Дальше Long. API функция принимает только int. Номер Eris - 136199 уже больше и вызов дает ошибку. Что-то там недосказано. Но у Зайцева ведь все подключается, может для Delphy есть отличия?
solar вне форума   Ответить с цитированием
Старый 20.02.2009, 02:16   #64
LordWilex
В отпуске
 
Аватар для LordWilex
 
Регистрация: 01.06.2008
Адрес: Таганрог
Сообщения: 28,983
LordWilex репутация выше +1000LordWilex репутация выше +1000LordWilex репутация выше +1000LordWilex репутация выше +1000LordWilex репутация выше +1000LordWilex репутация выше +1000LordWilex репутация выше +1000LordWilex репутация выше +1000
По умолчанию

Цитата:
Сообщение от Алексей
LordWilex, можете ли Вы сделать процедуру для расчета азимута и высоты планеты относительно горизонта?
Да это кажется уже встроенно в ШЭ, сделаем!
Просто нужно будет кое что добавиить в функцию PLC ..

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

Там в ШЭ еще есть много возможностей, которые не дошли руки включить...

Цитата:
Сообщение от solar
Так тип integer только до 32787. Дальше Long. API функция принимает только int. Номер Eris - 136199 уже больше и вызов дает ошибку. Что-то там недосказано. Но у Зайцева ведь все подключается, может для Delphy есть отличия?
Упсс... ну как говориться, если вас съели, то у вас остается только 2 выхода...
Тогда остается взять исходники, поменять int на long и перекомпилить dll'ку ... только что-то мне подсказывает, что это повлечет за собой еще кучу ошибок...
Вообще на BCB мне удавалось только один раз это дело скомпилить и то после долгой возни, а с GCC я вообще не дружу ((
LordWilex вне форума   Ответить с цитированием
Старый 20.02.2009, 07:04   #65
Алексей
Собеседник
 
Аватар для Алексей
 
Регистрация: 01.11.2007
Сообщения: 8,521
Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000
По умолчанию

Цитата:
Только я надеюсь вам не срочно это нужно?
Можете не спешить. :) Сделаете когда у Вас будут время, силы и желание.

С наилучшими пожеланиями!!!
Алексей вне форума   Ответить с цитированием
Старый 21.02.2009, 03:44   #66
solar
Собеседник
 
Аватар для solar
 
Регистрация: 02.02.2009
Сообщения: 61
solar репутация выше +10
По умолчанию

Ну вот. Подтверждаю невозможность подключения объектов с номером более 32767 (как это описано в ftp://ftp.astro.ch/pub/swisseph/doc/swephprg.doc )
для API VB. Прогнал весь цикл от 1 до 32767 всех объектов. Те, эфемериды которых были скачаны и номера в этом диапазоне - просчитаны. Файл Eris не тронут и не просчитан. Значит все что далее 32767 неподключаемо. Нужен другой интерфейс.
Но дома и классику считает классно..
solar вне форума   Ответить с цитированием
Старый 22.02.2009, 01:47   #67
LordWilex
В отпуске
 
Аватар для LordWilex
 
Регистрация: 01.06.2008
Адрес: Таганрог
Сообщения: 28,983
LordWilex репутация выше +1000LordWilex репутация выше +1000LordWilex репутация выше +1000LordWilex репутация выше +1000LordWilex репутация выше +1000LordWilex репутация выше +1000LordWilex репутация выше +1000LordWilex репутация выше +1000
По умолчанию

Цитата:
Сообщение от Алексей
Можете не спешить. :) Сделаете когда у Вас будут время, силы и желание.
Постараюсь как можно скорей ))

Цитата:
Сообщение от solar
Ну вот. Подтверждаю невозможность подключения объектов с номером более 32767 (как это описано в ftp://ftp.astro.ch/pub/swisseph/doc/swephprg.doc )
для API VB. Прогнал весь цикл от 1 до 32767 всех объектов. Те, эфемериды которых были скачаны и номера в этом диапазоне - просчитаны. Файл Eris не тронут и не просчитан. Значит все что далее 32767 неподключаемо. Нужен другой интерфейс.
Но дома и классику считает классно..
Похоже проблема в самом VBA, видимо C и VBA по разному интерпретируют тип INT, в отличии от Delphi...

Думаю можно просто добавить функцию Swe_Calc_Plus в саму dll'ку, которая будет вызываться из VBA вместо Swe_Calc.
На пример, она будет брать не INT, а double, внутри себя перекодировать это дело в INT и вызывать родную Swe_Calc.

Конечно изврат... но всего 3 строчки кода получится, и внутри dll'ки типы не придется перекраивать...
LordWilex вне форума   Ответить с цитированием
Старый 23.02.2009, 09:46   #68
Sarge
Собеседник
 
Регистрация: 23.02.2009
Сообщения: 6
Sarge репутация выше +10
По умолчанию

Ребят, никак не могу создать новую тему,пишет что тема создана, хотя в ветке не появляется!! Профильного топика по техническим проблемам форума тоже нет!
Что делать???
Sarge вне форума   Ответить с цитированием
Старый 23.02.2009, 15:37   #69
Vladimir
Админ
 
Аватар для Vladimir
 
Регистрация: 01.06.2007
Адрес: Москва, Россия
Сообщения: 76,188
Vladimir репутация выше +2000Vladimir репутация выше +2000Vladimir репутация выше +2000Vladimir репутация выше +2000Vladimir репутация выше +2000Vladimir репутация выше +2000Vladimir репутация выше +2000Vladimir репутация выше +2000Vladimir репутация выше +2000Vladimir репутация выше +2000Vladimir репутация выше +2000
По умолчанию

Цитата:
Сообщение от Sarge
Ребят, никак не могу создать новую тему,пишет что тема создана, хотя в ветке не появляется!! Профильного топика по техническим проблемам форума тоже нет!
Что делать???
Есть такой топик:
Цитата:
2. Почему не видно написанное сообщение? И второе тоже, и третье написанное подряд, - также не видно.

Ничего не поделать, единственная надежная защита от спама - это премодерация на первое сообщение каждого нового пользователя. После проверки модератором первого сообщения (или первых сообщений, если их сразу несколько), новый пользователь может далее общаться на форуме без ограничений. Админ присутствуют на форуме часто, но не непрерывно, поэтому возможно пройдет немного времени.
http://forum.argo-school.ru/showthread.php?t=1523
Vladimir вне форума   Ответить с цитированием
Старый 25.02.2009, 19:38   #70
Sarge
Собеседник
 
Регистрация: 23.02.2009
Сообщения: 6
Sarge репутация выше +10
По умолчанию

Понятно, буду знать
Sarge вне форума   Ответить с цитированием
Старый 02.03.2009, 20:35   #71
Алексей
Собеседник
 
Аватар для Алексей
 
Регистрация: 01.11.2007
Сообщения: 8,521
Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000
По умолчанию

LordWilex, у меня к Вам такой вопрос. Можно ли использовать шв.эф. через досовский Бейсик? И если можно, то как?
Алексей вне форума   Ответить с цитированием
Старый 03.03.2009, 10:34   #72
LordWilex
В отпуске
 
Аватар для LordWilex
 
Регистрация: 01.06.2008
Адрес: Таганрог
Сообщения: 28,983
LordWilex репутация выше +1000LordWilex репутация выше +1000LordWilex репутация выше +1000LordWilex репутация выше +1000LordWilex репутация выше +1000LordWilex репутация выше +1000LordWilex репутация выше +1000LordWilex репутация выше +1000
По умолчанию

Цитата:
Сообщение от Алексей
LordWilex, у меня к Вам такой вопрос. Можно ли использовать шв.эф. через досовский Бейсик? И если можно, то как?

Теоретически можно, но на практике это такой геморой, что лучше не связываться, да и зачем в наш-то век винды?

Для этого можно, на пример, скомпилить в досовской версии Borland C++ из исходников obj файлы, а потом использовать это в басиковском экзешнике.
Но дело в том, что исходный код ШЭ скорей всего будет процентов на 70 не совместим с досовским C++ т.е. придется перекраивать под него половину кода, а это лучше удавиться :))

Но на сколько я понял, вас вообще интересует возможность использовать ШЭ в басике?

Тогда в принципе можно использовать swedll32.dll с любым байсиковским компилятором который заточен под винду. На пример, тот же Visual Basic for aplications, а еще лучше, есть такой Power basic (немножко подкорректировать деклорации функций, но зато потом все будет очень хорошо работать), делается это точно так же, как и в случае с эксель, только на выходе экзешник получится. В принципе тот байсик, что встроен в эксель мало чем отличается от самостоятельного, большая часть кода работает и там и там.
LordWilex вне форума   Ответить с цитированием
Старый 03.03.2009, 11:03   #73
Алексей
Собеседник
 
Аватар для Алексей
 
Регистрация: 01.11.2007
Сообщения: 8,521
Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000
По умолчанию

Цитата:
Теоретически можно, но на практике это такой геморой, что лучше не связываться, да и зачем в наш-то век винды?
Дело в том, что в досе скорость расчетов на порядок выше, чем в экселе. Например, в экселе может уйти 15-20 минут, а в досе минута-две. А виндовский экзешник будет работать быстрее?
Алексей вне форума   Ответить с цитированием
Старый 03.03.2009, 11:19   #74
Алексей
Собеседник
 
Аватар для Алексей
 
Регистрация: 01.11.2007
Сообщения: 8,521
Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000
По умолчанию

Хотя, думаю, что можно сделать БД с эфемеридами с шагом 0,1 суток и работать с ней уже в досе. :))
Алексей вне форума   Ответить с цитированием
Старый 03.03.2009, 13:39   #75
LordWilex
В отпуске
 
Аватар для LordWilex
 
Регистрация: 01.06.2008
Адрес: Таганрог
Сообщения: 28,983
LordWilex репутация выше +1000LordWilex репутация выше +1000LordWilex репутация выше +1000LordWilex репутация выше +1000LordWilex репутация выше +1000LordWilex репутация выше +1000LordWilex репутация выше +1000LordWilex репутация выше +1000
По умолчанию

Цитата:
Сообщение от Алексей
Дело в том, что в досе скорость расчетов на порядок выше, чем в экселе. Например, в экселе может уйти 15-20 минут, а в досе минута-две. А виндовский экзешник будет работать быстрее?

Хотя, думаю, что можно сделать БД с эфемеридами с шагом 0,1 суток и работать с ней уже в досе. :))

Да экзешник будет работать гораздо быстрей, дело в том, что экселевский басик это ведь интерпретатор, он раз в 10 медленей работает чем сама DLLка. Если тот же самый код скомпилировать в родной для процессора язык то и дело пойдет гораздо быстрей. :))

Как вариант можно зашить код функций в другую dllку, в которой будут производиться основные вычисления (в экселевском модуле оставить только их деклорации), из неё вызывать швейцарские эфемериды, а её саму чтоб вызывал эксель, но это тож достаточно геморно, хотя гораздо проще, чем подключить ШЭ к ДОСу и немного быстрей считать будет...

Что касается ДОСа, то иногда он работает немного быстрей за счет однозадачности, но это только кажется и только для некоторых задач, если, на пример, работать с текстовыми файлами эфемерид, как вы хотите и еще записывать результаты в другой файл, то это будет раз в 10 медленей любой аналогичной проги в винде и наверняка медленей эксели.
LordWilex вне форума   Ответить с цитированием
Старый 03.03.2009, 14:02   #76
Алексей
Собеседник
 
Аватар для Алексей
 
Регистрация: 01.11.2007
Сообщения: 8,521
Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000
По умолчанию

Хорошо, попробую и тот, и другой вариант. Посмотрю, где быстрее, потом сообщу. :)
Алексей вне форума   Ответить с цитированием
Старый 04.03.2009, 10:21   #77
Алексей
Собеседник
 
Аватар для Алексей
 
Регистрация: 01.11.2007
Сообщения: 8,521
Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000
По умолчанию

Досовский вариант (с заранее заготовленной БД эфемерид) тестировался на расчет эмпирического распределения:

Случайным образом формировалась выборка объемом 360 записей. В выборке подсчитывалось количество карт удовлетворяющих условию положения Солнца в Овне. Количество повторений этого опыта - 100 000 раз. В массиве шло накопление - сколько раз выпадало то или иное количество карт.

Затраченное время - 10 с половиной минут. Сколько это займет времени в экселе даже и говорить не хочется. :))) Посмотрим, что покажет экзешник.
Алексей вне форума   Ответить с цитированием
Старый 04.03.2009, 10:32   #78
Strijar
Собеседник
 
Аватар для Strijar
 
Регистрация: 02.07.2007
Адрес: Всеволожск, Россия
Сообщения: 518
Strijar репутация выше +350Strijar репутация выше +350Strijar репутация выше +350Strijar репутация выше +350
По умолчанию

Цитата:
Сообщение от Алексей
Затраченное время - 10 с половиной минут.

Попробовал в своем AstroZaur - получилось 11 мин. Только у меня анализировалось не количество попаданий Солнца, а колличество аспектов Солнце-Луна.
Strijar вне форума   Ответить с цитированием
Старый 04.03.2009, 10:54   #79
Алексей
Собеседник
 
Аватар для Алексей
 
Регистрация: 01.11.2007
Сообщения: 8,521
Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000Алексей репутация выше +2000
По умолчанию

Цитата:
Попробовал в своем AstroZaur - получилось 11 мин. Только у меня анализировалось не количество попаданий Солнца, а колличество аспектов Солнце-Луна.
Т.е. в вашей проге можно получать эмпирическое распределение? Или Вы тестировали как-то по-другому?
Алексей вне форума   Ответить с цитированием
Старый 04.03.2009, 14:35   #80
Strijar
Собеседник
 
Аватар для Strijar
 
Регистрация: 02.07.2007
Адрес: Всеволожск, Россия
Сообщения: 518
Strijar репутация выше +350Strijar репутация выше +350Strijar репутация выше +350Strijar репутация выше +350
По умолчанию

В моей проге можно получить все что угодно - там встроен скриптовый язык Lua - весьма быстрый!
Strijar вне форума   Ответить с цитированием
Ответ


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

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

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


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


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