华夏人文初祖黄帝地支以及帝王世系表的时间表


北京时间:

东经120°(东八区)六十甲子入中宫,北京时间=北京时间比格林尼治时间+8小时

= .();

.(.(“GMT+8:00”));

平太阳时间:

我们平时生活中的用到的北京时间就是平太阳时间,但使用时一般指当地的经度对应的时间(地方时),比如所在北京116°21′,这个经度和北京标准时间对应的经度相差3度,那么时间也就差了870秒左右。

  这里获取方式有二种,第一种使用GPS定位里面的时间,这个最准
   Calendar locCalendar = Calendar.getInstance();
   locCalendar(location.getTime());
   第二种使用当地城市坐标和北京(东八区换算)得到相对准确的时间
   其计算公式为地方标准时间=北京标准时间+4分×(地方经度一12O度)。
因为各经度相对东经120度时间差基本不会变化,可以定义成常量
      eg。北京数据如下
            "北京市区", 116.46, -850, 39.92//城市名称,经度,时间差(精确到秒),纬度
            "北京平谷", 117.10, -696, 40.13
             "北京密云", 116.85, -756, 40.37
             "北京顺义", 116.65, -804, 40.13
             "北京通县", 116.67, -799, 39.92
             "北京怀柔", 116.62, -811, 40.32
             "北京大兴", 116.33, -881, 39.73
             "北京房山", 115.98, -965, 39.7
             "北京延庆", 115.97, -967, 40.47
             "北京昌平", 116.20, -912, 40.22
     使用
      
          Calendar bjcalendar = Calendar.getInstance();
          bjcalendar.setTimeZone(TimeZone.getTimeZone("GMT+8:00"));
          Calendar locCalendar = Calendar.getInstance();
          locCalendarbjcalendar.getTimeInMillis() + selectCity.differTime * 1000);

真太阳时间:

太阳视圆面中心连续两次上中天的时间间隔叫做真太阳日。1真太阳日又分为24真太阳时。这个时间系统称为真太阳时。因此,为了和人们的日常生活习惯一致,把真太阳时定义为:真太阳视圆面中心的时角加12小时。因为真太阳时是观测太阳视圆面中心得到的,所以真太阳时也称为视太阳时,简称视时。即:真太阳时=地方时+均时差。

均时差:地球的轨道是椭圆的,依据克卜勒运动定律,太阳移动速度有时较快,有时较慢(+/-16分钟)。由于这个变换较小可以在相关天文观测数据里面把这些数值定义成常量

eg。:

(0, -189),//1月01日,-3:9

(1, -218),//1月02日,-3:38

(2, -246),//1月03日,-4:6

(3, -273),//1月04日,-4:33

(4, -301),//1月05日,-5:1

   Calendar calendar = Calendar.getInstance();
   calendar.setTimeInMillis(locTime -189*1000);

黄帝纪年

黄帝纪年是根据黄帝历和天干地支以及帝王世系表推算的华夏人文初祖黄帝即位以及创制历法的时间开始纪年。

农历

农历是我国传统历法,又有阴历、华历、夏历、汉历、中历等名称。农历并不是纯阴历,而是一种阴阳合历,取月相的变化周期即朔望月为月的长度,加入干支历“二十四节气”成分,参考太阳回归年为年的长度,通过设置闰月以使平均历年与回归年相适应。农历是以阴历(夏历)为基础,融合阳历成分而成的一种历法。所以我国的农历从严格意义上说不应该叫阴历,而是阴阳合历。 [1-2]

农历属于一种阴阳合历:其年份分为平年和闰年。平年为十二个月;闰年为十三个月。月份分为大月和小月,大月三十天,小月二十九天,其平均历月等于一个朔望月。一年中哪个月大,哪个月小,由计算决定。

农历是兼顾太阳、月亮与地球关系的一种历法。阴历不考虑地球绕太阳的运行,因而使得四季的变化在阴历上就没有固定的时间,不能反映季节。与阳历年固定在365天或366天不同的是,阴历年相比阳历年在天数上有时会相差一个月;为了协调阴历年与阳历年之间的天数,于是便通过“置闰法”进行调整使阴历月相总天数与阳历回归年总天数相适应

