int main ( int argc, char *argv[] ) /******************************************************************************/ /* Purpose: MAIN is the main program for C_INTRINSICS. Licensing: This code is distributed under the GNU LGPL license. Modified: 16 April 2011 Author: John Burkardt */ { timestamp ( ); printf ( "\n" ); printf ( "C_INTRINSICS:\n" ); printf ( " Test the C intrinsic library.\n" ); test_abs ( ); test_acos ( ); test_asin ( ); test_atan ( ); test_atan2 ( ); test_ceil ( ); test_cos ( ); test_cosh ( ); test_exp ( ); test_fabs ( ); test_floor ( ); test_fmod ( ); test_frexp ( ); test_ldexp ( ); test_log ( ); test_log10 ( ); test_modf ( ); test_pow ( ); test_sin ( ); test_sinh ( ); test_sqrt ( ); test_tan ( ); test_tanh ( ); /* Terminate. */ printf ( "\n" ); printf ( "C_INTRINSICS:\n" ); printf ( " Normal end of execution.\n" ); printf ( "\n" ); timestamp ( ); return 0; }
int main() { test_cos_det(); test_sin_det(); test_atan2_det(); test_atan2(); test_pow_det(); test_pow_singleton_exp(); test_pow(); test_fmod_det(); test_fmod(); test_sqrt_det(); test_sqrt(); test_exp_det(); test_log_det(); test_log10_det(); test_powf_det(); test_powf_singleton_exp(); test_powf(); test_sqrtf_det(); test_sqrtf(); test_expf_det(); test_logf_det(); test_log10f_det(); test_diff_pow_powf(); test_floor_det(); test_ceil_det(); test_trunc_det(); test_round_det(); test_floor(); test_ceil(); test_trunc(); test_round(); test_floorf_det(); test_ceilf_det(); test_truncf_det(); test_roundf_det(); test_floorf(); test_ceilf(); test_truncf(); test_roundf(); return 0; }
int main(int argc, char* argv[]) { if (argc != EXPECTED_ARGC) { std::cout << "ERROR: Expected " << EXPECTED_ARGC-1 << " arguments, got " << argc-1 << std::endl; std::cout << "Usage is: zcta.exe [processed data file] [output file]" << std::endl; return 1; } std::cout << "Setting up custom memory allocation... " << std::endl; initGMPMemoryFunctions(); std::cout << "Testing the math (sanity check on GMP)... " <<std::endl; test_atan2(); testHorizontalPointComparator(); testHorizontalLineComparator(); testVerticalPointComparator(); testVerticalLineComparator(); try { boost::unordered_set<ZCTA> zctas; boost::unordered_set<ZCTASegment> segments; boost::timer t1; std::cout << "Reading and reconstituting data from " << argv[DATA_FILE_INDEX] << std::endl; { std::ifstream data(argv[DATA_FILE_INDEX]); boost::unordered_map<ZCTA, std::vector<LineSegment> > blob; data >> blob; for (boost::unordered_map<ZCTA, std::vector<LineSegment> >::const_iterator i = blob.cbegin(); i != blob.cend(); ++i) { zctas.insert(i->first); const std::vector<LineSegment>& vec = i->second; for (int j = 0; j < vec.size(); j++) segments.insert(ZCTASegment(vec[j], i->first)); } } std::cout << "Loaded data in " << t1.elapsed() << std::endl; std::cout << zctas.size() << " ZCTAs with " << segments.size() << " segments" << std::endl; #ifdef REMOVE_HH_ZCTAS t1.restart(); { std::vector<boost::unordered_set<ZCTA>::iterator> iters; for (boost::unordered_set<ZCTA>::iterator i = zctas.begin(); i != zctas.end(); i++) if (i->id().find("HH") != std::string::npos) iters.push_back(i); for (int i = 0; i < iters.size(); i++) zctas.erase(iters[i]); } { std::vector<boost::unordered_set<ZCTASegment>::iterator> iters; for (boost::unordered_set<ZCTASegment>::iterator i = segments.begin(); i != segments.end(); i++) if (i->zcta().id().find("HH") != std::string::npos) iters.push_back(i); for (int i = 0; i < iters.size(); i++) segments.erase(iters[i]); } std::cout << "Removed HH ZCTAs in " << t1.elapsed() << std::endl; std::cout << zctas.size() << " ZCTAs with " << segments.size() << " segments" << std::endl; #endif AdjacencySet hadj; HorizontalAlgorithm ha(segments, ADJACENCY_TOLERANCE, &hadj); t1.restart(); ha(); std::cout << "Computed with horizontal sweep line in " << t1.elapsed() << ": " << hadj.size() << " adjacencies" << std::endl; AdjacencySet vadj; VerticalAlgorithm va(segments, ADJACENCY_TOLERANCE, &vadj); t1.restart(); va(); std::cout << "Computed with vertical sweep line in " << t1.elapsed() << ": " << vadj.size() << " adjacencies" << std::endl; t1.restart(); vadj.merge(hadj); std::cout << "Merged adjacency sets in " << t1.elapsed() << std::endl; std::cout << "Total adjacencies: " << vadj.size() << std::endl; std::cout << "Writing output to " << argv[OUTPUT_FILE_INDEX] << std::endl; print(argv[OUTPUT_FILE_INDEX], zctas, vadj); } catch(std::exception& e) { std::cout << e.what() << std::endl; } return 0; }
int main() { test_acos(); test_asin(); test_atan(); test_atan2(); test_ceil(); test_cos(); test_cosh(); test_exp(); test_fabs(); test_floor(); test_fmod(); test_frexp(); test_ldexp(); test_log(); test_log10(); test_modf(); test_pow(); test_sin(); test_sinh(); test_sqrt(); test_tan(); test_tanh(); test_signbit(); test_fpclassify(); test_isfinite(); test_isinf(); test_isnan(); test_isnormal(); test_isgreater(); test_isgreaterequal(); test_isless(); test_islessequal(); test_islessgreater(); test_isunordered(); test_acosh(); test_asinh(); test_atanh(); test_cbrt(); test_copysign(); test_erf(); test_erfc(); test_exp2(); test_expm1(); test_fdim(); test_fma(); test_fmax(); test_fmin(); test_hypot(); test_ilogb(); test_lgamma(); test_llrint(); test_llround(); test_log1p(); test_log2(); test_logb(); test_lrint(); test_lround(); test_nan(); test_nearbyint(); test_nextafter(); test_nexttoward(); test_remainder(); test_remquo(); test_rint(); test_round(); test_scalbln(); test_scalbn(); test_tgamma(); test_trunc(); }