How VedJyotix calculates Kundali, Panchang, Tithi and planetary positions

VedJyotix runs two separate systems. Everything Panchang-related — tithi, nakshatra, yoga, karana, sunrise and sunset, Rahu Kaal, Choghadiya and festival dates — is computed on this site from the positions of the Sun and Moon, using the Lahiri ayanamsa. The birth chart is different: planetary positions, the ascendant and the dasha come from a third-party Vedic ephemeris service, and if it is unavailable no chart is produced at all. Every claim below is printed with the file that proves it.

Two engines, two sources

WhatSourceIf unavailable
Panchang, tithi, nakshatra, yoga, karana, muhurat, festivalsComputed in-houseNot applicable — no external dependency
Birth chart, planets, ascendant, dashaThird-party ephemeris (AstrologyAPI)Nothing is shown — no fallback

The Panchang engine

Panchang, tithi, nakshatra, yoga, karana, sunrise/sunset, Rahu Kaal, Choghadiya and the festival calendar are computed in-house from solar and lunar positions. No external astrology API is involved in any of them.

Method: In-house computation from solar and lunar positions

Solar and lunar positions

Solar and lunar ecliptic longitudes use Schlyter's formulae, including the main lunar perturbation terms, evaluated from the Julian Day. The source states the working accuracy as roughly 0.01° for the Sun and 0.02° for the Moon.

Method: Analytical solar and lunar series (Schlyter), evaluated from the Julian Day

Ayanamsa

Sidereal positions use the Lahiri ayanamsa, implemented as 23.853° at J2000 advancing 50.29 arcseconds per year. Every sidereal quantity on the site — nakshatra, yoga, moon sign, sun sign, the solar ingress that names a lunar month — is derived from that single function.

Method: Lahiri ayanamsa, linear precession model

How the five limbs are derived

Tithi is floor(elongation ÷ 12°) + 1, giving 1–30. Karana is a 6° half-tithi, 0–59. Nakshatra and yoga each divide 360° into 27 arcs of 13°20′ — nakshatra from the sidereal Moon, yoga from the sum of the sidereal Sun and Moon. End times are found by numerically solving for the next arc crossing, not estimated.

Method: Angular division, with numerical root-finding for transition times

Sunrise, sunset and the windows derived from them

Sunrise and sunset use the standard NOAA sunrise equation, evaluated for the requested latitude and longitude. Rahu Kaal, Gulika Kaal, Yamaganda and Choghadiya are then derived by dividing that real sunrise-to-sunset interval into eight equal parts — not from a fixed 6 a.m.–6 p.m. assumption.

Method: NOAA sunrise equation, then eighth-of-daylight division

Time zones and coordinates

Times are computed against an explicit UTC offset in minutes, defaulting to +330 (IST), with the IANA zone name used only for the human-readable date label. The default reference location is Varanasi (25.3176° N, 82.9739° E) where no city is supplied.

Method: Explicit UTC offset per request; IANA zone used only for labelling

Lunar months and Adhika Masa

Lunar months are named from the Sun's sidereal rashi at the bounding new moons, and both the Purnimanta and Amanta conventions are computed from the same engine. Adhika (intercalary) months are detected rather than assumed, and named festivals are excluded from them.

Method: Sidereal solar ingress at the bounding new moons

Festival dates are derived by rule

Festival dates are derived from rules, not stored in a table. Lunar festivals are defined as a (month, tithi) pair and solar ones as a sidereal ingress. Day attribution follows the rule each observance actually uses — sunrise (udaya-vyapini), pradosha, nishita, moonrise or madhyahna — because they do not all use the tithi at sunrise.

Method: Rule-based derivation with per-observance day attribution

How to read a Panchang, explained

The birth chart

The birth chart is a separate system. Planetary positions, the ascendant, house placement, nakshatra pada and the Vimshottari dasha come from a third-party Vedic ephemeris service (AstrologyAPI), not from the in-house Panchang engine.

Method: Third-party Vedic ephemeris service

Why there is no fallback

The chart path deliberately has no fallback. If the ephemeris is unavailable the request fails and no chart is shown, because a plausible-looking but fabricated chart is indistinguishable from a real one to the reader. An earlier version of this product did generate charts from a hash of the user's name; that code was removed for exactly this reason.

Method: Fail-closed design — no synthesised fallback

Validation

Output is checked two ways. Date-level results are cross-checked against independent published panchang references before a page is wired up — the 2026 Shravan boundaries, for example, were validated against DrikPanchang and Webdunia. Structural behaviour is covered by scripted checks in the repository that run against a built site.

Method: Independent published cross-reference, plus scripted checks in the repository

Known limits — and what we do not claim

Every method has limits. These are ours:

  • The Panchang engine uses analytical series (Schlyter), not a full numerical ephemeris such as Swiss Ephemeris or JPL DE. Tithi, nakshatra and yoga names are reliable; transition times are good to a few minutes, not to the second.
  • Sunrise and sunset are computed for sea level with standard atmospheric refraction. No correction is applied for observer elevation or local horizon obstruction.
  • Times are computed against a fixed UTC offset per request. For locations that observe daylight saving, the caller must supply the correct offset — the engine does not infer DST transitions on its own.
  • The birth-chart ayanamsa is whatever the third-party ephemeris service applies by default. Our code does not set it, so we do not state a specific ayanamsa for Kundali output.
  • Panchang and Kundali are computed by two different systems. They are not guaranteed to agree to the arcminute, and neither is presented as a substitute for a qualified astrologer's judgement.
  • Regional traditions differ. Where a convention is genuinely contested — Purnimanta versus Amanta month naming, for instance — the site shows both rather than asserting one is correct.

Frequently asked questions

Does VedJyotix compute the Panchang itself or call an API?

It computes it. Tithi, nakshatra, yoga, karana, sunrise, sunset, Rahu Kaal, Choghadiya and festival dates are all derived in-house from solar and lunar positions. A third-party ephemeris is used only for the birth chart.

Which ayanamsa does VedJyotix use?

Lahiri, for everything the site computes itself — implemented as 23.853° at J2000 advancing 50.29 arcseconds per year. For birth charts the ayanamsa is whichever the third-party ephemeris service applies by default; our code does not set it, so we do not claim a specific one there.

How accurate are the tithi and nakshatra end times?

The underlying solar and lunar longitudes are stated in the source as accurate to roughly 0.01° and 0.02° respectively. Tithi and nakshatra names are reliable on that basis; transition times are good to a few minutes rather than to the second.

How are festival dates decided?

By rule, not from a stored list. A lunar festival is defined as a month-and-tithi pair and a solar one as a sidereal ingress, then attributed to a day using the rule that observance actually follows — sunrise, pradosha, nishita, moonrise or madhyahna.

What happens if the ephemeris service is unavailable?

No chart is produced. The birth-chart path has no fallback by design: it fails and shows an error rather than generating a plausible substitute, because a fabricated chart looks identical to a real one from the reader's side.

Is the output verified against other sources?

Yes, before a page is wired up. Dates are cross-checked against independent published panchang references — the 2026 Shravan boundaries were checked against DrikPanchang and Webdunia — and scripted checks in the repository verify structural behaviour against a built site.

Does the Panchang account for my location?

It does when a location is supplied. Sunrise, sunset and everything derived from them are computed for the given latitude, longitude and UTC offset. Where no city is given, calculations default to Varanasi at Indian Standard Time.

Last reviewed: · This page is checked against the running VedJyotix code. It is updated when the calculations change.