Back to List

YiMatrix · Academy Journal

Beijing Time Is Not Natural Time: True Solar Time Was the “Standard” Used by the Ancients

Before modern clocks and “Beijing Time,” the ancients primarily relied on celestial phenomena to measure time. The most common method was to determine the hour by observing the sun

南荒December 25, 202521 min read

Introduction

Before modern clocks and “Beijing Time,” the ancients primarily relied on celestial phenomena to measure time. The most common method was to determine the hour by observing the sun’s position and changes in shadows. The shortest shadow at noon and the longest at dawn and dusk formed the basis of ancient calendars and divination calculations.

Therefore, traditional arts such as Bazi, Bagua, Qimen, and Liuren originally based their calculations of the rise and fall of the Five Elements not on today’s Beijing Time, but on the more natural True Solar Time.

Beijing Time is a modern administrative time, based on the 120°E meridian of the East Eighth Zone, unifying the nation’s schedule. True Solar Time, on the other hand, is an astronomical time calculated from the local longitude and the actual position of the sun in the sky, varying by location. In other words, at the same moment of Beijing Time, the True Solar Time in Beijing, Chongqing, and Urumqi will all differ.

For this reason, only True Solar Time can truly reflect the local spatiotemporal state. Blindly substituting Beijing Time can easily lead to deviations from the spatiotemporal logic originally set by ancient divination arts.

To calculate True Solar Time, one must first start from Mean Solar Time. Due to the unevenness of Earth’s rotation and revolution, the apparent motion of the sun on the celestial sphere varies in speed, creating a difference between True Solar Time and Mean Solar Time, known as the Equation of Time. Mean Solar Time is an artificially averaged ideal time, while True Solar Time is the moment corresponding to the actual position of the sun in the sky each day.

Key Concepts

The process for calculating True Solar Time is as follows:

  1. Mean Solar Time: This is the average time calculated from the local longitude and standard time (e.g., Beijing Time).

  2. Equation of Time: Based on the actual trajectory of the sun, this difference is used to adjust Mean Solar Time.

  3. True Solar Time: Obtained by adding the Equation of Time to Mean Solar Time, this is the accurate time based on the local astronomical position.

True Solar Time

True Solar Time (TST) is time calculated based on the sun’s position in the sky. It differs from standard time (such as Coordinated Universal Time (UTC) or local time) because True Solar Time reflects the actual position of the sun at different locations on Earth each day. True Solar Time varies with day length; that is, the elliptical orbit of the Earth and the tilt of its axis cause the solar time to not be exactly consistent each day. The difference between True Solar Time and standard time is called the Equation of Time (EoT).

Equation of Time

Calculating True Solar Time is a crucial step. However, before obtaining True Solar Time, one must first calculate Mean Solar Time. Mean Solar Time is calculated based on the average speed of Earth’s rotation and is related to the astronomical “mean sun.” In contrast, True Solar Time is calculated based on the actual rotation speed of the Earth and the elliptical shape of its orbit, reflecting the real position of the sun in the sky each day. Because Earth’s rotation speed is not constant, there is a difference between True Solar Time and Mean Solar Time, known as the Equation of Time.

Mean Solar Time

Mean Solar Time is time calculated from the average speed of Earth’s rotation, assuming the sun’s daily motion is uniform. In astronomy, Mean Solar Time is related to the “mean sun,” a hypothetical celestial body that moves along the celestial equator at a constant speed, representing the average rate of Earth’s rotation.

Characteristics of Mean Solar Time:

  1. Constancy: Mean Solar Time assumes the sun moves uniformly across the celestial sphere each day, providing a fixed time standard for daily life.

  2. Consistent Time Units: The length of each day in Mean Solar Time (i.e., 24 hours) is constant, whereas the length of each day in True Solar Time varies slightly due to the shape of Earth’s orbit and the tilt of its axis.

  3. Equation of Time: The difference between True Solar Time and Mean Solar Time is called the Equation of Time, which varies throughout the year, reaching up to about 16 minutes.

