Stellarium
24.3
|
Data Structures | |
class | CalendarsDialog |
Main window of the Calendars plug-in. More... | |
class | CalendarsInfoPanel |
A screen widget similar to InfoPanel. More... | |
class | AstroHinduLunarCalendar |
Functions for the Hindu Lunisolar calendar based on hindu-astronomical functions described in CC:UE chapter 20. More... | |
class | AstroHinduSolarCalendar |
Functions for the Hindu Solar calendar based on hindu-astronomical functions described in CC:UE chapter 20. More... | |
class | BahaiArithmeticCalendar |
Functions for the Bahá´á Arithmetic calendar. More... | |
class | BahaiAstronomicalCalendar |
Functions for the Bahá´á Astronomical calendar. More... | |
class | Calendar |
Superclass for all calendars, capable of a multitude of astronomical calculations. More... | |
class | Calendars |
StelModule plugin which provides display and a scripting interface to a multitude of calendrical functions. More... | |
class | ChineseCalendar |
Functions for the Chinese calendar (1645 Qing dynasty version) More... | |
class | GregorianCalendar |
Functions for the Gregorian calendar. More... | |
class | JapaneseCalendar |
Functions for the Japanese calendar (as derived from the Chinese calendar) More... | |
class | JulianCalendar |
Functions for the Julian calendar. More... | |
class | KoreanCalendar |
Functions for the Korean calendar (as derived from the Chinese calendar) More... | |
class | NewHinduCalendar |
Functions for the New Hindu calendars described in CC:UE chapter 20. More... | |
class | NewHinduLunarCalendar |
New Hindu Lunar dates in the overridden interfacing methods from Calendar. More... | |
class | OldHinduLuniSolarCalendar |
Functions for the Old Hindu Lunisolar calendars described in CC:UE chapter 10. More... | |
class | OldHinduSolarCalendar |
Functions for the Old Hindu Solar calendar described in CC:UE chapter 10. More... | |
class | TibetanCalendar |
Functions for the Tibetan (Phuglugs) calendar. More... | |
class | VietnameseCalendar |
Functions for the Vietnamese calendar (as derived from the Chinese calendar) More... | |
The Calendars plugin provides an interface to various calendars
The primary source of this plugin is the book "Calendrical Calculations: The Ultimate Edition" by Edward M. Reingold and Nachum Dershowitz (2018). It contains algorithmic descriptions of dozens of calendars and auxiliary functions, most of which should make their way into this plugin.
This book describes data conversion from and to calendars, using not the commonly used Julian Day number, but an intermediate number called Rata Die (R.D.; easily remembered by the authors' names), days counted from midnight of (proleptic) 1.1. of year 1 AD (Gregorian).
For the user, a simple selection GUI allows choosing which calendars should be displayed in the lower-right screen corner. Some more GUI tabs allow interaction with selected calendars.
A potentially great feature for owners of the book is that most functions from the book are available as scripting functions for the respective calendars. Just call objects by their classnames.
Examples:
core.output(JulianCalendar.isLeap(1700)); core.output(GregorianCalendar.isLeap(1700)); rd=GregorianCalendar.fixedFromGregorian{[2021, 3, 14]);
Take care that some data arguments are internally stored as QVector<int>, and translated to Arrays in ECMAscript. The various calendars may have array lengths of elements, which are not always checked. When a StelLocation argument is used in the internal function, a scripting function is available which allows specifying a location name in format "city, region". This also works with user-specified locations. Time zones only work correctly when specified (in the location database) as full specification like "Europe/Madrid", or in a generic offset spelling like "UTC+04:00" (but not "UT+4"). For use of "calendar locations" that have been used before timezones were introduced, we must work out longitude-dependent UTC offset that must be rounded to the nearest minute.
Occasionally, the time zone support will provide different results between Windows and other operating systems, esp. for historical data. See Qt documentation on QtTimeZone.
class CalendarsDialog |
Main window of the Calendars plug-in.
Public Slots | |
void | retranslate () override |
Public Slots inherited from StelDialog | |
virtual void | styleChanged (const QString &style) |
Apply application style change. | |
virtual void | retranslate ()=0 |
Retranslate the content of the dialog. More... | |
virtual void | setVisible (bool) |
On the first call with "true" populates the window contents. | |
virtual void | close () |
Closes the window (the window widget is not deleted, just not visible). | |
void | handleMovedTo (QPoint newPos) |
Adds dialog location to config.ini; should be connected in createDialogContent() | |
virtual void | handleDialogSizeChanged (QSizeF size) |
Stores dialog sizes into config.ini; should be connected from the proxy. More... | |
Protected Member Functions | |
void | createDialogContent () override |
Initialize the dialog widgets and connect the signals/slots. | |
Additional Inherited Members | |
Signals inherited from StelDialog | |
void | visibleChanged (bool) |
Public Member Functions inherited from StelDialog | |
StelDialog (const QString &dialogName=QString("Default"), QObject *parent=nullptr) | |
bool | visible () const |
Returns true if the dialog contents have been constructed and are currently shown. | |
QString | getDialogName () const |
Protected Slots inherited from StelDialog | |
bool | askConfirmation (const QString &message=q_("Are you sure? This will delete your customized data.")) |
void | messageBox (const QString &title, const QString &message) |
void | enableKineticScrolling (bool b) |
enable kinetic scrolling. This should be connected to StelApp's StelGui signal flagUseKineticScrollingChanged. | |
void | handleFontChanged () |
connect from StelApp to handle font and font size changes. | |
void | handleColorSchemeChanged () |
connect from StelApp to handle CSS style changes | |
virtual void | updateNightModeProperty (bool n) |
Static Protected Member Functions inherited from StelDialog | |
static void | connectCheckBox (QAbstractButton *checkBox, const QString &actionName) |
Helper function to connect a checkbox to the StelAction with the specified name. | |
static void | connectCheckBox (QAbstractButton *checkBox, StelAction *action) |
Helper function to connect a checkbox to the given StelAction. | |
static void | connectIntProperty (QLineEdit *lineEdit, const QString &propName) |
Helper function to connect a QLineEdit to an integer StelProperty. More... | |
static void | connectIntProperty (QSpinBox *spinBox, const QString &propName) |
Helper function to connect a QSpinBox to an integer StelProperty. More... | |
static void | connectIntProperty (QComboBox *comboBox, const QString &propName) |
Helper function to connect a QComboBox to an integer StelProperty. More... | |
static void | connectIntProperty (QSlider *slider, const QString &propName, int minValue, int maxValue) |
Helper function to connect a QSlider to an double or float StelProperty. More... | |
static void | connectDoubleProperty (QDoubleSpinBox *spinBox, const QString &propName) |
Helper function to connect a QDoubleSpinBox to an double or float StelProperty. More... | |
static void | connectDoubleProperty (AngleSpinBox *spinBox, const QString &propName) |
Helper function to connect an AngleSpinBox to a double or float StelProperty representing decimal degrees. More... | |
static void | connectDoubleProperty (QSlider *slider, const QString &propName, double minValue, double maxValue) |
Helper function to connect a QSlider to an double or float StelProperty. More... | |
static void | connectStringProperty (QComboBox *comboBox, const QString &propName) |
Helper function to connect a QComboBox to a QString StelProperty. More... | |
static void | connectStringProperty (QLineEdit *lineEdit, const QString &propName) |
Helper function to connect a QLineEdit to a QString StelProperty. More... | |
static void | connectBoolProperty (QAbstractButton *checkBox, const QString &propName) |
Helper function to connect a checkbox to a bool StelProperty. More... | |
static void | connectBoolProperty (QGroupBox *checkBox, const QString &propName) |
Helper function to connect a groupbox to a bool StelProperty. More... | |
Protected Attributes inherited from StelDialog | |
QWidget * | dialog |
The main dialog. | |
class CustomProxy * | proxy |
QString | dialogName |
The name should be set in derived classes' constructors and can be used to store and retrieve the panel locations. | |
QList< QWidget * > | kineticScrollingList |
A list of widgets where kinetic scrolling can be activated or deactivated The list must be filled once, in the constructor or init() of fillDialog() etc. More... | |
Properties inherited from StelDialog | |
bool | visible |
class CalendarsInfoPanel |
A screen widget similar to InfoPanel.
Contains output for selected calendars.
Public Slots | |
void | updatePosition (bool resetPos=false) |
Update the position of the widget within the parent. More... | |
Public Member Functions | |
CalendarsInfoPanel (Calendars *plugin, QGraphicsWidget *parent=nullptr) | |
|
slot |
Update the position of the widget within the parent.
Tied to the parent's geometryChanged() signal.
class AstroHinduLunarCalendar |
Functions for the Hindu Lunisolar calendar based on hindu-astronomical functions described in CC:UE chapter 20.
Astro Hindu Lunar dates in the overridden interfacing methods from Calendar.
Public Slots | |
void | setJD (double JD) override |
Set a calendar date from the Julian day number. | |
void | setDate (const QVector< int > &parts) override |
set RD date from a vector of calendar date elements sorted from the largest to the smallest. More... | |
QStringList | getDateStrings () const override |
get a stringlist of calendar date elements sorted from the largest to the smallest. More... | |
QString | getFormattedPanchangString () override |
get a formatted string for displaying the "panchang", a set of tithi (lunar day), day of week, nakshatra, yoga, karana. | |
Public Slots inherited from NewHinduLunarCalendar | |
void | setJD (double JD) override |
Set a calendar date from the Julian day number. | |
void | setDate (const QVector< int > &parts) override |
set RD date from a vector of calendar date elements sorted from the largest to the smallest. More... | |
QStringList | getDateStrings () const override |
get a stringlist of calendar date elements sorted from the largest to the smallest. More... | |
QString | getFormattedDateString () const override |
get a formatted complete string for a date | |
virtual QString | getFormattedPanchangString () |
get a formatted string for displaying the "panchang", a set of tithi (lunar day), day of week, nakshatra, yoga, karana. | |
Public Slots inherited from NewHinduCalendar | |
void | retranslate () override |
void | setJD (double JD) override |
Set a calendar date from the Julian day number. | |
void | setDate (const QVector< int > &parts) override |
set date from a vector of calendar date elements sorted from the largest to the smallest. More... | |
QStringList | getDateStrings () const override |
get a stringlist of calendar date elements for the New Hindu Solar calendar sorted from the largest to the smallest. More... | |
QString | getFormattedDateString () const override |
get a formatted complete string for the date in the New Hindu Solar calendar | |
static double | hinduSineTable (const int entry) |
static double | hinduSine (const double theta) |
static double | hinduArcsin (const double amp) |
static double | hinduMeanPosition (const double rd_ut, const double period) |
static double | hinduTruePosition (const double rd_ut, const double period, const double size, const double anomalistic, const double change) |
static double | hinduSolarLongitude (const double rd_ut) |
static int | hinduZodiac (const double rd_ut) |
static double | hinduLunarLongitude (const double rd_ut) |
static double | hinduLunarPhase (const double rd_ut) |
static int | hinduLunarDayFromMoment (const double rd_ut) |
static double | hinduNewMoonBefore (const double rd_ut) |
static int | hinduCalendarYear (const double rd_ut) |
static QVector< int > | hinduSolarFromFixed (int rd) |
static int | fixedFromHinduSolar (const QVector< int > &parts) |
static QVector< int > | hinduLunarFromFixed (int rd) |
static int | fixedFromHinduLunar (const QVector< int > &parts) |
static double | hinduAscensionalDifference (const int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | hinduAscensionalDifference (const int rd, const QString &loc) |
static double | hinduTropicalLongitude (const double rd_ut) |
static double | hinduSolarSiderealDifference (const double rd_ut) |
static double | hinduDailyMotion (const double rd_ut) |
static double | hinduRisingSign (const double rd_ut) |
static double | hinduEquationOfTime (const double rd_ut) |
static double | hinduSunrise (const int rd) |
static double | hinduSunset (const int rd) |
static double | hinduStandardFromSundial (const int rd_ut) |
static QVector< int > | hinduFullMoonFromFixed (int rd) |
Alternative Lunar calendar counted from full moon to full moon. More... | |
static int | fixedFromHinduFullMoon (const QVector< int > &parts) |
static bool | hinduExpunged (const int lYear, const int lMonth) |
test for expunged month (CC:UE 20.38) | |
static double | altHinduSunrise (const int rd) |
Alternative sunrise formula (CC:UE 20.39) | |
static double | siderealSolarLongitude (const double rd_ut) |
static double | ayanamsha (const double rd_ut) |
static double | siderealStart () |
static double | astroHinduSunset (const int rd) |
static int | siderealZodiac (const double rd_ut) |
static int | astroHinduCalendarYear (const double rd_ut) |
static QVector< int > | astroHinduSolarFromFixed (const int rd) |
static int | fixedFromAstroHinduSolar (const QVector< int > &date) |
static int | astroLunarDayFromMoment (const double rd_ut) |
(CC:UE 20.47) | |
static QVector< int > | astroHinduLunarFromFixed (const int rd) |
static int | fixedFromAstroHinduLunar (const QVector< int > &parts) |
static double | hinduSolarLongitudeInv (double lng, double rdA, double rdB) |
binary search for the moment when solar longitude reaches lng in the time between rdA and rdB (used in CC:UE 20.50) | |
static double | hinduSolarLongitudeAtOrAfter (const double lambda, const double rd_ut) |
static double | meshaSamkranti (const int gYear) |
static double | hinduLunarPhaseInv (double phase, double rdA, double rdB) |
binary search for the moment when lunar phase reaches phi in the time between rdA and rdB (used in CC:UE 20.52) | |
static double | hinduLunarDayAtOrAfter (const double k, const double rd_ut) |
static double | hinduLunarNewYear (const int gYear) |
static bool | hinduLunarOnOrBefore (const QVector< int > &date1, const QVector< int > &date2) |
static int | hinduDateOccur (const int lYear, const int lMonth, const int lDay) |
static QVector< int > | hinduLunarHoliday (const int lMonth, const int lDay, const int gYear) |
static QVector< int > | diwali (const int gYear) |
static int | hinduTithiOccur (const int lMonth, const int tithi, const double rd_ut, const int lYear) |
static QVector< int > | hinduLunarEvent (const int lMonth, const int tithi, const double rd_ut, const int gYear) |
static QVector< int > | shiva (const int gYear) |
static QVector< int > | rama (const int gYear) |
static int | hinduLunarStation (const int rd) |
static int | karana (const int n) |
static int | karanaForDay (const int rd) |
static int | yoga (const int rd) |
static QVector< int > | sacredWednesdays (const int gYear) |
static QVector< int > | sacredWednesdaysInRange (const QVector< int > &range) |
Public Slots inherited from OldHinduLuniSolarCalendar | |
void | retranslate () override |
void | setJD (double JD) override |
Set a calendar date from the Julian day number. | |
void | setDate (const QVector< int > &parts) override |
set date from a vector of calendar date elements sorted from the largest to the smallest. More... | |
QStringList | getDateStrings () const override |
get a stringlist of calendar date elements sorted from the largest to the smallest. More... | |
QString | getFormattedDateString () const override |
get a formatted complete string for a date | |
static int | fixedFromOldHinduLunar (const QVector< int > &parts) |
compute RD date from an Old Hindu Lunisolar date parts={ year, month, leap, day} | |
static QVector< int > | oldHinduLunarFromFixed (int rd) |
return { year, month, leap, day} | |
static bool | isLeap (int lYear) |
called old-hindu-lunar-leap-year?() in the CC.UE book. | |
Public Slots inherited from OldHinduSolarCalendar | |
void | retranslate () override |
void | setJD (double JD) override |
Set a calendar date from the Julian day number. | |
void | setDate (const QVector< int > &parts) override |
set date from a vector of calendar date elements sorted from the largest to the smallest. More... | |
QStringList | getDateStrings () const override |
get a stringlist of calendar date elements sorted from the largest to the smallest. More... | |
QString | getFormattedDateString () const override |
get a formatted complete string for a date | |
static int | hinduDayCount (int rd) |
Return Hindu day count from RD. | |
static int | jovianYear (int rd) |
static int | fixedFromOldHinduSolar (const QVector< int > &parts) |
year index in Jovian cycle [1..60] | |
static QVector< int > | oldHinduSolarFromFixed (int rd) |
void | setWeekdayStyle (int style) |
configure details for future output. More... | |
void | setMonthStyle (int style) |
configure details for future output. More... | |
Public Slots inherited from Calendar | |
virtual void | retranslate () |
Translate e.g. stringlists of part names. | |
virtual void | setJD (double JD) |
Set a calendar date from the Julian day number Subclasses set JD and compute the parts and possibly other data This triggers the partsChanged() signal. | |
virtual double | getJD () const |
Get Julian day number from a calendar date. | |
virtual void | setDate (const QVector< int > &parts) |
set date from a vector of calendar date elements sorted from the largest to the smallest. More... | |
virtual QVector< int > | getDate () const |
get a vector of calendar date elements sorted from the largest to the smallest. More... | |
virtual QStringList | getDateStrings () const |
get a stringlist of calendar date elements sorted from the largest to the smallest. More... | |
virtual QString | getFormattedDateString () const |
get a formatted complete string for a date. The default implementation just concatenates all strings from getDateStrings() with a space in between. | |
static QString | getFormattedDateString (const QVector< int > &date, QString sep=" ") |
get a formatted complete string for a date. This implementation just converts and concatenates all ints with sep in between. | |
static double | rdNow () |
Mostly for testing: return RD of current time. | |
static double | rdJ2000 () |
static double | momentFromJD (double jd, bool respectUTCoffset) |
Interfacing function from Reingold/Dershowitz: Calendrical Calculations Returns a "moment" in RD that represents JD. More... | |
static int | fixedFromMoment (double rd) |
static double | timeFromMoment (double rd) |
static int | fixedFromJD (double jd, bool respectUTCoffset) |
Interfacing function from Reingold/Dershowitz: Calendrical Calculations Returns a fixed date in RD that represents noon of JD. More... | |
static double | momentFromMJD (double mjd) |
static double | jdFromMoment (double rd, bool respectUTCoffset) |
interfacing function from Reingold/Dershowitz: Calendrical Calculations Returns a JD from an RD "moment" (including fractions of day) Stellarium extension: optionally includes local time zone offset. More... | |
static double | jdFromFixed (double rd, bool respectUTCoffset) |
interfacing function from Reingold/Dershowitz: Calendrical Calculations Returns a JD from an RD "moment" (including fractions of day) Stellarium extension: optionally includes local time zone offset. More... | |
static double | mjdFromFixed (double rd) |
static int | dayOfWeekFromFixed (int rd) |
weekday from RD date. CC.UE(1.60). | |
static int | kdayOnOrBefore (const Calendar::Day k, const int rd) |
@Returns the R.D. of the nearest weekday k on or before rd | |
static int | kdayOnOrAfter (const Calendar::Day k, const int rd) |
@Returns the R.D. of the nearest weekday k on or after rd | |
static int | kdayNearest (const Calendar::Day k, const int rd) |
@Returns the R.D. of the nearest weekday k around rd | |
static int | kdayBefore (const Calendar::Day k, const int rd) |
@Returns the R.D. of the nearest weekday k before rd | |
static int | kdayAfter (const Calendar::Day k, const int rd) |
@Returns the R.D. of the nearest weekday k after rd | |
static double | modInterval (double x, double a, double b) |
Interval modulus, CC.UE 1.24. More... | |
static int | modInterval (int x, int a, int b) |
Interval modulus, CC.UE 1.24: This EXCLUDES the upper limit! Use StelUtils::amod(x, b) for CC's (x)mod[1..b]. | |
static int | rdCorrSum (const QVector< int > &parts, const QVector< int > &factors, int corr) |
Reingold-Dershowitz CC.UE 1.48. | |
int | rdCorrSum (QVector< int >factors, int corr) |
static QVector< int > | toRadix (int num, const QVector< int > &radix) |
Split integer to mixed-radix vector. Reingold-Dershowitz CC.UE 1.42. | |
static QVector< int > | intersectWithRange (const QVector< int > &cand, const QVector< int > &range) |
Intersect a collection of candidates against a range of values. More... | |
static StelLocation | location (const QString &name) |
retrieve a StelLocation from our database based on its name There is no check! Returned location may be default/empty. | |
static double | direction (const StelLocation &locFrom, const StelLocation &locTo) |
Return azimuth direction (degrees from North) from locFrom to locTo. | |
static double | direction (const QString &locFrom, const QString &locTo) |
static double | zoneFromLongitude (double lngDeg) |
static double | universalFromLocal (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | universalFromLocal (double rd_loc, const QString &loc) |
static double | localFromUniversal (double rd_ut, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | localFromUniversal (double rd_ut, const QString &loc) |
static double | standardFromUniversal (double rd_ut, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | standardFromUniversal (double rd_ut, const QString &loc) |
static double | universalFromStandard (double rd_zone, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | universalFromStandard (double rd_zone, const QString &loc) |
static double | standardFromLocal (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | standardFromLocal (double rd_loc, const QString &loc) |
static double | localFromStandard (double rd_zone, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | localFromStandard (double rd_zone, const QString &loc) |
static double | ephemerisCorrection (double rd) |
static double | dynamicalFromUniversal (double rd_ut) |
Correct rd_ut to Dynamical time. | |
static double | universalFromDynamical (double rd_dt) |
Correct rd_dt to Universal time. | |
static double | julianCenturies (double rd_ut) |
static double | equationOfTime (double rd_ut) |
static double | apparentFromLocal (double rd_local_mean, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | apparentFromLocal (double rd_local_mean, const QString &loc) |
static double | localFromApparent (double rd_local_app, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | localFromApparent (double rd_local_app, const QString &loc) |
static double | apparentFromUniversal (double rd_ut, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | apparentFromUniversal (double rd_ut, const QString &loc) |
static double | universalFromApparent (double rd_local_app, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | universalFromApparent (double rd_local_app, const QString &loc) |
static double | midnight (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | midnight (int rd, const QString &loc) |
static double | midday (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | midday (int rd, const QString &loc) |
static double | middayTehran (int rd) |
static double | siderealFromMoment (double rd_ut) |
static double | obliquity (double rd_ut) |
static double | declination (double rd_ut, double eclLat, double eclLong) |
static double | rightAscension (double rd_ut, double eclLat, double eclLong) |
static double | solarLongitude (double rd_ut) |
static double | nutation (double rd_ut) |
static double | aberration (double rd_ut) |
static double | solarLongitudeInv (double lng, double rdA, double rdB) |
binary search for the moment when solar longitude reaches lng in the time between rdA and rdB (used in CC:UE 14.36) | |
static double | solarLongitudeAfter (double lng, double rd_ut) |
static double | seasonInGregorian (Calendar::Season season, int gYear) |
static double | urbanaWinter (int gYear) |
static double | precession (double rd_dt) |
static double | solarAltitude (double rd_ut, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | solarAltitude (double rd_ut, const QString &loc) |
static double | estimatePriorSolarLongitude (double lambda, double rd_ut) |
static double | nthNewMoon (int n) |
static double | newMoonBefore (double rd_ut) |
static double | newMoonAtOrAfter (double rd_ut) |
static double | lunarLongitude (double rd_ut) |
static double | lunarLatitude (double rd_ut) |
static double | lunarDistance (double rd_ut) |
static double | meanLunarLongitude (double c) |
static double | lunarElongation (double c) |
static double | solarAnomaly (double c) |
static double | lunarAnomaly (double c) |
static double | moonNode (double c) |
static double | lunarNode (double rd_ut) |
static double | siderealLunarLongitude (double rd_ut, double siderealStart) |
static double | lunarPhase (double rd_ut) |
static double | lunarPhaseInv (double phi, double rdA, double rdB) |
binary search for the moment when lunar phase reaches phi in the time between rdA and rdB (CC:UE 14.57) | |
static double | lunarPhaseAtOrBefore (double phi, double rd_ut) |
static double | lunarPhaseAtOrAfter (double phi, double rd_ut) |
static double | lunarAltitude (double rd_ut, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | lunarAltitude (double rd_ut, const QString &loc) |
static double | lunarParallax (double rd_ut, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | lunarParallax (double rd_ut, const QString &loc) |
static double | topocentricLunarAltitude (double rd_ut, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | topocentricLunarAltitude (double rd_ut, const QString &loc) |
static double | approxMomentOfDepression (double rd_loc, double alpha, bool early, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | sineOffset (double rd_ut, double alpha, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | momentOfDepression (double rd_approx, double alpha, bool early, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | dawn (int rd, double alpha, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | dawn (int rd, double alpha, const QString &loc) |
static double | dusk (int rd, double alpha, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | dusk (int rd, double alpha, const QString &loc) |
static double | refraction (const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | refraction (const QString &loc) |
static double | sunrise (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | sunrise (int rd, const QString &loc) |
static double | sunset (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | sunset (int rd, const QString &loc) |
static double | dawnParis (int rd) |
For testing only: More... | |
static double | sunsetJerusalem (int rd) |
static double | jewishSabbathEnds (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | jewishSabbathEnds (int rd, const QString &loc) |
static double | jewishDusk (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | jewishDusk (int rd, const QString &loc) |
static double | observedLunarAltitude (double rd_ut, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | observedLunarAltitude (double rd_ut, const QString &loc) |
static double | moonrise (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | moonrise (int rd, const QString &loc) |
static double | moonset (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | moonset (int rd, const QString &loc) |
static double | moonriseMecca (int rd) |
For testing only: Delivers local standard time. | |
static double | moonsetMecca (int rd) |
static double | localZeroItalianHour (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | localZeroItalianHour (double rd_loc, const QString &loc) |
static double | localZeroSunsetHour (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | localZeroSunsetHour (double rd_loc, const QString &loc) |
static double | localZeroBabylonianHour (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | localZeroBabylonianHour (double rd_loc, const QString &loc) |
static double | localFromItalian (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | localFromItalian (double rd_loc, const QString &loc) |
static double | localFromSunsetHour (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | localFromSunsetHour (double rd_loc, const QString &loc) |
static double | localFromBabylonian (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | localFromBabylonian (double rd_loc, const QString &loc) |
static double | italianFromLocal (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | italianFromLocal (double rd_loc, const QString &loc) |
static double | sunsetHourFromLocal (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | sunsetHourFromLocal (double rd_loc, const QString &loc) |
static double | babylonianFromLocal (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | babylonianFromLocal (double rd_loc, const QString &loc) |
static double | daytimeTemporalHour (const int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | daytimeTemporalHour (const int rd, const QString &loc) |
static double | nighttimeTemporalHour (const int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | nighttimeTemporalHour (const int rd, const QString &loc) |
static double | standardFromSundial (const double rd_ut, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | standardFromSundial (const double rd_ut, const QString &loc) |
static double | arcOfLight (double rd_loc) |
static double | simpleBestView (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | simpleBestView (int rd, const QString &loc) |
static bool | shaukatCriterion (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static bool | shaukatCriterion (int rd, const QString &loc) |
static double | arcOfVision (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | arcOfVision (double rd_loc, const QString &loc) |
static double | bruinBestView (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | bruinBestView (int rd, const QString &loc) |
static bool | yallopCriterion (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static bool | yallopCriterion (int rd, const QString &loc) |
static double | lunarSemiDiameter (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | lunarSemiDiameter (double rd_loc, const QString &loc) |
static double | lunarDiameter (double rd_ut) |
static bool | visibleCrescent (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static bool | visibleCrescent (int rd, const QString &loc) |
static int | phasisOnOrBefore (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static int | phasisOnOrBefore (int rd, const QString &loc) |
static int | phasisOnOrAfter (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static int | phasisOnOrAfter (int rd, const QString &loc) |
Public Member Functions | |
AstroHinduLunarCalendar (double jd) | |
Public Member Functions inherited from NewHinduLunarCalendar | |
NewHinduLunarCalendar (double jd) | |
Public Member Functions inherited from NewHinduCalendar | |
NewHinduCalendar (double jd) | |
Public Member Functions inherited from OldHinduLuniSolarCalendar | |
OldHinduLuniSolarCalendar (double jd) | |
Public Member Functions inherited from OldHinduSolarCalendar | |
OldHinduSolarCalendar (double jd) | |
Public Member Functions inherited from Calendar | |
Calendar (double jd) | |
Additional Inherited Members | |
Public Types inherited from Calendar | |
enum | Day { sunday = 0 , monday , tuesday , wednesday , thursday , friday , saturday } |
enum from CC.UE-ch1.12. | |
enum | Season { spring = 0 , summer = 90 , autumn = 180 , winter = 270 } |
enum | Phase { newMoon = 0 , firstQuarter = 90 , fullMoon = 180 , lastQuarter = 270 } |
Signals inherited from Calendar | |
void | partsChanged (QVector< int > parts) |
void | jdChanged (double jd) |
Static Public Attributes inherited from Calendar | |
constexpr static const double | j2000 =730120.5 |
RD of J2000.0 (CC:UE 14.19) | |
constexpr static const double | jdEpoch =-1721424.5 |
constexpr static const double | mjdEpoch =678576.0 |
constexpr static const int | bogus =-1000000 |
static const StelLocation | urbana |
static const StelLocation | greenwich |
static const StelLocation | mecca |
static const StelLocation | tehran |
static const StelLocation | paris |
static const StelLocation | jerusalem |
static const StelLocation | acre |
static const StelLocation | padua |
Protected Attributes inherited from Calendar | |
double | JD |
QVector< int > | parts |
date expressed as JD(UT), including day fraction (ready to interact with the main application) | |
Static Protected Attributes inherited from NewHinduCalendar | |
constexpr static const double | hinduSiderealYear =365.+279457./1080000. |
(CC:UE 20.1) | |
constexpr static const double | hinduSiderealMonth =27.+4644439./14438334. |
(CC:UE 20.2) | |
constexpr static const double | hinduSynodicMonth =29.+7087771./13358334. |
(CC:UE 20.3) | |
constexpr static const int | hinduEpoch =-1132959 |
constexpr static const double | hinduCreation =hinduEpoch-1955880000.*hinduSiderealYear |
(CC:UE 20.8) | |
constexpr static const double | hinduAnomalisticYear =1577917828000./(4320000000.-387.) |
(CC:UE 20.9) | |
constexpr static const double | hinduAnomalisticMonth =1577917828./(57753336.-488199.) |
(CC:UE 20.10) | |
constexpr static const int | hinduSolarEra = 3179 |
Saka era (CC:UE 20.19) | |
constexpr static const int | hinduLunarEra = 3044 |
Vikrama era (CC:UE 20.22) | |
static const StelLocation | ujjain |
Sacred city in India to which we relate the calendar. (CC:UE 20.25) | |
static const StelLocation | ujjainUTC |
Sacred city in India to which we relate the calendar, with timezone set to UTC. More... | |
static const StelLocation | hinduLocation |
convention to one site to which we relate the calendar. More... | |
static QMap< int, QString > | lunarStations |
static QMap< int, QString > | yogas |
static QMap< int, QString > | karanas |
Static Protected Attributes inherited from OldHinduLuniSolarCalendar | |
constexpr static const double | aryaLunarMonth = 1577917500./53433336.0 |
constexpr static const double | aryaLunarDay = aryaLunarMonth/30.0 |
static QMap< int, QString > | monthNames |
Static Protected Attributes inherited from OldHinduSolarCalendar | |
static const int | hinduEpoch |
constexpr static const double | aryaSolarYear = 1577917500./4320000.0 |
constexpr static const double | aryaSolarMonth = aryaSolarYear/12.0 |
constexpr static const double | aryaJovianPeriod = 1577917500./364224.0 |
static QMap< int, QString > | weekDayNames |
static QMap< int, QString > | monthNames |
static QMap< int, QString > | jovianNames |
Static Protected Attributes inherited from Calendar | |
static constexpr double | meanTropicalYear =365.242189 |
date expressed in the numerical parts of the calendar (usually the smallest part represents a day count) More... | |
static constexpr double | meanSiderealYear =365.25636 |
(CC:UE 14.32) | |
static constexpr double | meanSynodicMonth =29.530588861 |
(CC:UE 14.44) | |
static constexpr bool | morning =true |
CC:UE 14.71. | |
static constexpr bool | evening =false |
CC:UE 14.73. | |
|
overrideslot |
get a stringlist of calendar date elements sorted from the largest to the smallest.
|
overrideslot |
set RD date from a vector of calendar date elements sorted from the largest to the smallest.
parts = {Year, Month[1...12], leapMonth[0|1], Day[1...30], leapDay[0|1] }
class AstroHinduSolarCalendar |
Functions for the Hindu Solar calendar based on hindu-astronomical functions described in CC:UE chapter 20.
Astro Hindu Solar dates in the overridden interfacing methods from Calendar.
Public Slots | |
void | setJD (double JD) override |
Set a calendar date from the Julian day number. | |
void | setDate (const QVector< int > &parts) override |
set RD date from a vector of calendar date elements sorted from the largest to the smallest. More... | |
QStringList | getDateStrings () const override |
get a stringlist of calendar date elements for the Hindu Astro Solar calendar sorted from the largest to the smallest. More... | |
Public Slots inherited from NewHinduCalendar | |
void | retranslate () override |
void | setJD (double JD) override |
Set a calendar date from the Julian day number. | |
void | setDate (const QVector< int > &parts) override |
set date from a vector of calendar date elements sorted from the largest to the smallest. More... | |
QStringList | getDateStrings () const override |
get a stringlist of calendar date elements for the New Hindu Solar calendar sorted from the largest to the smallest. More... | |
QString | getFormattedDateString () const override |
get a formatted complete string for the date in the New Hindu Solar calendar | |
static double | hinduSineTable (const int entry) |
static double | hinduSine (const double theta) |
static double | hinduArcsin (const double amp) |
static double | hinduMeanPosition (const double rd_ut, const double period) |
static double | hinduTruePosition (const double rd_ut, const double period, const double size, const double anomalistic, const double change) |
static double | hinduSolarLongitude (const double rd_ut) |
static int | hinduZodiac (const double rd_ut) |
static double | hinduLunarLongitude (const double rd_ut) |
static double | hinduLunarPhase (const double rd_ut) |
static int | hinduLunarDayFromMoment (const double rd_ut) |
static double | hinduNewMoonBefore (const double rd_ut) |
static int | hinduCalendarYear (const double rd_ut) |
static QVector< int > | hinduSolarFromFixed (int rd) |
static int | fixedFromHinduSolar (const QVector< int > &parts) |
static QVector< int > | hinduLunarFromFixed (int rd) |
static int | fixedFromHinduLunar (const QVector< int > &parts) |
static double | hinduAscensionalDifference (const int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | hinduAscensionalDifference (const int rd, const QString &loc) |
static double | hinduTropicalLongitude (const double rd_ut) |
static double | hinduSolarSiderealDifference (const double rd_ut) |
static double | hinduDailyMotion (const double rd_ut) |
static double | hinduRisingSign (const double rd_ut) |
static double | hinduEquationOfTime (const double rd_ut) |
static double | hinduSunrise (const int rd) |
static double | hinduSunset (const int rd) |
static double | hinduStandardFromSundial (const int rd_ut) |
static QVector< int > | hinduFullMoonFromFixed (int rd) |
Alternative Lunar calendar counted from full moon to full moon. More... | |
static int | fixedFromHinduFullMoon (const QVector< int > &parts) |
static bool | hinduExpunged (const int lYear, const int lMonth) |
test for expunged month (CC:UE 20.38) | |
static double | altHinduSunrise (const int rd) |
Alternative sunrise formula (CC:UE 20.39) | |
static double | siderealSolarLongitude (const double rd_ut) |
static double | ayanamsha (const double rd_ut) |
static double | siderealStart () |
static double | astroHinduSunset (const int rd) |
static int | siderealZodiac (const double rd_ut) |
static int | astroHinduCalendarYear (const double rd_ut) |
static QVector< int > | astroHinduSolarFromFixed (const int rd) |
static int | fixedFromAstroHinduSolar (const QVector< int > &date) |
static int | astroLunarDayFromMoment (const double rd_ut) |
(CC:UE 20.47) | |
static QVector< int > | astroHinduLunarFromFixed (const int rd) |
static int | fixedFromAstroHinduLunar (const QVector< int > &parts) |
static double | hinduSolarLongitudeInv (double lng, double rdA, double rdB) |
binary search for the moment when solar longitude reaches lng in the time between rdA and rdB (used in CC:UE 20.50) | |
static double | hinduSolarLongitudeAtOrAfter (const double lambda, const double rd_ut) |
static double | meshaSamkranti (const int gYear) |
static double | hinduLunarPhaseInv (double phase, double rdA, double rdB) |
binary search for the moment when lunar phase reaches phi in the time between rdA and rdB (used in CC:UE 20.52) | |
static double | hinduLunarDayAtOrAfter (const double k, const double rd_ut) |
static double | hinduLunarNewYear (const int gYear) |
static bool | hinduLunarOnOrBefore (const QVector< int > &date1, const QVector< int > &date2) |
static int | hinduDateOccur (const int lYear, const int lMonth, const int lDay) |
static QVector< int > | hinduLunarHoliday (const int lMonth, const int lDay, const int gYear) |
static QVector< int > | diwali (const int gYear) |
static int | hinduTithiOccur (const int lMonth, const int tithi, const double rd_ut, const int lYear) |
static QVector< int > | hinduLunarEvent (const int lMonth, const int tithi, const double rd_ut, const int gYear) |
static QVector< int > | shiva (const int gYear) |
static QVector< int > | rama (const int gYear) |
static int | hinduLunarStation (const int rd) |
static int | karana (const int n) |
static int | karanaForDay (const int rd) |
static int | yoga (const int rd) |
static QVector< int > | sacredWednesdays (const int gYear) |
static QVector< int > | sacredWednesdaysInRange (const QVector< int > &range) |
Public Slots inherited from OldHinduLuniSolarCalendar | |
void | retranslate () override |
void | setJD (double JD) override |
Set a calendar date from the Julian day number. | |
void | setDate (const QVector< int > &parts) override |
set date from a vector of calendar date elements sorted from the largest to the smallest. More... | |
QStringList | getDateStrings () const override |
get a stringlist of calendar date elements sorted from the largest to the smallest. More... | |
QString | getFormattedDateString () const override |
get a formatted complete string for a date | |
static int | fixedFromOldHinduLunar (const QVector< int > &parts) |
compute RD date from an Old Hindu Lunisolar date parts={ year, month, leap, day} | |
static QVector< int > | oldHinduLunarFromFixed (int rd) |
return { year, month, leap, day} | |
static bool | isLeap (int lYear) |
called old-hindu-lunar-leap-year?() in the CC.UE book. | |
Public Slots inherited from OldHinduSolarCalendar | |
void | retranslate () override |
void | setJD (double JD) override |
Set a calendar date from the Julian day number. | |
void | setDate (const QVector< int > &parts) override |
set date from a vector of calendar date elements sorted from the largest to the smallest. More... | |
QStringList | getDateStrings () const override |
get a stringlist of calendar date elements sorted from the largest to the smallest. More... | |
QString | getFormattedDateString () const override |
get a formatted complete string for a date | |
static int | hinduDayCount (int rd) |
Return Hindu day count from RD. | |
static int | jovianYear (int rd) |
static int | fixedFromOldHinduSolar (const QVector< int > &parts) |
year index in Jovian cycle [1..60] | |
static QVector< int > | oldHinduSolarFromFixed (int rd) |
void | setWeekdayStyle (int style) |
configure details for future output. More... | |
void | setMonthStyle (int style) |
configure details for future output. More... | |
Public Slots inherited from Calendar | |
virtual void | retranslate () |
Translate e.g. stringlists of part names. | |
virtual void | setJD (double JD) |
Set a calendar date from the Julian day number Subclasses set JD and compute the parts and possibly other data This triggers the partsChanged() signal. | |
virtual double | getJD () const |
Get Julian day number from a calendar date. | |
virtual void | setDate (const QVector< int > &parts) |
set date from a vector of calendar date elements sorted from the largest to the smallest. More... | |
virtual QVector< int > | getDate () const |
get a vector of calendar date elements sorted from the largest to the smallest. More... | |
virtual QStringList | getDateStrings () const |
get a stringlist of calendar date elements sorted from the largest to the smallest. More... | |
virtual QString | getFormattedDateString () const |
get a formatted complete string for a date. The default implementation just concatenates all strings from getDateStrings() with a space in between. | |
static QString | getFormattedDateString (const QVector< int > &date, QString sep=" ") |
get a formatted complete string for a date. This implementation just converts and concatenates all ints with sep in between. | |
static double | rdNow () |
Mostly for testing: return RD of current time. | |
static double | rdJ2000 () |
static double | momentFromJD (double jd, bool respectUTCoffset) |
Interfacing function from Reingold/Dershowitz: Calendrical Calculations Returns a "moment" in RD that represents JD. More... | |
static int | fixedFromMoment (double rd) |
static double | timeFromMoment (double rd) |
static int | fixedFromJD (double jd, bool respectUTCoffset) |
Interfacing function from Reingold/Dershowitz: Calendrical Calculations Returns a fixed date in RD that represents noon of JD. More... | |
static double | momentFromMJD (double mjd) |
static double | jdFromMoment (double rd, bool respectUTCoffset) |
interfacing function from Reingold/Dershowitz: Calendrical Calculations Returns a JD from an RD "moment" (including fractions of day) Stellarium extension: optionally includes local time zone offset. More... | |
static double | jdFromFixed (double rd, bool respectUTCoffset) |
interfacing function from Reingold/Dershowitz: Calendrical Calculations Returns a JD from an RD "moment" (including fractions of day) Stellarium extension: optionally includes local time zone offset. More... | |
static double | mjdFromFixed (double rd) |
static int | dayOfWeekFromFixed (int rd) |
weekday from RD date. CC.UE(1.60). | |
static int | kdayOnOrBefore (const Calendar::Day k, const int rd) |
@Returns the R.D. of the nearest weekday k on or before rd | |
static int | kdayOnOrAfter (const Calendar::Day k, const int rd) |
@Returns the R.D. of the nearest weekday k on or after rd | |
static int | kdayNearest (const Calendar::Day k, const int rd) |
@Returns the R.D. of the nearest weekday k around rd | |
static int | kdayBefore (const Calendar::Day k, const int rd) |
@Returns the R.D. of the nearest weekday k before rd | |
static int | kdayAfter (const Calendar::Day k, const int rd) |
@Returns the R.D. of the nearest weekday k after rd | |
static double | modInterval (double x, double a, double b) |
Interval modulus, CC.UE 1.24. More... | |
static int | modInterval (int x, int a, int b) |
Interval modulus, CC.UE 1.24: This EXCLUDES the upper limit! Use StelUtils::amod(x, b) for CC's (x)mod[1..b]. | |
static int | rdCorrSum (const QVector< int > &parts, const QVector< int > &factors, int corr) |
Reingold-Dershowitz CC.UE 1.48. | |
int | rdCorrSum (QVector< int >factors, int corr) |
static QVector< int > | toRadix (int num, const QVector< int > &radix) |
Split integer to mixed-radix vector. Reingold-Dershowitz CC.UE 1.42. | |
static QVector< int > | intersectWithRange (const QVector< int > &cand, const QVector< int > &range) |
Intersect a collection of candidates against a range of values. More... | |
static StelLocation | location (const QString &name) |
retrieve a StelLocation from our database based on its name There is no check! Returned location may be default/empty. | |
static double | direction (const StelLocation &locFrom, const StelLocation &locTo) |
Return azimuth direction (degrees from North) from locFrom to locTo. | |
static double | direction (const QString &locFrom, const QString &locTo) |
static double | zoneFromLongitude (double lngDeg) |
static double | universalFromLocal (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | universalFromLocal (double rd_loc, const QString &loc) |
static double | localFromUniversal (double rd_ut, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | localFromUniversal (double rd_ut, const QString &loc) |
static double | standardFromUniversal (double rd_ut, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | standardFromUniversal (double rd_ut, const QString &loc) |
static double | universalFromStandard (double rd_zone, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | universalFromStandard (double rd_zone, const QString &loc) |
static double | standardFromLocal (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | standardFromLocal (double rd_loc, const QString &loc) |
static double | localFromStandard (double rd_zone, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | localFromStandard (double rd_zone, const QString &loc) |
static double | ephemerisCorrection (double rd) |
static double | dynamicalFromUniversal (double rd_ut) |
Correct rd_ut to Dynamical time. | |
static double | universalFromDynamical (double rd_dt) |
Correct rd_dt to Universal time. | |
static double | julianCenturies (double rd_ut) |
static double | equationOfTime (double rd_ut) |
static double | apparentFromLocal (double rd_local_mean, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | apparentFromLocal (double rd_local_mean, const QString &loc) |
static double | localFromApparent (double rd_local_app, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | localFromApparent (double rd_local_app, const QString &loc) |
static double | apparentFromUniversal (double rd_ut, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | apparentFromUniversal (double rd_ut, const QString &loc) |
static double | universalFromApparent (double rd_local_app, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | universalFromApparent (double rd_local_app, const QString &loc) |
static double | midnight (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | midnight (int rd, const QString &loc) |
static double | midday (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | midday (int rd, const QString &loc) |
static double | middayTehran (int rd) |
static double | siderealFromMoment (double rd_ut) |
static double | obliquity (double rd_ut) |
static double | declination (double rd_ut, double eclLat, double eclLong) |
static double | rightAscension (double rd_ut, double eclLat, double eclLong) |
static double | solarLongitude (double rd_ut) |
static double | nutation (double rd_ut) |
static double | aberration (double rd_ut) |
static double | solarLongitudeInv (double lng, double rdA, double rdB) |
binary search for the moment when solar longitude reaches lng in the time between rdA and rdB (used in CC:UE 14.36) | |
static double | solarLongitudeAfter (double lng, double rd_ut) |
static double | seasonInGregorian (Calendar::Season season, int gYear) |
static double | urbanaWinter (int gYear) |
static double | precession (double rd_dt) |
static double | solarAltitude (double rd_ut, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | solarAltitude (double rd_ut, const QString &loc) |
static double | estimatePriorSolarLongitude (double lambda, double rd_ut) |
static double | nthNewMoon (int n) |
static double | newMoonBefore (double rd_ut) |
static double | newMoonAtOrAfter (double rd_ut) |
static double | lunarLongitude (double rd_ut) |
static double | lunarLatitude (double rd_ut) |
static double | lunarDistance (double rd_ut) |
static double | meanLunarLongitude (double c) |
static double | lunarElongation (double c) |
static double | solarAnomaly (double c) |
static double | lunarAnomaly (double c) |
static double | moonNode (double c) |
static double | lunarNode (double rd_ut) |
static double | siderealLunarLongitude (double rd_ut, double siderealStart) |
static double | lunarPhase (double rd_ut) |
static double | lunarPhaseInv (double phi, double rdA, double rdB) |
binary search for the moment when lunar phase reaches phi in the time between rdA and rdB (CC:UE 14.57) | |
static double | lunarPhaseAtOrBefore (double phi, double rd_ut) |
static double | lunarPhaseAtOrAfter (double phi, double rd_ut) |
static double | lunarAltitude (double rd_ut, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | lunarAltitude (double rd_ut, const QString &loc) |
static double | lunarParallax (double rd_ut, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | lunarParallax (double rd_ut, const QString &loc) |
static double | topocentricLunarAltitude (double rd_ut, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | topocentricLunarAltitude (double rd_ut, const QString &loc) |
static double | approxMomentOfDepression (double rd_loc, double alpha, bool early, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | sineOffset (double rd_ut, double alpha, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | momentOfDepression (double rd_approx, double alpha, bool early, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | dawn (int rd, double alpha, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | dawn (int rd, double alpha, const QString &loc) |
static double | dusk (int rd, double alpha, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | dusk (int rd, double alpha, const QString &loc) |
static double | refraction (const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | refraction (const QString &loc) |
static double | sunrise (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | sunrise (int rd, const QString &loc) |
static double | sunset (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | sunset (int rd, const QString &loc) |
static double | dawnParis (int rd) |
For testing only: More... | |
static double | sunsetJerusalem (int rd) |
static double | jewishSabbathEnds (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | jewishSabbathEnds (int rd, const QString &loc) |
static double | jewishDusk (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | jewishDusk (int rd, const QString &loc) |
static double | observedLunarAltitude (double rd_ut, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | observedLunarAltitude (double rd_ut, const QString &loc) |
static double | moonrise (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | moonrise (int rd, const QString &loc) |
static double | moonset (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | moonset (int rd, const QString &loc) |
static double | moonriseMecca (int rd) |
For testing only: Delivers local standard time. | |
static double | moonsetMecca (int rd) |
static double | localZeroItalianHour (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | localZeroItalianHour (double rd_loc, const QString &loc) |
static double | localZeroSunsetHour (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | localZeroSunsetHour (double rd_loc, const QString &loc) |
static double | localZeroBabylonianHour (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | localZeroBabylonianHour (double rd_loc, const QString &loc) |
static double | localFromItalian (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | localFromItalian (double rd_loc, const QString &loc) |
static double | localFromSunsetHour (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | localFromSunsetHour (double rd_loc, const QString &loc) |
static double | localFromBabylonian (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | localFromBabylonian (double rd_loc, const QString &loc) |
static double | italianFromLocal (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | italianFromLocal (double rd_loc, const QString &loc) |
static double | sunsetHourFromLocal (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | sunsetHourFromLocal (double rd_loc, const QString &loc) |
static double | babylonianFromLocal (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | babylonianFromLocal (double rd_loc, const QString &loc) |
static double | daytimeTemporalHour (const int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | daytimeTemporalHour (const int rd, const QString &loc) |
static double | nighttimeTemporalHour (const int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | nighttimeTemporalHour (const int rd, const QString &loc) |
static double | standardFromSundial (const double rd_ut, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | standardFromSundial (const double rd_ut, const QString &loc) |
static double | arcOfLight (double rd_loc) |
static double | simpleBestView (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | simpleBestView (int rd, const QString &loc) |
static bool | shaukatCriterion (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static bool | shaukatCriterion (int rd, const QString &loc) |
static double | arcOfVision (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | arcOfVision (double rd_loc, const QString &loc) |
static double | bruinBestView (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | bruinBestView (int rd, const QString &loc) |
static bool | yallopCriterion (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static bool | yallopCriterion (int rd, const QString &loc) |
static double | lunarSemiDiameter (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | lunarSemiDiameter (double rd_loc, const QString &loc) |
static double | lunarDiameter (double rd_ut) |
static bool | visibleCrescent (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static bool | visibleCrescent (int rd, const QString &loc) |
static int | phasisOnOrBefore (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static int | phasisOnOrBefore (int rd, const QString &loc) |
static int | phasisOnOrAfter (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static int | phasisOnOrAfter (int rd, const QString &loc) |
Public Member Functions | |
AstroHinduSolarCalendar (double jd) | |
Public Member Functions inherited from NewHinduCalendar | |
NewHinduCalendar (double jd) | |
Public Member Functions inherited from OldHinduLuniSolarCalendar | |
OldHinduLuniSolarCalendar (double jd) | |
Public Member Functions inherited from OldHinduSolarCalendar | |
OldHinduSolarCalendar (double jd) | |
Public Member Functions inherited from Calendar | |
Calendar (double jd) | |
Additional Inherited Members | |
Public Types inherited from Calendar | |
enum | Day { sunday = 0 , monday , tuesday , wednesday , thursday , friday , saturday } |
enum from CC.UE-ch1.12. | |
enum | Season { spring = 0 , summer = 90 , autumn = 180 , winter = 270 } |
enum | Phase { newMoon = 0 , firstQuarter = 90 , fullMoon = 180 , lastQuarter = 270 } |
Signals inherited from Calendar | |
void | partsChanged (QVector< int > parts) |
void | jdChanged (double jd) |
Static Public Attributes inherited from Calendar | |
constexpr static const double | j2000 =730120.5 |
RD of J2000.0 (CC:UE 14.19) | |
constexpr static const double | jdEpoch =-1721424.5 |
constexpr static const double | mjdEpoch =678576.0 |
constexpr static const int | bogus =-1000000 |
static const StelLocation | urbana |
static const StelLocation | greenwich |
static const StelLocation | mecca |
static const StelLocation | tehran |
static const StelLocation | paris |
static const StelLocation | jerusalem |
static const StelLocation | acre |
static const StelLocation | padua |
Protected Attributes inherited from Calendar | |
double | JD |
QVector< int > | parts |
date expressed as JD(UT), including day fraction (ready to interact with the main application) | |
Static Protected Attributes inherited from NewHinduCalendar | |
constexpr static const double | hinduSiderealYear =365.+279457./1080000. |
(CC:UE 20.1) | |
constexpr static const double | hinduSiderealMonth =27.+4644439./14438334. |
(CC:UE 20.2) | |
constexpr static const double | hinduSynodicMonth =29.+7087771./13358334. |
(CC:UE 20.3) | |
constexpr static const int | hinduEpoch =-1132959 |
constexpr static const double | hinduCreation =hinduEpoch-1955880000.*hinduSiderealYear |
(CC:UE 20.8) | |
constexpr static const double | hinduAnomalisticYear =1577917828000./(4320000000.-387.) |
(CC:UE 20.9) | |
constexpr static const double | hinduAnomalisticMonth =1577917828./(57753336.-488199.) |
(CC:UE 20.10) | |
constexpr static const int | hinduSolarEra = 3179 |
Saka era (CC:UE 20.19) | |
constexpr static const int | hinduLunarEra = 3044 |
Vikrama era (CC:UE 20.22) | |
static const StelLocation | ujjain |
Sacred city in India to which we relate the calendar. (CC:UE 20.25) | |
static const StelLocation | ujjainUTC |
Sacred city in India to which we relate the calendar, with timezone set to UTC. More... | |
static const StelLocation | hinduLocation |
convention to one site to which we relate the calendar. More... | |
static QMap< int, QString > | lunarStations |
static QMap< int, QString > | yogas |
static QMap< int, QString > | karanas |
Static Protected Attributes inherited from OldHinduLuniSolarCalendar | |
constexpr static const double | aryaLunarMonth = 1577917500./53433336.0 |
constexpr static const double | aryaLunarDay = aryaLunarMonth/30.0 |
static QMap< int, QString > | monthNames |
Static Protected Attributes inherited from OldHinduSolarCalendar | |
static const int | hinduEpoch |
constexpr static const double | aryaSolarYear = 1577917500./4320000.0 |
constexpr static const double | aryaSolarMonth = aryaSolarYear/12.0 |
constexpr static const double | aryaJovianPeriod = 1577917500./364224.0 |
static QMap< int, QString > | weekDayNames |
static QMap< int, QString > | monthNames |
static QMap< int, QString > | jovianNames |
Static Protected Attributes inherited from Calendar | |
static constexpr double | meanTropicalYear =365.242189 |
date expressed in the numerical parts of the calendar (usually the smallest part represents a day count) More... | |
static constexpr double | meanSiderealYear =365.25636 |
(CC:UE 14.32) | |
static constexpr double | meanSynodicMonth =29.530588861 |
(CC:UE 14.44) | |
static constexpr bool | morning =true |
CC:UE 14.71. | |
static constexpr bool | evening =false |
CC:UE 14.73. | |
|
overrideslot |
get a stringlist of calendar date elements for the Hindu Astro Solar calendar sorted from the largest to the smallest.
{Year, Month, MonthName, Day, WeekDayName}
|
overrideslot |
set RD date from a vector of calendar date elements sorted from the largest to the smallest.
parts = {Year, Month[1...12], leapMonth[0|1], Day[1...30], leapDay[0|1] }
class BahaiArithmeticCalendar |
Functions for the Bahá´á Arithmetic calendar.
The Bahá´í faith, founded in 1844, uses its own calendar, based on the number 19. Until 2015 the calendar was based on the Gregorian calendar. This is the version implemented here.
Public Slots | |
void | retranslate () override |
void | setJD (double JD) override |
Set a calendar date from the Julian day number. | |
void | setDate (const QVector< int > &parts) override |
set date from a vector of calendar date elements sorted from the largest to the smallest. More... | |
QStringList | getDateStrings () const override |
get a stringlist of calendar date elements sorted from the largest to the smallest. More... | |
QString | getFormattedDateString () const override |
get a formatted complete string for a date | |
static int | fixedFromBahaiArithmetic (const QVector< int > &bahai5) |
Return R.D. of date given in the Bahai Arithmetic calendar. (CC:UE 16.3) | |
static QVector< int > | bahaiArithmeticFromFixed (int rd) |
Return R.D. More... | |
static int | bahaiNewYear (int gYear) |
Return R.D. More... | |
Public Slots inherited from Calendar | |
virtual void | retranslate () |
Translate e.g. stringlists of part names. | |
virtual void | setJD (double JD) |
Set a calendar date from the Julian day number Subclasses set JD and compute the parts and possibly other data This triggers the partsChanged() signal. | |
virtual double | getJD () const |
Get Julian day number from a calendar date. | |
virtual void | setDate (const QVector< int > &parts) |
set date from a vector of calendar date elements sorted from the largest to the smallest. More... | |
virtual QVector< int > | getDate () const |
get a vector of calendar date elements sorted from the largest to the smallest. More... | |
virtual QStringList | getDateStrings () const |
get a stringlist of calendar date elements sorted from the largest to the smallest. More... | |
virtual QString | getFormattedDateString () const |
get a formatted complete string for a date. The default implementation just concatenates all strings from getDateStrings() with a space in between. | |
static QString | getFormattedDateString (const QVector< int > &date, QString sep=" ") |
get a formatted complete string for a date. This implementation just converts and concatenates all ints with sep in between. | |
static double | rdNow () |
Mostly for testing: return RD of current time. | |
static double | rdJ2000 () |
static double | momentFromJD (double jd, bool respectUTCoffset) |
Interfacing function from Reingold/Dershowitz: Calendrical Calculations Returns a "moment" in RD that represents JD. More... | |
static int | fixedFromMoment (double rd) |
static double | timeFromMoment (double rd) |
static int | fixedFromJD (double jd, bool respectUTCoffset) |
Interfacing function from Reingold/Dershowitz: Calendrical Calculations Returns a fixed date in RD that represents noon of JD. More... | |
static double | momentFromMJD (double mjd) |
static double | jdFromMoment (double rd, bool respectUTCoffset) |
interfacing function from Reingold/Dershowitz: Calendrical Calculations Returns a JD from an RD "moment" (including fractions of day) Stellarium extension: optionally includes local time zone offset. More... | |
static double | jdFromFixed (double rd, bool respectUTCoffset) |
interfacing function from Reingold/Dershowitz: Calendrical Calculations Returns a JD from an RD "moment" (including fractions of day) Stellarium extension: optionally includes local time zone offset. More... | |
static double | mjdFromFixed (double rd) |
static int | dayOfWeekFromFixed (int rd) |
weekday from RD date. CC.UE(1.60). | |
static int | kdayOnOrBefore (const Calendar::Day k, const int rd) |
@Returns the R.D. of the nearest weekday k on or before rd | |
static int | kdayOnOrAfter (const Calendar::Day k, const int rd) |
@Returns the R.D. of the nearest weekday k on or after rd | |
static int | kdayNearest (const Calendar::Day k, const int rd) |
@Returns the R.D. of the nearest weekday k around rd | |
static int | kdayBefore (const Calendar::Day k, const int rd) |
@Returns the R.D. of the nearest weekday k before rd | |
static int | kdayAfter (const Calendar::Day k, const int rd) |
@Returns the R.D. of the nearest weekday k after rd | |
static double | modInterval (double x, double a, double b) |
Interval modulus, CC.UE 1.24. More... | |
static int | modInterval (int x, int a, int b) |
Interval modulus, CC.UE 1.24: This EXCLUDES the upper limit! Use StelUtils::amod(x, b) for CC's (x)mod[1..b]. | |
static int | rdCorrSum (const QVector< int > &parts, const QVector< int > &factors, int corr) |
Reingold-Dershowitz CC.UE 1.48. | |
int | rdCorrSum (QVector< int >factors, int corr) |
static QVector< int > | toRadix (int num, const QVector< int > &radix) |
Split integer to mixed-radix vector. Reingold-Dershowitz CC.UE 1.42. | |
static QVector< int > | intersectWithRange (const QVector< int > &cand, const QVector< int > &range) |
Intersect a collection of candidates against a range of values. More... | |
static StelLocation | location (const QString &name) |
retrieve a StelLocation from our database based on its name There is no check! Returned location may be default/empty. | |
static double | direction (const StelLocation &locFrom, const StelLocation &locTo) |
Return azimuth direction (degrees from North) from locFrom to locTo. | |
static double | direction (const QString &locFrom, const QString &locTo) |
static double | zoneFromLongitude (double lngDeg) |
static double | universalFromLocal (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | universalFromLocal (double rd_loc, const QString &loc) |
static double | localFromUniversal (double rd_ut, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | localFromUniversal (double rd_ut, const QString &loc) |
static double | standardFromUniversal (double rd_ut, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | standardFromUniversal (double rd_ut, const QString &loc) |
static double | universalFromStandard (double rd_zone, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | universalFromStandard (double rd_zone, const QString &loc) |
static double | standardFromLocal (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | standardFromLocal (double rd_loc, const QString &loc) |
static double | localFromStandard (double rd_zone, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | localFromStandard (double rd_zone, const QString &loc) |
static double | ephemerisCorrection (double rd) |
static double | dynamicalFromUniversal (double rd_ut) |
Correct rd_ut to Dynamical time. | |
static double | universalFromDynamical (double rd_dt) |
Correct rd_dt to Universal time. | |
static double | julianCenturies (double rd_ut) |
static double | equationOfTime (double rd_ut) |
static double | apparentFromLocal (double rd_local_mean, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | apparentFromLocal (double rd_local_mean, const QString &loc) |
static double | localFromApparent (double rd_local_app, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | localFromApparent (double rd_local_app, const QString &loc) |
static double | apparentFromUniversal (double rd_ut, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | apparentFromUniversal (double rd_ut, const QString &loc) |
static double | universalFromApparent (double rd_local_app, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | universalFromApparent (double rd_local_app, const QString &loc) |
static double | midnight (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | midnight (int rd, const QString &loc) |
static double | midday (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | midday (int rd, const QString &loc) |
static double | middayTehran (int rd) |
static double | siderealFromMoment (double rd_ut) |
static double | obliquity (double rd_ut) |
static double | declination (double rd_ut, double eclLat, double eclLong) |
static double | rightAscension (double rd_ut, double eclLat, double eclLong) |
static double | solarLongitude (double rd_ut) |
static double | nutation (double rd_ut) |
static double | aberration (double rd_ut) |
static double | solarLongitudeInv (double lng, double rdA, double rdB) |
binary search for the moment when solar longitude reaches lng in the time between rdA and rdB (used in CC:UE 14.36) | |
static double | solarLongitudeAfter (double lng, double rd_ut) |
static double | seasonInGregorian (Calendar::Season season, int gYear) |
static double | urbanaWinter (int gYear) |
static double | precession (double rd_dt) |
static double | solarAltitude (double rd_ut, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | solarAltitude (double rd_ut, const QString &loc) |
static double | estimatePriorSolarLongitude (double lambda, double rd_ut) |
static double | nthNewMoon (int n) |
static double | newMoonBefore (double rd_ut) |
static double | newMoonAtOrAfter (double rd_ut) |
static double | lunarLongitude (double rd_ut) |
static double | lunarLatitude (double rd_ut) |
static double | lunarDistance (double rd_ut) |
static double | meanLunarLongitude (double c) |
static double | lunarElongation (double c) |
static double | solarAnomaly (double c) |
static double | lunarAnomaly (double c) |
static double | moonNode (double c) |
static double | lunarNode (double rd_ut) |
static double | siderealLunarLongitude (double rd_ut, double siderealStart) |
static double | lunarPhase (double rd_ut) |
static double | lunarPhaseInv (double phi, double rdA, double rdB) |
binary search for the moment when lunar phase reaches phi in the time between rdA and rdB (CC:UE 14.57) | |
static double | lunarPhaseAtOrBefore (double phi, double rd_ut) |
static double | lunarPhaseAtOrAfter (double phi, double rd_ut) |
static double | lunarAltitude (double rd_ut, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | lunarAltitude (double rd_ut, const QString &loc) |
static double | lunarParallax (double rd_ut, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | lunarParallax (double rd_ut, const QString &loc) |
static double | topocentricLunarAltitude (double rd_ut, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | topocentricLunarAltitude (double rd_ut, const QString &loc) |
static double | approxMomentOfDepression (double rd_loc, double alpha, bool early, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | sineOffset (double rd_ut, double alpha, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | momentOfDepression (double rd_approx, double alpha, bool early, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | dawn (int rd, double alpha, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | dawn (int rd, double alpha, const QString &loc) |
static double | dusk (int rd, double alpha, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | dusk (int rd, double alpha, const QString &loc) |
static double | refraction (const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | refraction (const QString &loc) |
static double | sunrise (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | sunrise (int rd, const QString &loc) |
static double | sunset (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | sunset (int rd, const QString &loc) |
static double | dawnParis (int rd) |
For testing only: More... | |
static double | sunsetJerusalem (int rd) |
static double | jewishSabbathEnds (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | jewishSabbathEnds (int rd, const QString &loc) |
static double | jewishDusk (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | jewishDusk (int rd, const QString &loc) |
static double | observedLunarAltitude (double rd_ut, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | observedLunarAltitude (double rd_ut, const QString &loc) |
static double | moonrise (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | moonrise (int rd, const QString &loc) |
static double | moonset (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | moonset (int rd, const QString &loc) |
static double | moonriseMecca (int rd) |
For testing only: Delivers local standard time. | |
static double | moonsetMecca (int rd) |
static double | localZeroItalianHour (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | localZeroItalianHour (double rd_loc, const QString &loc) |
static double | localZeroSunsetHour (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | localZeroSunsetHour (double rd_loc, const QString &loc) |
static double | localZeroBabylonianHour (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | localZeroBabylonianHour (double rd_loc, const QString &loc) |
static double | localFromItalian (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | localFromItalian (double rd_loc, const QString &loc) |
static double | localFromSunsetHour (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | localFromSunsetHour (double rd_loc, const QString &loc) |
static double | localFromBabylonian (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | localFromBabylonian (double rd_loc, const QString &loc) |
static double | italianFromLocal (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | italianFromLocal (double rd_loc, const QString &loc) |
static double | sunsetHourFromLocal (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | sunsetHourFromLocal (double rd_loc, const QString &loc) |
static double | babylonianFromLocal (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | babylonianFromLocal (double rd_loc, const QString &loc) |
static double | daytimeTemporalHour (const int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | daytimeTemporalHour (const int rd, const QString &loc) |
static double | nighttimeTemporalHour (const int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | nighttimeTemporalHour (const int rd, const QString &loc) |
static double | standardFromSundial (const double rd_ut, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | standardFromSundial (const double rd_ut, const QString &loc) |
static double | arcOfLight (double rd_loc) |
static double | simpleBestView (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | simpleBestView (int rd, const QString &loc) |
static bool | shaukatCriterion (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static bool | shaukatCriterion (int rd, const QString &loc) |
static double | arcOfVision (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | arcOfVision (double rd_loc, const QString &loc) |
static double | bruinBestView (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | bruinBestView (int rd, const QString &loc) |
static bool | yallopCriterion (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static bool | yallopCriterion (int rd, const QString &loc) |
static double | lunarSemiDiameter (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | lunarSemiDiameter (double rd_loc, const QString &loc) |
static double | lunarDiameter (double rd_ut) |
static bool | visibleCrescent (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static bool | visibleCrescent (int rd, const QString &loc) |
static int | phasisOnOrBefore (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static int | phasisOnOrBefore (int rd, const QString &loc) |
static int | phasisOnOrAfter (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static int | phasisOnOrAfter (int rd, const QString &loc) |
Public Member Functions | |
BahaiArithmeticCalendar (double jd) | |
Public Member Functions inherited from Calendar | |
Calendar (double jd) | |
Static Public Attributes | |
static const int | bahaiEpoch |
constexpr static const int | ayyam_i_Ha = 0 |
Static Public Attributes inherited from Calendar | |
constexpr static const double | j2000 =730120.5 |
RD of J2000.0 (CC:UE 14.19) | |
constexpr static const double | jdEpoch =-1721424.5 |
constexpr static const double | mjdEpoch =678576.0 |
constexpr static const int | bogus =-1000000 |
static const StelLocation | urbana |
static const StelLocation | greenwich |
static const StelLocation | mecca |
static const StelLocation | tehran |
static const StelLocation | paris |
static const StelLocation | jerusalem |
static const StelLocation | acre |
static const StelLocation | padua |
Static Protected Attributes | |
static QMap< int, QString > | weekDayNames |
static QMap< int, QString > | cycleNames |
static QMap< int, QString > | yearNames |
Static Protected Attributes inherited from Calendar | |
static constexpr double | meanTropicalYear =365.242189 |
date expressed in the numerical parts of the calendar (usually the smallest part represents a day count) More... | |
static constexpr double | meanSiderealYear =365.25636 |
(CC:UE 14.32) | |
static constexpr double | meanSynodicMonth =29.530588861 |
(CC:UE 14.44) | |
static constexpr bool | morning =true |
CC:UE 14.71. | |
static constexpr bool | evening =false |
CC:UE 14.73. | |
Additional Inherited Members | |
Public Types inherited from Calendar | |
enum | Day { sunday = 0 , monday , tuesday , wednesday , thursday , friday , saturday } |
enum from CC.UE-ch1.12. | |
enum | Season { spring = 0 , summer = 90 , autumn = 180 , winter = 270 } |
enum | Phase { newMoon = 0 , firstQuarter = 90 , fullMoon = 180 , lastQuarter = 270 } |
Signals inherited from Calendar | |
void | partsChanged (QVector< int > parts) |
void | jdChanged (double jd) |
Protected Attributes inherited from Calendar | |
double | JD |
QVector< int > | parts |
date expressed as JD(UT), including day fraction (ready to interact with the main application) | |
|
staticslot |
Return R.D.
of date given in the Bahai Arithmetic calendar. (CC:UE 16.4) return major-cycle-year-month-day for RD date
|
staticslot |
Return R.D.
of new year date in the Bahai Arithmetic for the given Gregorian year. (CC:UE 16.10) return RD date
|
overrideslot |
get a stringlist of calendar date elements sorted from the largest to the smallest.
Year, Month, MonthName, Day, DayName
|
overrideslot |
set date from a vector of calendar date elements sorted from the largest to the smallest.
Year-Month[1...12]-Day[1...31]
class BahaiAstronomicalCalendar |
Functions for the Bahá´á Astronomical calendar.
The Bahá´í faith, founded in 1844, uses its own calendar, based on the number 19. Until 2015 the calendar was based on the Gregorian calendar, then a more accurate astronomical calendar was decreed. This is the version implemented here.
Public Slots | |
void | setJD (double JD) override |
Set a calendar date from the Julian day number. | |
void | setDate (const QVector< int > &parts) override |
set date from a vector of calendar date elements sorted from the largest to the smallest. More... | |
QStringList | getDateStrings () const override |
get a stringlist of calendar date elements sorted from the largest to the smallest. More... | |
static double | bahaiSunset (int rd) |
Return moment of sunset in Tehran as defined by Bahai astronomical calendar rules. (CC:UE 16.6) | |
static int | astroBahaiNewYearOnOrBefore (int rd) |
Return RD of New year (CC:UE 16.7) | |
static int | fixedFromBahaiAstronomical (const QVector< int > &bahai5) |
Return R.D. of date given in the Bahai Astronomical calendar. (CC:UE 16.8) | |
static QVector< int > | bahaiAstronomicalFromFixed (int rd) |
Return R.D. More... | |
static int | nawRuz (int gYear) |
Return R.D. of new year date in the Bahai Astronomical calendar for the given Gregorian year. (CC:UE 16.11) | |
static int | feastOfRidvan (int gYear) |
Return R.D. of Ridvan in the Bahai Astronomical calendar for the given Gregorian year. (CC:UE 16.12) | |
static int | birthOfTheBab (int gYear) |
Return R.D. of the birth of the Bab in the Bahai Astronomical calendar for the given Gregorian year. (CC:UE 16.13) | |
Public Slots inherited from BahaiArithmeticCalendar | |
void | retranslate () override |
void | setJD (double JD) override |
Set a calendar date from the Julian day number. | |
void | setDate (const QVector< int > &parts) override |
set date from a vector of calendar date elements sorted from the largest to the smallest. More... | |
QStringList | getDateStrings () const override |
get a stringlist of calendar date elements sorted from the largest to the smallest. More... | |
QString | getFormattedDateString () const override |
get a formatted complete string for a date | |
static int | fixedFromBahaiArithmetic (const QVector< int > &bahai5) |
Return R.D. of date given in the Bahai Arithmetic calendar. (CC:UE 16.3) | |
static QVector< int > | bahaiArithmeticFromFixed (int rd) |
Return R.D. More... | |
static int | bahaiNewYear (int gYear) |
Return R.D. More... | |
Public Slots inherited from Calendar | |
virtual void | retranslate () |
Translate e.g. stringlists of part names. | |
virtual void | setJD (double JD) |
Set a calendar date from the Julian day number Subclasses set JD and compute the parts and possibly other data This triggers the partsChanged() signal. | |
virtual double | getJD () const |
Get Julian day number from a calendar date. | |
virtual void | setDate (const QVector< int > &parts) |
set date from a vector of calendar date elements sorted from the largest to the smallest. More... | |
virtual QVector< int > | getDate () const |
get a vector of calendar date elements sorted from the largest to the smallest. More... | |
virtual QStringList | getDateStrings () const |
get a stringlist of calendar date elements sorted from the largest to the smallest. More... | |
virtual QString | getFormattedDateString () const |
get a formatted complete string for a date. The default implementation just concatenates all strings from getDateStrings() with a space in between. | |
static QString | getFormattedDateString (const QVector< int > &date, QString sep=" ") |
get a formatted complete string for a date. This implementation just converts and concatenates all ints with sep in between. | |
static double | rdNow () |
Mostly for testing: return RD of current time. | |
static double | rdJ2000 () |
static double | momentFromJD (double jd, bool respectUTCoffset) |
Interfacing function from Reingold/Dershowitz: Calendrical Calculations Returns a "moment" in RD that represents JD. More... | |
static int | fixedFromMoment (double rd) |
static double | timeFromMoment (double rd) |
static int | fixedFromJD (double jd, bool respectUTCoffset) |
Interfacing function from Reingold/Dershowitz: Calendrical Calculations Returns a fixed date in RD that represents noon of JD. More... | |
static double | momentFromMJD (double mjd) |
static double | jdFromMoment (double rd, bool respectUTCoffset) |
interfacing function from Reingold/Dershowitz: Calendrical Calculations Returns a JD from an RD "moment" (including fractions of day) Stellarium extension: optionally includes local time zone offset. More... | |
static double | jdFromFixed (double rd, bool respectUTCoffset) |
interfacing function from Reingold/Dershowitz: Calendrical Calculations Returns a JD from an RD "moment" (including fractions of day) Stellarium extension: optionally includes local time zone offset. More... | |
static double | mjdFromFixed (double rd) |
static int | dayOfWeekFromFixed (int rd) |
weekday from RD date. CC.UE(1.60). | |
static int | kdayOnOrBefore (const Calendar::Day k, const int rd) |
@Returns the R.D. of the nearest weekday k on or before rd | |
static int | kdayOnOrAfter (const Calendar::Day k, const int rd) |
@Returns the R.D. of the nearest weekday k on or after rd | |
static int | kdayNearest (const Calendar::Day k, const int rd) |
@Returns the R.D. of the nearest weekday k around rd | |
static int | kdayBefore (const Calendar::Day k, const int rd) |
@Returns the R.D. of the nearest weekday k before rd | |
static int | kdayAfter (const Calendar::Day k, const int rd) |
@Returns the R.D. of the nearest weekday k after rd | |
static double | modInterval (double x, double a, double b) |
Interval modulus, CC.UE 1.24. More... | |
static int | modInterval (int x, int a, int b) |
Interval modulus, CC.UE 1.24: This EXCLUDES the upper limit! Use StelUtils::amod(x, b) for CC's (x)mod[1..b]. | |
static int | rdCorrSum (const QVector< int > &parts, const QVector< int > &factors, int corr) |
Reingold-Dershowitz CC.UE 1.48. | |
int | rdCorrSum (QVector< int >factors, int corr) |
static QVector< int > | toRadix (int num, const QVector< int > &radix) |
Split integer to mixed-radix vector. Reingold-Dershowitz CC.UE 1.42. | |
static QVector< int > | intersectWithRange (const QVector< int > &cand, const QVector< int > &range) |
Intersect a collection of candidates against a range of values. More... | |
static StelLocation | location (const QString &name) |
retrieve a StelLocation from our database based on its name There is no check! Returned location may be default/empty. | |
static double | direction (const StelLocation &locFrom, const StelLocation &locTo) |
Return azimuth direction (degrees from North) from locFrom to locTo. | |
static double | direction (const QString &locFrom, const QString &locTo) |
static double | zoneFromLongitude (double lngDeg) |
static double | universalFromLocal (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | universalFromLocal (double rd_loc, const QString &loc) |
static double | localFromUniversal (double rd_ut, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | localFromUniversal (double rd_ut, const QString &loc) |
static double | standardFromUniversal (double rd_ut, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | standardFromUniversal (double rd_ut, const QString &loc) |
static double | universalFromStandard (double rd_zone, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | universalFromStandard (double rd_zone, const QString &loc) |
static double | standardFromLocal (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | standardFromLocal (double rd_loc, const QString &loc) |
static double | localFromStandard (double rd_zone, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | localFromStandard (double rd_zone, const QString &loc) |
static double | ephemerisCorrection (double rd) |
static double | dynamicalFromUniversal (double rd_ut) |
Correct rd_ut to Dynamical time. | |
static double | universalFromDynamical (double rd_dt) |
Correct rd_dt to Universal time. | |
static double | julianCenturies (double rd_ut) |
static double | equationOfTime (double rd_ut) |
static double | apparentFromLocal (double rd_local_mean, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | apparentFromLocal (double rd_local_mean, const QString &loc) |
static double | localFromApparent (double rd_local_app, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | localFromApparent (double rd_local_app, const QString &loc) |
static double | apparentFromUniversal (double rd_ut, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | apparentFromUniversal (double rd_ut, const QString &loc) |
static double | universalFromApparent (double rd_local_app, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | universalFromApparent (double rd_local_app, const QString &loc) |
static double | midnight (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | midnight (int rd, const QString &loc) |
static double | midday (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | midday (int rd, const QString &loc) |
static double | middayTehran (int rd) |
static double | siderealFromMoment (double rd_ut) |
static double | obliquity (double rd_ut) |
static double | declination (double rd_ut, double eclLat, double eclLong) |
static double | rightAscension (double rd_ut, double eclLat, double eclLong) |
static double | solarLongitude (double rd_ut) |
static double | nutation (double rd_ut) |
static double | aberration (double rd_ut) |
static double | solarLongitudeInv (double lng, double rdA, double rdB) |
binary search for the moment when solar longitude reaches lng in the time between rdA and rdB (used in CC:UE 14.36) | |
static double | solarLongitudeAfter (double lng, double rd_ut) |
static double | seasonInGregorian (Calendar::Season season, int gYear) |
static double | urbanaWinter (int gYear) |
static double | precession (double rd_dt) |
static double | solarAltitude (double rd_ut, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | solarAltitude (double rd_ut, const QString &loc) |
static double | estimatePriorSolarLongitude (double lambda, double rd_ut) |
static double | nthNewMoon (int n) |
static double | newMoonBefore (double rd_ut) |
static double | newMoonAtOrAfter (double rd_ut) |
static double | lunarLongitude (double rd_ut) |
static double | lunarLatitude (double rd_ut) |
static double | lunarDistance (double rd_ut) |
static double | meanLunarLongitude (double c) |
static double | lunarElongation (double c) |
static double | solarAnomaly (double c) |
static double | lunarAnomaly (double c) |
static double | moonNode (double c) |
static double | lunarNode (double rd_ut) |
static double | siderealLunarLongitude (double rd_ut, double siderealStart) |
static double | lunarPhase (double rd_ut) |
static double | lunarPhaseInv (double phi, double rdA, double rdB) |
binary search for the moment when lunar phase reaches phi in the time between rdA and rdB (CC:UE 14.57) | |
static double | lunarPhaseAtOrBefore (double phi, double rd_ut) |
static double | lunarPhaseAtOrAfter (double phi, double rd_ut) |
static double | lunarAltitude (double rd_ut, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | lunarAltitude (double rd_ut, const QString &loc) |
static double | lunarParallax (double rd_ut, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | lunarParallax (double rd_ut, const QString &loc) |
static double | topocentricLunarAltitude (double rd_ut, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | topocentricLunarAltitude (double rd_ut, const QString &loc) |
static double | approxMomentOfDepression (double rd_loc, double alpha, bool early, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | sineOffset (double rd_ut, double alpha, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | momentOfDepression (double rd_approx, double alpha, bool early, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | dawn (int rd, double alpha, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | dawn (int rd, double alpha, const QString &loc) |
static double | dusk (int rd, double alpha, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | dusk (int rd, double alpha, const QString &loc) |
static double | refraction (const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | refraction (const QString &loc) |
static double | sunrise (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | sunrise (int rd, const QString &loc) |
static double | sunset (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | sunset (int rd, const QString &loc) |
static double | dawnParis (int rd) |
For testing only: More... | |
static double | sunsetJerusalem (int rd) |
static double | jewishSabbathEnds (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | jewishSabbathEnds (int rd, const QString &loc) |
static double | jewishDusk (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | jewishDusk (int rd, const QString &loc) |
static double | observedLunarAltitude (double rd_ut, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | observedLunarAltitude (double rd_ut, const QString &loc) |
static double | moonrise (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | moonrise (int rd, const QString &loc) |
static double | moonset (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | moonset (int rd, const QString &loc) |
static double | moonriseMecca (int rd) |
For testing only: Delivers local standard time. | |
static double | moonsetMecca (int rd) |
static double | localZeroItalianHour (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | localZeroItalianHour (double rd_loc, const QString &loc) |
static double | localZeroSunsetHour (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | localZeroSunsetHour (double rd_loc, const QString &loc) |
static double | localZeroBabylonianHour (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | localZeroBabylonianHour (double rd_loc, const QString &loc) |
static double | localFromItalian (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | localFromItalian (double rd_loc, const QString &loc) |
static double | localFromSunsetHour (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | localFromSunsetHour (double rd_loc, const QString &loc) |
static double | localFromBabylonian (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | localFromBabylonian (double rd_loc, const QString &loc) |
static double | italianFromLocal (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | italianFromLocal (double rd_loc, const QString &loc) |
static double | sunsetHourFromLocal (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | sunsetHourFromLocal (double rd_loc, const QString &loc) |
static double | babylonianFromLocal (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | babylonianFromLocal (double rd_loc, const QString &loc) |
static double | daytimeTemporalHour (const int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | daytimeTemporalHour (const int rd, const QString &loc) |
static double | nighttimeTemporalHour (const int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | nighttimeTemporalHour (const int rd, const QString &loc) |
static double | standardFromSundial (const double rd_ut, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | standardFromSundial (const double rd_ut, const QString &loc) |
static double | arcOfLight (double rd_loc) |
static double | simpleBestView (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | simpleBestView (int rd, const QString &loc) |
static bool | shaukatCriterion (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static bool | shaukatCriterion (int rd, const QString &loc) |
static double | arcOfVision (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | arcOfVision (double rd_loc, const QString &loc) |
static double | bruinBestView (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | bruinBestView (int rd, const QString &loc) |
static bool | yallopCriterion (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static bool | yallopCriterion (int rd, const QString &loc) |
static double | lunarSemiDiameter (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | lunarSemiDiameter (double rd_loc, const QString &loc) |
static double | lunarDiameter (double rd_ut) |
static bool | visibleCrescent (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static bool | visibleCrescent (int rd, const QString &loc) |
static int | phasisOnOrBefore (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static int | phasisOnOrBefore (int rd, const QString &loc) |
static int | phasisOnOrAfter (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static int | phasisOnOrAfter (int rd, const QString &loc) |
Public Member Functions | |
BahaiAstronomicalCalendar (double jd) | |
Public Member Functions inherited from BahaiArithmeticCalendar | |
BahaiArithmeticCalendar (double jd) | |
Public Member Functions inherited from Calendar | |
Calendar (double jd) | |
Additional Inherited Members | |
Public Types inherited from Calendar | |
enum | Day { sunday = 0 , monday , tuesday , wednesday , thursday , friday , saturday } |
enum from CC.UE-ch1.12. | |
enum | Season { spring = 0 , summer = 90 , autumn = 180 , winter = 270 } |
enum | Phase { newMoon = 0 , firstQuarter = 90 , fullMoon = 180 , lastQuarter = 270 } |
Signals inherited from Calendar | |
void | partsChanged (QVector< int > parts) |
void | jdChanged (double jd) |
Static Public Attributes inherited from BahaiArithmeticCalendar | |
static const int | bahaiEpoch |
constexpr static const int | ayyam_i_Ha = 0 |
Static Public Attributes inherited from Calendar | |
constexpr static const double | j2000 =730120.5 |
RD of J2000.0 (CC:UE 14.19) | |
constexpr static const double | jdEpoch =-1721424.5 |
constexpr static const double | mjdEpoch =678576.0 |
constexpr static const int | bogus =-1000000 |
static const StelLocation | urbana |
static const StelLocation | greenwich |
static const StelLocation | mecca |
static const StelLocation | tehran |
static const StelLocation | paris |
static const StelLocation | jerusalem |
static const StelLocation | acre |
static const StelLocation | padua |
Protected Attributes inherited from Calendar | |
double | JD |
QVector< int > | parts |
date expressed as JD(UT), including day fraction (ready to interact with the main application) | |
Static Protected Attributes inherited from BahaiArithmeticCalendar | |
static QMap< int, QString > | weekDayNames |
static QMap< int, QString > | cycleNames |
static QMap< int, QString > | yearNames |
Static Protected Attributes inherited from Calendar | |
static constexpr double | meanTropicalYear =365.242189 |
date expressed in the numerical parts of the calendar (usually the smallest part represents a day count) More... | |
static constexpr double | meanSiderealYear =365.25636 |
(CC:UE 14.32) | |
static constexpr double | meanSynodicMonth =29.530588861 |
(CC:UE 14.44) | |
static constexpr bool | morning =true |
CC:UE 14.71. | |
static constexpr bool | evening =false |
CC:UE 14.73. | |
|
staticslot |
Return R.D.
of date given in the Bahai Astronomical calendar. (CC:UE 16.9) return major-cycle-year-month-day for RD date
|
overrideslot |
get a stringlist of calendar date elements sorted from the largest to the smallest.
Year, Month, MonthName, Day, DayName
|
overrideslot |
set date from a vector of calendar date elements sorted from the largest to the smallest.
Year-Month[1...12]-Day[1...31]
class Calendar |
Superclass for all calendars, capable of a multitude of astronomical calculations.
Stellarium uses Julian Day numbers internally, and the conventional approach of using the Gregorian calendar for dates after 1582-10-15. For dates before that, the Julian calendar is used, in the form finalized by Augustus and running unchanged since 8 A.D. Astronomical year counting implies having a year 0, while some calendars adhere to historical counting where 1 B.C. immediately precedes 1 A.D. Some European countries, especially the Protestant countries, delayed the calendar switch well into the 18th century. Other cultures have various other calendar schemes. All calendars implemented here have a numerical vector of integer time elements and may have individual string lists for names of elements like "week days" and "months". If the pattern of weeks and months does not apply, the names may refer to other structural elements.
The most important source used here is: Edward M. Reingold, Nachum Dershowitz: Calendrical Calculations in various editions (1997-2018), referred to as CC. In particular CC:ME=2nd "Millennium edition", CC:UE=4th "Ultimate Edition", with amendments published until January 2022. It describes the Gregorian calendar with year zero, and the Julian without. In this plugin only, we adhere to this convention to finally have all possible variations of dates. It does not use JD directly but a number called Rata Die (RD=JD-1721424.5), a day count starting at midnight of January 1st, 1 AD (Proleptic Gregorian). with functions including "fixed" in their names. Our calendar subclasses can use Calendar::fixedFromJD(jd) / Calendar::jdFromFixed(rd). Other functions with "moment" in their names use double arguments which are RD with fractions of day. Argument names with "_ut" added indicate the RD is given in UT, not local time.
Most functions are static, with names derived from the functions given in Lisp in CC:UE. Most calendars have dates which can be described in lists of integers. Some functions require a StelLocation argument. For accessibility as Stellarium scripting functions, argument order was changed to place the location argument as last and declare it with a default value of the current location, so that it can be used in scripting. Currently, other, non-default StelLocation arguments cannot be used with scripting.
Public Types | |
enum | Day { sunday = 0 , monday , tuesday , wednesday , thursday , friday , saturday } |
enum from CC.UE-ch1.12. | |
enum | Season { spring = 0 , summer = 90 , autumn = 180 , winter = 270 } |
enum | Phase { newMoon = 0 , firstQuarter = 90 , fullMoon = 180 , lastQuarter = 270 } |
Public Slots | |
virtual void | retranslate () |
Translate e.g. stringlists of part names. | |
virtual void | setJD (double JD) |
Set a calendar date from the Julian day number Subclasses set JD and compute the parts and possibly other data This triggers the partsChanged() signal. | |
virtual double | getJD () const |
Get Julian day number from a calendar date. | |
virtual void | setDate (const QVector< int > &parts) |
set date from a vector of calendar date elements sorted from the largest to the smallest. More... | |
virtual QVector< int > | getDate () const |
get a vector of calendar date elements sorted from the largest to the smallest. More... | |
virtual QStringList | getDateStrings () const |
get a stringlist of calendar date elements sorted from the largest to the smallest. More... | |
virtual QString | getFormattedDateString () const |
get a formatted complete string for a date. The default implementation just concatenates all strings from getDateStrings() with a space in between. | |
static QString | getFormattedDateString (const QVector< int > &date, QString sep=" ") |
get a formatted complete string for a date. This implementation just converts and concatenates all ints with sep in between. | |
static double | rdNow () |
Mostly for testing: return RD of current time. | |
static double | rdJ2000 () |
static double | momentFromJD (double jd, bool respectUTCoffset) |
Interfacing function from Reingold/Dershowitz: Calendrical Calculations Returns a "moment" in RD that represents JD. More... | |
static int | fixedFromMoment (double rd) |
static double | timeFromMoment (double rd) |
static int | fixedFromJD (double jd, bool respectUTCoffset) |
Interfacing function from Reingold/Dershowitz: Calendrical Calculations Returns a fixed date in RD that represents noon of JD. More... | |
static double | momentFromMJD (double mjd) |
static double | jdFromMoment (double rd, bool respectUTCoffset) |
interfacing function from Reingold/Dershowitz: Calendrical Calculations Returns a JD from an RD "moment" (including fractions of day) Stellarium extension: optionally includes local time zone offset. More... | |
static double | jdFromFixed (double rd, bool respectUTCoffset) |
interfacing function from Reingold/Dershowitz: Calendrical Calculations Returns a JD from an RD "moment" (including fractions of day) Stellarium extension: optionally includes local time zone offset. More... | |
static double | mjdFromFixed (double rd) |
static int | dayOfWeekFromFixed (int rd) |
weekday from RD date. CC.UE(1.60). | |
static int | kdayOnOrBefore (const Calendar::Day k, const int rd) |
@Returns the R.D. of the nearest weekday k on or before rd | |
static int | kdayOnOrAfter (const Calendar::Day k, const int rd) |
@Returns the R.D. of the nearest weekday k on or after rd | |
static int | kdayNearest (const Calendar::Day k, const int rd) |
@Returns the R.D. of the nearest weekday k around rd | |
static int | kdayBefore (const Calendar::Day k, const int rd) |
@Returns the R.D. of the nearest weekday k before rd | |
static int | kdayAfter (const Calendar::Day k, const int rd) |
@Returns the R.D. of the nearest weekday k after rd | |
static double | modInterval (double x, double a, double b) |
Interval modulus, CC.UE 1.24. More... | |
static int | modInterval (int x, int a, int b) |
Interval modulus, CC.UE 1.24: This EXCLUDES the upper limit! Use StelUtils::amod(x, b) for CC's (x)mod[1..b]. | |
static int | rdCorrSum (const QVector< int > &parts, const QVector< int > &factors, int corr) |
Reingold-Dershowitz CC.UE 1.48. | |
int | rdCorrSum (QVector< int >factors, int corr) |
static QVector< int > | toRadix (int num, const QVector< int > &radix) |
Split integer to mixed-radix vector. Reingold-Dershowitz CC.UE 1.42. | |
static QVector< int > | intersectWithRange (const QVector< int > &cand, const QVector< int > &range) |
Intersect a collection of candidates against a range of values. More... | |
static StelLocation | location (const QString &name) |
retrieve a StelLocation from our database based on its name There is no check! Returned location may be default/empty. | |
static double | direction (const StelLocation &locFrom, const StelLocation &locTo) |
Return azimuth direction (degrees from North) from locFrom to locTo. | |
static double | direction (const QString &locFrom, const QString &locTo) |
static double | zoneFromLongitude (double lngDeg) |
static double | universalFromLocal (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | universalFromLocal (double rd_loc, const QString &loc) |
static double | localFromUniversal (double rd_ut, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | localFromUniversal (double rd_ut, const QString &loc) |
static double | standardFromUniversal (double rd_ut, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | standardFromUniversal (double rd_ut, const QString &loc) |
static double | universalFromStandard (double rd_zone, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | universalFromStandard (double rd_zone, const QString &loc) |
static double | standardFromLocal (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | standardFromLocal (double rd_loc, const QString &loc) |
static double | localFromStandard (double rd_zone, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | localFromStandard (double rd_zone, const QString &loc) |
static double | ephemerisCorrection (double rd) |
static double | dynamicalFromUniversal (double rd_ut) |
Correct rd_ut to Dynamical time. | |
static double | universalFromDynamical (double rd_dt) |
Correct rd_dt to Universal time. | |
static double | julianCenturies (double rd_ut) |
static double | equationOfTime (double rd_ut) |
static double | apparentFromLocal (double rd_local_mean, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | apparentFromLocal (double rd_local_mean, const QString &loc) |
static double | localFromApparent (double rd_local_app, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | localFromApparent (double rd_local_app, const QString &loc) |
static double | apparentFromUniversal (double rd_ut, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | apparentFromUniversal (double rd_ut, const QString &loc) |
static double | universalFromApparent (double rd_local_app, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | universalFromApparent (double rd_local_app, const QString &loc) |
static double | midnight (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | midnight (int rd, const QString &loc) |
static double | midday (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | midday (int rd, const QString &loc) |
static double | middayTehran (int rd) |
static double | siderealFromMoment (double rd_ut) |
static double | obliquity (double rd_ut) |
static double | declination (double rd_ut, double eclLat, double eclLong) |
static double | rightAscension (double rd_ut, double eclLat, double eclLong) |
static double | solarLongitude (double rd_ut) |
static double | nutation (double rd_ut) |
static double | aberration (double rd_ut) |
static double | solarLongitudeInv (double lng, double rdA, double rdB) |
binary search for the moment when solar longitude reaches lng in the time between rdA and rdB (used in CC:UE 14.36) | |
static double | solarLongitudeAfter (double lng, double rd_ut) |
static double | seasonInGregorian (Calendar::Season season, int gYear) |
static double | urbanaWinter (int gYear) |
static double | precession (double rd_dt) |
static double | solarAltitude (double rd_ut, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | solarAltitude (double rd_ut, const QString &loc) |
static double | estimatePriorSolarLongitude (double lambda, double rd_ut) |
static double | nthNewMoon (int n) |
static double | newMoonBefore (double rd_ut) |
static double | newMoonAtOrAfter (double rd_ut) |
static double | lunarLongitude (double rd_ut) |
static double | lunarLatitude (double rd_ut) |
static double | lunarDistance (double rd_ut) |
static double | meanLunarLongitude (double c) |
static double | lunarElongation (double c) |
static double | solarAnomaly (double c) |
static double | lunarAnomaly (double c) |
static double | moonNode (double c) |
static double | lunarNode (double rd_ut) |
static double | siderealLunarLongitude (double rd_ut, double siderealStart) |
static double | lunarPhase (double rd_ut) |
static double | lunarPhaseInv (double phi, double rdA, double rdB) |
binary search for the moment when lunar phase reaches phi in the time between rdA and rdB (CC:UE 14.57) | |
static double | lunarPhaseAtOrBefore (double phi, double rd_ut) |
static double | lunarPhaseAtOrAfter (double phi, double rd_ut) |
static double | lunarAltitude (double rd_ut, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | lunarAltitude (double rd_ut, const QString &loc) |
static double | lunarParallax (double rd_ut, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | lunarParallax (double rd_ut, const QString &loc) |
static double | topocentricLunarAltitude (double rd_ut, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | topocentricLunarAltitude (double rd_ut, const QString &loc) |
static double | approxMomentOfDepression (double rd_loc, double alpha, bool early, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | sineOffset (double rd_ut, double alpha, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | momentOfDepression (double rd_approx, double alpha, bool early, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | dawn (int rd, double alpha, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | dawn (int rd, double alpha, const QString &loc) |
static double | dusk (int rd, double alpha, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | dusk (int rd, double alpha, const QString &loc) |
static double | refraction (const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | refraction (const QString &loc) |
static double | sunrise (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | sunrise (int rd, const QString &loc) |
static double | sunset (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | sunset (int rd, const QString &loc) |
static double | dawnParis (int rd) |
For testing only: More... | |
static double | sunsetJerusalem (int rd) |
static double | jewishSabbathEnds (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | jewishSabbathEnds (int rd, const QString &loc) |
static double | jewishDusk (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | jewishDusk (int rd, const QString &loc) |
static double | observedLunarAltitude (double rd_ut, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | observedLunarAltitude (double rd_ut, const QString &loc) |
static double | moonrise (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | moonrise (int rd, const QString &loc) |
static double | moonset (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | moonset (int rd, const QString &loc) |
static double | moonriseMecca (int rd) |
For testing only: Delivers local standard time. | |
static double | moonsetMecca (int rd) |
static double | localZeroItalianHour (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | localZeroItalianHour (double rd_loc, const QString &loc) |
static double | localZeroSunsetHour (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | localZeroSunsetHour (double rd_loc, const QString &loc) |
static double | localZeroBabylonianHour (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | localZeroBabylonianHour (double rd_loc, const QString &loc) |
static double | localFromItalian (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | localFromItalian (double rd_loc, const QString &loc) |
static double | localFromSunsetHour (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | localFromSunsetHour (double rd_loc, const QString &loc) |
static double | localFromBabylonian (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | localFromBabylonian (double rd_loc, const QString &loc) |
static double | italianFromLocal (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | italianFromLocal (double rd_loc, const QString &loc) |
static double | sunsetHourFromLocal (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | sunsetHourFromLocal (double rd_loc, const QString &loc) |
static double | babylonianFromLocal (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | babylonianFromLocal (double rd_loc, const QString &loc) |
static double | daytimeTemporalHour (const int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | daytimeTemporalHour (const int rd, const QString &loc) |
static double | nighttimeTemporalHour (const int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | nighttimeTemporalHour (const int rd, const QString &loc) |
static double | standardFromSundial (const double rd_ut, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | standardFromSundial (const double rd_ut, const QString &loc) |
static double | arcOfLight (double rd_loc) |
static double | simpleBestView (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | simpleBestView (int rd, const QString &loc) |
static bool | shaukatCriterion (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static bool | shaukatCriterion (int rd, const QString &loc) |
static double | arcOfVision (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | arcOfVision (double rd_loc, const QString &loc) |
static double | bruinBestView (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | bruinBestView (int rd, const QString &loc) |
static bool | yallopCriterion (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static bool | yallopCriterion (int rd, const QString &loc) |
static double | lunarSemiDiameter (double rd_loc, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static double | lunarSemiDiameter (double rd_loc, const QString &loc) |
static double | lunarDiameter (double rd_ut) |
static bool | visibleCrescent (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static bool | visibleCrescent (int rd, const QString &loc) |
static int | phasisOnOrBefore (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static int | phasisOnOrBefore (int rd, const QString &loc) |
static int | phasisOnOrAfter (int rd, const StelLocation &loc=StelApp::getInstance().getCore() ->getCurrentLocation()) |
static int | phasisOnOrAfter (int rd, const QString &loc) |
Signals | |
void | partsChanged (QVector< int > parts) |
void | jdChanged (double jd) |
Public Member Functions | |
Calendar (double jd) | |
Static Public Attributes | |
constexpr static const double | j2000 =730120.5 |
RD of J2000.0 (CC:UE 14.19) | |
constexpr static const double | jdEpoch =-1721424.5 |
constexpr static const double | mjdEpoch =678576.0 |
constexpr static const int | bogus =-1000000 |
static const StelLocation | urbana |
static const StelLocation | greenwich |
static const StelLocation | mecca |
static const StelLocation | tehran |
static const StelLocation | paris |
static const StelLocation | jerusalem |
static const StelLocation | acre |
static const StelLocation | padua |
Protected Attributes | |
double | JD |
QVector< int > | parts |
date expressed as JD(UT), including day fraction (ready to interact with the main application) | |
Static Protected Attributes | |
static constexpr double | meanTropicalYear =365.242189 |
date expressed in the numerical parts of the calendar (usually the smallest part represents a day count) More... | |
static constexpr double | meanSiderealYear =365.25636 |
(CC:UE 14.32) | |
static constexpr double | meanSynodicMonth =29.530588861 |
(CC:UE 14.44) | |
static constexpr bool | morning =true |
CC:UE 14.71. | |
static constexpr bool | evening =false |
CC:UE 14.73. | |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
inlinestaticslot |
For testing only:
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
inlinestaticslot |
Interfacing function from Reingold/Dershowitz: Calendrical Calculations Returns a fixed date in RD that represents noon of JD.
Stellarium extension: optionally includes local time zone offset. In most calendar interfacing functions, respectUTCoffset should be true.
|
inlinevirtualslot |
get a vector of calendar date elements sorted from the largest to the smallest.
The order depends on the actual calendar
|
inlinevirtualslot |
get a stringlist of calendar date elements sorted from the largest to the smallest.
The order depends on the actual calendar For scripting use, you can extract single elements, like: core.output("Tzolkin name: " + MayaTzolkinCalendar.getDateStrings()[1]);
|
staticslot |
Intersect a collection of candidates against a range of values.
|
staticslot |
|
inlinestaticslot |
interfacing function from Reingold/Dershowitz: Calendrical Calculations Returns a JD from an RD "moment" (including fractions of day) Stellarium extension: optionally includes local time zone offset.
In most calendar interfacing functions, respectUTCoffset should be true.
|
staticslot |
interfacing function from Reingold/Dershowitz: Calendrical Calculations Returns a JD from an RD "moment" (including fractions of day) Stellarium extension: optionally includes local time zone offset.
In most calendar interfacing functions, respectUTCoffset should be true.
|
inlinestaticslot |
|
inlinestaticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
inlinestaticslot |
|
staticslot |
|
staticslot |
Interval modulus, CC.UE 1.24.
|
staticslot |
Interfacing function from Reingold/Dershowitz: Calendrical Calculations Returns a "moment" in RD that represents JD.
Stellarium extension: include local time zone offset. In most calendar interfacing functions, respectUTCoffset should be true.
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
inlinevirtualslot |
set date from a vector of calendar date elements sorted from the largest to the smallest.
This triggers the jdChanged() signal Note that this must not change the time of day! You must retrieve the time from the current JD before recomputing a new JD. You can also use this with scripting by calling the actual calendars, like GregorianCalendar.setDate([2023, 3, 4]); // This changes the date in the program! MayaLongCountCalendar.setDate([13, 0, 0, 0, 1]); // This changes the date in the program!
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
inlinestaticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
inlinestaticslot |
|
staticslot |
|
inlinestaticslot |
|
staticconstexprprotected |
date expressed in the numerical parts of the calendar (usually the smallest part represents a day count)
(CC:UE 14.31)
class Calendars |
StelModule plugin which provides display and a scripting interface to a multitude of calendrical functions.
Public Slots | |
bool | isEnabled () const |
is display of calendars overlay active? | |
bool | getFlagTextColorOverride () const |
void | setFlagTextColorOverride (bool b) |
Vec3f | getTextColor () const |
Get the current color of the text (when override flag is active). | |
void | setTextColor (const Vec3f &newColor) |
void | enable (bool b) |
enable display of calendars overlay | |
bool | isJulianDisplayed () const |
display Julian Calendar? | |
void | showJulian (bool b) |
activate display of Julian Calendar | |
bool | isRevisedJulianDisplayed () const |
display Revised Julian Calendar? | |
void | showRevisedJulian (bool b) |
activate display of Revised Julian Calendar | |
bool | isGregorianDisplayed () const |
display Gregorian Calendar? | |
void | showGregorian (bool b) |
activate display of Gregorian Calendar | |
bool | isISODisplayed () const |
display ISO Calendar? | |
void | showISO (bool b) |
activate display of ISO Calendar | |
bool | isIcelandicDisplayed () const |
display Icelandic Calendar? | |
void | showIcelandic (bool b) |
activate display of Icelandic Calendar | |
bool | isRomanDisplayed () const |
display Roman Calendar? | |
void | showRoman (bool b) |
activate display of Roman Calendar | |
bool | isOlympicDisplayed () const |
display Olympic Calendar? | |
void | showOlympic (bool b) |
activate display of Olympic Calendar | |
bool | isEgyptianDisplayed () const |
display Egyptian Calendar? | |
void | showEgyptian (bool b) |
activate display of Egyptian Calendar | |
bool | isArmenianDisplayed () const |
display Armenian Calendar? | |
void | showArmenian (bool b) |
activate display of Armenian Calendar | |
bool | isZoroastrianDisplayed () const |
display Zoroastrian Calendar? | |
void | showZoroastrian (bool b) |
activate display of Zoroastrian Calendar | |
bool | isCopticDisplayed () const |
display Coptic Calendar? | |
void | showCoptic (bool b) |
activate display of Coptic Calendar | |
bool | isEthiopicDisplayed () const |
display Ethiopic Calendar? | |
void | showEthiopic (bool b) |
activate display of Ethiopic Calendar | |
bool | isChineseDisplayed () const |
display Chinese Calendar? | |
void | showChinese (bool b) |
activate display of Chinese Calendar | |
bool | isJapaneseDisplayed () const |
display Japanese Calendar? | |
void | showJapanese (bool b) |
activate display of Japanese Calendar | |
bool | isKoreanDisplayed () const |
display Korean Calendar? | |
void | showKorean (bool b) |
activate display of Korean Calendar | |
bool | isVietnameseDisplayed () const |
display Vietnamese Calendar? | |
void | showVietnamese (bool b) |
activate display of Vietnamese Calendar | |
bool | isIslamicDisplayed () const |
display Islamic Calendar? | |
void | showIslamic (bool b) |
activate display of Islamic Calendar | |
bool | isHebrewDisplayed () const |
display Hebrew Calendar? | |
void | showHebrew (bool b) |
activate display of Hebrew Calendar | |
bool | isOldHinduSolarDisplayed () const |
display Old Hindu Solar? | |
void | showOldHinduSolar (bool b) |
activate display of Old Hindu Solar | |
bool | isOldHinduLunarDisplayed () const |
display Old Hindu Lunar? | |
void | showOldHinduLunar (bool b) |
activate display of Old Hindu Lunar | |
bool | isNewHinduSolarDisplayed () const |
display New Hindu Solar? | |
void | showNewHinduSolar (bool b) |
activate display of New Hindu Solar | |
bool | isNewHinduLunarDisplayed () const |
display New Hindu Lunisolar? | |
void | showNewHinduLunar (bool b) |
activate display of New Hindu Lunisolar | |
bool | isAstroHinduSolarDisplayed () const |
display Astro Hindu Solar? | |
void | showAstroHinduSolar (bool b) |
activate display of Astro Hindu Solar | |
bool | isAstroHinduLunarDisplayed () const |
display Astro Hindu Lunisolar? | |
void | showAstroHinduLunar (bool b) |
activate display of Astro Hindu Lunisolar | |
bool | isMayaLongCountDisplayed () const |
display Maya Long Count? | |
void | showMayaLongCount (bool b) |
activate display of Maya Long Count | |
bool | isMayaHaabDisplayed () const |
display Maya Haab? | |
void | showMayaHaab (bool b) |
activate display of Maya Haab | |
bool | isMayaTzolkinDisplayed () const |
display Maya Tzolkin? | |
void | showMayaTzolkin (bool b) |
activate display of Maya Tzolkin | |
bool | isAztecXihuitlDisplayed () const |
display Aztec Xihuitl? | |
void | showAztecXihuitl (bool b) |
activate display of Aztec Xihuitl | |
bool | isAztecTonalpohualliDisplayed () const |
display Aztec Tonalpohualli? | |
void | showAztecTonalpohualli (bool b) |
activate display of Aztec Tonalpohualli | |
bool | isBalineseDisplayed () const |
display Balinese Pawukon? | |
void | showBalinese (bool b) |
activate display of Balinese Pawukon | |
bool | isFrenchAstronomicalDisplayed () const |
display French Astronomical? | |
void | showFrenchAstronomical (bool b) |
activate display of French Astronomical | |
bool | isFrenchArithmeticDisplayed () const |
display French Arithmetic? | |
void | showFrenchArithmetic (bool b) |
activate display of French Arithmetic | |
bool | isPersianArithmeticDisplayed () const |
display Persian Arithmetic? | |
void | showPersianArithmetic (bool b) |
activate display of Persian Arithmetic | |
bool | isPersianAstronomicalDisplayed () const |
display Persian Astronomical? | |
void | showPersianAstronomical (bool b) |
activate display of Persian Astronomical | |
bool | isBahaiArithmeticDisplayed () const |
display Bahai Arithmetic? | |
void | showBahaiArithmetic (bool b) |
activate display of Bahai Arithmetic | |
bool | isBahaiAstronomicalDisplayed () const |
display Bahai Astronomical? | |
void | showBahaiAstronomical (bool b) |
activate display of Bahai Astronomical | |
bool | isTibetanDisplayed () const |
display Tibetan? | |
void | showTibetan (bool b) |
activate display of Tibetan | |
Signals | |
void | enabledChanged (bool b) |
void | flagTextColorOverrideChanged (bool b) |
void | textColorChanged (Vec3f &color) |
void | showJulianChanged (bool b) |
void | showRevisedJulianChanged (bool b) |
void | showGregorianChanged (bool b) |
void | showISOChanged (bool b) |
void | showIcelandicChanged (bool b) |
void | showRomanChanged (bool b) |
void | showOlympicChanged (bool b) |
void | showEgyptianChanged (bool b) |
void | showArmenianChanged (bool b) |
void | showZoroastrianChanged (bool b) |
void | showCopticChanged (bool b) |
void | showEthiopicChanged (bool b) |
void | showChineseChanged (bool b) |
void | showJapaneseChanged (bool b) |
void | showKoreanChanged (bool b) |
void | showVietnameseChanged (bool b) |
void | showIslamicChanged (bool b) |
void | showHebrewChanged (bool b) |
void | showOldHinduSolarChanged (bool b) |
void | showOldHinduLunarChanged (bool b) |
void | showNewHinduSolarChanged (bool b) |
void | showNewHinduLunarChanged (bool b) |
void | showAstroHinduSolarChanged (bool b) |
void | showAstroHinduLunarChanged (bool b) |
void | showMayaLongCountChanged (bool b) |
void | showMayaHaabChanged (bool b) |
void | showMayaTzolkinChanged (bool b) |
void | showAztecXihuitlChanged (bool b) |
void | showAztecTonalpohualliChanged (bool b) |
void | showBalineseChanged (bool b) |
void | showFrenchAstronomicalChanged (bool b) |
void | showFrenchArithmeticChanged (bool b) |
void | showPersianArithmeticChanged (bool b) |
void | showPersianAstronomicalChanged (bool b) |
void | showBahaiArithmeticChanged (bool b) |
void | showBahaiAstronomicalChanged (bool b) |
void | showTibetanChanged (bool b) |
Public Member Functions | |
void | init () override |
Initialize itself. More... | |
void | update (double) override |
Set all calendars to the Core's JD. | |
void | draw (StelCore *core) override |
if enabled, provide a table of calendars on screen. | |
double | getCallOrder (StelModuleActionName actionName) const override |
Return the value defining the order of call for the given action For example if stars.callOrder[ActionDraw] == 10 and constellation.callOrder[ActionDraw] == 11, the stars module will be drawn before the constellations. More... | |
bool | configureGui (bool show=true) override |
Detect or show the configuration GUI elements for the module. More... | |
void | restoreDefaultSettings () |
Restore the plug-in's settings to the default state. More... | |
void | loadSettings () |
Load the plug-in's settings from the configuration file. More... | |
Calendar * | getCal (const QString &name) |
Get a pointer to the respective Calendar. More... | |
Public Member Functions inherited from StelModule | |
StelModule () | |
Constructor. Every derived class MUST call setObjectName(className) in its constructor. | |
virtual void | deinit () |
Called before the module will be deleted, and before the OpenGL context is suppressed. More... | |
virtual QSettings * | getSettings () |
Return module-specific settings. More... | |
virtual QString | getModuleVersion () const |
Get the version of the module, default is stellarium main version. | |
virtual QString | getAuthorName () const |
Get the name of the module author. | |
virtual QString | getAuthorEmail () const |
Get the email address of the module author. | |
virtual void | handleMouseClicks (class QMouseEvent *) |
Handle mouse clicks. More... | |
virtual void | handleMouseWheel (class QWheelEvent *) |
Handle mouse wheel. More... | |
virtual bool | handleMouseMoves (int x, int y, Qt::MouseButtons b) |
Handle mouse moves. More... | |
virtual void | handleKeys (class QKeyEvent *e) |
Handle key events. More... | |
virtual bool | handlePinch (qreal scale, bool started) |
Handle pinch gesture events. More... | |
Properties | |
bool | enabled |
bool | flagTextColorOverride |
Vec3f | textColor |
bool | flagShowJulian |
bool | flagShowRevisedJulian |
bool | flagShowGregorian |
bool | flagShowISO |
bool | flagShowIcelandic |
bool | flagShowRoman |
bool | flagShowOlympic |
bool | flagShowEgyptian |
bool | flagShowArmenian |
bool | flagShowZoroastrian |
bool | flagShowCoptic |
bool | flagShowEthiopic |
bool | flagShowChinese |
bool | flagShowJapanese |
bool | flagShowKorean |
bool | flagShowVietnamese |
bool | flagShowIslamic |
bool | flagShowHebrew |
bool | flagShowOldHinduSolar |
bool | flagShowOldHinduLunar |
bool | flagShowNewHinduSolar |
bool | flagShowNewHinduLunar |
bool | flagShowAstroHinduSolar |
bool | flagShowAstroHinduLunar |
bool | flagShowMayaLongCount |
bool | flagShowMayaHaab |
bool | flagShowMayaTzolkin |
bool | flagShowAztecXihuitl |
bool | flagShowAztecTonalpohualli |
bool | flagShowBalinese |
bool | flagShowFrenchAstronomical |
bool | flagShowFrenchArithmetic |
bool | flagShowPersianArithmetic |
bool | flagShowPersianAstronomical |
bool | flagShowBahaiArithmetic |
bool | flagShowBahaiAstronomical |
bool | flagShowTibetan |
Additional Inherited Members | |
Public Types inherited from StelModule | |
enum | StelModuleSelectAction { AddToSelection , ReplaceSelection , RemoveFromSelection } |
Enum used when selecting objects to define whether to add to, replace, or remove from the existing selection list. More... | |
enum | StelModuleActionName { ActionDraw , ActionUpdate , ActionHandleMouseClicks , ActionHandleMouseMoves , ActionHandleKeys } |
Define the possible action for which an order is defined. More... | |
Protected Member Functions inherited from StelModule | |
class StelAction * | addAction (const QString &id, const QString &groupId, const QString &text, QObject *target, const char *slot, const QString &shortcut="", const QString &altShortcut="") |
convenience methods to add an action (call to slot) to the StelActionMgr object. More... | |
class StelAction * | addAction (const QString &id, const QString &groupId, const QString &text, const char *slot, const QString &shortcut="", const QString &altShortcut="") |
convenience methods to add an action (call to own slot) to the StelActionMgr object. More... | |
StelAction * | addAction (const QString &id, const QString &groupId, const QString &text, QObject *contextObject, std::function< void()> lambda, const QString &shortcut="", const QString &altShortcut="") |
convenience methods to add an action (call to Lambda functor) to the StelActionMgr object. More... | |
|
overridevirtual |
Detect or show the configuration GUI elements for the module.
This is to be used with plugins to display a configuration dialog from the plugin list window.
show | if true, make the configuration GUI visible. If false, hide the config GUI if there is one. |
Reimplemented from StelModule.
Calendar* Calendars::getCal | ( | const QString & | name | ) |
Get a pointer to the respective Calendar.
Returns nullptr if not found. Valid names: Julian, RevisedJulian, Gregorian, ISO, Icelandic, Roman, Olympic, Egyptian, Armenian, Zoroastrian, Coptic, Ethiopic, Islamic, Hebrew, OldHinduSolar, OldHinduLunar, NewHinduSolar, NewHinduLunar, Balinese, Tibetan, BahaiArithmetic, BahaiAstronomical, MayaLongCount, MayaHaab, MayaTzolkin, AztecXihuitl, AztecTonalpohualli TODO: ADD HERE: Chinese, ...
|
overridevirtual |
Return the value defining the order of call for the given action For example if stars.callOrder[ActionDraw] == 10 and constellation.callOrder[ActionDraw] == 11, the stars module will be drawn before the constellations.
actionName | the name of the action for which we want the call order |
Reimplemented from StelModule.
|
overridevirtual |
Initialize itself.
If the initialization takes significant time, the progress should be displayed on the loading bar.
Implements StelModule.
void Calendars::loadSettings | ( | ) |
Load the plug-in's settings from the configuration file.
Settings are kept in the "Calendars" section in Stellarium's configuration file. If no such section exists, it will load default values.
void Calendars::restoreDefaultSettings | ( | ) |
Restore the plug-in's settings to the default state.
Replace the plug-in's settings in St