Stellarium
1.2
|
The Calendars plugin provides an interface to various calendars. More...
Data Structures | |
class | CalendarsDialog |
Main window of the Calendars plug-in. More... | |
class | CalendarsInfoPanel |
A screen widget similar to InfoPanel. More... | |
class | AstroHinduLunarCalendar |
class | AstroHinduSolarCalendar |
class | BahaiArithmeticCalendar |
class | BahaiAstronomicalCalendar |
class | Calendar |
class | Calendars |
class | ChineseCalendar |
class | GregorianCalendar |
class | JapaneseCalendar |
class | JulianCalendar |
class | KoreanCalendar |
class | NewHinduCalendar |
class | NewHinduLunarCalendar |
class | OldHinduLuniSolarCalendar |
class | OldHinduSolarCalendar |
class | TibetanCalendar |
class | VietnameseCalendar |
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 |
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. | |
Protected Member Functions inherited from StelDialog | |
void | connectColorButton (QToolButton *button, QString propertyName, QString iniName, QString moduleName="") |
Prepare a QToolButton so that it can receive and handle askColor() connections properly. More... | |
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 () |
void | askColor () |
To be called by a connected QToolButton with a color background. More... | |
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 |
Contains output for selected calendars.
Public Slots | |
void | updatePosition () |
Update the position of the widget within the parent. More... | |
Public Member Functions | |
CalendarsInfoPanel (Calendars *plugin, QGraphicsWidget *parent=nullptr) | |
|
slot |
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 (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 (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 (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 (QVector< int > parts) |
static QVector< int > | hinduLunarFromFixed (int rd) |
static int | fixedFromHinduLunar (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 (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 (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 (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 (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 (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 (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 (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 (QVector< int >parts, QVector< int >factors, int corr) |
Reingold-Dershowitz CC.UE 1.48. | |
int | rdCorrSum (QVector< int >factors, int corr) |
static QVector< int > | toRadix (int num, QVector< int >radix) |
Split integer to mixed-radix vector. Reingold-Dershowitz CC.UE 1.42. | |
static QVector< int > | intersectWithRange (QVector< int >cand, 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 |
|
overrideslot |
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 (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 (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 (QVector< int > parts) |
static QVector< int > | hinduLunarFromFixed (int rd) |
static int | fixedFromHinduLunar (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 (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 (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 (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 (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 (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 (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 (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 (QVector< int >parts, QVector< int >factors, int corr) |
Reingold-Dershowitz CC.UE 1.48. | |
int | rdCorrSum (QVector< int >factors, int corr) |
static QVector< int > | toRadix (int num, QVector< int >radix) |
Split integer to mixed-radix vector. Reingold-Dershowitz CC.UE 1.42. | |
static QVector< int > | intersectWithRange (QVector< int >cand, 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 |
{Year, Month, MonthName, Day, WeekDayName}
|
overrideslot |
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 (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 (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 (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 (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 (QVector< int >parts, QVector< int >factors, int corr) |
Reingold-Dershowitz CC.UE 1.48. | |
int | rdCorrSum (QVector< int >factors, int corr) |
static QVector< int > | toRadix (int num, QVector< int >radix) |
Split integer to mixed-radix vector. Reingold-Dershowitz CC.UE 1.42. | |
static QVector< int > | intersectWithRange (QVector< int >cand, 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 |
of date given in the Bahai Arithmetic calendar. (CC:UE 16.4) return major-cycle-year-month-day for RD date
|
staticslot |
of new year date in the Bahai Arithmetic for the given Gregorian year. (CC:UE 16.10) return RD date
|
overrideslot |
Year, Month, MonthName, Day, DayName
|
overrideslot |
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 (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 (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 (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 (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 (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 (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 (QVector< int >parts, QVector< int >factors, int corr) |
Reingold-Dershowitz CC.UE 1.48. | |
int | rdCorrSum (QVector< int >factors, int corr) |
static QVector< int > | toRadix (int num, QVector< int >radix) |
Split integer to mixed-radix vector. Reingold-Dershowitz CC.UE 1.42. | |
static QVector< int > | intersectWithRange (QVector< int >cand, 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 |
of date given in the Bahai Astronomical calendar. (CC:UE 16.9) return major-cycle-year-month-day for RD date
|
overrideslot |
Year, Month, MonthName, Day, DayName
|
overrideslot |
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 (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 (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 (QVector< int >parts, QVector< int >factors, int corr) |
Reingold-Dershowitz CC.UE 1.48. | |
int | rdCorrSum (QVector< int >factors, int corr) |
static QVector< int > | toRadix (int num, QVector< int >radix) |
Split integer to mixed-radix vector. Reingold-Dershowitz CC.UE 1.42. | |
static QVector< int > | intersectWithRange (QVector< int >cand, 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 |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
inlinestaticslot |
Stellarium extension: optionally includes local time zone offset. In most calendar interfacing functions, respectUTCoffset should be true.
|
inlinevirtualslot |
The order depends on the actual calendar
|
inlinevirtualslot |
The order depends on the actual calendar For scripting use, you can extract single elements, like: core.output("Tzolkin name: " + MayaTzolkinCalendar.getDateStrings()[1]);
|
staticslot |
|
staticslot |
|
inlinestaticslot |
In most calendar interfacing functions, respectUTCoffset should be true.
|
staticslot |
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 |
|
staticslot |
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 |
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 |
(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 (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 |
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 | ( | QString | name | ) |
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 |
actionName | the name of the action for which we want the call order |
Reimplemented from StelModule.
|
overridevirtual |
If the initialization takes significant time, the progress should be displayed on the loading bar.
Implements StelModule.
void Calendars::loadSettings | ( | ) |
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 | ( | ) |
Replace the plug-in's settings in Stellarium's configuration file with the default values and re-load them. Uses internally loadSettings().
class ChineseCalendar |
Functions for the Chinese calendar (1645 Qing dynasty version)
The Chinese calendar (and related Japanese, Korean and Vietnamese) is a Lunisolar calendar based on astronomical events. The calendar's location for astronomical computations is Beijing. Days begin at midnight. Lunar months begin on the day of New Moon.
Our implementation uses a 5-part QVector<int> {cycle, year, month, leap-month, day}
Public Slots | |
void | retranslate () override |
void | setJD (double JD) override |
Set a calendar date from the Julian day number. | |
void | setDate (QVector< int > parts5) 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 | |
virtual QPair< QString, QString > | getSolarTermStrings () const |
get a pair of strings for the Solar Terms for a date | |
virtual QString | getFormattedSolarTermsString () const |
get a formatted string of the Solar Terms for a date | |
static int | fixedFromChinese (QVector< int > parts5) |
find RD number for date in the Chinese calendar (CC:UE 19.17) More... | |
static QVector< int > | chineseFromFixed (int rd) |
find date in the Chinese calendar from RD number (CC:UE 19.16) More... | |
static int | currentMajorSolarTerm (int rd) |
static StelLocation | chineseLocation (double rd_t) |
Return location of Chinese calendar computations (Beijing). Before 1929, this used LMST. CC:UE 19.2. | |
static double | solarLongitudeOnOrAfter (double lambda, double rd_t) |
Return the moment when solar longitude reaches lambda (CC:UE 19.3) More... | |
static int | majorSolarTermOnOrAfter (int rd) |
static int | currentMinorSolarTerm (int rd) |
Return current minor solar term for rd (CC:UE 19.5) | |
static int | minorSolarTermOnOrAfter (int rd) |
Return minor solar term (CC:UE 19.6) | |
static double | midnightInChina (int rd) |
Return rd moment of midnight (CC:UE 19.7) | |
static int | winterSolsticeOnOrBefore (int rd) |
Return Chinese Winter Solstice date (CC:UE 19.8) More... | |
static int | newMoonOnOrAfter (int rd) |
Return Chinese New Moon (CC:UE 19.9) More... | |
static int | newMoonBefore (int rd) |
Return Chinese New Moon (CC:UE 19.10) More... | |
static bool | noMajorSolarTerm (int rd) |
Auxiliary function (CC:UE 19.11) More... | |
static bool | priorLeapMonth (int mP, int m) |
Auxiliary function (CC:UE 19.12) More... | |
static int | newYearInSui (int rd) |
Return RD date of Chinese New Year in the Sui (year) of rd (CC:UE 19.13) More... | |
static int | newYearOnOrBefore (int rd) |
Return RD date of Chinese New Year in the Sui (year) of rd (CC:UE 19.14) More... | |
static QPair< int, int > | sexagesimalNumbers (int n) |
Retrieve numerical components from the cycle number [1..60]. (following CC:UE 19.18) | |
static QPair< QString, QString > | sexagesimalNames (int n) |
Retrieve name components from the cycle number [1..60]. More... | |
static int | chineseNameDifference (QPair< int, int >stemBranch1, QPair< int, int >stemBranch2) |
Retrieve year difference between name pairs. [1..60]. (CC:UE 19.19) | |
static QPair< QString, QString > | yearName (int year) |
Retrieve pair of names (chinese stem_branch, translated stem_branch) for Chinese year year (CC:UE 19.20) More... | |
static QPair< QString, QString > | monthName (int month, int year) |
Retrieve pair of names (chinese stem_branch, translated stem_branch) for Chinese month within a year (CC:UE 19.22) More... | |
static int | dayNumber (int rd) |
Retrieve one number (1...60) for Chinese day (after CC:UE 19.24) More... | |
static QPair< int, int > | dayNumbers (int rd) |
Retrieve pair of index numbers (stem, branch) for Chinese day (after CC:UE 19.24) More... | |
static QPair< QString, QString > | dayName (int rd) |
Retrieve pair of names (chinese stem_branch, translated stem_branch) for Chinese day (CC:UE 19.24) More... | |
static int | dayNumberOnOrBefore (QPair< int, int >stemBranch, int rd) |
Retrieve RD of day number (1...60) on or before rd. More... | |
static int | ChineseNewYearInGregorianYear (int gYear) |
Return Chinese year number beginning in Winter of Gregorian year gYear (CC:UE before 19.27) | |
static int | DragonFestivalInGregorianYear (int gYear) |
Return Chinese year number beginning in Winter of Gregorian year gYear (CC:UE 19.27) | |
static int | qingMing (int gYear) |
Return RD of Winter minor term of Gregorian year gYear (CC:UE 19.28) | |
static int | chineseAge (QVector< int >birthdate, int rd) |
Return age of someone born on birthdate on date rd as expressed by Chinese (CC:UE 19.29) A new-born is aged 1. More... | |
static int | chineseYearMarriageAugury (int cycle, int year) |
Determine marriage augury based on year number within a cycle. widows are worst, double-bright are best years. | |
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 (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 (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 (QVector< int >parts, QVector< int >factors, int corr) |
Reingold-Dershowitz CC.UE 1.48. | |
int | rdCorrSum (QVector< int >factors, int corr) |
static QVector< int > | toRadix (int num, QVector< int >radix) |
Split integer to mixed-radix vector. Reingold-Dershowitz CC.UE 1.42. | |
static QVector< int > | intersectWithRange (QVector< int >cand, 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 | |
ChineseCalendar (double jd) | |
Public Member Functions inherited from Calendar | |
Calendar (double jd) | |
Static Public Attributes | |
static const int | chineseEpoch |
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 > | majorSolarTerms |
RD of Gregorian {-2636, february, 15}. CC:UE 19.15. | |
static QMap< int, QString > | minorSolarTerms |
static QMap< int, QString > | celestialStems |
static QMap< int, QString > | celestialStemsElements |
static QMap< int, QString > | terrestrialBranches |
static QMap< int, QString > | terrestrialBranchesAnimalTotems |
constexpr static const int | chineseMonthNameEpoch =57 |
constexpr static const int | chineseDayNameEpoch =45 |
CC:UE 19.21. | |
constexpr static const int | doubleBright =3 |
CC:UE 19.23. | |
constexpr static const int | bright =2 |
CC:UE 19.30. | |
constexpr static const int | blind =1 |
CC:UE 19.31. | |
constexpr static const int | widow =0 |
CC:UE 19.32. | |
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 |
Age increases at Chinese New Year. Returns bogus on error
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
(after CC:UE 19.25)
|
staticslot |
|
staticslot |
|
overrideslot |
{Cycle, Year, Month, MonthName, "leap"|"", Day, WeekDayName} The words "leap" (translated) are only given if the respective month is leap. Else an empty string is given.
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
overrideslot |
{year, month, leap-month, day, leap-day}
|
staticslot |
(CC:UE 19.18) In contrast to chineseSexagesimalNumbers, this provides the pair (chinese double-name, translated double-name)
|
staticslot |
|
staticslot |
|
staticslot |
class GregorianCalendar |
Functions for the Gregorian calendar
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 8AD. Some European countries, especially the Protestant countries, delayed the calendar switch well into the 18th century. This implementation strictly follows CC. It provides the "Proleptic Gregorian Calendar" for dates before 1582-10-15. This may be helpful for a better estimate of seasons' beginnings in prehistory. However, also the Gregorian calendar is not perfect, and Neolithic and even earlier dates will still show deviations from the dates well-known from today.
Public Slots | |
void | setJD (double JD) override |
Set a calendar date from the Julian day number. | |
void | setDate (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 bool | isLeap (int year) |
returns true for leap years | |
static int | fixedFromGregorian (QVector< int > gregorian) |
auxiliary functions from CC.UE ch2.5 Return R.D. More... | |
static int | orthodoxEaster (int gYear) |
Orthodox Easter sunday (RD) from chapter 9.1. | |
static int | easter (int gYear) |
Gregorian Easter sunday (RD) from chapter 9.2. | |
static int | pentecost (int gYear) |
Return RD of Pentecost in Gregorian calendar. | |
static int | gregorianNewYear (int year) |
static int | gregorianYearEnd (int gYear) |
static QVector< int > | gregorianYearRange (int gYear) |
static int | gregorianYearFromFixed (int rd) |
static QVector< int > | gregorianFromFixed (int rd) |
return year-month-day for RD date | |
static int | nthKday (const int n, const Calendar::Day k, const int gYear, const int gMonth, const int gDay) |
Public Slots inherited from JulianCalendar | |
void | retranslate () override |
void | setJD (double JD) override |
Set a calendar date from the Julian day number. | |
void | setDate (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 QString | weekday (double jd) |
return name of week day. This is actually independent from any calendar, just a modulo of JD. | |
static bool | isLeap (int year) |
returns true for leap years | |
static int | fixedFromJulian (QVector< int > julian) |
find RD number for date in the Julian calendar (may be used in other calendars!) | |
static QVector< int > | julianFromFixed (int rd) |
find date in the Julian calendar from RD number (may be used in other calendars!) | |
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 (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 (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 (QVector< int >parts, QVector< int >factors, int corr) |
Reingold-Dershowitz CC.UE 1.48. | |
int | rdCorrSum (QVector< int >factors, int corr) |
static QVector< int > | toRadix (int num, QVector< int >radix) |
Split integer to mixed-radix vector. Reingold-Dershowitz CC.UE 1.42. | |
static QVector< int > | intersectWithRange (QVector< int >cand, 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 | |
GregorianCalendar (double jd) | |
Public Member Functions inherited from JulianCalendar | |
JulianCalendar (double jd) | |
Public Member Functions inherited from Calendar | |
Calendar (double jd) | |
Static Public Attributes | |
constexpr static const int | gregorianEpoch =1 |
Static Public Attributes inherited from JulianCalendar | |
constexpr static const int | julianEpoch =-1 |
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 |
Additional Inherited Members | |
Public Types inherited from JulianCalendar | |
enum | month { january =1, february, march, april, may, june, july, august, september, october, november, december } |
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) | |
Static Protected Attributes inherited from JulianCalendar | |
static QMap< int, QString > | weekDayNames |
RD of January 1, AD1 (jul.). | |
static QMap< int, QString > | monthNames |
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 |
of date in the Gregorian calendar.
|
overrideslot |
Year, Month, MonthName, Day, DayName
|
inlinestaticslot |
|
inlinestaticslot |
|
inlinestaticslot |
|
staticslot |
|
overrideslot |
Year-Month[1...12]-Day[1...31]
class JapaneseCalendar |
Functions for the Japanese calendar (as derived from the Chinese calendar)
The Japanese calendar is derived from the Chinese calendar (like Korean and Vietnamese). The calendar's location for astronomical computations is Tokyo. Days begin at midnight. Lunar months begin on the day of New Moon. In difference to the CC:UE book, we must introduce function names which replace "chinese" by "japanese", to take the changed location into account or where the culture name is omitted, so that function overrides work.
Our implementation uses the 5-part QVector<int> {cycle, year, month, leap-month, day} inherited from the Chinese calendar. The years are given in Japanese eras.
Public Slots | |
void | retranslate () override |
void | setJD (double JD) override |
Set a calendar date from the Julian day number. | |
void | setDate (QVector< int > parts5) 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 | |
QPair< QString, QString > | getSolarTermStrings () const override |
get a pair of strings for the Solar Terms for a date | |
QString | getFormattedSolarTermsString () const override |
get a formatted string of the Solar Terms for a date | |
static int | fixedFromJapanese (QVector< int > parts5) |
find RD number for date in the Japanese calendar (CC:UE 19.17) More... | |
static QVector< int > | japaneseFromFixed (int rd) |
find date in the Japanese calendar from RD number (CC:UE 19.16) More... | |
static int | currentMajorSolarTerm (int rd) |
static StelLocation | japaneseLocation (double rd_t) |
Return location of Japanese calendar computations (Tokyo). Before 1888, this used LMST. CC:UE 19.35. | |
static double | solarLongitudeOnOrAfter (double lambda, double rd_t) |
Return the moment when solar longitude reaches lambda (CC:UE 19.3) More... | |
static int | majorSolarTermOnOrAfter (int rd) |
static int | currentMinorSolarTerm (int rd) |
Return current minor solar term for rd (CC:UE 19.5) | |
static int | minorSolarTermOnOrAfter (int rd) |
Return minor solar term (CC:UE 19.6) | |
static double | midnightInJapan (int rd) |
Return rd moment of midnight (CC:UE 19.7) This replaces midnight-in-china in the Chinese calendar functions used in Japan. | |
static int | winterSolsticeOnOrBefore (int rd) |
Return Korean Winter Solstice date (CC:UE 19.8) | |
static int | newMoonOnOrAfter (int rd) |
Return Korean New Moon (CC:UE 19.9) | |
static int | newMoonBefore (int rd) |
Return Korean New Moon (CC:UE 19.10) | |
static bool | noMajorSolarTerm (int rd) |
Auxiliary function (CC:UE 19.11) | |
static bool | priorLeapMonth (int mP, int m) |
Auxiliary function (CC:UE 19.12) | |
static int | newYearInSui (int rd) |
Return RD date of Chinese New Year in the Sui (year) of rd (CC:UE 19.13) | |
static int | newYearOnOrBefore (int rd) |
Return RD date of Chinese New Year in the Sui (year) of rd (CC:UE 19.14) | |
static int | japaneseYear (int cycle, int year) |
Return Japanese Year in the Tenno system, counting from XXX BCE. (CC:UE 19.37) | |
Public Slots inherited from ChineseCalendar | |
void | retranslate () override |
void | setJD (double JD) override |
Set a calendar date from the Julian day number. | |
void | setDate (QVector< int > parts5) 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 | |
virtual QPair< QString, QString > | getSolarTermStrings () const |
get a pair of strings for the Solar Terms for a date | |
virtual QString | getFormattedSolarTermsString () const |
get a formatted string of the Solar Terms for a date | |
static int | fixedFromChinese (QVector< int > parts5) |
find RD number for date in the Chinese calendar (CC:UE 19.17) More... | |
static QVector< int > | chineseFromFixed (int rd) |
find date in the Chinese calendar from RD number (CC:UE 19.16) More... | |
static int | currentMajorSolarTerm (int rd) |
static StelLocation | chineseLocation (double rd_t) |
Return location of Chinese calendar computations (Beijing). Before 1929, this used LMST. CC:UE 19.2. | |
static double | solarLongitudeOnOrAfter (double lambda, double rd_t) |
Return the moment when solar longitude reaches lambda (CC:UE 19.3) More... | |
static int | majorSolarTermOnOrAfter (int rd) |
static int | currentMinorSolarTerm (int rd) |
Return current minor solar term for rd (CC:UE 19.5) | |
static int | minorSolarTermOnOrAfter (int rd) |
Return minor solar term (CC:UE 19.6) | |
static double | midnightInChina (int rd) |
Return rd moment of midnight (CC:UE 19.7) | |
static int | winterSolsticeOnOrBefore (int rd) |
Return Chinese Winter Solstice date (CC:UE 19.8) More... | |
static int | newMoonOnOrAfter (int rd) |
Return Chinese New Moon (CC:UE 19.9) More... | |
static int | newMoonBefore (int rd) |
Return Chinese New Moon (CC:UE 19.10) More... | |
static bool | noMajorSolarTerm (int rd) |
Auxiliary function (CC:UE 19.11) More... | |
static bool | priorLeapMonth (int mP, int m) |
Auxiliary function (CC:UE 19.12) More... | |
static int | newYearInSui (int rd) |
Return RD date of Chinese New Year in the Sui (year) of rd (CC:UE 19.13) More... | |
static int | newYearOnOrBefore (int rd) |
Return RD date of Chinese New Year in the Sui (year) of rd (CC:UE 19.14) More... | |
static QPair< int, int > | sexagesimalNumbers (int n) |
Retrieve numerical components from the cycle number [1..60]. (following CC:UE 19.18) | |
static QPair< QString, QString > | sexagesimalNames (int n) |
Retrieve name components from the cycle number [1..60]. More... | |
static int | chineseNameDifference (QPair< int, int >stemBranch1, QPair< int, int >stemBranch2) |
Retrieve year difference between name pairs. [1..60]. (CC:UE 19.19) | |
static QPair< QString, QString > | yearName (int year) |
Retrieve pair of names (chinese stem_branch, translated stem_branch) for Chinese year year (CC:UE 19.20) More... | |
static QPair< QString, QString > | monthName (int month, int year) |
Retrieve pair of names (chinese stem_branch, translated stem_branch) for Chinese month within a year (CC:UE 19.22) More... | |
static int | dayNumber (int rd) |
Retrieve one number (1...60) for Chinese day (after CC:UE 19.24) More... | |
static QPair< int, int > | dayNumbers (int rd) |
Retrieve pair of index numbers (stem, branch) for Chinese day (after CC:UE 19.24) More... | |
static QPair< QString, QString > | dayName (int rd) |
Retrieve pair of names (chinese stem_branch, translated stem_branch) for Chinese day (CC:UE 19.24) More... | |
static int | dayNumberOnOrBefore (QPair< int, int >stemBranch, int rd) |
Retrieve RD of day number (1...60) on or before rd. More... | |
static int | ChineseNewYearInGregorianYear (int gYear) |
Return Chinese year number beginning in Winter of Gregorian year gYear (CC:UE before 19.27) | |
static int | DragonFestivalInGregorianYear (int gYear) |
Return Chinese year number beginning in Winter of Gregorian year gYear (CC:UE 19.27) | |
static int | qingMing (int gYear) |
Return RD of Winter minor term of Gregorian year gYear (CC:UE 19.28) | |
static int | chineseAge (QVector< int >birthdate, int rd) |
Return age of someone born on birthdate on date rd as expressed by Chinese (CC:UE 19.29) A new-born is aged 1. More... | |
static int | chineseYearMarriageAugury (int cycle, int year) |
Determine marriage augury based on year number within a cycle. widows are worst, double-bright are best years. | |
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 (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 (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 (QVector< int >parts, QVector< int >factors, int corr) |
Reingold-Dershowitz CC.UE 1.48. | |
int | rdCorrSum (QVector< int >factors, int corr) |
static QVector< int > | toRadix (int num, QVector< int >radix) |
Split integer to mixed-radix vector. Reingold-Dershowitz CC.UE 1.42. | |
static QVector< int > | intersectWithRange (QVector< int >cand, 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 | |
JapaneseCalendar (double jd) | |
Public Member Functions inherited from ChineseCalendar | |
ChineseCalendar (double jd) | |
Public Member Functions inherited from Calendar | |
Calendar (double jd) | |
Static Protected Attributes | |
static QMap< int, QString > | majorSolarTerms |
static QMap< int, QString > | minorSolarTerms |
Static Protected Attributes inherited from ChineseCalendar | |
static QMap< int, QString > | majorSolarTerms |
RD of Gregorian {-2636, february, 15}. CC:UE 19.15. | |
static QMap< int, QString > | minorSolarTerms |
static QMap< int, QString > | celestialStems |
static QMap< int, QString > | celestialStemsElements |
static QMap< int, QString > | terrestrialBranches |
static QMap< int, QString > | terrestrialBranchesAnimalTotems |
constexpr static const int | chineseMonthNameEpoch =57 |
constexpr static const int | chineseDayNameEpoch =45 |
CC:UE 19.21. | |
constexpr static const int | doubleBright =3 |
CC:UE 19.23. | |
constexpr static const int | bright =2 |
CC:UE 19.30. | |
constexpr static const int | blind =1 |
CC:UE 19.31. | |
constexpr static const int | widow =0 |
CC:UE 19.32. | |
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) |
Static Public Attributes inherited from ChineseCalendar | |
static const int | chineseEpoch |
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) | |
|
staticslot |
|
overrideslot |
{Cycle, Year, Month, MonthName, "leap"|"", Day, WeekDayName} The words "leap" (translated) are only given if the respective month is leap. Else an empty string is given.
|
staticslot |
|
overrideslot |
{year, month, leap-month, day, leap-day}
|
staticslot |
class JulianCalendar |
Functions for the Julian calendar
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 8AD. Some European countries, especially the Protestant countries, delayed the calendar switch well into the 18th century.
Public Types | |
enum | month { january =1, february, march, april, may, june, july, august, september, october, november, december } |
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 } |
Public Slots | |
void | retranslate () override |
void | setJD (double JD) override |
Set a calendar date from the Julian day number. | |
void | setDate (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 QString | weekday (double jd) |
return name of week day. This is actually independent from any calendar, just a modulo of JD. | |
static bool | isLeap (int year) |
returns true for leap years | |
static int | fixedFromJulian (QVector< int > julian) |
find RD number for date in the Julian calendar (may be used in other calendars!) | |
static QVector< int > | julianFromFixed (int rd) |
find date in the Julian calendar from RD number (may be used in other calendars!) | |
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 (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 (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 (QVector< int >parts, QVector< int >factors, int corr) |
Reingold-Dershowitz CC.UE 1.48. | |
int | rdCorrSum (QVector< int >factors, int corr) |
static QVector< int > | toRadix (int num, QVector< int >radix) |
Split integer to mixed-radix vector. Reingold-Dershowitz CC.UE 1.42. | |
static QVector< int > | intersectWithRange (QVector< int >cand, 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 | |
JulianCalendar (double jd) | |
Public Member Functions inherited from Calendar | |
Calendar (double jd) | |
Static Public Attributes | |
constexpr static const int | julianEpoch =-1 |
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 |
RD of January 1, AD1 (jul.). | |
static QMap< int, QString > | monthNames |
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 | |
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) | |
|
overrideslot |
Year, Month, MonthName, Day, DayName
|
overrideslot |
Year-Month[1...12]-Day[1...31]
class KoreanCalendar |
Functions for the Korean calendar (as derived from the Chinese calendar)
The Korean calendar is derived from the Chinese calendar (like Japanese and Vietnamese). The calendar's location for astronomical computations is Seoul. Days begin at midnight. Lunar months begin on the day of New Moon. In difference to the CC:UE book, we must introduce function names which replace "chinese" by "korean" to take the changed location into account.
Our implementation uses the 5-part QVector<int> {cycle, year, month, leap-month, day} inherited from the Chinese calendar. From {cycle, year} the Korean year counted from 2333BCE can be found using koreanYear(cycle, year) which we show in the Calendars output.
Public Slots | |
void | retranslate () override |
void | setJD (double JD) override |
Set a calendar date from the Julian day number. | |
void | setDate (QVector< int > parts5) 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 | |
QPair< QString, QString > | getSolarTermStrings () const override |
get a pair of strings for the Solar Terms for a date | |
QString | getFormattedSolarTermsString () const override |
get a formatted string of the Solar Terms for a date | |
static int | fixedFromKorean (QVector< int > parts5) |
find RD number for date in the Chinese calendar (CC:UE 19.17) More... | |
static QVector< int > | koreanFromFixed (int rd) |
find date in the Chinese calendar from RD number (CC:UE 19.16) More... | |
static int | currentMajorSolarTerm (int rd) |
static StelLocation | koreanLocation (double rd_t) |
Return location of Korean calendar computations (Seoul City Hall). Before April 1, 1908, this used LMST. CC:UE 19.36. | |
static double | solarLongitudeOnOrAfter (double lambda, double rd_t) |
Return the moment when solar longitude reaches lambda (CC:UE 19.3) More... | |
static int | majorSolarTermOnOrAfter (int rd) |
static int | currentMinorSolarTerm (int rd) |
Return current minor solar term for rd (CC:UE 19.5) | |
static int | minorSolarTermOnOrAfter (int rd) |
Return minor solar term (CC:UE 19.6) | |
static double | midnightInKorea (int rd) |
Return rd moment of midnight (CC:UE 19.7) This replaces midnight-in-china in the Chinese calendar functions used in Korea. | |
static int | winterSolsticeOnOrBefore (int rd) |
Return Korean Winter Solstice date (CC:UE 19.8) | |
static int | newMoonOnOrAfter (int rd) |
Return Korean New Moon (CC:UE 19.9) | |
static int | newMoonBefore (int rd) |
Return Korean New Moon (CC:UE 19.10) | |
static bool | noMajorSolarTerm (int rd) |
Auxiliary function (CC:UE 19.11) | |
static bool | priorLeapMonth (int mP, int m) |
Auxiliary function (CC:UE 19.12) | |
static int | newYearInSui (int rd) |
Return RD date of Chinese New Year in the Sui (year) of rd (CC:UE 19.13) | |
static int | newYearOnOrBefore (int rd) |
Return RD date of Chinese New Year in the Sui (year) of rd (CC:UE 19.14) | |
static QPair< QString, QString > | sexagesimalNames (int n) |
Retrieve name components from the cycle number [1..60]. More... | |
static QPair< QString, QString > | yearName (int year) |
Retrieve pair of names (chinese stem_branch, translated stem_branch) for Chinese year year (CC:UE 19.20) | |
static QPair< QString, QString > | monthName (int month, int year) |
Retrieve pair of names (chinese stem_branch, translated stem_branch) for Chinese month within a year (CC:UE 19.22) | |
static QPair< QString, QString > | dayName (int rd) |
Retrieve pair of names (chinese stem_branch, translated stem_branch) for Chinese day (CC:UE 19.24) | |
static int | koreanNewYearInGregorianYear (int gYear) |
Return Korean year number beginning in Winter of Gregorian year gYear (after CC:UE before 19.27, but with Korean year number) | |
static int | koreanAge (QVector< int >birthdate, int rd) |
Return age of someone born on birthdate on date rd as expressed by the Korean calendar. More... | |
static int | koreanYear (int cycle, int year) |
Return Korean Year in the Danki system, counting from 2333BCE. (CC:UE 19.37) | |
Public Slots inherited from ChineseCalendar | |
void | retranslate () override |
void | setJD (double JD) override |
Set a calendar date from the Julian day number. | |
void | setDate (QVector< int > parts5) 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 | |
virtual QPair< QString, QString > | getSolarTermStrings () const |
get a pair of strings for the Solar Terms for a date | |
virtual QString | getFormattedSolarTermsString () const |
get a formatted string of the Solar Terms for a date | |
static int | fixedFromChinese (QVector< int > parts5) |
find RD number for date in the Chinese calendar (CC:UE 19.17) More... | |
static QVector< int > | chineseFromFixed (int rd) |
find date in the Chinese calendar from RD number (CC:UE 19.16) More... | |
static int | currentMajorSolarTerm (int rd) |
static StelLocation | chineseLocation (double rd_t) |
Return location of Chinese calendar computations (Beijing). Before 1929, this used LMST. CC:UE 19.2. | |
static double | solarLongitudeOnOrAfter (double lambda, double rd_t) |
Return the moment when solar longitude reaches lambda (CC:UE 19.3) More... | |
static int | majorSolarTermOnOrAfter (int rd) |
static int | currentMinorSolarTerm (int rd) |
Return current minor solar term for rd (CC:UE 19.5) | |
static int | minorSolarTermOnOrAfter (int rd) |
Return minor solar term (CC:UE 19.6) | |
static double | midnightInChina (int rd) |
Return rd moment of midnight (CC:UE 19.7) | |
static int | winterSolsticeOnOrBefore (int rd) |
Return Chinese Winter Solstice date (CC:UE 19.8) More... | |
static int | newMoonOnOrAfter (int rd) |
Return Chinese New Moon (CC:UE 19.9) More... | |
static int | newMoonBefore (int rd) |
Return Chinese New Moon (CC:UE 19.10) More... | |
static bool | noMajorSolarTerm (int rd) |
Auxiliary function (CC:UE 19.11) More... | |
static bool | priorLeapMonth (int mP, int m) |
Auxiliary function (CC:UE 19.12) More... | |
static int | newYearInSui (int rd) |
Return RD date of Chinese New Year in the Sui (year) of rd (CC:UE 19.13) More... | |
static int | newYearOnOrBefore (int rd) |
Return RD date of Chinese New Year in the Sui (year) of rd (CC:UE 19.14) More... | |
static QPair< int, int > | sexagesimalNumbers (int n) |
Retrieve numerical components from the cycle number [1..60]. (following CC:UE 19.18) | |
static QPair< QString, QString > | sexagesimalNames (int n) |
Retrieve name components from the cycle number [1..60]. More... | |
static int | chineseNameDifference (QPair< int, int >stemBranch1, QPair< int, int >stemBranch2) |
Retrieve year difference between name pairs. [1..60]. (CC:UE 19.19) | |
static QPair< QString, QString > | yearName (int year) |
Retrieve pair of names (chinese stem_branch, translated stem_branch) for Chinese year year (CC:UE 19.20) More... | |
static QPair< QString, QString > | monthName (int month, int year) |
Retrieve pair of names (chinese stem_branch, translated stem_branch) for Chinese month within a year (CC:UE 19.22) More... | |
static int | dayNumber (int rd) |
Retrieve one number (1...60) for Chinese day (after CC:UE 19.24) More... | |
static QPair< int, int > | dayNumbers (int rd) |
Retrieve pair of index numbers (stem, branch) for Chinese day (after CC:UE 19.24) More... | |
static QPair< QString, QString > | dayName (int rd) |
Retrieve pair of names (chinese stem_branch, translated stem_branch) for Chinese day (CC:UE 19.24) More... | |
static int | dayNumberOnOrBefore (QPair< int, int >stemBranch, int rd) |
Retrieve RD of day number (1...60) on or before rd. More... | |
static int | ChineseNewYearInGregorianYear (int gYear) |
Return Chinese year number beginning in Winter of Gregorian year gYear (CC:UE before 19.27) | |
static int | DragonFestivalInGregorianYear (int gYear) |
Return Chinese year number beginning in Winter of Gregorian year gYear (CC:UE 19.27) | |
static int | qingMing (int gYear) |
Return RD of Winter minor term of Gregorian year gYear (CC:UE 19.28) | |
static int | chineseAge (QVector< int >birthdate, int rd) |
Return age of someone born on birthdate on date rd as expressed by Chinese (CC:UE 19.29) A new-born is aged 1. More... | |
static int | chineseYearMarriageAugury (int cycle, int year) |
Determine marriage augury based on year number within a cycle. widows are worst, double-bright are best years. | |
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 (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 (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 (QVector< int >parts, QVector< int >factors, int corr) |
Reingold-Dershowitz CC.UE 1.48. | |
int | rdCorrSum (QVector< int >factors, int corr) |
static QVector< int > | toRadix (int num, QVector< int >radix) |
Split integer to mixed-radix vector. Reingold-Dershowitz CC.UE 1.42. | |
static QVector< int > | intersectWithRange (QVector< int >cand, 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 | |
KoreanCalendar (double jd) | |
Public Member Functions inherited from ChineseCalendar | |
ChineseCalendar (double jd) | |
Public Member Functions inherited from Calendar | |
Calendar (double jd) | |
Static Protected Attributes | |
static QMap< int, QString > | majorSolarTerms |
static QMap< int, QString > | minorSolarTerms |
static QMap< int, QString > | celestialStems |
static QMap< int, QString > | celestialStemsElements |
static QMap< int, QString > | terrestrialBranches |
static QMap< int, QString > | terrestrialBranchesAnimalTotems |
constexpr static const int | chineseMonthNameEpoch =57 |
constexpr static const int | chineseDayNameEpoch =45 |
CC:UE 19.21. | |
constexpr static const int | doubleBright =3 |
CC:UE 19.23. | |
constexpr static const int | bright =2 |
CC:UE 19.30. | |
constexpr static const int | blind =1 |
CC:UE 19.31. | |
constexpr static const int | widow =0 |
CC:UE 19.32. | |
Static Protected Attributes inherited from ChineseCalendar | |
static QMap< int, QString > | majorSolarTerms |
RD of Gregorian {-2636, february, 15}. CC:UE 19.15. | |
static QMap< int, QString > | minorSolarTerms |
static QMap< int, QString > | celestialStems |
static QMap< int, QString > | celestialStemsElements |
static QMap< int, QString > | terrestrialBranches |
static QMap< int, QString > | terrestrialBranchesAnimalTotems |
constexpr static const int | chineseMonthNameEpoch =57 |
constexpr static const int | chineseDayNameEpoch =45 |
CC:UE 19.21. | |
constexpr static const int | doubleBright =3 |
CC:UE 19.23. | |
constexpr static const int | bright =2 |
CC:UE 19.30. | |
constexpr static const int | blind =1 |
CC:UE 19.31. | |
constexpr static const int | widow =0 |
CC:UE 19.32. | |
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) |
Static Public Attributes inherited from ChineseCalendar | |
static const int | chineseEpoch |
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) | |
|
staticslot |
|
overrideslot |
{Cycle, Year, Month, MonthName, "leap"|"", Day, WeekDayName} The words "leap" (translated) are only given if the respective month is leap. Else an empty string is given.
|
staticslot |
This is a mix of Chinese Age and Western calendar, as Koreans consider January 1 as turn of the Year in this calculation (https://www.90daykorean.com/korean-age-all-about-age-in-korea/) Therefore: A new-born is aged 1. Age increases at Gregorian New Year. Returns 0 for dates before birth. According to various sources, the time in the womb is countedc as first year, so it's unclear whether this is strictly correct. A use in scripting would probably be:
|
staticslot |
|
overrideslot |
{year, month, leap-month, day, leap-day}
|
staticslot |
(CC:UE 19.18) In contrast to chineseSexagesimalNumbers, this provides the pair (chinese double-name, translated double-name)
|
staticslot |
class NewHinduCalendar |
Functions for the New Hindu calendars described in CC:UE chapter 20.
The new Hindu calendar as given in CC.UE is an astronomical Lunisolar calendar with Solar and Lunar months. The name of a lunar month depends on the solar month that begins during that lunar month. A (Lunar) month is leap and takes the following month’s name when no solar month begins within it. This also may lead to skipped Lunar months. There are two schemes for counting months. In the "amanta" scheme used here months begin and end at New Moon. The other scheme, "purnimanta", has a few peculiarities for counting the leap month, described in CC:UE. In this lunisolar calendar, there are leap months and expunged months. The phase of the moon at sunrise governs day numbers.
Public Slots | |
void | retranslate () override |
void | setJD (double JD) override |
Set a calendar date from the Julian day number. | |
void | setDate (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 (QVector< int > parts) |
static QVector< int > | hinduLunarFromFixed (int rd) |
static int | fixedFromHinduLunar (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 (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 (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 (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 (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 (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 (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 (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 (QVector< int >parts, QVector< int >factors, int corr) |
Reingold-Dershowitz CC.UE 1.48. | |
int | rdCorrSum (QVector< int >factors, int corr) |
static QVector< int > | toRadix (int num, QVector< int >radix) |
Split integer to mixed-radix vector. Reingold-Dershowitz CC.UE 1.42. | |
static QVector< int > | intersectWithRange (QVector< int >cand, 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 | |
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) | |
Static Protected Attributes | |
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. | |
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) | |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
overrideslot |
{Year, Month, MonthName, Day, WeekDayName}
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
overrideslot |
Year-Month[1...12]-leap[0|1]-Day[1...30]
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticprotected |
(CC:UE 20.26)
|
staticprotected |
(CC:UE 20.25)
class NewHinduLunarCalendar |
New Hindu Lunar dates in the overridden interfacing methods from Calendar.
Functions for the New Hindu Lunisolar calendar described in CC:UE chapter 20.
Public Slots | |
void | setJD (double JD) override |
Set a calendar date from the Julian day number. | |
void | setDate (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 (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 (QVector< int > parts) |
static QVector< int > | hinduLunarFromFixed (int rd) |
static int | fixedFromHinduLunar (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 (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 (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 (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 (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 (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 (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 (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 (QVector< int >parts, QVector< int >factors, int corr) |
Reingold-Dershowitz CC.UE 1.48. | |
int | rdCorrSum (QVector< int >factors, int corr) |
static QVector< int > | toRadix (int num, QVector< int >radix) |
Split integer to mixed-radix vector. Reingold-Dershowitz CC.UE 1.42. | |
static QVector< int > | intersectWithRange (QVector< int >cand, 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 | |
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 |
|
overrideslot |
parts = {Year, Month[1...12], leapMonth[0|1], Day[1...30], leapDay[0|1] }
class OldHinduLuniSolarCalendar |
Functions for the Old Hindu Lunisolar calendars described in CC:UE chapter 10.
The old Hindu Lunisolar calendar as given in CC.UE describes the South Indian version where months begin at New Moon (amanta scheme). The name of a lunar month depends on the solar month that begins during that lunar month. A month is leap and takes the following month’s name when no solar month begins within it. The calendar repeats after 180.000 years.
Public Slots | |
void | retranslate () override |
void | setJD (double JD) override |
Set a calendar date from the Julian day number. | |
void | setDate (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 (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 (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 (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 (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 (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 (QVector< int >parts, QVector< int >factors, int corr) |
Reingold-Dershowitz CC.UE 1.48. | |
int | rdCorrSum (QVector< int >factors, int corr) |
static QVector< int > | toRadix (int num, QVector< int >radix) |
Split integer to mixed-radix vector. Reingold-Dershowitz CC.UE 1.42. | |
static QVector< int > | intersectWithRange (QVector< int >cand, 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 | |
OldHinduLuniSolarCalendar (double jd) | |
Public Member Functions inherited from OldHinduSolarCalendar | |
OldHinduSolarCalendar (double jd) | |
Public Member Functions inherited from Calendar | |
Calendar (double jd) | |
Static Protected Attributes | |
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. | |
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) | |
|
overrideslot |
{Year, Month, MonthName, leap[0|1], Day, DayName}
|
overrideslot |
Year-Month[1...12]-leap[0|1]-Day[1...30]
class OldHinduSolarCalendar |
Functions for the Old Hindu Solar calendar described in CC:UE chapter 10.
The old hindu Solar calendar as given in CC.UE describes the one given in the (First) Arya Siddhanta of Aryabhata (499 C.E.), as amended by Lalla (ca. 720-790 C.E.). There are many variations which are not described in CC.UE and therefore not handled in this implementation.
Public Slots | |
void | retranslate () override |
void | setJD (double JD) override |
Set a calendar date from the Julian day number. | |
void | setDate (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 (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 (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 (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 (QVector< int >parts, QVector< int >factors, int corr) |
Reingold-Dershowitz CC.UE 1.48. | |
int | rdCorrSum (QVector< int >factors, int corr) |
static QVector< int > | toRadix (int num, QVector< int >radix) |
Split integer to mixed-radix vector. Reingold-Dershowitz CC.UE 1.42. | |
static QVector< int > | intersectWithRange (QVector< int >cand, 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 | |
OldHinduSolarCalendar (double jd) | |
Public Member Functions inherited from Calendar | |
Calendar (double jd) | |
Static Protected Attributes | |
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. | |
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) | |
|
overrideslot |
{Year, JovianCycleNr, JovianCycleName, Month, MonthName, Day, DayName}
|
overrideslot |
Year-Month[1...12]-Day[1...30]
|
slot |
This could be used in a startup script. valid styles: 0=Vedic or 1=Sanskrit or 2=Zodiacal
|
slot |
This could be used in a startup script. valid styles: 0|1 (real difference not documented in CC.UE!)
class TibetanCalendar |
Functions for the Tibetan (Phuglugs) calendar
The Tibetan Phuglugs/Phug-pa version of the Kalacakra (Wheel of Time) calendar is similar to the Hindu Lunisolar calendars, described as between the arithmetic simplicity of the old Hindu and the astronomical complexity of the modern Hindu. Astronomical events are calculated in local time which may lead to regional deviations. Bhutan, Mongolian and Sherpa calendars are very similar. Months are lunar with lengths of 29 or 30 days. Leap months precede their "ordinary" months, but leap days follow the "ordinary".
Our implementation uses a 5-part QVector<int> {year, month, leap-month, day, leap-day}
Public Slots | |
void | retranslate () override |
void | setJD (double JD) override |
Set a calendar date from the Julian day number. | |
void | setDate (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 | fixedFromTibetan (QVector< int > tibetan) |
find RD number for date in the Tibetan calendar (CC:UE 21.4) More... | |
static QVector< int > | tibetanFromFixed (int rd) |
find date in the Tibetan calendar from RD number (CC:UE 21.5) | |
static double | tibetanSunEquation (double alpha) |
static double | tibetanMoonEquation (double alpha) |
static bool | tibetanLeapMonth (const QVector< int > tYM) |
static bool | tibetanLeapDay (const QVector< int > tYMD) |
static int | losar (const int tYear) |
static QVector< int > | tibetanNewYear (const int gYear) |
static QString | tibetanSexagesimalYear (const int tYear) |
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 (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 (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 (QVector< int >parts, QVector< int >factors, int corr) |
Reingold-Dershowitz CC.UE 1.48. | |
int | rdCorrSum (QVector< int >factors, int corr) |
static QVector< int > | toRadix (int num, QVector< int >radix) |
Split integer to mixed-radix vector. Reingold-Dershowitz CC.UE 1.42. | |
static QVector< int > | intersectWithRange (QVector< int >cand, 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 | |
TibetanCalendar (double jd) | |
Public Member Functions inherited from Calendar | |
Calendar (double jd) | |
Static Public Attributes | |
static const int | tibetanEpoch |
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 |
RD of Gregorian {-127, december, 7}. CC:UE 21.1. | |
static QMap< int, QString > | monthNames |
static QMap< int, QString > | animals |
static QMap< int, QString > | elements |
static QMap< int, QString > | yogas |
static QMap< int, QString > | naksatras |
static QMap< int, QString > | karanas |
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 |
|
overrideslot |
{Year, Month, MonthName, "leap"|"", Day, "leap"|"", WeekDayName} The words "leap" (translated) are only given if the respective element before (month or day) are leap. Else an empty string is given.
|
staticslot |
|
overrideslot |
{year, month, leap-month, day, leap-day}
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
|
staticslot |
class VietnameseCalendar |
Functions for the Vietnamese calendar (as derived from the Chinese calendar)
The Vietnamese calendar is derived from the Chinese calendar (like Japanese and Korean). The calendar's location for astronomical computations is Saigon. Days begin at midnight. Lunar months begin on the day of New Moon. In difference to the CC:UE book, we must introduce function names which replace "chinese" by "vietnamese" to take the changed location into account, or use methods without the culture name.
Our implementation uses the 5-part QVector<int> {cycle, year, month, leap-month, day} inherited from the Chinese calendar. The years are not counted, only named in its 60-year cycle. The book does not indicate whether Solar Terms are used in this calendar and does not provide names. The respective functions have however been been implemented for the calendar's location.
Public Slots | |
void | retranslate () override |
void | setJD (double JD) override |
Set a calendar date from the Julian day number. | |
void | setDate (QVector< int > parts5) 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 | |
QPair< QString, QString > | getSolarTermStrings () const override |
get a pair of strings for the Solar Terms for a date More... | |
QString | getFormattedSolarTermsString () const override |
get a formatted string of the Solar Terms for a date More... | |
static int | fixedFromVietnamese (QVector< int > parts5) |
find RD number for date in the Chinese calendar (CC:UE 19.17) More... | |
static QVector< int > | vietnameseFromFixed (int rd) |
find date in the Vietnamese calendar from RD number (CC:UE 19.16) More... | |
static int | currentMajorSolarTerm (int rd) |
Return current major solar term for rd (CC:UE 19.5) This seems however unused in this calendar. | |
static StelLocation | vietnameseLocation (double rd_t) |
Return location of Vietnamese calendar computations (Saigon). Before 1968, this used UT+8, now UT+7. CC:UE 19.38. | |
static double | solarLongitudeOnOrAfter (double lambda, double rd_t) |
Return the moment when solar longitude reaches lambda (CC:UE 19.3) More... | |
static int | majorSolarTermOnOrAfter (int rd) |
static int | currentMinorSolarTerm (int rd) |
Return current minor solar term for rd (CC:UE 19.5) This seems however unused in this calendar. | |
static int | minorSolarTermOnOrAfter (int rd) |
Return minor solar term (CC:UE 19.6) | |
static double | midnightInVietnam (int rd) |
Return rd moment of midnight (CC:UE 19.7) This replaces midnight-in-vietnam in the Chinese calendar functions used in Vietnam. | |
static int | winterSolsticeOnOrBefore (int rd) |
Return Vietnamese Winter Solstice date (CC:UE 19.8) | |
static int | newMoonOnOrAfter (int rd) |
Return Vietnamese New Moon (CC:UE 19.9) | |
static int | newMoonBefore (int rd) |
Return Vietnamese New Moon (CC:UE 19.10) | |
static bool | noMajorSolarTerm (int rd) |
Auxiliary function (CC:UE 19.11) | |
static bool | priorLeapMonth (int mP, int m) |
Auxiliary function (CC:UE 19.12) | |
static int | newYearInSui (int rd) |
Return RD date of Chinese New Year in the Sui (year) of rd (CC:UE 19.13) | |
static int | newYearOnOrBefore (int rd) |
Return RD date of Chinese New Year in the Sui (year) of rd (CC:UE 19.14) | |
static QPair< QString, QString > | sexagesimalNames (int n) |
Retrieve name components from the cycle number [1..60]. More... | |
static QPair< QString, QString > | yearName (int year) |
Retrieve pair of names (vietnamese stem_branch, translated stem_branch) for Vietnamese year year (CC:UE 19.20) | |
static QPair< QString, QString > | monthName (int month, int year) |
Retrieve pair of names (vietnamese stem_branch, translated stem_branch) for Vietnamese month within a year (CC:UE 19.22) | |
static QPair< QString, QString > | dayName (int rd) |
Retrieve pair of names (vietnamese stem_branch, translated stem_branch) for Vietnamese day (CC:UE 19.24) | |
Public Slots inherited from ChineseCalendar | |
void | retranslate () override |
void | setJD (double JD) override |
Set a calendar date from the Julian day number. | |
void | setDate (QVector< int > parts5) 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 | |
virtual QPair< QString, QString > | getSolarTermStrings () const |
get a pair of strings for the Solar Terms for a date | |
virtual QString | getFormattedSolarTermsString () const |
get a formatted string of the Solar Terms for a date | |
static int | fixedFromChinese (QVector< int > parts5) |
find RD number for date in the Chinese calendar (CC:UE 19.17) More... | |
static QVector< int > | chineseFromFixed (int rd) |
find date in the Chinese calendar from RD number (CC:UE 19.16) More... | |
static int | currentMajorSolarTerm (int rd) |
static StelLocation | chineseLocation (double rd_t) |
Return location of Chinese calendar computations (Beijing). Before 1929, this used LMST. CC:UE 19.2. | |
static double | solarLongitudeOnOrAfter (double lambda, double rd_t) |
Return the moment when solar longitude reaches lambda (CC:UE 19.3) More... | |
static int | majorSolarTermOnOrAfter (int rd) |
static int | currentMinorSolarTerm (int rd) |
Return current minor solar term for rd (CC:UE 19.5) | |
static int | minorSolarTermOnOrAfter (int rd) |
Return minor solar term (CC:UE 19.6) | |
static double | midnightInChina (int rd) |
Return rd moment of midnight (CC:UE 19.7) | |
static int | winterSolsticeOnOrBefore (int rd) |
Return Chinese Winter Solstice date (CC:UE 19.8) More... | |
static int | newMoonOnOrAfter (int rd) |
Return Chinese New Moon (CC:UE 19.9) More... | |
static int | newMoonBefore (int rd) |
Return Chinese New Moon (CC:UE 19.10) More... | |
static bool | noMajorSolarTerm (int rd) |
Auxiliary function (CC:UE 19.11) More... | |
static bool | priorLeapMonth (int mP, int m) |
Auxiliary function (CC:UE 19.12) More... | |
static int | newYearInSui (int rd) |
Return RD date of Chinese New Year in the Sui (year) of rd (CC:UE 19.13) More... | |
static int | newYearOnOrBefore (int rd) |
Return RD date of Chinese New Year in the Sui (year) of rd (CC:UE 19.14) More... | |
static QPair< int, int > | sexagesimalNumbers (int n) |
Retrieve numerical components from the cycle number [1..60]. (following CC:UE 19.18) | |
static QPair< QString, QString > | sexagesimalNames (int n) |
Retrieve name components from the cycle number [1..60]. More... | |
static int | chineseNameDifference (QPair< int, int >stemBranch1, QPair< int, int >stemBranch2) |
Retrieve year difference between name pairs. [1..60]. (CC:UE 19.19) | |
static QPair< QString, QString > | yearName (int year) |
Retrieve pair of names (chinese stem_branch, translated stem_branch) for Chinese year year (CC:UE 19.20) More... | |
static QPair< QString, QString > | monthName (int month, int year) |
Retrieve pair of names (chinese stem_branch, translated stem_branch) for Chinese month within a year (CC:UE 19.22) More... | |
static int | dayNumber (int rd) |
Retrieve one number (1...60) for Chinese day (after CC:UE 19.24) More... | |
static QPair< int, int > | dayNumbers (int rd) |
Retrieve pair of index numbers (stem, branch) for Chinese day (after CC:UE 19.24) More... | |
static QPair< QString, QString > | dayName (int rd) |
Retrieve pair of names (chinese stem_branch, translated stem_branch) for Chinese day (CC:UE 19.24) More... | |
static int | dayNumberOnOrBefore (QPair< int, int >stemBranch, int rd) |
Retrieve RD of day number (1...60) on or before rd. More... | |
static int | ChineseNewYearInGregorianYear (int gYear) |
Return Chinese year number beginning in Winter of Gregorian year gYear (CC:UE before 19.27) | |
static int | DragonFestivalInGregorianYear (int gYear) |
Return Chinese year number beginning in Winter of Gregorian year gYear (CC:UE 19.27) | |
static int | qingMing (int gYear) |
Return RD of Winter minor term of Gregorian year gYear (CC:UE 19.28) | |
static int | chineseAge (QVector< int >birthdate, int rd) |
Return age of someone born on birthdate on date rd as expressed by Chinese (CC:UE 19.29) A new-born is aged 1. More... | |
static int | chineseYearMarriageAugury (int cycle, int year) |
Determine marriage augury based on year number within a cycle. widows are worst, double-bright are best years. | |
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 (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 (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 (QVector< int >parts, QVector< int >factors, int corr) |
Reingold-Dershowitz CC.UE 1.48. | |
int | rdCorrSum (QVector< int >factors, int corr) |
static QVector< int > | toRadix (int num, QVector< int >radix) |
Split integer to mixed-radix vector. Reingold-Dershowitz CC.UE 1.42. | |
static QVector< int > | intersectWithRange (QVector< int >cand, 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 | |
VietnameseCalendar (double jd) | |
Public Member Functions inherited from ChineseCalendar | |
ChineseCalendar (double jd) | |
Public Member Functions inherited from Calendar | |
Calendar (double jd) | |
Static Protected Attributes | |
static QMap< int, QString > | countedMonthNames |
static QMap< int, QString > | majorSolarTerms |
static QMap< int, QString > | minorSolarTerms |
static QMap< int, QString > | celestialStems |
static QMap< int, QString > | celestialStemsElements |
static QMap< int, QString > | terrestrialBranches |
static QMap< int, QString > | terrestrialBranchesAnimalTotems |
Static Protected Attributes inherited from ChineseCalendar | |
static QMap< int, QString > | majorSolarTerms |
RD of Gregorian {-2636, february, 15}. CC:UE 19.15. | |
static QMap< int, QString > | minorSolarTerms |
static QMap< int, QString > | celestialStems |
static QMap< int, QString > | celestialStemsElements |
static QMap< int, QString > | terrestrialBranches |
static QMap< int, QString > | terrestrialBranchesAnimalTotems |
constexpr static const int | chineseMonthNameEpoch =57 |
constexpr static const int | chineseDayNameEpoch =45 |
CC:UE 19.21. | |
constexpr static const int | doubleBright =3 |
CC:UE 19.23. | |
constexpr static const int | bright =2 |
CC:UE 19.30. | |
constexpr static const int | blind =1 |
CC:UE 19.31. | |
constexpr static const int | widow =0 |
CC:UE 19.32. | |
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) |
Static Public Attributes inherited from ChineseCalendar | |
static const int | chineseEpoch |
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) | |
|
staticslot |
|
overrideslot |
{Cycle, Year, Month, MonthName, "leap"|"", Day, WeekDayName} The words "leap" (translated) are only given if the respective month is leap. Else an empty string is given.
|
overrideslot |
|
overrideslot |
|
overrideslot |
{year, month, leap-month, day, leap-day}
|
staticslot |
(CC:UE 19.18) In contrast to sexagesimalNumbers, this provides the pair (vietnamese double-name, translated double-name)
|
staticslot |
|
staticslot |