干支纪年:

干支(gānzhī)纪年法是中国历法上自古以来就一直使用的纪年方法。干支是天干和地支的总称。把干支顺序相配正好六十为一周,周而复始,循环记录,这就是俗称的“干支表”。

甲、乙、丙、丁、戊、己、庚、辛、壬、癸十个符号叫天干;

子、丑、寅、卯、辰、巳、午、未、申、酉、戌、亥十二个符号叫地支。

干支纪月

干支纪月是指在农历中用干支记录月序。只用地支纪月,每月固定用十二地支表示。把冬至所在之月称为“子月”(农历十一月),下一个月称为“丑月”(农历十二月),以此类推。故古历中的《夏历》以“寅月”为正月,又称建寅之月或建寅正月等。

干支纪月以农历每月初一日作为分界点。

干支纪时

干支纪时,就是用60组各不相同的天干地支按照既定方式标记时间的纪时方法。它是干支历的重要组成部分。既定方式为把1天分为12个时辰,从晚上23点正开始,从甲子这个干支开始标注第一个时辰,一个时辰相当于现在两个小时,之后每两个小时接着顺序标注,60组干支不断循环往复。由于地支只有12个,所以是固定不变的,古时人们说时辰的时候,只说地支就可以了

这里需要特别注意刻的计算,一般采用百刻制

百刻制说明:一日百刻。一时辰八大刻,二小刻。一大刻六十分,一小刻十分,一时辰共五百分。初初小刻为界,正初小刻为中。初一、初二、初三、初四为上四大刻;正一、正二、正三、正四为下四大刻。换算成现代秒数,即一分为14.4秒,一小刻为144秒即2.4分钟,一大刻为864秒即14.4分钟。

示例图片

二十八星宿

最近在整理二十八星期排序发现网络有些数据是错误的,先把自己的整理记录一下

错误表象一:28星宿有一部分数据只有27个,漏掉了一个

错误表象二:星宿的排序直接使固定的月份对照

(古代历算家以二十八宿中的一宿配六十甲子,共得甲子七次,称为七元,对于七元甲子的意义(协纪辨方.本原)解释说:"考原云:日有六十,宿有二十八,四百二十日而一周,四百二十者,以六十与二十八俱可度尽也.故有七元之说.

一元甲子起虚;

二元甲子起奎;

三元甲子起毕;

四元甲子起鬼;

五元甲子起翼;

六元甲子起氏;

七元甲子起箕

至七元尽,而甲子又起虚,周而复始.)

二十八宿从角宿开始,自西向东排列,与日、月视运动的方向相同。每一个方位对应7个星宿

东方青龙七宿:角、亢、氐、房、心、尾、箕

北方玄武七宿:斗、牛、女、虚、危、室、壁

西方白虎七宿:奎、娄、胄、昴、毕、觜、参

南方朱雀七宿:井、鬼、柳、星、张、翼、轸

二十八宿与十二地支对应关系

地支是中国古代天文学最最核心的内容,是中国古代天文学最重要的符号。地支来源古代二十八星宿另一种一年的表达方式。地支创建的方法是采用二十八星宿部分星象符号。

二十八宿从角宿开始,自西向东排列,与日、月视运动的方向相反:

东方称青龙:角木蛟、亢金龙、氐土貉、房日兔、心月狐、尾火虎、箕水豹;

北方称玄武:斗木獬、牛金牛、女土蝠、虚日鼠、危月燕、室火猪、壁水貐;

西方称白虎:奎木狼、娄金狗、胃土雉、昴日鸡、毕月乌、觜火猴、参水猿;

南方称朱雀:井木犴、鬼金羊、柳土獐、星日马、张月鹿、翼火蛇、轸水蚓。

