/** * Get obliquity of the ecliptic. * * @param null|DateTime $DateTime Date (optional) * @return float In degree */ public static function getEclipticObliquity(DateTime $DateTime = null) { $jc = Time::getJC($DateTime); $k = Math::dmsToDecimal(['d' => 23, 'm' => 26, 's' => 21.448]); $k1 = Math::dmsToDecimal(['d' => 0, 'm' => 0, 's' => 46.815]); $k2 = Math::dmsToDecimal(['d' => 0, 'm' => 0, 's' => 0.00059]); $k3 = Math::dmsToDecimal(['d' => 0, 'm' => 0, 's' => 0.001813]); $e = $k - $k1 * $jc - $k2 * $jc ** 2 + $k3 * $jc ** 3; return $e; }
protected function clear() { $dateTimeEnd = Time::createDateTime($this->ganitaData['user']); foreach ($this->timeStamps as $key => $timeStamp) { if (is_null($timeStamp['start']) || $timeStamp['end'] < $dateTimeEnd->format(Time::FORMAT_DATETIME)) { unset($this->timeStamps[$key]); } } }