******************************************************************************* * Akebono (EXOS-D) Magnetic Field Data in Science Data Base (SDB) * ******************************************************************************* 1996/06/05 PREFACE Measurement of Geomagnetic Field (MGF) has been conducted on board the Akebono (EXOS-D) satellite with a tri-axial fluxgate magnetometer and a tri-axial search coil magnetometer. The fluxgate magnetometer is mounted on the 5-m mast, while the search coil magnetometer is mounted on the 3-m mast. The MGF SDB consists of fluxgate magnetometer data averaged over every 8 s during the time intervals when the attitude of the spacecraft is sufficiently determined. FILE NAME The file name of MGF SDB data is defined by the date and hour of the start time of the data file concerned. The format of the file name is 'yymmddhh.mgf', where yy, mm, dd and hh are the year (-1900), month, day and hour (in UT), respectively. DATA FORMAT The block size of the MGF SDB data is 181 byte. The first block is the header whose format is as follows: byte | contents --------------------------------------- 1 - 12 | start time[yymmddhhmmss] 13 - 181 | Message or Null Each data block consists of the block number and then 15 data records. Each data record consists of 3 components of the observed magnetic field data and their residual magnetic field data. The residual field is calculated by subtraction of IGRF 1990 model field from the observed field. The format of a data block is as follows, byte | contents --------------------------------------- 1 | Block No. 12*i+02 - 12*i+03 | Bx [2nT] 12*i+04 - 12*i+05 | By [2nT] 12*i+06 - 12*i+07 | Bz [2nT] 12*i+08 - 12*i+09 | dBx [0.1nT] 12*i+10 - 12*i+11 | dBy [0.1nT] 12*i+12 - 12*i+13 | dBz [0.1nT] (i = 0-14) where (Bx, By, Bz) and (dBx, dBy, dBz) are the observed and residual magnetic fields in the GSM coordinate system, respectively. The GSM (Geocentric Solar Magnetospheric) coordinate system has the origin at the center of the Earth and the X-, Y- and Z-axes make an orthogonal right hand coordinate system. The X-axis points from the Earth to the Sun. The Y-axis is defined to be perpendicular both to the Earth's magnetic dipole and the X-axis so that the X-Z plane contains the dipole axis. The time of i-th data record in the n-th block is calculated as: time[sec] = (start time) + n*120.0 + i*8.0 NOTICE - The value of '32767' for either Bx, By, Bz, dBx, dBy, or dBz denotes the lack of data at the time. - Any uncertainty either in the attitude and position of the spacecraft, the alignment between the three axes, their alignments to the satellite, the sensitivity of the three components of the sensor, or the difference between the model field (here we have adopted IGRF 90) and the real field can bring significant errors in the processed data when subtracting the model field from the observed field. These errors are generally identified as variations synchronized with the spin period (about 8 s) but sometimes make steplike or spikelike variations and sometimes long-term variations. It may often be difficult to distinct these artificial variations from the natural phenomena. Some typical artificial variations are described below for users to avoid confusing the artificial and natural phenomena, but the users are highly recommended that users contact the MGF group when they meet one of those variations below during their analysis. 1. A step-like or spike-like signature of the MGF data which may be attributed to artificial causes mentioned below: a) the fluxgate magnetometer automatically selects one of the four sensitivity ranges (+-64,000 nT, +-16,000 nT, +-4,000 nT, and +-1,000 nT) in accordance with the amplitude of the ambient magnetic field. The range switching can be a cause of a small but abrupt (spikelike) data offset. b) The magnetic torcker that is sporadically run to control the attitude of the spacecraft also brings some spikelike offset when it is turned on and off. It is noted that the magnetic torcker runs mainly at low altitudes. 2. The MGF data sometimes show long-term variations which may be artificial and dmay not reflect any natural electric current effect. Some of these variations are artificially produced by inadequate subtraction of the reference field from the observed magnetic field due to one of the uncertainties mentioned above. This is especially the case when the spacecraft flies at relatively lower altitudes (around the perigee) where the strength of the ambient field changes rapidly. Careful inspection is required for this kind of variations that look similar to the variations produced by a wide, diffuse field-aligned current. -The MGF plots in the GEOGRAPHICAL coordinates are available, which are useful when investigating the structure of field-aligned currents. Please contact the MGF group for further information. - When you publish a paper using MGF SDB, it is recommended to refer to Fukunishi et al. [1990] which provides detailed description on the MGF experiment onboard the Akebono (EXOS-D) satellite. For further information on the instrumentation and data processing of MGF, please also see Fukunishi et al. [1990]. Reference Fukunishi, H., R. Fujii, S. Kokubun, K. Hayashi, T. Tohyama, Y. Tonegawa, S. Okano, M. Sugiura, K. Yumoto, I. Aoyama, T. Sakurai, T. Saito, T. Iijima, A. Nishida, and M. Natori, Magnetic field observations on the Akebono (EXOS-D) satellite, J. Geomag. Geoelectr., 42, 385-409, 1990. List of some MGF group members: PI : Hiroshi FUKUNISHI Department of Astrophysics and Geophysics, Faculty of Science, Tohoku University, Send, 980-77, JAPAN TEL: +81-22-217-6734(direct) FAX: +81-22-217-6739 e-mail: fuku@stpp2.geophys.tohoku.ac.jp Contact persons for consultation (the common e-mail address: exosmgfdb@t-rex.crl.go.jp). Tsutomu NAGATSUMA (Chief) Hiraiso Solar-Terrestrial Research Center, Communications Research Laboratory, 3601 Isozaki, Hitachinaka 311-12 TEL: +81-29-265-9711(direct) FAX: +81-29-265-9717 e-mail: tnagatsu@crl.go.jp Yukihiro TAKAHASHI Department of Astrophysics and Geophysics, Faculty of Science, Tohoku University, Sendai 980-77 TEL: +81-22-217-6537(direct) FAX: +81-22-217-6739 e-mail: yukihiro@stpp2.geophys.tohoku.ac.jp Hidetaka SHIRASAWA Department of Aeronautics and Astronautics, School of Engineering, Tokai University, Kitakaname, Hiratsuka, 259-12, JAPAN TEL: +81-463-58-1211 (ext.4463) FAX: +81-463-50-2060 e-mail: sirasawa@aurora.ms.u-tokai.ac.jp SAMPLE PROGRAM A sample program for data reading of MGF D.B (C Language) /* Case 1 : C Program Coded 96/06/07 */ /* mgfsdb.c Usage : mgfsdb yymmddhh.mgf Output filename : mgfsdb.dat */ /* How to use a sample program and MGF data. 1) Save a sample program as a new file "mgfsdb.c". 2) Compile "mgfsdb.c". % cc -o mgfsdb mgfsdb.c 3) If MGF data is 89040105.mgf, % mgfsdb 89040105.mgf 4) You can obtain an output file "mgfsdb.dat". */ #include #define BS 181 /* Block size */ #define NR 15 /* Number of data record */ main(int argc, char *argv[]) /* For SVR and GCC */ /* For BSD and Sun-OS main(argc,argv) int argc; char *argv[]; */ { FILE *dtfile ; FILE *dbfile ; char fname[13]; char sdate[7], stime[7] ; char edate[7], etime[7] ; char pass[11] ; char stid[7] ; char atrank[3] ; char comment[140] ; int sthms, hh, mm, ss ; float time0 ; short i, data[BS] ; short j, k, block_no, x[NR], y[NR], z[NR], dx[NR], dy[NR], dz[NR] ; float time[NR] ; float mgfx[NR], mgfy[NR], mgfz[NR] ; /* magnetic field vector */ float dltx[NR], dlty[NR], dltz[NR] ; /* residual magnetic field vector */ switch(argc){ case 2: fname[0] = 0 ; strcat(fname, argv[1]) ; break; default: fprintf(stderr,"Usage: mgfsdb yymmddhh.mgf \n"); exit(1); } if((dtfile = fopen(fname,"rb"))==NULL){ fprintf(stderr, "Can't Open %s\n", fname); exit(1); } dbfile = fopen("./mgfsdb.dat","w") ; /* Read Header Block Data */ for ( i=0; i<6; ++i) { sdate[i] = fgetc(dtfile); } sdate[6]='\0'; for ( i=0; i<6; ++i) { stime[i] = fgetc(dtfile); } stime[6]='\0'; for ( i=0; i<6; ++i) { edate[i] = fgetc(dtfile); } edate[6]='\0'; for ( i=0; i<6; ++i) { etime[i] = fgetc(dtfile); } etime[6]='\0'; for ( i=0; i<10; ++i) { pass[i] = fgetc(dtfile); } pass[10]='\0'; for ( i=0; i<6; ++i) { stid[i] = fgetc(dtfile); } stid[6]='\0'; for ( i=0; i<2; ++i) { atrank[i] = fgetc(dtfile); } atrank[2]='\0'; for ( i=0; i<139; ++i) { comment[i] = fgetc(dtfile); } comment[139]='\0'; /* stime convert to total second */ sthms = atoi(stime) ; hh = sthms/10000 ; mm = (sthms - hh*10000)/100 ; ss = sthms - hh*10000 - mm*100 ; time0 = (float) hh*60.0*60.0 + mm*60.0 + ss ; /* Print Header Data */ printf("Start Date : %s\n",sdate) ; printf("Start Time : %s\n",stime) ; printf("End Date : %s\n",edate) ; printf("End Time : %s\n",etime) ; printf("Pass No. : %s\n",pass) ; printf("Station ID : %s\n",stid) ; printf("Atitude Rank : %s\n",atrank) ; printf("Comment : %s\n",comment) ; printf( "Time[sec] Bx[nT] By[nT] Bz[nT] dBx[nT] dBy[nT] dBz[nT]\n") ; fprintf(dbfile,"Start Date : %s\n",sdate) ; fprintf(dbfile,"Start Time : %s\n",stime) ; fprintf(dbfile,"End Date : %s\n",edate) ; fprintf(dbfile,"End Time : %s\n",etime) ; fprintf(dbfile,"Pass No. : %s\n",pass) ; fprintf(dbfile,"Station ID : %s\n",stid) ; fprintf(dbfile,"Atitude Rank : %s\n",atrank) ; fprintf(dbfile,"Comment : %s\n",comment) ; fprintf(dbfile, "Time[sec] Bx[nT] By[nT] Bz[nT] dBx[nT] dBy[nT] dBz[nT]\n") ; /* Read & Print Main Data Block */ while ( ( data[0]=fgetc(dtfile) ) != EOF ) { for ( i=1 ; i