Mean Solar Time is commonly used as the basis for modern clock systems (such as local time and universal time) because it provides a simple and relatively accurate time reference. Local Mean Solar Time can also be adjusted by local longitude to reflect local standard time.

Comparison of Two Formulas for Calculating Mean Solar Time

We will compare these two formulas using the same parameters to calculate the Mean Solar Time for a specific city (e.g., Chongqing, longitude 106.55°E), using different time bases (Beijing Time and UTC). Assume Beijing Time is 17:58.

Parameters:

  • Beijing Time: 17:58
  • UTC Time: Beijing Time - 8 hours = 09:58
  • Local Longitude: 106.55°E (Chongqing)
  • Standard Longitude (China): 120°E (reference longitude for China Standard Time)
  • Time Zone Offset: +8 hours (Chongqing is in the East Eighth Zone)

1. Formula 1: Mean Solar Time = Beijing Time + [(Local Longitude - 120) × 4 minutes]

Calculation Steps:

  1. Beijing Time = 17:58
  2. Local Longitude = 106.55°
  3. Reference Longitude = 120°
  4. Difference = 106.55 - 120 = -13.45°
  5. Time Difference = -13.45° × 4 minutes/° = -53.8 minutes = -53 minutes 48 seconds
  6. Mean Solar Time = 17:58 - 53 minutes 48 seconds ≈ 17:04:12

Result:

Mean Solar Time ≈ 17:04:12 (based on Beijing Time)

2. Formula 2: LMST (Local Mean Solar Time) = UTC + (Local Longitude / 15) - Time Zone Offset

Calculation Steps:

  1. UTC Time = Beijing Time - 8 hours = 09:58
  2. Local Longitude = 106.55°
  3. Longitude divided by 15: 106.55 / 15 ≈ 7.103 hours ≈ 7 hours 6 minutes
  4. Time Zone Offset = +8 hours (Chongqing in East Eighth Zone)
  5. LMST = 09:58 + 7 hours 6 minutes - 8 hours
  6. LMST = 09:58 + 07:06 - 08:00 = 09:04

Result:

LMST ≈ 09:04 (based on UTC)

Comparison:

FormulaTime BaseResultExplanation
Mean Solar Time = Beijing Time + [(Local Longitude - 120) × 4 minutes]Beijing Time17:04:12Suitable for Chinese scenarios, adjusted based on Beijing Time.
LMST = UTC + (Local Longitude / 15) - Time Zone OffsetUTC09:04General formula, applicable to different longitudes and time zones globally.

Summary:

  • Formula 1 assumes you use Beijing Time as the base, suitable for time calculations within China or the East Eighth Zone, simple but limited.
  • Formula 2 is based on global standard UTC time, suitable for handling time zone issues worldwide, with stronger universality. If you need to handle time in different countries or time zones, this formula is more appropriate. We will use this formula as the calculation method.

Steps to Calculate True Solar Time

  1. Calculate Local Mean Solar Time (LMST): Local Mean Solar Time is the mean solar time based on Earth’s rotation, a simple correction of standard time by longitude.

Formula: LMST = UTC + (Local Longitude / 15) - Time Zone Offset

  • UTC: Coordinated Universal Time

  • Local Longitude: in degrees, positive for east, negative for west

  • Time Zone Offset: in hours, positive for east, negative for west

  • Calculate Equation of Time (EoT): The Equation of Time reflects the difference between True Solar Time and Local Mean Solar Time. This is mainly due to the eccentricity of Earth’s orbit and the tilt of its axis. The Equation of Time varies with date and can be approximated by a formula:

Approximate Formula: EoT = 9.87 * sin(2B) - 7.53 * cos(B) - 1.5 * sin(B)

Where: B = 360 * (n - 81) / 365

  • n: day of the year (January 1 is 1, December 31 is 365 or 366).

  • EoT is in minutes.

  • Calculate True Solar Time: Add the Equation of Time to Local Mean Solar Time to obtain True Solar Time.

