package af; use strict; ################################# # # quick-and-dirty # ################################# sub date_to_epoch { my ($year,$month,$day)=@_; my ($epoch); if($month>11) {$day+=30;} if($month>10) {$day+=31;} if($month>9) {$day+=30;} if($month>8) {$day+=31;} if($month>7) {$day+=31;} if($month>6) {$day+=30;} if($month>5) {$day+=31;} if($month>4) {$day+=30;} if($month>3) {$day+=31;} if($month>2) {$day+=28;} if($month>1) {$day+=31;} # (J-2000)*365.25+2451545.0=JEP $epoch=($year-2000)*365.25+2451545.0+$day; # BEP=(B-1900)*365.242198781+2415020.31352 # $epoch=($year-1900)*365.242198781+2415020.31352+$day; } ################################# # # quick-and-dirty # ################################# sub epoch_to_date { my ($epoch)=@_; my ($yr,$yep,$dy,$mo,$res); $yr=2000+int(($epoch-2451545.0)/365.25); $yep=($yr-2000)*365.25+2451545.0; $dy=$epoch-$yep; $mo=1; if($dy-31>0) {$dy-=31; $mo=2;} if($dy-28>0) {$dy-=28; $mo=3;} if($dy-31>0) {$dy-=31; $mo=4;} if($dy-30>0) {$dy-=30; $mo=5;} if($dy-31>0) {$dy-=31; $mo=6;} if($dy-30>0) {$dy-=30; $mo=7;} if($dy-31>0) {$dy-=31; $mo=8;} if($dy-31>0) {$dy-=31; $mo=9;} if($dy-30>0) {$dy-=30; $mo=10;} if($dy-31>0) {$dy-=31; $mo=11;} if($dy-30>0) {$dy-=30; $mo=12;} $res=$yr."/".$mo."/".$dy; } ################################ sub ems { my $ms=$_[0]; die $ms; } sub dumpvars { my @in=@_; my ($m,$n,$pad,@p); if($in[0] ne "ARRAY") { @p=split(/\s+/,$in[0]); for($m=0;$m".$in[1]; for($m=2;$m