Расчет времени циклов солнца

25.05.20

Разработка - Математика и алгоритмы

Расчет времени восхода, полдня, заката и прочих стадий движения светила на горизонте.

Скачать файлы

Наименование Файл Версия Размер
Расчет времени циклов солнца:
.epf 24,53Kb
0
.epf 24,53Kb Скачать

Представляю вашему вниманию обработку для расчета во времени некоторых положений солнца в течении дня. Входные параметры: дата, часовой пояс, долгота, широта. 

Алгоритмы и формулы для расчета были позаимствованы у Владимира Агафонкина из:
https://github.com/mourner/suncalc
Сам солнечный калькулятор:
https://habr.com/ru/post/90164/
https://habr.com/ru/post/127101/

Для наглядности (а также для сверки расчетов JavaScript, далее JS) оригинальные алгоритмы (почти без изменений) оставил в обработке. Некоторые формулы и промежуточные вычисления JS приводятся в левом поле: Расшифровка расчета (JS). Соответственно с права, тоже самое, но написанное ПЕРЕписанное на встроенном языке 1с.

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

Для трансляции кода JS использовал материалы статьи: 
//infostart.ru/public/398366/

Тестировал на БСП (2.1.2.34). Платформа 8.3.16.1148

Для чего это нужно? Сложно придумать пример использования в 1с-ных задачах. Возможно, в каких-нибудь вычислениях (табелей, графиков и проч. "зарплатных" моментов ), где длительность светового дня является одним и входных параметров.
Мне же понадобились время восхода, когда решил плотно заняться своим графиком утренних подъемов и продолжительности сна. Вставать рано мне очень тяжело :) По этому времени я коррелировал свои утренние подъемы и положение солнца во время пробуждения. Статистика занятная, но сильно в решение этого вопроса не продвинулся :) Положение солнца влияет на степень тяжести подъемов лишь косвенно, но влияние это совершенно точно есть.
Следующий этап моих заморочек - это сбор наиболее продуктивного времени в течении дня, и опять же корреляция этого времени с положением солнца на горизонте.
Другие возможные применения этих расчетов можно найти на хабре.

Чтобы решить эту задачу, не обязательно писать код на 1с, можно воспользоваться API-сервисами. Но чего-нибудь толкового на тот момент не нашел. 

P.S. На авторство не претендую, т.к. по сути транслировал код JS на встроенный язык 1с.
В обработке работают не все показатели, мне они не показались существенными, пока решил оставить так.
Заранее выражаю благодарность за конструктивные комментарии и пожелания. 

Восход солнца расцвет закат солнечный полдень время восхода заката JavaScript

См. также

Метод Дугласа-Пойкера для эффективного хранения метрик

Математика и алгоритмы Платформа 1C v8.2 Конфигурации 1cv8 Россия Абонемент ($m)

На написание данной работы меня вдохновила работа @glassman «Переход на ClickHouse для анализа метрик». Автор анализирует большой объем данных, много миллионов строк, и убедительно доказывает, что ClickHouse справляется лучше PostgreSQL. Я же покажу как можно сократить объем данных в 49.9 раз при этом: 1. Сохранить значения локальных экстремумов 2. Отклонения от реальных значений имеют наперед заданную допустимую погрешность.

1 стартмани

30.01.2024    1753    stopa85    12    

33

Алгоритм симплекс-метода для решения задачи раскроя

Математика и алгоритмы Бесплатно (free)

Разработка алгоритма, построенного на модели симплекс-метода, для нахождения оптимального раскроя.

19.10.2023    4415    user1959478    50    

34

Регулярные выражения на 1С

Математика и алгоритмы Инструментарий разработчика Платформа 1С v8.3 Мобильная платформа Россия Абонемент ($m)

Что ж... лучше поздно, чем никогда. Подсистема 1С для работы с регулярными выражениями: разбор выражения, проверка на соответствие шаблону, поиск вхождений в тексте.

1 стартмани

09.06.2023    7450    4    SpaceOfMyHead    17    

56

Модель распределения суммы по базе

Математика и алгоритмы Платформа 1С v8.3 Россия Абонемент ($m)

Обычно под распределением понимают определение сумм пропорционально коэффициентам. Предлагаю включить сюда также распределение по порядку (FIFO, LIFO) и повысить уровень размерности до 2-х. 1-ое означает, что распределение может быть не только пропорциональным, но и по порядку, а 2-ое - это вариант реализации матричного распределения: по строкам и столбцам. Возможно вас заинтересует также необычное решение этой задачи через создание DSL на базе реализации текучего интерфейса

1 стартмани

21.03.2022    7848    7    kalyaka    11    

44

Изменения формата файлов конфигурации (CF) в 8.3.16

Математика и алгоритмы Платформа 1С v8.3 Бесплатно (free)

Дополнение по формату файлов конфигурации (*.cf) в версии 8.3.16.

16.12.2021    4443    fishca    13    

36

Интересная задача на Yandex cup 2021

Математика и алгоритмы Бесплатно (free)

Мое решение задачи на Yandex cup 2021 (frontend). Лабиринт. JavaScript.

12.10.2021    8830    John_d    73    

46

Механизм анализа данных. Кластеризация.

Математика и алгоритмы Анализ учета Платформа 1С v8.3 Анализ и прогнозирование Бесплатно (free)

Подробный разбор, с примером использования, встроенного механизма кластеризации 1С.

31.08.2021    7796    dusha0020    8    

70
Оставьте свое сообщение