File indexing completed on 2024-05-19 03:45:12
0001 use HTMesh; 0002 use strict; 0003 0004 printf "%5s %5s %8s %8s %8s %8s %8s %8s %8s %8s %8s\n", 0005 qw/size level c_trix r_trix iter/, "us/circ", "us/rec", "stars-c", "stars-r", "time-c", "time-r"; 0006 for my $size ( 1, 10, 90) { 0007 my $size2 = $size / sqrt(2); 0008 for my $level(3, 4, 5, 6) { 0009 my $mesh = new HTMesh($level, 3); 0010 my $num_triangles = $mesh->total_triangles(); 0011 my ($ra, $dec) = (6.75, -16.72); 0012 my @pt = ($ra, $dec); 0013 $mesh->intersect_circle(@pt, $size); 0014 my $c_trixels = $mesh->result_size(); 0015 my $iter = 1000/ sqrt($c_trixels); 0016 my $c_time = $mesh->time_circle($iter, @pt, $size ); 0017 my $r_time = $mesh->time_rect($iter, @pt, $size2, $size2); 0018 my $r_trixels = $mesh->result_size(); 0019 my $c_stars = (126000 / $num_triangles) * $c_trixels; 0020 my $r_stars = (126000 / $num_triangles) * $r_trixels; 0021 my $us_per_circ = 1000 * 1000 * $c_time/$iter; 0022 my $us_per_rect = 1000 * 1000 * $r_time/$iter; 0023 my $tt1 = $us_per_circ + 5 * $c_stars; 0024 my $tt2 = $us_per_rect + 5 * $r_stars; 0025 printf "%5d %5d %8d %8d %8d %8d %8d %8d %8d %8d %8d\n", 0026 $size, $level, $c_trixels, $r_trixels, $iter, $us_per_circ, $us_per_rect, 0027 $c_stars, $r_stars, $tt1, $tt2; 0028 } 0029 } 0030 0031 0032 0033 0034 0035