后来巴比伦人把星期制的七天,分别配上一个天体的名字,星期也即是星的日期的意思,有时也把星期叫做"曜日".如日曜日就是星期天:代表大阳;星期一是月曜日,代表月亮;星期二是火曜日,代表火星;星期三是水曜日,代表水星;星期四是木曜日,代表木星;星期五是金曜日,代表金星;星期六是土曜日,代表土星.星期制的产生与的月亮园缺变化有关,而"礼拜"则是基督敖使用的浯言 ,和中国太阳、太阴、金、木、水、火、土对应

星期日→日禽日

星期一→月禽日

星期二→火禽日

星期三→水禽日

星期四→木禽日

星期五→金禽日

星期六→土禽日

所以准确的计算方式是先找一个确定的星宿的天,对应星宿及其对应的干支。然后计算某一天和的差值,然后按照28星宿的轮询顺序得到准确的星宿。

根据轮询的规则如人总结了 四句三合局起宫位的口诀

1,虚毕翼箕奎鬼氐。申子辰日用;

2,昂张尾壁井亢女,亥卯未日用;

3,星心室参角牛胃,寅午戌日用;

4,房危觜轸斗娄柳,巳酉丑日用。

把星期放进去就是下图:

按照上面的表即可得到准确的某一天的星宿

古人在此基础上面还有一套立法,即年月日时都用星宿表示。

二十八宿即“禽星”,分四方、七政。

一元虚张室轸遊,二元奎亢胃房求,三毕尾参求觅斗,四鬼女星危月求。五翼壁角娄金狗,六氐昴嘴火猴六十甲子入中宫,七箕井畔牛边柳,此是七元四将头

1918年角宿值年,1919年亢宿值年…1924年中元甲子箕宿值年…1984年下元甲子虚宿值年,2002年箕宿值年。

数学的计算规则: 因为420是60甲子和28宿的最小公倍数,所以二十八宿有七元甲子共420天。 一元甲子起虚(以子象鼠而虚为日鼠也),二十八宿往后依序编排。即甲子(1)在虚,第57(1+28*2)位也在虚,第58位在危,第59位在室,第60位在壁,第61位(也就是第1位的甲子)在奎。所以二元甲子起奎,依法得,三元甲子起毕,四元甲子起鬼,五元甲子起翼,六元甲子起氐,七元甲子起箕。

按日历推算:

最近的“一元一将”是1996年1月28日,该日儒略日为,加420日又是“一元一将”,即1997年3月23日的甲子日又是“一元一将”

如1984年下元甲子年七月初二甲子 日为一元一将,虛日宿值日,并且此日肯定是星期日,七月十七为一元二将,张月值日,张属月为星期一。

如:2002年2月10日已酉日是“二元四将”,按笫五条口诀值日是女土蝠。

紫白飞星

三元九运每元各二十年,在此二十年中每年天体的运行位置不同,对地球的反照也不同,其人与事的吉凶各异,其应验结果是有区别的,在二十年中九星轮三次运照地球,除五黄外共计二十四年,再减云父母三般以正三元,余二十一位,加上黄金岁差与磁偏角计二十年左右,因阴阳宅是注重空间与时间通气的学问,气流吉凶随时都在变化,所以年紫白飞星对于风水的吉凶变化是有很大影响的,在判断风水每年的吉凶,就必须运用年紫白飞星盘。

年月日時紫白(入中)计算办法

   public static int addNum(int num) {
        int sum = 0;
        while (num != 0) {
            sum = sum + num % 10;
            num = num / 10;
        }
        return sum;
    }
    //NewConstant.FEI_XING_YEAR数据:
    一白 九紫 八白 七赤 六白 五黄 四绿 三碧 二黑 一白
  public static String getFeiXingYear(int year) {
        int sum = addNum(year);
        while (sum > 9) {
            sum = addNum(sum);
        }
        return NewConstant.FEI_XING_YEAR[sum];
    }