Formula: TST = LMST + EoT/60

Where EoT needs to be converted to hours.

Detailed Steps:

Assume you want to calculate the True Solar Time for Beijing, with UTC time 12:00 and date October 6, 2024:

  1. Local Mean Solar Time (LMST):
  2. Beijing longitude is approximately 116.4°E.
  3. Beijing time zone is UTC+8.

LMST = UTC + (Local Longitude / 15) - Time Zone Offset LMST = 12:00 + (116.4 / 15) - 8 = 12:00 + 7.76 - 8 = 11:46

  1. Calculate Equation of Time (EoT):

  2. Assume date is October 6, 2024, which is the 280th day of the year. B = 360 * (280 - 81) / 365 = 360 * 199 / 365 ≈ 196.38 degrees

  3. Substitute into the Equation of Time formula: EoT = 9.87 * sin(2 * 196.38) - 7.53 * cos(196.38) - 1.5 * sin(196.38) After calculation: EoT ≈ -10.5 minutes

  4. True Solar Time (TST): TST = LMST + EoT/60 TST = 11:46 - 10.5/60 = 11:35:30

Code Example (JavaScript)

You can use JavaScript or similar languages to implement the calculation of True Solar Time. Here is a simple example (using dayjs plugins):

import dayjs from 'dayjs';
import utc from 'dayjs/plugin/utc';
import timezone from 'dayjs/plugin/timezone';
import dayOfYear from 'dayjs/plugin/dayOfYear';

dayjs.extend(utc);
dayjs.extend(timezone);
dayjs.extend(dayOfYear);

/**
 * Calculate True Solar Time (return local time display)
 * @param {string|Date} date Input "local standard time" (e.g., '2024-10-06 12:00:00', timezone specified by timezoneStr)
 * @param {number} longitude Longitude (positive for east, negative for west), e.g., Beijing 116.4
 * @param {string} timezoneStr IANA timezone name, e.g., 'Asia/Shanghai'
 * @param {number} tzOffsetHours Time zone offset in hours, e.g., East Eighth Zone = 8
 */
function calculateTrueSolarTimeLocal(date, longitude, timezoneStr, tzOffsetHours) {
  // 1) Local Standard Time LST
  const lst = dayjs.tz(date, timezoneStr);

  // 2) Standard Longitude LSTM = 15 * timezone
  const LSTM = 15 * tzOffsetHours;

  // 3) Local Mean Solar Time LMST (expressed in local timezone "clock time")
  const deltaHours = (longitude - LSTM) / 15; // hours
  const lmst = lst.add(deltaHours, 'hour');

  // 4) Equation of Time EoT (minutes)
  const n = lmst.dayOfYear(); // day of the year (using local date for n is sufficient)
  const Bdeg = (360 * (n - 81)) / 365;
  const Brad = (Math.PI / 180) * Bdeg;
  const EoT = 9.87 * Math.sin(2 * Brad) - 7.53 * Math.cos(Brad) - 1.5 * Math.sin(Brad); // minutes

  // 5) True Solar Time TST (still expressed in local clock time)
  const tst = lmst.add(EoT, 'minute');

  return tst.format('YYYY-MM-DD HH:mm:ss');
}

// Example: 2024-10-06 12:00 (local standard time), Beijing 116.4°E, East Eighth Zone
const result = calculateTrueSolarTimeLocal('2024-10-06 12:00:00', 116.4, 'Asia/Shanghai', 8);
console.log(result);

Summary

  1. True Solar Time is time calculated based on the sun’s position, deviating from Mean Solar Time (local time).
  2. Equation of Time (EoT) is key to calculating the difference between True Solar Time and Mean Solar Time.
  3. True Solar Time can be calculated using code based on geographic longitude and Coordinated Universal Time.

Continue reading

Recommended

Back to List