Documentation
¶
Index ¶
- type LocalLunarEclipseInfo
- func ClosestGeometricLocalLunarEclipse(date time.Time, lon, lat, height float64) LocalLunarEclipseInfo
- func ClosestGeometricLocalLunarEclipseChauvenet(date time.Time, lon, lat, height float64) LocalLunarEclipseInfo
- func ClosestGeometricLocalLunarEclipseDanjon(date time.Time, lon, lat, height float64) LocalLunarEclipseInfo
- func ClosestLocalLunarEclipse(date time.Time, lon, lat, height float64) LocalLunarEclipseInfo
- func ClosestLocalLunarEclipseChauvenet(date time.Time, lon, lat, height float64) LocalLunarEclipseInfo
- func ClosestLocalLunarEclipseDanjon(date time.Time, lon, lat, height float64) LocalLunarEclipseInfo
- func ClosestLocalTotalLunarEclipse(date time.Time, lon, lat, height float64) (LocalLunarEclipseInfo, bool)
- func GeometricLocalLunarEclipseOnDate(date time.Time, lon, lat, height float64) (LocalLunarEclipseInfo, bool)
- func GeometricLocalLunarEclipseOnDateChauvenet(date time.Time, lon, lat, height float64) (LocalLunarEclipseInfo, bool)
- func GeometricLocalLunarEclipseOnDateDanjon(date time.Time, lon, lat, height float64) (LocalLunarEclipseInfo, bool)
- func LastGeometricLocalLunarEclipse(date time.Time, lon, lat, height float64) LocalLunarEclipseInfo
- func LastGeometricLocalLunarEclipseChauvenet(date time.Time, lon, lat, height float64) LocalLunarEclipseInfo
- func LastGeometricLocalLunarEclipseDanjon(date time.Time, lon, lat, height float64) LocalLunarEclipseInfo
- func LastLocalLunarEclipse(date time.Time, lon, lat, height float64) LocalLunarEclipseInfo
- func LastLocalLunarEclipseChauvenet(date time.Time, lon, lat, height float64) LocalLunarEclipseInfo
- func LastLocalLunarEclipseDanjon(date time.Time, lon, lat, height float64) LocalLunarEclipseInfo
- func LastLocalTotalLunarEclipse(date time.Time, lon, lat, height float64) (LocalLunarEclipseInfo, bool)
- func LocalLunarEclipseOnDate(date time.Time, lon, lat, height float64) (LocalLunarEclipseInfo, bool)
- func LocalLunarEclipseOnDateChauvenet(date time.Time, lon, lat, height float64) (LocalLunarEclipseInfo, bool)
- func LocalLunarEclipseOnDateDanjon(date time.Time, lon, lat, height float64) (LocalLunarEclipseInfo, bool)
- func NextGeometricLocalLunarEclipse(date time.Time, lon, lat, height float64) LocalLunarEclipseInfo
- func NextGeometricLocalLunarEclipseChauvenet(date time.Time, lon, lat, height float64) LocalLunarEclipseInfo
- func NextGeometricLocalLunarEclipseDanjon(date time.Time, lon, lat, height float64) LocalLunarEclipseInfo
- func NextLocalLunarEclipse(date time.Time, lon, lat, height float64) LocalLunarEclipseInfo
- func NextLocalLunarEclipseChauvenet(date time.Time, lon, lat, height float64) LocalLunarEclipseInfo
- func NextLocalLunarEclipseDanjon(date time.Time, lon, lat, height float64) LocalLunarEclipseInfo
- func NextLocalTotalLunarEclipse(date time.Time, lon, lat, height float64) (LocalLunarEclipseInfo, bool)
- type LocalSolarEclipseContactPoint
- type LocalSolarEclipseInfo
- func ClosestGeometricLocalSolarEclipse(date time.Time, lon, lat, height float64) LocalSolarEclipseInfo
- func ClosestGeometricLocalSolarEclipseIAUSingleK(date time.Time, lon, lat, height float64) LocalSolarEclipseInfo
- func ClosestGeometricLocalSolarEclipseNASABulletinSplitK(date time.Time, lon, lat, height float64) LocalSolarEclipseInfo
- func ClosestLocalAnnularSolarEclipse(date time.Time, lon, lat, height float64) (LocalSolarEclipseInfo, bool)
- func ClosestLocalSolarEclipse(date time.Time, lon, lat, height float64) LocalSolarEclipseInfo
- func ClosestLocalSolarEclipseIAUSingleK(date time.Time, lon, lat, height float64) LocalSolarEclipseInfo
- func ClosestLocalSolarEclipseNASABulletinSplitK(date time.Time, lon, lat, height float64) LocalSolarEclipseInfo
- func ClosestLocalTotalSolarEclipse(date time.Time, lon, lat, height float64) (LocalSolarEclipseInfo, bool)
- func GeometricLocalSolarEclipseOnDate(date time.Time, lon, lat, height float64) (LocalSolarEclipseInfo, bool)
- func GeometricLocalSolarEclipseOnDateIAUSingleK(date time.Time, lon, lat, height float64) (LocalSolarEclipseInfo, bool)
- func GeometricLocalSolarEclipseOnDateNASABulletinSplitK(date time.Time, lon, lat, height float64) (LocalSolarEclipseInfo, bool)
- func LastGeometricLocalSolarEclipse(date time.Time, lon, lat, height float64) LocalSolarEclipseInfo
- func LastGeometricLocalSolarEclipseIAUSingleK(date time.Time, lon, lat, height float64) LocalSolarEclipseInfo
- func LastGeometricLocalSolarEclipseNASABulletinSplitK(date time.Time, lon, lat, height float64) LocalSolarEclipseInfo
- func LastLocalAnnularSolarEclipse(date time.Time, lon, lat, height float64) (LocalSolarEclipseInfo, bool)
- func LastLocalSolarEclipse(date time.Time, lon, lat, height float64) LocalSolarEclipseInfo
- func LastLocalSolarEclipseIAUSingleK(date time.Time, lon, lat, height float64) LocalSolarEclipseInfo
- func LastLocalSolarEclipseNASABulletinSplitK(date time.Time, lon, lat, height float64) LocalSolarEclipseInfo
- func LastLocalTotalSolarEclipse(date time.Time, lon, lat, height float64) (LocalSolarEclipseInfo, bool)
- func LocalSolarEclipseOnDate(date time.Time, lon, lat, height float64) (LocalSolarEclipseInfo, bool)
- func LocalSolarEclipseOnDateIAUSingleK(date time.Time, lon, lat, height float64) (LocalSolarEclipseInfo, bool)
- func LocalSolarEclipseOnDateNASABulletinSplitK(date time.Time, lon, lat, height float64) (LocalSolarEclipseInfo, bool)
- func NextGeometricLocalSolarEclipse(date time.Time, lon, lat, height float64) LocalSolarEclipseInfo
- func NextGeometricLocalSolarEclipseIAUSingleK(date time.Time, lon, lat, height float64) LocalSolarEclipseInfo
- func NextGeometricLocalSolarEclipseNASABulletinSplitK(date time.Time, lon, lat, height float64) LocalSolarEclipseInfo
- func NextLocalAnnularSolarEclipse(date time.Time, lon, lat, height float64) (LocalSolarEclipseInfo, bool)
- func NextLocalSolarEclipse(date time.Time, lon, lat, height float64) LocalSolarEclipseInfo
- func NextLocalSolarEclipseIAUSingleK(date time.Time, lon, lat, height float64) LocalSolarEclipseInfo
- func NextLocalSolarEclipseNASABulletinSplitK(date time.Time, lon, lat, height float64) LocalSolarEclipseInfo
- func NextLocalTotalSolarEclipse(date time.Time, lon, lat, height float64) (LocalSolarEclipseInfo, bool)
- type LunarEclipseContactPoint
- type LunarEclipseInfo
- func ClosestLunarEclipse(date time.Time) LunarEclipseInfo
- func ClosestLunarEclipseChauvenet(date time.Time) LunarEclipseInfo
- func ClosestLunarEclipseDanjon(date time.Time) LunarEclipseInfo
- func LastLunarEclipse(date time.Time) LunarEclipseInfo
- func LastLunarEclipseChauvenet(date time.Time) LunarEclipseInfo
- func LastLunarEclipseDanjon(date time.Time) LunarEclipseInfo
- func LunarEclipseOnDate(date time.Time) (LunarEclipseInfo, bool)
- func LunarEclipseOnDateChauvenet(date time.Time) (LunarEclipseInfo, bool)
- func LunarEclipseOnDateDanjon(date time.Time) (LunarEclipseInfo, bool)
- func NextLunarEclipse(date time.Time) LunarEclipseInfo
- func NextLunarEclipseChauvenet(date time.Time) LunarEclipseInfo
- func NextLunarEclipseDanjon(date time.Time) LunarEclipseInfo
- type LunarEclipseType
- type SarosInfo
- type SolarEclipseCentrality
- type SolarEclipseInfo
- func ClosestSolarEclipse(date time.Time) SolarEclipseInfo
- func ClosestSolarEclipseIAUSingleK(date time.Time) SolarEclipseInfo
- func ClosestSolarEclipseNASABulletinSplitK(date time.Time) SolarEclipseInfo
- func LastSolarEclipse(date time.Time) SolarEclipseInfo
- func LastSolarEclipseIAUSingleK(date time.Time) SolarEclipseInfo
- func LastSolarEclipseNASABulletinSplitK(date time.Time) SolarEclipseInfo
- func NextSolarEclipse(date time.Time) SolarEclipseInfo
- func NextSolarEclipseIAUSingleK(date time.Time) SolarEclipseInfo
- func NextSolarEclipseNASABulletinSplitK(date time.Time) SolarEclipseInfo
- func SolarEclipseOnDate(date time.Time) (SolarEclipseInfo, bool)
- func SolarEclipseOnDateIAUSingleK(date time.Time) (SolarEclipseInfo, bool)
- func SolarEclipseOnDateNASABulletinSplitK(date time.Time) (SolarEclipseInfo, bool)
- type SolarEclipsePartialAreaInfo
- func SolarEclipsePartialArea(date time.Time, options SolarEclipsePartialAreaOptions) (SolarEclipsePartialAreaInfo, bool)
- func SolarEclipsePartialAreaIAUSingleK(date time.Time, options SolarEclipsePartialAreaOptions) (SolarEclipsePartialAreaInfo, bool)
- func SolarEclipsePartialAreaNASABulletinSplitK(date time.Time, options SolarEclipsePartialAreaOptions) (SolarEclipsePartialAreaInfo, bool)
- type SolarEclipsePartialAreaOptions
- type SolarEclipsePartialFootprint
- type SolarEclipsePartialFootprintOptions
- type SolarEclipsePartialFootprintsInfo
- func SolarEclipsePartialFootprints(date time.Time, options SolarEclipsePartialFootprintOptions) (SolarEclipsePartialFootprintsInfo, bool)
- func SolarEclipsePartialFootprintsIAUSingleK(date time.Time, options SolarEclipsePartialFootprintOptions) (SolarEclipsePartialFootprintsInfo, bool)
- func SolarEclipsePartialFootprintsNASABulletinSplitK(date time.Time, options SolarEclipsePartialFootprintOptions) (SolarEclipsePartialFootprintsInfo, bool)
- type SolarEclipsePath
- func SolarEclipseCentralPath(date time.Time, options SolarEclipsePathOptions) (SolarEclipsePath, bool)
- func SolarEclipseCentralPathIAUSingleK(date time.Time, options SolarEclipsePathOptions) (SolarEclipsePath, bool)
- func SolarEclipseCentralPathNASABulletinSplitK(date time.Time, options SolarEclipsePathOptions) (SolarEclipsePath, bool)
- type SolarEclipsePathOptions
- type SolarEclipsePathPoint
- type SolarEclipseRadiusModel
- type SolarEclipseType
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type LocalLunarEclipseInfo ¶
type LocalLunarEclipseInfo struct {
// Type 月食类型, eclipse type.
Type LunarEclipseType
// HasSaros 存在沙罗序列信息, has Saros series metadata.
HasSaros bool
// Saros 是沙罗序列信息,包括系列号、系列内序号和总成员数。
// Saros is Saros series metadata with the series number, member index, and total member count.
Saros SarosInfo
// Longitude 观测点经度,东正西负, observer longitude, east positive.
Longitude float64
// Latitude 观测点纬度,北正南负, observer latitude, north positive.
Latitude float64
// Height 观测点海拔高度,单位米, observer height in meters.
Height float64
// PenumbralMagnitude 半影食分, penumbral magnitude.
PenumbralMagnitude float64
// UmbralMagnitude 本影食分;纯半影月食时可为负值, umbral magnitude; can be negative for purely penumbral eclipses.
UmbralMagnitude float64
// PenumbralStart 半影始, penumbral eclipse begins.
PenumbralStart time.Time
// PartialStart 初亏, partial eclipse begins.
PartialStart time.Time
// TotalStart 食既, total eclipse begins.
TotalStart time.Time
// Maximum 食甚, greatest eclipse.
Maximum time.Time
// TotalEnd 生光, total eclipse ends.
TotalEnd time.Time
// PartialEnd 复圆, partial eclipse ends.
PartialEnd time.Time
// PenumbralEnd 半影终, penumbral eclipse ends.
PenumbralEnd time.Time
// MoonAltitude 食甚时月亮高度角,单位度, Moon altitude at maximum in degrees.
MoonAltitude float64
// MoonAzimuth 食甚时月亮方位角,单位度, Moon azimuth at maximum in degrees.
MoonAzimuth float64
// VisibleAtMaximum 食甚时月亮中心在本地几何地平线上方, Moon center above the local geometric horizon at maximum.
VisibleAtMaximum bool
// HasPenumbral 有半影阶段, has penumbral phase.
HasPenumbral bool
// HasPartial 有偏食阶段, has partial phase.
HasPartial bool
// HasTotal 有全食阶段, has total phase.
HasTotal bool
}
LocalLunarEclipseInfo 站点月食信息, local lunar eclipse information.
所有时刻字段都保持用户输入的时区。 不存在的阶段使用零值 time.Time。
func ClosestGeometricLocalLunarEclipse ¶
func ClosestGeometricLocalLunarEclipse(date time.Time, lon, lat, height float64) LocalLunarEclipseInfo
ClosestGeometricLocalLunarEclipse 最近一次几何月食 / closest geometric local lunar eclipse. Closest geometric local lunar eclipse, using Danjon by default.
func ClosestGeometricLocalLunarEclipseChauvenet ¶
func ClosestGeometricLocalLunarEclipseChauvenet(date time.Time, lon, lat, height float64) LocalLunarEclipseInfo
ClosestGeometricLocalLunarEclipseChauvenet 最近一次几何月食(Chauvenet) / closest geometric local lunar eclipse with Chauvenet model. Closest geometric local lunar eclipse with the Chauvenet model.
func ClosestGeometricLocalLunarEclipseDanjon ¶
func ClosestGeometricLocalLunarEclipseDanjon(date time.Time, lon, lat, height float64) LocalLunarEclipseInfo
ClosestGeometricLocalLunarEclipseDanjon 最近一次几何月食(Danjon) / closest geometric local lunar eclipse with Danjon model. Closest geometric local lunar eclipse with the Danjon model.
func ClosestLocalLunarEclipse ¶
func ClosestLocalLunarEclipse(date time.Time, lon, lat, height float64) LocalLunarEclipseInfo
ClosestLocalLunarEclipse 最近一次可见月食 / closest visible local lunar eclipse. Closest visible local lunar eclipse, using Danjon by default.
func ClosestLocalLunarEclipseChauvenet ¶
func ClosestLocalLunarEclipseChauvenet(date time.Time, lon, lat, height float64) LocalLunarEclipseInfo
ClosestLocalLunarEclipseChauvenet 最近一次可见月食(Chauvenet) / closest visible local lunar eclipse with Chauvenet model. Closest visible local lunar eclipse with the Chauvenet model.
func ClosestLocalLunarEclipseDanjon ¶
func ClosestLocalLunarEclipseDanjon(date time.Time, lon, lat, height float64) LocalLunarEclipseInfo
ClosestLocalLunarEclipseDanjon 最近一次可见月食(Danjon) / closest visible local lunar eclipse with Danjon model. Closest visible local lunar eclipse with the Danjon model.
func ClosestLocalTotalLunarEclipse ¶ added in v0.1.1
func ClosestLocalTotalLunarEclipse(date time.Time, lon, lat, height float64) (LocalLunarEclipseInfo, bool)
ClosestLocalTotalLunarEclipse 最近一次可见月全食 / closest visible local total lunar eclipse. Closest visible local total lunar eclipse, using Danjon by default.
func GeometricLocalLunarEclipseOnDate ¶
func GeometricLocalLunarEclipseOnDate(date time.Time, lon, lat, height float64) (LocalLunarEclipseInfo, bool)
GeometricLocalLunarEclipseOnDate 当地几何月食查询 / local geometric lunar eclipse query. Determine whether a geometric local lunar eclipse occurs on the local date, using Danjon by default.
func GeometricLocalLunarEclipseOnDateChauvenet ¶
func GeometricLocalLunarEclipseOnDateChauvenet(date time.Time, lon, lat, height float64) (LocalLunarEclipseInfo, bool)
GeometricLocalLunarEclipseOnDateChauvenet 当地几何月食查询(Chauvenet) / local geometric lunar eclipse query with Chauvenet model. Determine whether a geometric local lunar eclipse occurs on the local date with the Chauvenet model.
func GeometricLocalLunarEclipseOnDateDanjon ¶
func GeometricLocalLunarEclipseOnDateDanjon(date time.Time, lon, lat, height float64) (LocalLunarEclipseInfo, bool)
GeometricLocalLunarEclipseOnDateDanjon 当地几何月食查询(Danjon) / local geometric lunar eclipse query with Danjon model. Determine whether a geometric local lunar eclipse occurs on the local date with the Danjon model.
func LastGeometricLocalLunarEclipse ¶
func LastGeometricLocalLunarEclipse(date time.Time, lon, lat, height float64) LocalLunarEclipseInfo
LastGeometricLocalLunarEclipse 上次几何月食 / previous geometric local lunar eclipse. Previous geometric local lunar eclipse, using Danjon by default.
func LastGeometricLocalLunarEclipseChauvenet ¶
func LastGeometricLocalLunarEclipseChauvenet(date time.Time, lon, lat, height float64) LocalLunarEclipseInfo
LastGeometricLocalLunarEclipseChauvenet 上次几何月食(Chauvenet) / previous geometric local lunar eclipse with Chauvenet model. Previous geometric local lunar eclipse with the Chauvenet model.
func LastGeometricLocalLunarEclipseDanjon ¶
func LastGeometricLocalLunarEclipseDanjon(date time.Time, lon, lat, height float64) LocalLunarEclipseInfo
LastGeometricLocalLunarEclipseDanjon 上次几何月食(Danjon) / previous geometric local lunar eclipse with Danjon model. Previous geometric local lunar eclipse with the Danjon model.
func LastLocalLunarEclipse ¶
func LastLocalLunarEclipse(date time.Time, lon, lat, height float64) LocalLunarEclipseInfo
LastLocalLunarEclipse 上次可见月食 / previous visible local lunar eclipse. Previous visible local lunar eclipse, using Danjon by default.
func LastLocalLunarEclipseChauvenet ¶
func LastLocalLunarEclipseChauvenet(date time.Time, lon, lat, height float64) LocalLunarEclipseInfo
LastLocalLunarEclipseChauvenet 上次可见月食(Chauvenet) / previous visible local lunar eclipse with Chauvenet model. Previous visible local lunar eclipse with the Chauvenet model.
func LastLocalLunarEclipseDanjon ¶
func LastLocalLunarEclipseDanjon(date time.Time, lon, lat, height float64) LocalLunarEclipseInfo
LastLocalLunarEclipseDanjon 上次可见月食(Danjon) / previous visible local lunar eclipse with Danjon model. Previous visible local lunar eclipse with the Danjon model.
func LastLocalTotalLunarEclipse ¶ added in v0.1.1
func LastLocalTotalLunarEclipse(date time.Time, lon, lat, height float64) (LocalLunarEclipseInfo, bool)
LastLocalTotalLunarEclipse 上次可见月全食 / previous visible local total lunar eclipse. Previous visible local total lunar eclipse, using Danjon by default.
func LocalLunarEclipseOnDate ¶
func LocalLunarEclipseOnDate(date time.Time, lon, lat, height float64) (LocalLunarEclipseInfo, bool)
LocalLunarEclipseOnDate 当地可见月食查询 / local visible lunar eclipse query. Determine whether a visible local lunar eclipse occurs on the local date, using Danjon by default.
func LocalLunarEclipseOnDateChauvenet ¶
func LocalLunarEclipseOnDateChauvenet(date time.Time, lon, lat, height float64) (LocalLunarEclipseInfo, bool)
LocalLunarEclipseOnDateChauvenet 当地可见月食查询(Chauvenet) / local visible lunar eclipse query with Chauvenet model. Determine whether a visible local lunar eclipse occurs on the local date with the Chauvenet model.
func LocalLunarEclipseOnDateDanjon ¶
func LocalLunarEclipseOnDateDanjon(date time.Time, lon, lat, height float64) (LocalLunarEclipseInfo, bool)
LocalLunarEclipseOnDateDanjon 当地可见月食查询(Danjon) / local visible lunar eclipse query with Danjon model. Determine whether a visible local lunar eclipse occurs on the local date with the Danjon model.
func NextGeometricLocalLunarEclipse ¶
func NextGeometricLocalLunarEclipse(date time.Time, lon, lat, height float64) LocalLunarEclipseInfo
NextGeometricLocalLunarEclipse 下次几何月食 / next geometric local lunar eclipse. Next geometric local lunar eclipse, using Danjon by default.
func NextGeometricLocalLunarEclipseChauvenet ¶
func NextGeometricLocalLunarEclipseChauvenet(date time.Time, lon, lat, height float64) LocalLunarEclipseInfo
NextGeometricLocalLunarEclipseChauvenet 下次几何月食(Chauvenet) / next geometric local lunar eclipse with Chauvenet model. Next geometric local lunar eclipse with the Chauvenet model.
func NextGeometricLocalLunarEclipseDanjon ¶
func NextGeometricLocalLunarEclipseDanjon(date time.Time, lon, lat, height float64) LocalLunarEclipseInfo
NextGeometricLocalLunarEclipseDanjon 下次几何月食(Danjon) / next geometric local lunar eclipse with Danjon model. Next geometric local lunar eclipse with the Danjon model.
func NextLocalLunarEclipse ¶
func NextLocalLunarEclipse(date time.Time, lon, lat, height float64) LocalLunarEclipseInfo
NextLocalLunarEclipse 下次可见月食 / next visible local lunar eclipse. Next visible local lunar eclipse, using Danjon by default.
func NextLocalLunarEclipseChauvenet ¶
func NextLocalLunarEclipseChauvenet(date time.Time, lon, lat, height float64) LocalLunarEclipseInfo
NextLocalLunarEclipseChauvenet 下次可见月食(Chauvenet) / next visible local lunar eclipse with Chauvenet model. Next visible local lunar eclipse with the Chauvenet model.
func NextLocalLunarEclipseDanjon ¶
func NextLocalLunarEclipseDanjon(date time.Time, lon, lat, height float64) LocalLunarEclipseInfo
NextLocalLunarEclipseDanjon 下次可见月食(Danjon) / next visible local lunar eclipse with Danjon model. Next visible local lunar eclipse with the Danjon model.
func NextLocalTotalLunarEclipse ¶ added in v0.1.1
func NextLocalTotalLunarEclipse(date time.Time, lon, lat, height float64) (LocalLunarEclipseInfo, bool)
NextLocalTotalLunarEclipse 下次可见月全食 / next visible local total lunar eclipse. Next visible local total lunar eclipse, using Danjon by default.
type LocalSolarEclipseContactPoint ¶
type LocalSolarEclipseContactPoint struct {
// Label 是接触标签,如 C1/C2/C3/C4。
// Label is the contact label, such as C1/C2/C3/C4.
Label string
// Time 是该接触时刻,保持用户输入时区。
// Time is the contact time, preserving the input timezone.
Time time.Time
// ContactPositionAngle 是日面接触点位置角,从天球北点起向东量,单位度。
// ContactPositionAngle is the Sun-limb contact position angle from celestial north toward east, in degrees.
ContactPositionAngle float64
// ContactClockwiseAngle 是图面上从北点顺时针量到接触点的角度,单位度。
// ContactClockwiseAngle is the chart clockwise angle from north to the contact point, in degrees.
ContactClockwiseAngle float64
// MoonCenterPositionAngle 是月心相对日心的位置角,从北点起向东量,单位度。
// MoonCenterPositionAngle is the Moon-center position angle from the Sun center, in degrees.
MoonCenterPositionAngle float64
}
LocalSolarEclipseContactPoint 表示站心日食在日面上的接触点方位。 LocalSolarEclipseContactPoint describes a local solar eclipse contact point on the Sun limb.
type LocalSolarEclipseInfo ¶
type LocalSolarEclipseInfo struct {
// Model 日食月亮半径模型, eclipse lunar radius model.
Model SolarEclipseRadiusModel
// Type 站心食型, local eclipse type.
Type SolarEclipseType
// HasSaros 存在沙罗序列信息, has Saros series metadata.
HasSaros bool
// Saros 是沙罗序列信息,包括系列号、系列内序号和总成员数。
// Saros is Saros series metadata with the series number, member index, and total member count.
Saros SarosInfo
// Longitude 观测点经度,东正西负, observer longitude, east positive.
Longitude float64
// Latitude 观测点纬度,北正南负, observer latitude, north positive.
Latitude float64
// Height 观测点海拔高度,单位米, observer height in meters.
Height float64
// GreatestEclipse 食甚时刻, greatest eclipse.
GreatestEclipse time.Time
// PartialStart 偏食始 / 初亏, partial eclipse begins.
PartialStart time.Time
// PartialEnd 偏食终 / 复圆, partial eclipse ends.
PartialEnd time.Time
// CentralStart 中心食始;对全食为食既,对环食为环食始, central eclipse begins.
CentralStart time.Time
// CentralEnd 中心食终;对全食为生光,对环食为环食终, central eclipse ends.
CentralEnd time.Time
// Magnitude 站心食分, local eclipse magnitude.
Magnitude float64
// Obscuration 食甚时太阳视圆面遮蔽率, obscuration at greatest eclipse.
Obscuration float64
// Separation 食甚时日月中心角距,单位度, center separation at greatest eclipse in degrees.
Separation float64
// SunAltitude 食甚时太阳高度角,单位度, Sun altitude at greatest eclipse in degrees.
SunAltitude float64
// SunAzimuth 食甚时太阳方位角,单位度, Sun azimuth at greatest eclipse in degrees.
SunAzimuth float64
// VisibleAtGreatest 食甚时太阳中心在地平线上方, Sun center above horizon at greatest eclipse.
VisibleAtGreatest bool
// ContactPoints 是各接触时刻在日面上的接触点方位。
// ContactPoints are Sun-limb contact position angles at eclipse contacts.
ContactPoints []LocalSolarEclipseContactPoint
// HasPartial 存在偏食阶段, has partial phase.
HasPartial bool
// HasCentral 存在中心食阶段, has central phase.
HasCentral bool
// HasAnnular 存在环食阶段, has annular phase.
HasAnnular bool
// HasTotal 存在全食阶段, has total phase.
HasTotal bool
}
LocalSolarEclipseInfo 站心日食信息, local solar eclipse information.
所有时刻字段都保持用户输入的时区。 不存在的阶段使用零值 time.Time。
func ClosestGeometricLocalSolarEclipse ¶
func ClosestGeometricLocalSolarEclipse(date time.Time, lon, lat, height float64) LocalSolarEclipseInfo
ClosestGeometricLocalSolarEclipse 最近一次站心几何日食 / closest geometric local solar eclipse. Closest geometric local solar eclipse, using NASA bulletin Split-K by default.
func ClosestGeometricLocalSolarEclipseIAUSingleK ¶
func ClosestGeometricLocalSolarEclipseIAUSingleK(date time.Time, lon, lat, height float64) LocalSolarEclipseInfo
ClosestGeometricLocalSolarEclipseIAUSingleK 最近一次站心几何日食(IAU Single-K) / closest geometric local solar eclipse with IAU Single-K. Closest geometric local solar eclipse with the IAU Single-K model.
func ClosestGeometricLocalSolarEclipseNASABulletinSplitK ¶
func ClosestGeometricLocalSolarEclipseNASABulletinSplitK(date time.Time, lon, lat, height float64) LocalSolarEclipseInfo
ClosestGeometricLocalSolarEclipseNASABulletinSplitK 最近一次站心几何日食(NASA bulletin Split-K) / closest geometric local solar eclipse with NASA bulletin Split-K. Closest geometric local solar eclipse with the NASA bulletin Split-K model.
func ClosestLocalAnnularSolarEclipse ¶ added in v0.1.1
func ClosestLocalAnnularSolarEclipse(date time.Time, lon, lat, height float64) (LocalSolarEclipseInfo, bool)
ClosestLocalAnnularSolarEclipse 最近一次站心日环食 / closest local annular solar eclipse. Closest visible local annular solar eclipse, using NASA bulletin Split-K by default.
func ClosestLocalSolarEclipse ¶
func ClosestLocalSolarEclipse(date time.Time, lon, lat, height float64) LocalSolarEclipseInfo
ClosestLocalSolarEclipse 最近一次站心日食 / closest local solar eclipse. Closest visible local solar eclipse, using NASA bulletin Split-K by default.
func ClosestLocalSolarEclipseIAUSingleK ¶
func ClosestLocalSolarEclipseIAUSingleK(date time.Time, lon, lat, height float64) LocalSolarEclipseInfo
ClosestLocalSolarEclipseIAUSingleK 最近一次站心日食(IAU Single-K) / closest local solar eclipse with IAU Single-K. Closest visible local solar eclipse with the IAU Single-K model.
func ClosestLocalSolarEclipseNASABulletinSplitK ¶
func ClosestLocalSolarEclipseNASABulletinSplitK(date time.Time, lon, lat, height float64) LocalSolarEclipseInfo
ClosestLocalSolarEclipseNASABulletinSplitK 最近一次站心日食(NASA bulletin Split-K) / closest local solar eclipse with NASA bulletin Split-K. Closest visible local solar eclipse with the NASA bulletin Split-K model.
func ClosestLocalTotalSolarEclipse ¶ added in v0.1.1
func ClosestLocalTotalSolarEclipse(date time.Time, lon, lat, height float64) (LocalSolarEclipseInfo, bool)
ClosestLocalTotalSolarEclipse 最近一次站心日全食 / closest local total solar eclipse. Closest visible local total solar eclipse, using NASA bulletin Split-K by default.
func GeometricLocalSolarEclipseOnDate ¶
func GeometricLocalSolarEclipseOnDate(date time.Time, lon, lat, height float64) (LocalSolarEclipseInfo, bool)
GeometricLocalSolarEclipseOnDate 当地站心几何日食查询 / local geometric solar eclipse query. Determine whether a geometric local solar eclipse overlaps the local date, using NASA bulletin Split-K by default.
func GeometricLocalSolarEclipseOnDateIAUSingleK ¶
func GeometricLocalSolarEclipseOnDateIAUSingleK(date time.Time, lon, lat, height float64) (LocalSolarEclipseInfo, bool)
GeometricLocalSolarEclipseOnDateIAUSingleK 当地站心几何日食查询(IAU Single-K) / local geometric solar eclipse query with IAU Single-K. Determine whether a geometric local solar eclipse overlaps the local date with the IAU Single-K model.
func GeometricLocalSolarEclipseOnDateNASABulletinSplitK ¶
func GeometricLocalSolarEclipseOnDateNASABulletinSplitK(date time.Time, lon, lat, height float64) (LocalSolarEclipseInfo, bool)
GeometricLocalSolarEclipseOnDateNASABulletinSplitK 当地站心几何日食查询(NASA bulletin Split-K) / local geometric solar eclipse query with NASA bulletin Split-K. Determine whether a geometric local solar eclipse overlaps the local date with the NASA bulletin Split-K model.
func LastGeometricLocalSolarEclipse ¶
func LastGeometricLocalSolarEclipse(date time.Time, lon, lat, height float64) LocalSolarEclipseInfo
LastGeometricLocalSolarEclipse 上次站心几何日食 / previous geometric local solar eclipse. Previous geometric local solar eclipse, using NASA bulletin Split-K by default.
func LastGeometricLocalSolarEclipseIAUSingleK ¶
func LastGeometricLocalSolarEclipseIAUSingleK(date time.Time, lon, lat, height float64) LocalSolarEclipseInfo
LastGeometricLocalSolarEclipseIAUSingleK 上次站心几何日食(IAU Single-K) / previous geometric local solar eclipse with IAU Single-K. Previous geometric local solar eclipse with the IAU Single-K model.
func LastGeometricLocalSolarEclipseNASABulletinSplitK ¶
func LastGeometricLocalSolarEclipseNASABulletinSplitK(date time.Time, lon, lat, height float64) LocalSolarEclipseInfo
LastGeometricLocalSolarEclipseNASABulletinSplitK 上次站心几何日食(NASA bulletin Split-K) / previous geometric local solar eclipse with NASA bulletin Split-K. Previous geometric local solar eclipse with the NASA bulletin Split-K model.
func LastLocalAnnularSolarEclipse ¶ added in v0.1.1
func LastLocalAnnularSolarEclipse(date time.Time, lon, lat, height float64) (LocalSolarEclipseInfo, bool)
LastLocalAnnularSolarEclipse 上次站心日环食 / previous local annular solar eclipse. Previous visible local annular solar eclipse, using NASA bulletin Split-K by default.
func LastLocalSolarEclipse ¶
func LastLocalSolarEclipse(date time.Time, lon, lat, height float64) LocalSolarEclipseInfo
LastLocalSolarEclipse 上次站心日食 / previous local solar eclipse. Previous visible local solar eclipse, using NASA bulletin Split-K by default.
func LastLocalSolarEclipseIAUSingleK ¶
func LastLocalSolarEclipseIAUSingleK(date time.Time, lon, lat, height float64) LocalSolarEclipseInfo
LastLocalSolarEclipseIAUSingleK 上次站心日食(IAU Single-K) / previous local solar eclipse with IAU Single-K. Previous visible local solar eclipse with the IAU Single-K model.
func LastLocalSolarEclipseNASABulletinSplitK ¶
func LastLocalSolarEclipseNASABulletinSplitK(date time.Time, lon, lat, height float64) LocalSolarEclipseInfo
LastLocalSolarEclipseNASABulletinSplitK 上次站心日食(NASA bulletin Split-K) / previous local solar eclipse with NASA bulletin Split-K. Previous visible local solar eclipse with the NASA bulletin Split-K model.
func LastLocalTotalSolarEclipse ¶ added in v0.1.1
func LastLocalTotalSolarEclipse(date time.Time, lon, lat, height float64) (LocalSolarEclipseInfo, bool)
LastLocalTotalSolarEclipse 上次站心日全食 / previous local total solar eclipse. Previous visible local total solar eclipse, using NASA bulletin Split-K by default.
func LocalSolarEclipseOnDate ¶
func LocalSolarEclipseOnDate(date time.Time, lon, lat, height float64) (LocalSolarEclipseInfo, bool)
LocalSolarEclipseOnDate 当地站心日食查询 / local topocentric solar eclipse query. Determine whether a visible local solar eclipse overlaps the local date, using NASA bulletin Split-K by default.
func LocalSolarEclipseOnDateIAUSingleK ¶
func LocalSolarEclipseOnDateIAUSingleK(date time.Time, lon, lat, height float64) (LocalSolarEclipseInfo, bool)
LocalSolarEclipseOnDateIAUSingleK 当地站心日食查询(IAU Single-K) / local topocentric solar eclipse query with IAU Single-K. Determine whether a visible local solar eclipse overlaps the local date with the IAU Single-K model.
func LocalSolarEclipseOnDateNASABulletinSplitK ¶
func LocalSolarEclipseOnDateNASABulletinSplitK(date time.Time, lon, lat, height float64) (LocalSolarEclipseInfo, bool)
LocalSolarEclipseOnDateNASABulletinSplitK 当地站心日食查询(NASA bulletin Split-K) / local topocentric solar eclipse query with NASA bulletin Split-K. Determine whether a visible local solar eclipse overlaps the local date with the NASA bulletin Split-K model.
func NextGeometricLocalSolarEclipse ¶
func NextGeometricLocalSolarEclipse(date time.Time, lon, lat, height float64) LocalSolarEclipseInfo
NextGeometricLocalSolarEclipse 下次站心几何日食 / next geometric local solar eclipse. Next geometric local solar eclipse, using NASA bulletin Split-K by default.
func NextGeometricLocalSolarEclipseIAUSingleK ¶
func NextGeometricLocalSolarEclipseIAUSingleK(date time.Time, lon, lat, height float64) LocalSolarEclipseInfo
NextGeometricLocalSolarEclipseIAUSingleK 下次站心几何日食(IAU Single-K) / next geometric local solar eclipse with IAU Single-K. Next geometric local solar eclipse with the IAU Single-K model.
func NextGeometricLocalSolarEclipseNASABulletinSplitK ¶
func NextGeometricLocalSolarEclipseNASABulletinSplitK(date time.Time, lon, lat, height float64) LocalSolarEclipseInfo
NextGeometricLocalSolarEclipseNASABulletinSplitK 下次站心几何日食(NASA bulletin Split-K) / next geometric local solar eclipse with NASA bulletin Split-K. Next geometric local solar eclipse with the NASA bulletin Split-K model.
func NextLocalAnnularSolarEclipse ¶ added in v0.1.1
func NextLocalAnnularSolarEclipse(date time.Time, lon, lat, height float64) (LocalSolarEclipseInfo, bool)
NextLocalAnnularSolarEclipse 下次站心日环食 / next local annular solar eclipse. Next visible local annular solar eclipse, using NASA bulletin Split-K by default.
func NextLocalSolarEclipse ¶
func NextLocalSolarEclipse(date time.Time, lon, lat, height float64) LocalSolarEclipseInfo
NextLocalSolarEclipse 下次站心日食 / next local solar eclipse. Next visible local solar eclipse, using NASA bulletin Split-K by default.
func NextLocalSolarEclipseIAUSingleK ¶
func NextLocalSolarEclipseIAUSingleK(date time.Time, lon, lat, height float64) LocalSolarEclipseInfo
NextLocalSolarEclipseIAUSingleK 下次站心日食(IAU Single-K) / next local solar eclipse with IAU Single-K. Next visible local solar eclipse with the IAU Single-K model.
func NextLocalSolarEclipseNASABulletinSplitK ¶
func NextLocalSolarEclipseNASABulletinSplitK(date time.Time, lon, lat, height float64) LocalSolarEclipseInfo
NextLocalSolarEclipseNASABulletinSplitK 下次站心日食(NASA bulletin Split-K) / next local solar eclipse with NASA bulletin Split-K. Next visible local solar eclipse with the NASA bulletin Split-K model.
func NextLocalTotalSolarEclipse ¶ added in v0.1.1
func NextLocalTotalSolarEclipse(date time.Time, lon, lat, height float64) (LocalSolarEclipseInfo, bool)
NextLocalTotalSolarEclipse 下次站心日全食 / next local total solar eclipse. Next visible local total solar eclipse, using NASA bulletin Split-K by default.
type LunarEclipseContactPoint ¶
type LunarEclipseContactPoint struct {
// Label 是接触标签,如 P1/U1/U2/U3/U4/P4。
// Label is the contact label, such as P1/U1/U2/U3/U4/P4.
Label string
// Time 是该接触时刻,保持用户输入时区。
// Time is the contact time, preserving the input timezone.
Time time.Time
// ContactPositionAngle 是月面接触点位置角,从天球北点起向东量,单位度。
// ContactPositionAngle is the Moon-limb contact position angle from celestial north toward east, in degrees.
ContactPositionAngle float64
// ContactClockwiseAngle 是图面上从北点顺时针量到接触点的角度,单位度。
// ContactClockwiseAngle is the chart clockwise angle from north to the contact point, in degrees.
ContactClockwiseAngle float64
// MoonCenterPositionAngle 是月心相对地影中心的位置角,从北点起向东量,单位度。
// MoonCenterPositionAngle is the Moon-center position angle from the shadow center, in degrees.
MoonCenterPositionAngle float64
// ShadowCenterPositionAngle 是地影中心相对月心的位置角,从北点起向东量,单位度。
// ShadowCenterPositionAngle is the shadow-center position angle from the Moon center, in degrees.
ShadowCenterPositionAngle float64
}
LunarEclipseContactPoint 表示月食接触点在月面上的方位。 LunarEclipseContactPoint describes a lunar eclipse contact point on the Moon limb.
type LunarEclipseInfo ¶
type LunarEclipseInfo struct {
// Type 月食类型, eclipse type.
Type LunarEclipseType
// HasSaros 存在沙罗序列信息, has Saros series metadata.
HasSaros bool
// Saros 是沙罗序列信息,包括系列号、系列内序号和总成员数。
// Saros is Saros series metadata with the series number, member index, and total member count.
Saros SarosInfo
// PenumbralMagnitude 半影食分, penumbral magnitude.
PenumbralMagnitude float64
// UmbralMagnitude 本影食分;纯半影月食时可为负值, umbral magnitude; can be negative for purely penumbral eclipses.
UmbralMagnitude float64
// PenumbralStart 半影始, penumbral eclipse begins.
PenumbralStart time.Time
// PartialStart 初亏, partial eclipse begins.
PartialStart time.Time
// TotalStart 食既, total eclipse begins.
TotalStart time.Time
// Maximum 食甚, greatest eclipse.
Maximum time.Time
// TotalEnd 生光, total eclipse ends.
TotalEnd time.Time
// PartialEnd 复圆, partial eclipse ends.
PartialEnd time.Time
// PenumbralEnd 半影终, penumbral eclipse ends.
PenumbralEnd time.Time
// ContactPoints 是各接触时刻在月面上的接触点方位。
// ContactPoints are Moon-limb contact position angles at eclipse contacts.
ContactPoints []LunarEclipseContactPoint
// HasPenumbral 有半影阶段, has penumbral phase.
HasPenumbral bool
// HasPartial 有偏食阶段, has partial phase.
HasPartial bool
// HasTotal 有全食阶段, has total phase.
HasTotal bool
}
LunarEclipseInfo 月食信息, lunar eclipse information.
所有时刻字段都保持用户输入的时区。 不存在的阶段使用零值 time.Time。
func ClosestLunarEclipse ¶
func ClosestLunarEclipse(date time.Time) LunarEclipseInfo
ClosestLunarEclipse 最近一次月食 / closest lunar eclipse. Closest lunar eclipse. The default path uses Danjon and falls back to Chauvenet for ultra-shallow penumbral edge cases.
func ClosestLunarEclipseChauvenet ¶
func ClosestLunarEclipseChauvenet(date time.Time) LunarEclipseInfo
ClosestLunarEclipseChauvenet 最近一次月食(Chauvenet) / closest lunar eclipse with Chauvenet model. Closest lunar eclipse with the Chauvenet model.
func ClosestLunarEclipseDanjon ¶
func ClosestLunarEclipseDanjon(date time.Time) LunarEclipseInfo
ClosestLunarEclipseDanjon 最近一次月食(Danjon) / closest lunar eclipse with Danjon model. Closest lunar eclipse with the Danjon model.
func LastLunarEclipse ¶
func LastLunarEclipse(date time.Time) LunarEclipseInfo
LastLunarEclipse 上次月食 / previous lunar eclipse. Previous lunar eclipse. The default path uses Danjon and falls back to Chauvenet for ultra-shallow penumbral edge cases.
func LastLunarEclipseChauvenet ¶
func LastLunarEclipseChauvenet(date time.Time) LunarEclipseInfo
LastLunarEclipseChauvenet 上次月食(Chauvenet) / previous lunar eclipse with Chauvenet model. Previous lunar eclipse with the Chauvenet model.
func LastLunarEclipseDanjon ¶
func LastLunarEclipseDanjon(date time.Time) LunarEclipseInfo
LastLunarEclipseDanjon 上次月食(Danjon) / previous lunar eclipse with Danjon model. Previous lunar eclipse with the Danjon model.
func LunarEclipseOnDate ¶
func LunarEclipseOnDate(date time.Time) (LunarEclipseInfo, bool)
LunarEclipseOnDate 当地自然日月食查询 / local-date lunar eclipse query. Determine whether a lunar eclipse occurs on the local date. The default path uses Danjon and falls back to Chauvenet for ultra-shallow penumbral edge cases.
只要该自然日内有任意一个接触时刻,或整场月食与该自然日有时间重叠,就返回 true。
func LunarEclipseOnDateChauvenet ¶
func LunarEclipseOnDateChauvenet(date time.Time) (LunarEclipseInfo, bool)
LunarEclipseOnDateChauvenet 当地自然日月食查询(Chauvenet) / local-date lunar eclipse query with Chauvenet model. Determine whether a lunar eclipse occurs on the local date with the Chauvenet model.
func LunarEclipseOnDateDanjon ¶
func LunarEclipseOnDateDanjon(date time.Time) (LunarEclipseInfo, bool)
LunarEclipseOnDateDanjon 当地自然日月食查询(Danjon) / local-date lunar eclipse query with Danjon model. Determine whether a lunar eclipse occurs on the local date with the Danjon model.
func NextLunarEclipse ¶
func NextLunarEclipse(date time.Time) LunarEclipseInfo
NextLunarEclipse 下次月食 / next lunar eclipse. Next lunar eclipse. The default path uses Danjon and falls back to Chauvenet for ultra-shallow penumbral edge cases.
func NextLunarEclipseChauvenet ¶
func NextLunarEclipseChauvenet(date time.Time) LunarEclipseInfo
NextLunarEclipseChauvenet 下次月食(Chauvenet) / next lunar eclipse with Chauvenet model. Next lunar eclipse with the Chauvenet model.
func NextLunarEclipseDanjon ¶
func NextLunarEclipseDanjon(date time.Time) LunarEclipseInfo
NextLunarEclipseDanjon 下次月食(Danjon) / next lunar eclipse with Danjon model. Next lunar eclipse with the Danjon model.
type LunarEclipseType ¶
type LunarEclipseType string
LunarEclipseType 月食类型, lunar eclipse type.
const ( // LunarEclipseNone 无月食, no lunar eclipse. LunarEclipseNone LunarEclipseType = "none" // LunarEclipsePenumbral 半影月食, penumbral lunar eclipse. LunarEclipsePenumbral LunarEclipseType = "penumbral" // LunarEclipsePartial 月偏食, partial lunar eclipse. LunarEclipsePartial LunarEclipseType = "partial" // LunarEclipseTotal 月全食, total lunar eclipse. LunarEclipseTotal LunarEclipseType = "total" )
type SarosInfo ¶
type SarosInfo struct {
// Series 是 NASA 沙罗系列编号;太阳食可能出现 0 号系列。
// Series is the NASA Saros series number; solar eclipses may use series 0.
Series int
// Member 是本次食在该系列中的序号,从 1 开始计数。
// Member is the 1-based index of this eclipse within the series.
Member int
// Count 是该系列的总成员数。
// Count is the total number of eclipses in the series.
Count int
}
SarosInfo 沙罗序列信息, Saros series metadata.
type SolarEclipseCentrality ¶
type SolarEclipseCentrality string
SolarEclipseCentrality 中心线进入地球的方式, global eclipse centrality.
const ( // SolarEclipseNonCentral 非中心食, non-central eclipse. SolarEclipseNonCentral SolarEclipseCentrality = "non_central" // SolarEclipseCentralOneLimit 单界中心食, central eclipse with one limit. SolarEclipseCentralOneLimit SolarEclipseCentrality = "central_one_limit" // SolarEclipseCentralTwoLimits 双界中心食, central eclipse with two limits. SolarEclipseCentralTwoLimits SolarEclipseCentrality = "central_two_limits" )
type SolarEclipseInfo ¶
type SolarEclipseInfo struct {
// Model 日食月亮半径模型, eclipse lunar radius model.
Model SolarEclipseRadiusModel
// Type 全局食型, global eclipse type.
Type SolarEclipseType
// Centrality 中心性, eclipse centrality.
Centrality SolarEclipseCentrality
// HasSaros 存在沙罗序列信息, has Saros series metadata.
HasSaros bool
// Saros 是沙罗序列信息,包括系列号、系列内序号和总成员数。
// Saros is Saros series metadata with the series number, member index, and total member count.
Saros SarosInfo
// GreatestEclipse 食甚时刻, greatest eclipse.
GreatestEclipse time.Time
// PartialBeginOnEarth 地球范围偏食始, partial eclipse begins on Earth.
PartialBeginOnEarth time.Time
// PartialEndOnEarth 地球范围偏食终, partial eclipse ends on Earth.
PartialEndOnEarth time.Time
// CentralBeginOnEarth 地球范围中心食始, central eclipse begins on Earth.
CentralBeginOnEarth time.Time
// CentralEndOnEarth 地球范围中心食终, central eclipse ends on Earth.
CentralEndOnEarth time.Time
// Magnitude 全局食分, global eclipse magnitude.
Magnitude float64
// Gamma 食甚时影轴到地心的距离, gamma at greatest eclipse.
Gamma float64
// PathWidthKM 食甚处中心食带宽度, central path width at greatest eclipse.
PathWidthKM float64
// GreatestLongitude 食甚点经度,东正西负, longitude of greatest eclipse, east positive.
GreatestLongitude float64
// GreatestLatitude 食甚点纬度,北正南负, latitude of greatest eclipse, north positive.
GreatestLatitude float64
// HasPartial 存在偏食阶段, has partial phase.
HasPartial bool
// HasCentral 存在中心食阶段, has central phase.
HasCentral bool
// HasAnnular 存在环食阶段, has annular phase.
HasAnnular bool
// HasTotal 存在全食阶段, has total phase.
HasTotal bool
// HasHybrid 为混合食, is hybrid eclipse.
HasHybrid bool
}
SolarEclipseInfo 全局日食信息, global solar eclipse information.
所有时刻字段都保持用户输入的时区。 不存在的阶段使用零值 time.Time。
func ClosestSolarEclipse ¶
func ClosestSolarEclipse(date time.Time) SolarEclipseInfo
ClosestSolarEclipse 最近一次日食 / closest solar eclipse. Closest solar eclipse, using NASA bulletin Split-K by default.
func ClosestSolarEclipseIAUSingleK ¶
func ClosestSolarEclipseIAUSingleK(date time.Time) SolarEclipseInfo
ClosestSolarEclipseIAUSingleK 最近一次日食(IAU Single-K) / closest solar eclipse with IAU Single-K. Closest solar eclipse with the IAU Single-K model.
func ClosestSolarEclipseNASABulletinSplitK ¶
func ClosestSolarEclipseNASABulletinSplitK(date time.Time) SolarEclipseInfo
ClosestSolarEclipseNASABulletinSplitK 最近一次日食(NASA bulletin Split-K) / closest solar eclipse with NASA bulletin Split-K. Closest solar eclipse with the NASA bulletin Split-K model.
func LastSolarEclipse ¶
func LastSolarEclipse(date time.Time) SolarEclipseInfo
LastSolarEclipse 上次日食 / previous solar eclipse. Previous solar eclipse, using NASA bulletin Split-K by default.
func LastSolarEclipseIAUSingleK ¶
func LastSolarEclipseIAUSingleK(date time.Time) SolarEclipseInfo
LastSolarEclipseIAUSingleK 上次日食(IAU Single-K) / previous solar eclipse with IAU Single-K. Previous solar eclipse with the IAU Single-K model.
func LastSolarEclipseNASABulletinSplitK ¶
func LastSolarEclipseNASABulletinSplitK(date time.Time) SolarEclipseInfo
LastSolarEclipseNASABulletinSplitK 上次日食(NASA bulletin Split-K) / previous solar eclipse with NASA bulletin Split-K. Previous solar eclipse with the NASA bulletin Split-K model.
func NextSolarEclipse ¶
func NextSolarEclipse(date time.Time) SolarEclipseInfo
NextSolarEclipse 下次日食 / next solar eclipse. Next solar eclipse, using NASA bulletin Split-K by default.
func NextSolarEclipseIAUSingleK ¶
func NextSolarEclipseIAUSingleK(date time.Time) SolarEclipseInfo
NextSolarEclipseIAUSingleK 下次日食(IAU Single-K) / next solar eclipse with IAU Single-K. Next solar eclipse with the IAU Single-K model.
func NextSolarEclipseNASABulletinSplitK ¶
func NextSolarEclipseNASABulletinSplitK(date time.Time) SolarEclipseInfo
NextSolarEclipseNASABulletinSplitK 下次日食(NASA bulletin Split-K) / next solar eclipse with NASA bulletin Split-K. Next solar eclipse with the NASA bulletin Split-K model.
func SolarEclipseOnDate ¶
func SolarEclipseOnDate(date time.Time) (SolarEclipseInfo, bool)
SolarEclipseOnDate 当地自然日全局日食查询 / local-date global solar eclipse query. Determine whether a global solar eclipse overlaps the local date, using NASA bulletin Split-K by default.
func SolarEclipseOnDateIAUSingleK ¶
func SolarEclipseOnDateIAUSingleK(date time.Time) (SolarEclipseInfo, bool)
SolarEclipseOnDateIAUSingleK 当地自然日全局日食查询(IAU Single-K) / local-date global solar eclipse query with IAU Single-K. Determine whether a global solar eclipse overlaps the local date with the IAU Single-K model.
func SolarEclipseOnDateNASABulletinSplitK ¶
func SolarEclipseOnDateNASABulletinSplitK(date time.Time) (SolarEclipseInfo, bool)
SolarEclipseOnDateNASABulletinSplitK 当地自然日全局日食查询(NASA bulletin Split-K) / local-date global solar eclipse query with NASA bulletin Split-K. Determine whether a global solar eclipse overlaps the local date with the NASA bulletin Split-K model.
type SolarEclipsePartialAreaInfo ¶
type SolarEclipsePartialAreaInfo = SolarEclipsePartialFootprintsInfo
SolarEclipsePartialAreaInfo 是 SolarEclipsePartialFootprintsInfo 的兼容别名。 SolarEclipsePartialAreaInfo is a compatibility alias for SolarEclipsePartialFootprintsInfo.
func SolarEclipsePartialArea ¶
func SolarEclipsePartialArea(date time.Time, options SolarEclipsePartialAreaOptions) (SolarEclipsePartialAreaInfo, bool)
SolarEclipsePartialArea 偏食足迹兼容包装 / compatibility wrapper for penumbral footprints. SolarEclipsePartialArea computes penumbral footprint samples and is a compatibility wrapper for SolarEclipsePartialFootprints.
func SolarEclipsePartialAreaIAUSingleK ¶
func SolarEclipsePartialAreaIAUSingleK(date time.Time, options SolarEclipsePartialAreaOptions) (SolarEclipsePartialAreaInfo, bool)
SolarEclipsePartialAreaIAUSingleK 偏食足迹兼容包装(IAU Single-K) / compatibility wrapper for penumbral footprints with IAU Single-K. SolarEclipsePartialAreaIAUSingleK is a compatibility wrapper for SolarEclipsePartialFootprintsIAUSingleK.
func SolarEclipsePartialAreaNASABulletinSplitK ¶
func SolarEclipsePartialAreaNASABulletinSplitK(date time.Time, options SolarEclipsePartialAreaOptions) (SolarEclipsePartialAreaInfo, bool)
SolarEclipsePartialAreaNASABulletinSplitK 偏食足迹兼容包装(NASA bulletin Split-K) / compatibility wrapper for penumbral footprints with NASA bulletin Split-K. SolarEclipsePartialAreaNASABulletinSplitK is a compatibility wrapper for SolarEclipsePartialFootprintsNASABulletinSplitK.
type SolarEclipsePartialAreaOptions ¶
type SolarEclipsePartialAreaOptions = SolarEclipsePartialFootprintOptions
SolarEclipsePartialAreaOptions 是 SolarEclipsePartialFootprintOptions 的兼容别名。 SolarEclipsePartialAreaOptions is a compatibility alias for SolarEclipsePartialFootprintOptions.
type SolarEclipsePartialFootprint ¶
type SolarEclipsePartialFootprint struct {
// Time 时刻,保持用户输入时区, time in the input location.
Time time.Time
// Boundaries 是半影边界分段;反经线或无效投影会拆成多段。
// Boundaries are segmented penumbral boundary polylines, split at invalid projections or the antimeridian.
Boundaries [][]SolarEclipsePathPoint
// Closed 表示 Boundaries 是否构成一个闭合边界。
// Closed indicates whether Boundaries form one closed boundary.
Closed bool
}
SolarEclipsePartialFootprint 表示某一时刻的半影足迹边界。 SolarEclipsePartialFootprint is the penumbral footprint boundary at one instant.
type SolarEclipsePartialFootprintOptions ¶
type SolarEclipsePartialFootprintOptions struct {
// Step 是基础时间采样步长;<=0 时使用 5 分钟。
// Step is the base time step; values <= 0 use five minutes.
Step time.Duration
// BoundaryPoints 是每个瞬时半影边界的角向采样点数;<=0 时使用 180。
// BoundaryPoints is the angular sample count for each instantaneous penumbral boundary; values <= 0 use 180.
BoundaryPoints int
}
SolarEclipsePartialFootprintOptions 控制日食偏食半影足迹采样。 SolarEclipsePartialFootprintOptions controls solar eclipse penumbral footprint sampling.
type SolarEclipsePartialFootprintsInfo ¶
type SolarEclipsePartialFootprintsInfo struct {
// Eclipse 是对应的全局日食信息, related global solar eclipse information.
Eclipse SolarEclipseInfo
// Footprints 是按时间采样的瞬时半影足迹, sampled instantaneous penumbral footprints.
Footprints []SolarEclipsePartialFootprint
// Step 是实际采用的基础时间采样步长, effective base time step.
Step time.Duration
// BoundaryPoints 是实际采用的边界角向采样点数。
// BoundaryPoints is the effective angular sample count for each boundary.
BoundaryPoints int
}
SolarEclipsePartialFootprintsInfo 表示一次日食的偏食半影足迹序列。 SolarEclipsePartialFootprintsInfo contains penumbral footprint samples for a solar eclipse.
func SolarEclipsePartialFootprints ¶
func SolarEclipsePartialFootprints(date time.Time, options SolarEclipsePartialFootprintOptions) (SolarEclipsePartialFootprintsInfo, bool)
SolarEclipsePartialFootprints 日食偏食足迹查询 / solar eclipse penumbral footprints query. SolarEclipsePartialFootprints computes penumbral footprint samples near the given date, using NASA bulletin Split-K by default.
func SolarEclipsePartialFootprintsIAUSingleK ¶
func SolarEclipsePartialFootprintsIAUSingleK(date time.Time, options SolarEclipsePartialFootprintOptions) (SolarEclipsePartialFootprintsInfo, bool)
SolarEclipsePartialFootprintsIAUSingleK 日食偏食足迹查询(IAU Single-K) / solar eclipse penumbral footprints query with IAU Single-K. SolarEclipsePartialFootprintsIAUSingleK computes penumbral footprint samples with the IAU Single-K model.
func SolarEclipsePartialFootprintsNASABulletinSplitK ¶
func SolarEclipsePartialFootprintsNASABulletinSplitK(date time.Time, options SolarEclipsePartialFootprintOptions) (SolarEclipsePartialFootprintsInfo, bool)
SolarEclipsePartialFootprintsNASABulletinSplitK 日食偏食足迹查询(NASA bulletin Split-K) / solar eclipse penumbral footprints query with NASA bulletin Split-K. SolarEclipsePartialFootprintsNASABulletinSplitK computes penumbral footprint samples with the NASA bulletin Split-K model.
type SolarEclipsePath ¶
type SolarEclipsePath struct {
// Eclipse 是对应的全局日食信息, related global solar eclipse information.
Eclipse SolarEclipseInfo
// Greatest 是食甚点/最佳观测点, greatest eclipse point.
Greatest SolarEclipsePathPoint
// CenterLine 是中心线, central line.
CenterLine []SolarEclipsePathPoint
// NorthernLimit 是中心食带北界近似线, approximate northern limit of the central path.
NorthernLimit []SolarEclipsePathPoint
// SouthernLimit 是中心食带南界近似线, approximate southern limit of the central path.
SouthernLimit []SolarEclipsePathPoint
// Step 是实际采用的基础时间采样步长, effective base time step.
Step time.Duration
// TargetSpacingKM 是实际采用的目标空间采样距离,单位千米。
// TargetSpacingKM is the effective target spacing in kilometers.
TargetSpacingKM float64
}
SolarEclipsePath 表示一次中心日食的路径数据。 SolarEclipsePath contains central solar eclipse path data.
func SolarEclipseCentralPath ¶
func SolarEclipseCentralPath(date time.Time, options SolarEclipsePathOptions) (SolarEclipsePath, bool)
SolarEclipseCentralPath 日食中心路径查询 / central solar eclipse path query. SolarEclipseCentralPath computes the central path near the given date, using NASA bulletin Split-K by default.
func SolarEclipseCentralPathIAUSingleK ¶
func SolarEclipseCentralPathIAUSingleK(date time.Time, options SolarEclipsePathOptions) (SolarEclipsePath, bool)
SolarEclipseCentralPathIAUSingleK 日食中心路径查询(IAU Single-K) / central solar eclipse path query with IAU Single-K. SolarEclipseCentralPathIAUSingleK computes the central path with the IAU Single-K model.
func SolarEclipseCentralPathNASABulletinSplitK ¶
func SolarEclipseCentralPathNASABulletinSplitK(date time.Time, options SolarEclipsePathOptions) (SolarEclipsePath, bool)
SolarEclipseCentralPathNASABulletinSplitK 日食中心路径查询(NASA bulletin Split-K) / central solar eclipse path query with NASA bulletin Split-K. SolarEclipseCentralPathNASABulletinSplitK computes the central path with the NASA bulletin Split-K model.
type SolarEclipsePathOptions ¶
type SolarEclipsePathOptions struct {
// Step 是基础时间采样步长;<=0 时使用 1 分钟。
// Step is the base time step; values <= 0 use one minute.
Step time.Duration
// TargetSpacingKM 是相邻中心线点的最大目标地表距离;<=0 时不按距离加密。
// TargetSpacingKM is the target maximum ground spacing between centerline points; values <= 0 disable spacing refinement.
TargetSpacingKM float64
}
SolarEclipsePathOptions 控制日食中心路径采样。 SolarEclipsePathOptions controls central solar eclipse path sampling.
type SolarEclipsePathPoint ¶
type SolarEclipsePathPoint struct {
// Time 时刻,保持用户输入时区, time in the input location.
Time time.Time
// Longitude 经度,东正西负, longitude in degrees, east positive.
Longitude float64
// Latitude 纬度,北正南负, latitude in degrees, north positive.
Latitude float64
// SunAltitude 太阳高度角,单位度, Sun altitude in degrees.
SunAltitude float64
// WidthKM 中心食带宽度,单位千米;仅中心线点有意义。
// WidthKM is the central path width in kilometers; meaningful for centerline points.
WidthKM float64
}
SolarEclipsePathPoint 表示日食路径上的一个地理点。 SolarEclipsePathPoint is one geographic point on a solar eclipse path.
type SolarEclipseRadiusModel ¶
type SolarEclipseRadiusModel string
SolarEclipseRadiusModel 日食月亮半径模型, lunar radius model for solar eclipses.
const ( // SolarEclipseModelIAUSingleK IAU 单一 k 值模型, IAU single-k model. SolarEclipseModelIAUSingleK SolarEclipseRadiusModel = "iau_single_k" // SolarEclipseModelNASABulletinSplitK NASA bulletin 分裂 k 值模型, NASA bulletin split-k model. SolarEclipseModelNASABulletinSplitK SolarEclipseRadiusModel = "nasa_bulletin_split_k" )
type SolarEclipseType ¶
type SolarEclipseType string
SolarEclipseType 全局日食食型, global solar eclipse type.
const ( // SolarEclipseNone 无日食, no solar eclipse. SolarEclipseNone SolarEclipseType = "none" // SolarEclipsePartial 日偏食, partial solar eclipse. SolarEclipsePartial SolarEclipseType = "partial" // SolarEclipseAnnular 日环食, annular solar eclipse. SolarEclipseAnnular SolarEclipseType = "annular" // SolarEclipseTotal 日全食, total solar eclipse. SolarEclipseTotal SolarEclipseType = "total" // SolarEclipseHybrid 全环食, hybrid solar eclipse. SolarEclipseHybrid SolarEclipseType = "hybrid" )