//NewConstant.FEI_XING_MONTH : 一白 二黑 三碧 四绿 五黄 六白 七赤 八白 九紫
 /**
     * @param earZhiYear 年支
     * @param lunarMonthName 农历月名称
     * @return
     */
   public static String getFeiXingMonth(String earZhiYear, String lunarMonthName) {
        int lunMonthIndex = CalendarUtils.transferLunarMonth2Index(lunarMonthName);//计算月索引0-11
        int startIndex;
        if ("子午卯酉".contains(earZhiYear)) {
            startIndex =1;
        } else if ("辰戌丑末".contains(earZhiYear)) {
            startIndex = 4;
        } else {//寅申巳亥
            startIndex = 7;
        }
        return NewConstant.FEI_XING_MONTH[8 - (startIndex + lunMonthIndex) % 9];
    }

实现代码如下

/**
1.冬至至立春末日:日干支序数÷9所得余数(除尽时余数为9);
     * 
2.雨水至清明末日:(日干支序数+6)÷9所得余数(除尽时余数为9);
     * 
3.谷雨至芒种末日:(日干支序数+3)÷9所得余数(除尽时余数为9);
     * 
4.夏至至立秋末日:日干支序数÷9所得余数(除尽时余数为9)的合十数;
     * 
5.处暑至寒露末日:(日干支序数+6)÷9所得余数(除尽时余数为9)的合十数;
     * 
6.霜降至大雪末日:(日干支序数+3)÷9所得余数(除尽时余数为9)的合十数;
     * "冬至", "小寒", "大寒", "立春",
     * "雨水", "惊蛰", "春分", "清明",
     * "谷雨", "立夏", "小满", "芒种",
     * "夏至", "小暑", "大暑", "立秋",
     * "处暑", "白露", "秋分", "寒露",
     * "霜降", "立冬", "小雪", "大雪"
     *
     * @param jq 二十四节气索引
     * @return 节气分割索引
     * 冬至至立春末日 0
     * 雨水至清明末日 1
     * 谷雨至芒种末日 2
     * 夏至至立秋末日 3
     * 处暑至寒露末日 4
     * 霜降至大雪末日 5
     */
    public static int getFeiXingDayDiv(int jq) {
        if (jq >= 0 && jq < 4) {//0冬至  4雨水      立春末日:雨水的前一天
            return 0;
        } else if (jq >= 4 && jq < 8) {//8 谷雨     清明末日:谷雨的前一天
            return 1;
        } else if (jq >= 8 && jq < 12) {//12 夏至   芒种末日:夏至的前一天
            return 2;
        } else if (jq >= 12 && jq < 16) {//16处暑   立秋末日:处暑的前一天
            return 3;
        } else if (jq >= 16 && jq < 20) {//20 霜降  寒露末日:霜降的前一天
            return 4;
        } else {                        //          大雪末日:冬至的前一天
            return 5;
        }
    }
/**
NewConstant.FEI_XING_DAY:一白 二黑 三碧 四绿 五黄 六白 七赤 八白 九紫
 * @param jqIndex  节气索引0 -23
     * @param eraDay 日干支
     * @return
     */
    public static String getFeiXingDay(int jqIndex, String eraDay) {
          int startIndex = 0;
        int jqDiv = getFeiXingDayDiv(jqIndex);
        int earIndex = transferDaysGanZHi2Index(eraDay);
        if (jqDiv == 0) {
            startIndex = 0;
        } else if (jqDiv == 1) {
            startIndex = 6;
        } else if (jqDiv == 2) {
            startIndex = 3;
        } else if (jqDiv == 3) {
            startIndex = 8;
        } else if (jqDiv == 4) {
            startIndex = 2;
        } else {
            startIndex = 5;
        }
        if (jqIndex >= 12) {//夏至 - 冬至 逆序
            return NewConstant.FEI_XING_MONTH_DAY[8 - (startIndex + earIndex) % 9];
        } else {//冬至后 顺序
            return NewConstant.FEI_XING_MONTH_DAY[(startIndex + earIndex) % 9];
        }
    }

参考资料

二十八星宿/675

农历二十四节气/?=农历节气



推荐文章

热门标签