当前位置: 首页>>数据中心>>正文

CINRAD数据格式

2014-03-05


struct CINRADMESSAGE

{

       char Unused1[14];//1-14 保留

       //unsigned short int MessageType;//15~16 记录数据类型,具体说明见附表

       char MessageType;//15~16 记录数据类型,具体说明见附表

       char Channel;

       char Unused2[12];//17-28 保留

       unsigned long int RadialCollectionTime;//29-32 径向资料采集的GMT时间(毫秒)

       unsigned short int RadialCollectionDate;//33-34 径向资料采集的日期,以1/1/1970以来的Julian日期表示

       unsigned short int UnambiguousRange;//35-36 不模糊距离,单位:0.1Km

       unsigned short int AzimuthAngle;//37-38 方位角,实际值=(value>>3)*0.043945 (度)

       unsigned short int DataNumber;//39-40 径向数据序号

       unsigned short int DataStatus;//41-42 径向数据状态

       short int ElevationAngle;//43-44 仰角,实际值=(value>>3)*0.043945 (度)

       short int ElevationNumber;// 45-46 体扫内的仰角编号

       short int FirstGateRangeOfRef;//47-48 第一个强度库的距离(米)

       short int FirstGateRangeOfDoppler;//49-50 第一个速度/谱宽库的距离(米)

       short int ReflectivityGateSize;//51-52 强度库长(米)

       short int DopplerGateSize;//53-54 速度/谱宽库长(米)

       short int ReflectivityGates;//55-56 强度库数

       short int DopplerGates;//57-58 速度/谱宽库数

       char Unused3[5];//59-64 保留

       unsigned short int RefPointer;//65-66 从雷达数据头到强度数据开始的字节数

       unsigned short int VelPointer;//67-68 从雷达数据头到速度数据开始的字节数

       unsigned short int SWPointer;//69-70 从雷达数据头到谱宽数据开始的字节数

       short int VelResolution;//71-72 速度分辨率:2=0.5m/s;4=1.0m/s

       short int VCP;//73-74 体扫VCP模式 (11,21,31,32)

       char Unused4[14];//75-88 保留

       short int NyquistVelocity;//89-90 Nyquist速率(0.01m/s)不模糊速度

       char Unused5[38];//91-128 保留

       unsigned char Data[2300];//129-2428数据

       char Unused6[4];//2429-2432 保留

};

 

//取得日期

void CRadBaseData::GetRadialDate(unsigned short JulianDate, int& year, int& month, int& day)

{

       int JLDAYN = JulianDate+2440587;

       int L   = JLDAYN + 68569 ;

       int N   = 4 * L / 146097 ;

              L  = L - (146097 * N + 3) / 4 ;

       int I   = 4000 * (L + 1) / 1461001 ;

              L   = L - 1461 * I / 4 + 31 ;

       int J   = 80 * L / 2447 ;

              day  = L - 2447 * J / 80 ;

              L  = J / 11 ;

              month  = J + 2 - 12 * L ;

              year  = 100 * (N - 49) + I + L ;

}

//取得时间

void CRadar::GetRadialTime(unsigned long liMilliSeconds, int& hour, int& minute, int& seconds)

{

       int Seconds=liMilliSeconds;///1000;

       hour = Seconds/3600;

       minute= (Seconds-hour*3600)/60 ;

       seconds = Seconds -(60*hour+minute)*60 ;

}

 

关闭

航空港校区 | 四川省成都市西南航空港经济开发区学府路一段24号 | 邮编:610225
Copyright ? Key Laboratory of Atmospheric Sounding-KLAS    网络版权所有: 中国气象局大气探测重点实验室
电话:028-85967290     E-mail:dqtc@cuit.edu.cn