|
|
1.1 ! root 1: #include "sky.h" ! 2: #include <stdio.h> ! 3: ! 4: stars() ! 5: { ! 6: char starname[13]; ! 7: register i; ! 8: double temp1; ! 9: FILE *f; ! 10: ! 11: starname[12] = 0; ! 12: object = starname; ! 13: ! 14: ! 15: /* ! 16: * read epoch of star table ! 17: * and convert to internal format ! 18: * epoch 1900.0 is J.D. 2415020.313 ! 19: */ ! 20: ! 21: f = fopen(startab, "r"); ! 22: if(f == NULL) { ! 23: printf("%s?\n", startab); ! 24: return; ! 25: } ! 26: rline(f); ! 27: epoch = atof(line); ! 28: epoch = (epoch-1900.0) * 365.2422 + 0.313; ! 29: ! 30: /* ! 31: * read mean places of stars at epoch of star table ! 32: */ ! 33: ! 34: loop: ! 35: if(rline(f)) { ! 36: fclose(f); ! 37: return; ! 38: } ! 39: for(i=0;i<12;i++){ ! 40: starname[i] = line[i]; ! 41: } ! 42: agc = (long)atof(line+12); ! 43: rah = atof(line+17); ! 44: ram = atof(line+20); ! 45: ras = atof(line+23); ! 46: da = atof(line+30); ! 47: dday = atof(line+37); ! 48: dmin = atof(line+41); ! 49: dsec = atof(line+44); ! 50: dd = atof(line+50); ! 51: px = atof(line+57); ! 52: mag = atof(line+64); ! 53: const = (int)atof(line+70); ! 54: ! 55: /* ! 56: * convert rt ascension and declination to internal format ! 57: */ ! 58: ! 59: alpha = rah + ram/60. + ras/3600.; ! 60: ! 61: ! 62: delta = fabs(dday) + dmin/60. + dsec/3600.; ! 63: if(dday < 0.) ! 64: delta = -delta; ! 65: alpha *= 15.*radian; ! 66: delta *= radian; ! 67: ! 68: star(); ! 69: output(); ! 70: /* ! 71: * Check for occultation. ! 72: */ ! 73: ! 74: if(!((flags&GEO)||(flags&HELIO))){ ! 75: temp1 = sin(decl2)*sin(moonde) + cos(decl2)*cos(moonde)*cos(ra-moonra); ! 76: temp1 = atan2(sqrt(1.-temp1*temp1),temp1)/radsec; ! 77: temp1 = temp1/moonsd; ! 78: if(temp1 <= 1.0){ ! 79: printf("Occultation: Dist. = %.4f\n", temp1); ! 80: }else if(temp1 <= 1.2){ ! 81: printf("Near occultation: Dist. = %.4f\n", temp1); ! 82: } ! 83: } ! 84: ! 85: goto loop; ! 86: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.