int main (int argc, const char *argv []) { int n; const POOL_LIMITS str = { 2, ~0, 0 }, refs = { 2, ~0, 0 }, dtypes = { 2, ~0, 0 }, ddata = { 2, ~0, 0 }; n = do_switches (argc, argv); fail_unless (str_pool_init (&str, &refs, 20000, 1) == 0); fail_unless (dds_typesupport_init () == 0); fail_unless (xd_pool_init (&dtypes, &ddata) == 0); if (n == argc) run_all (); else while (n < argc) run_named (argv [n++]); xd_pool_final (); dds_typesupport_final (); str_pool_free (); return (0); }
int main(int argc, char *argv[]) { #ifdef _MSC_VER char buf[1024]; GetCurrentDirectory(1024, buf); sd_log_info("cwd is %s\n", buf); #endif if (argc > 1) { int i; for (i=1; i<argc; i++) { #define TEST_FOUND(topic, name) if (!strcmp(#topic "_" #name, argv[i]))\ {\ sd_log_info("running test %s_%s selected by cli arg.", #topic, #name); \ sd_test__ ## topic ## _ ## name(); \ } #include "test_list.h" #undef TEST_FOUND } } else run_all(); return sd_test_report(); }
/* Usage will ProjectEuler N, where N is the problem number to run */ int main(int argc, char *argv[]) { pe_data_t pedata ; int ProblemNumber = 0; if (argc != 2) { printf("Not enough arguments, or too many arguments.\n"); printf("Proper usage is: ./ProjectEuler #, where # is the problem number to run\n"); } else { // Configure parameters ProblemNumber = atoi(argv[1]); pedata.verbosity = 0 ; // change to > 0 for verbose outputs // Check and run solution if ( ProblemNumber == 0) run_all(&pedata); else if (ProblemNumber <= NUM_PROBLEMS) run_solution(&pedata,ProblemNumber); else printf("Problem #%03d not found.\n", ProblemNumber); } return 0; }
// run the command or send it to the right nodes char *route_command(struct nli *nli, int who, char *rmt, char *cmd, char *buf, char *uq) { char *r = NULL; switch (who) { // run local case 0: r = run_local(nli, cmd); break; // run on specified remote case 1: r = run_remote(rmt, buf, cmd, uq); break; // run on all case 2: r = run_all(nli, cmd, buf, uq); if (check_if_trace(cmd)) { char *tmp = NULL; tmp = str_replace("\n|", "\n ", r); if (r) free(r); r = tmp; } break; } return r; }
int main(int argc, char* argv[]) { int total; init_K(G_maxargs); G_callvm = (DCCallVM*) dcNewCallVM(4096); total = run_all(); printf("result: call_suite: %d\n", total); return 0; }
static void balloon_all(const Scope& scope) { auto wq = workqueue_foreach<DexMethod*>(mt_balloon); walk::methods(scope, [&](DexMethod* m) { if (m->get_dex_code()) { wq.add_item(m); } }); wq.run_all(); }
void run_gnuplot (int argc, char *argv[]) { char *plot_filename; char *data_filename; FILE *fp; int i; plot_filename = (char *) (*__gmp_allocate_func) (strlen (option_gnuplot_basename) + 20); data_filename = (char *) (*__gmp_allocate_func) (strlen (option_gnuplot_basename) + 20); sprintf (plot_filename, "%s.gnuplot", option_gnuplot_basename); sprintf (data_filename, "%s.data", option_gnuplot_basename); fp = fopen_for_write (plot_filename); fprintf (fp, "# Generated with:\n"); fprintf (fp, "#"); for (i = 0; i < argc; i++) fprintf (fp, " %s", argv[i]); fprintf (fp, "\n"); fprintf (fp, "\n"); fprintf (fp, "reset\n"); /* Putting the key at the top left is usually good, and you can change it interactively if it's not. */ fprintf (fp, "set key left\n"); /* designed to make it possible to see crossovers easily */ fprintf (fp, "set data style lines\n"); fprintf (fp, "plot "); for (i = 0; i < num_choices; i++) { fprintf (fp, " \"%s\" using 1:%d", data_filename, i+2); fprintf (fp, " title \"%s\"", choice[i].name); if (i != num_choices-1) fprintf (fp, ", \\"); fprintf (fp, "\n"); } fprintf (fp, "load \"-\"\n"); fclose_written (fp, plot_filename); fp = fopen_for_write (data_filename); /* Unbuffered so you can see where the program was up to if it crashes or you kill it. */ setbuf (fp, NULL); run_all (fp); fclose_written (fp, data_filename); }
int main (void) { // g_mem_set_vtable(glib_mem_profiler_table); // g_atexit(g_mem_profile); g_type_init (); ifnet_destroy (); wpa_parser_destroy (); ifnet_init ("net"); wpa_parser_init ("wpa_supplicant.conf"); printf ("Initialization complete\n"); run_all (TRUE); ifnet_destroy (); wpa_parser_destroy (); return 0; }
int main(int argc, char **argv) { verbose = getenv("LIBCBIO_TESTS_VERBOSE") ? 1 : 0; core = getenv("LIBCBIO_TESTS_COREDUMP") ? 1 : 0; ++verbose; if (argc == 1) { run_single(get_testcase(argv[0])); } else { run_all(); } /* Not reached */ return 0; }
int main(int argc, char* argv[]) { int total; dcTest_initPlatform(); init_K(G_maxargs); G_callvm = (DCCallVM*) dcNewCallVM(4096); dcReset(G_callvm); total = run_all(); printf("result: call_suite: %d\n", total); dcTest_deInitPlatform(); return 0; }
DexClasses DexLoader::load_dex(const char* location, dex_stats_t* stats) { m_file.open(location, boost::iostreams::mapped_file::readonly); if (!m_file.is_open()) { fprintf(stderr, "error: cannot create memory-mapped file: %s\n", location); exit(EXIT_FAILURE); } auto dh = reinterpret_cast<const dex_header*>(m_file.const_data()); validate_dex_header(dh, m_file.size()); if (dh->class_defs_size == 0) { return DexClasses(0); } m_idx = new DexIdx(dh); auto off = (uint64_t)dh->class_defs_off; auto limit = off + dh->class_defs_size * sizeof(dex_class_def); always_assert_log(off < m_file.size(), "class_defs_off out of range"); always_assert_log(limit <= m_file.size(), "invalid class_defs_size"); m_class_defs = reinterpret_cast<const dex_class_def*>(m_file.const_data() + off); DexClasses classes(dh->class_defs_size); m_classes = &classes; auto lwork = new class_load_work[dh->class_defs_size]; auto wq = workqueue_mapreduce<class_load_work*, std::vector<std::exception_ptr>>( class_work, exc_reducer); for (uint32_t i = 0; i < dh->class_defs_size; i++) { lwork[i].dl = this; lwork[i].num = i; wq.add_item(&lwork[i]); } const auto exceptions = wq.run_all(); delete[] lwork; if (!exceptions.empty()) { // At least one of the workers raised an exception aggregate_exception ae(exceptions); throw ae; } gather_input_stats(stats, dh); return classes; }
int main (int argc, char *argv[]) { int i; int opt; /* Unbuffered so output goes straight out when directed to a pipe or file and isn't lost on killing the program half way. */ setbuf (stdout, NULL); for (;;) { #if _GNU_SOURCE opt = getopt(argc, argv, "a:CcDd::EFf:o:p:P:r::Rs:t:ux:y:w:W:z"); #else opt = getopt(argc, argv, "a:CcDd:EFf:o:p:P:r:Rs:t:ux:y:w:W:z"); #endif if (opt == EOF) break; switch (opt) { case 'a': if (strcmp (optarg, "random") == 0) option_data = DATA_RANDOM; else if (strcmp (optarg, "random2") == 0) option_data = DATA_RANDOM2; else if (strcmp (optarg, "zeros") == 0) option_data = DATA_ZEROS; else if (strcmp (optarg, "aas") == 0) option_data = DATA_AAS; else if (strcmp (optarg, "ffs") == 0) option_data = DATA_FFS; else if (strcmp (optarg, "2fd") == 0) option_data = DATA_2FD; else { fprintf (stderr, "unrecognised data option: %s\n", optarg); exit (1); } break; case 'C': if (option_unit != UNIT_SECONDS) goto bad_unit; option_unit = UNIT_CYCLESPERLIMB; break; case 'c': if (option_unit != UNIT_SECONDS) { bad_unit: fprintf (stderr, "cannot use more than one of -c, -C\n"); exit (1); } option_unit = UNIT_CYCLES; break; case 'D': if (option_cmp != CMP_ABSOLUTE) goto bad_cmp; option_cmp = CMP_DIFFPREV; break; case 'd': if (option_cmp != CMP_ABSOLUTE) { bad_cmp: fprintf (stderr, "cannot use more than one of -d, -D, -r\n"); exit (1); } option_cmp = CMP_DIFFERENCE; option_cmp_pos=0; if(optarg!=0)option_cmp_pos=atoi(optarg)-1; break; case 'E': option_square = 1; break; case 'F': option_square = 2; break; case 'f': option_factor = atof (optarg); if (option_factor <= 1.0) { fprintf (stderr, "-f factor must be > 1.0\n"); exit (1); } break; case 'o': speed_option_set (optarg); break; case 'P': option_gnuplot = 1; option_gnuplot_basename = optarg; break; case 'p': speed_precision = atoi (optarg); break; case 'R': option_seed = time (NULL); break; case 'r': if (option_cmp != CMP_ABSOLUTE) goto bad_cmp; option_cmp = CMP_RATIO; option_cmp_pos=0; if(optarg!=0)option_cmp_pos = atoi(optarg)-1; break; case 's': { char *s; for (s = strtok (optarg, ","); s != NULL; s = strtok (NULL, ",")) { if (size_num == size_allocnum) { size_array = (struct size_array_t *) __gmp_allocate_or_reallocate (size_array, size_allocnum * sizeof(size_array[0]), (size_allocnum+10) * sizeof(size_array[0])); size_allocnum += 10; } size_array[size_num].inc = 0; if (sscanf (s, "%ld(%ld)%ld", &size_array[size_num].start, &size_array[size_num].inc, &size_array[size_num].end) != 3) { if (sscanf (s, "%ld-%ld", &size_array[size_num].start, &size_array[size_num].end) != 2) { size_array[size_num].start = size_array[size_num].end = atol (s); } } if (size_array[size_num].start < 0 || size_array[size_num].end < 0 || size_array[size_num].start > size_array[size_num].end) { fprintf (stderr, "invalid size parameter: %s\n", s); exit (1); } size_num++; } } break; case 't': option_step = atol (optarg); if (option_step < 1) { fprintf (stderr, "-t step must be >= 1\n"); exit (1); } break; case 'u': option_resource_usage = 1; break; case 'z': sp.cache = 1; break; case 'x': sp.align_xp = atol (optarg); check_align_option ("-x", sp.align_xp); break; case 'y': sp.align_yp = atol (optarg); check_align_option ("-y", sp.align_yp); break; case 'w': sp.align_wp = atol (optarg); check_align_option ("-w", sp.align_wp); break; case 'W': sp.align_wp2 = atol (optarg); check_align_option ("-W", sp.align_wp2); break; case '?': exit(1); } } if (optind >= argc) { usage (); exit (1); } if (size_num == 0) { fprintf (stderr, "-s <size> must be specified\n"); exit (1); } gmp_randinit_default (__gmp_rands); __gmp_rands_initialized = 1; gmp_randseed_ui (__gmp_rands, option_seed); choice = (struct choice_t *) (*__gmp_allocate_func) ((argc - optind) * sizeof(choice[0])); for ( ; optind < argc; optind++) { struct choice_t c; routine_find (&c, argv[optind]); choice[num_choices] = c; num_choices++; } if ((option_cmp == CMP_RATIO || option_cmp == CMP_DIFFERENCE) && num_choices < 2) { fprintf (stderr, "WARNING, -d or -r does nothing when only one routine requested\n"); } speed_time_init (); if (option_unit == UNIT_CYCLES || option_unit == UNIT_CYCLESPERLIMB) speed_cycletime_need_cycles (); else speed_cycletime_need_seconds (); if (option_gnuplot) { run_gnuplot (argc, argv); } else { if (option_unit == UNIT_SECONDS) printf ("overhead %.9f secs", speed_measure (speed_noop, NULL)); else printf ("overhead %.2f cycles", speed_measure (speed_noop, NULL) / speed_cycletime); printf (", precision %d units of %.2e secs", speed_precision, speed_unittime); if (speed_cycletime == 1.0 || speed_cycletime == 0.0) printf (", CPU freq unknown\n"); else printf (", CPU freq %.2f MHz\n", 1e-6/speed_cycletime); printf (" "); for (i = 0; i < num_choices; i++) printf (" %*s", COLUMN_WIDTH, choice[i].name); printf ("\n"); run_all (stdout); } if (option_resource_usage) { #if HAVE_GETRUSAGE { /* This doesn't give data sizes on linux 2.0.x, only utime. */ struct rusage r; if (getrusage (RUSAGE_SELF, &r) != 0) perror ("getrusage"); else printf ("getrusage(): utime %ld.%06ld data %ld stack %ld maxresident %ld\n", r.ru_utime.tv_sec, r.ru_utime.tv_usec, r.ru_idrss, r.ru_isrss, r.ru_ixrss); } #else printf ("getrusage() not available\n"); #endif /* Linux kernel. */ { char buf[128]; sprintf (buf, "/proc/%d/status", getpid()); if (access (buf, R_OK) == 0) { sprintf (buf, "cat /proc/%d/status", getpid()); system (buf); } } } return 0; }
int main() { int natm = 60; int nbas = natm*20; // ATM_SLOTS = 6; BAS_SLOTS = 8; int *atm = malloc(sizeof(int) * natm * ATM_SLOTS); int *bas = malloc(sizeof(int) * nbas * BAS_SLOTS); double *env = malloc(sizeof(double) * 10000); int i, n, off; off = PTR_ENV_START; // = 20 atm(CHARGE_OF, 0)=6; atm(PTR_COORD, 0)=off; env[off+0]=-0.779; env[off+1]= 0.757; env[off+2]= 0.000; off+=3; atm(CHARGE_OF, 1)=6; atm(PTR_COORD, 1)=off; env[off+0]= 0.684; env[off+1]= 0.757; env[off+2]= 0.000; off+=3; atm(CHARGE_OF, 2)=6; atm(PTR_COORD, 2)=off; env[off+0]= 1.376; env[off+1]= 1.956; env[off+2]= 0.000; off+=3; atm(CHARGE_OF, 3)=6; atm(PTR_COORD, 3)=off; env[off+0]= 0.644; env[off+1]= 3.224; env[off+2]=-0.000; off+=3; atm(CHARGE_OF, 4)=6; atm(PTR_COORD, 4)=off; env[off+0]=-0.739; env[off+1]= 3.224; env[off+2]= 0.000; off+=3; atm(CHARGE_OF, 5)=6; atm(PTR_COORD, 5)=off; env[off+0]=-1.471; env[off+1]= 1.956; env[off+2]= 0.000; off+=3; atm(CHARGE_OF, 6)=6; atm(PTR_COORD, 6)=off; env[off+0]=-1.231; env[off+1]=-0.348; env[off+2]=-0.845; off+=3; atm(CHARGE_OF, 7)=6; atm(PTR_COORD, 7)=off; env[off+0]=-0.047; env[off+1]=-1.032; env[off+2]=-1.367; off+=3; atm(CHARGE_OF, 8)=6; atm(PTR_COORD, 8)=off; env[off+0]= 1.137; env[off+1]=-0.348; env[off+2]=-0.845; off+=3; atm(CHARGE_OF, 9)=6; atm(PTR_COORD, 9)=off; env[off+0]= 2.257; env[off+1]=-0.196; env[off+2]=-1.644; off+=3; atm(CHARGE_OF,10)=6; atm(PTR_COORD,10)=off; env[off+0]= 2.561; env[off+1]= 2.118; env[off+2]=-0.845; off+=3; atm(CHARGE_OF,11)=6; atm(PTR_COORD,11)=off; env[off+0]= 1.376; env[off+1]= 4.169; env[off+2]=-0.845; off+=3; atm(CHARGE_OF,12)=6; atm(PTR_COORD,12)=off; env[off+0]= 0.684; env[off+1]= 5.063; env[off+2]=-1.644; off+=3; atm(CHARGE_OF,13)=6; atm(PTR_COORD,13)=off; env[off+0]=-0.779; env[off+1]= 5.063; env[off+2]=-1.644; off+=3; atm(CHARGE_OF,14)=6; atm(PTR_COORD,14)=off; env[off+0]=-1.471; env[off+1]= 4.169; env[off+2]=-0.845; off+=3; atm(CHARGE_OF,15)=6; atm(PTR_COORD,15)=off; env[off+0]=-2.656; env[off+1]= 3.485; env[off+2]=-1.367; off+=3; atm(CHARGE_OF,16)=6; atm(PTR_COORD,16)=off; env[off+0]=-2.655; env[off+1]= 2.118; env[off+2]=-0.845; off+=3; atm(CHARGE_OF,17)=6; atm(PTR_COORD,17)=off; env[off+0]=-3.083; env[off+1]= 1.071; env[off+2]=-1.644; off+=3; atm(CHARGE_OF,18)=6; atm(PTR_COORD,18)=off; env[off+0]=-2.351; env[off+1]=-0.196; env[off+2]=-1.644; off+=3; atm(CHARGE_OF,19)=6; atm(PTR_COORD,19)=off; env[off+0]=-0.047; env[off+1]=-1.526; env[off+2]=-2.661; off+=3; atm(CHARGE_OF,20)=6; atm(PTR_COORD,20)=off; env[off+0]=-1.231; env[off+1]=-1.365; env[off+2]=-3.506; off+=3; atm(CHARGE_OF,21)=6; atm(PTR_COORD,21)=off; env[off+0]=-2.351; env[off+1]=-0.718; env[off+2]=-3.012; off+=3; atm(CHARGE_OF,22)=6; atm(PTR_COORD,22)=off; env[off+0]=-3.083; env[off+1]= 0.226; env[off+2]=-3.857; off+=3; atm(CHARGE_OF,23)=6; atm(PTR_COORD,23)=off; env[off+0]=-3.536; env[off+1]= 1.332; env[off+2]=-3.012; off+=3; atm(CHARGE_OF,24)=6; atm(PTR_COORD,24)=off; env[off+0]=-3.536; env[off+1]= 2.626; env[off+2]=-3.506; off+=3; atm(CHARGE_OF,25)=6; atm(PTR_COORD,25)=off; env[off+0]=-3.083; env[off+1]= 3.732; env[off+2]=-2.660; off+=3; atm(CHARGE_OF,26)=6; atm(PTR_COORD,26)=off; env[off+0]=-2.352; env[off+1]= 4.677; env[off+2]=-3.506; off+=3; atm(CHARGE_OF,27)=6; atm(PTR_COORD,27)=off; env[off+0]=-1.231; env[off+1]= 5.324; env[off+2]=-3.012; off+=3; atm(CHARGE_OF,28)=6; atm(PTR_COORD,28)=off; env[off+0]= 2.561; env[off+1]= 3.485; env[off+2]=-1.367; off+=3; atm(CHARGE_OF,29)=6; atm(PTR_COORD,29)=off; env[off+0]= 1.136; env[off+1]= 4.307; env[off+2]=-5.673; off+=3; atm(CHARGE_OF,30)=6; atm(PTR_COORD,30)=off; env[off+0]= 2.256; env[off+1]= 4.155; env[off+2]=-4.873; off+=3; atm(CHARGE_OF,31)=6; atm(PTR_COORD,31)=off; env[off+0]= 2.988; env[off+1]= 2.887; env[off+2]=-4.873; off+=3; atm(CHARGE_OF,32)=6; atm(PTR_COORD,32)=off; env[off+0]= 2.561; env[off+1]= 1.841; env[off+2]=-5.673; off+=3; atm(CHARGE_OF,33)=6; atm(PTR_COORD,33)=off; env[off+0]= 1.376; env[off+1]= 2.002; env[off+2]=-6.518; off+=3; atm(CHARGE_OF,34)=6; atm(PTR_COORD,34)=off; env[off+0]=-0.779; env[off+1]= 3.201; env[off+2]=-6.518; off+=3; atm(CHARGE_OF,35)=6; atm(PTR_COORD,35)=off; env[off+0]=-1.231; env[off+1]= 4.307; env[off+2]=-5.673; off+=3; atm(CHARGE_OF,36)=6; atm(PTR_COORD,36)=off; env[off+0]=-0.047; env[off+1]= 4.991; env[off+2]=-5.150; off+=3; atm(CHARGE_OF,37)=6; atm(PTR_COORD,37)=off; env[off+0]=-0.047; env[off+1]= 5.485; env[off+2]=-3.857; off+=3; atm(CHARGE_OF,38)=6; atm(PTR_COORD,38)=off; env[off+0]= 1.136; env[off+1]= 5.324; env[off+2]=-3.012; off+=3; atm(CHARGE_OF,39)=6; atm(PTR_COORD,39)=off; env[off+0]= 2.257; env[off+1]= 4.677; env[off+2]=-3.506; off+=3; atm(CHARGE_OF,40)=6; atm(PTR_COORD,40)=off; env[off+0]= 3.441; env[off+1]= 2.626; env[off+2]=-3.506; off+=3; atm(CHARGE_OF,41)=6; atm(PTR_COORD,41)=off; env[off+0]= 3.441; env[off+1]= 1.332; env[off+2]=-3.012; off+=3; atm(CHARGE_OF,42)=6; atm(PTR_COORD,42)=off; env[off+0]= 2.989; env[off+1]= 0.226; env[off+2]=-3.857; off+=3; atm(CHARGE_OF,43)=6; atm(PTR_COORD,43)=off; env[off+0]= 2.561; env[off+1]= 0.473; env[off+2]=-5.150; off+=3; atm(CHARGE_OF,44)=6; atm(PTR_COORD,44)=off; env[off+0]= 1.376; env[off+1]=-0.210; env[off+2]=-5.673; off+=3; atm(CHARGE_OF,45)=6; atm(PTR_COORD,45)=off; env[off+0]= 0.644; env[off+1]= 0.734; env[off+2]=-6.518; off+=3; atm(CHARGE_OF,46)=6; atm(PTR_COORD,46)=off; env[off+0]=-0.739; env[off+1]= 0.734; env[off+2]=-6.518; off+=3; atm(CHARGE_OF,47)=6; atm(PTR_COORD,47)=off; env[off+0]=-1.471; env[off+1]= 2.002; env[off+2]=-6.518; off+=3; atm(CHARGE_OF,48)=6; atm(PTR_COORD,48)=off; env[off+0]=-2.352; env[off+1]= 4.155; env[off+2]=-4.873; off+=3; atm(CHARGE_OF,49)=6; atm(PTR_COORD,49)=off; env[off+0]=-3.084; env[off+1]= 2.887; env[off+2]=-4.873; off+=3; atm(CHARGE_OF,50)=6; atm(PTR_COORD,50)=off; env[off+0]=-2.656; env[off+1]= 1.840; env[off+2]=-5.673; off+=3; atm(CHARGE_OF,51)=6; atm(PTR_COORD,51)=off; env[off+0]=-2.656; env[off+1]= 0.473; env[off+2]=-5.150; off+=3; atm(CHARGE_OF,52)=6; atm(PTR_COORD,52)=off; env[off+0]=-1.471; env[off+1]=-0.210; env[off+2]=-5.673; off+=3; atm(CHARGE_OF,53)=6; atm(PTR_COORD,53)=off; env[off+0]=-0.779; env[off+1]=-1.104; env[off+2]=-4.873; off+=3; atm(CHARGE_OF,54)=6; atm(PTR_COORD,54)=off; env[off+0]= 0.684; env[off+1]=-1.104; env[off+2]=-4.873; off+=3; atm(CHARGE_OF,55)=6; atm(PTR_COORD,55)=off; env[off+0]= 1.136; env[off+1]=-1.365; env[off+2]=-3.506; off+=3; atm(CHARGE_OF,56)=6; atm(PTR_COORD,56)=off; env[off+0]= 2.257; env[off+1]=-0.718; env[off+2]=-3.012; off+=3; atm(CHARGE_OF,57)=6; atm(PTR_COORD,57)=off; env[off+0]= 2.988; env[off+1]= 3.732; env[off+2]=-2.661; off+=3; atm(CHARGE_OF,58)=6; atm(PTR_COORD,58)=off; env[off+0]= 2.989; env[off+1]= 1.071; env[off+2]=-1.644; off+=3; atm(CHARGE_OF,59)=6; atm(PTR_COORD,59)=off; env[off+0]= 0.684; env[off+1]= 3.201; env[off+2]=-6.518; off+=3; // cc-pVDZ env[off+ 0] = 6665.0; // s env[off+ 1] = 1000.0; env[off+ 2] = 228.00; env[off+ 3] = 64.710; env[off+ 4] = 21.060; env[off+ 5] = 7.4950; env[off+ 6] = 2.7970; env[off+ 7] = 0.5215; env[off+ 8] = 0.000692*CINTgto_norm(0,env[off+0]); env[off+16] =-0.000146*CINTgto_norm(0,env[off+0]); env[off+ 9] = 0.005329*CINTgto_norm(0,env[off+1]); env[off+17] =-0.001154*CINTgto_norm(0,env[off+1]); env[off+10] = 0.027077*CINTgto_norm(0,env[off+2]); env[off+18] =-0.005725*CINTgto_norm(0,env[off+2]); env[off+11] = 0.101718*CINTgto_norm(0,env[off+3]); env[off+19] =-0.023312*CINTgto_norm(0,env[off+3]); env[off+12] = 0.274740*CINTgto_norm(0,env[off+4]); env[off+20] =-0.063955*CINTgto_norm(0,env[off+4]); env[off+13] = 0.448564*CINTgto_norm(0,env[off+5]); env[off+21] =-0.149981*CINTgto_norm(0,env[off+5]); env[off+14] = 0.285074*CINTgto_norm(0,env[off+6]); env[off+22] =-0.127262*CINTgto_norm(0,env[off+6]); env[off+15] = 0.015204*CINTgto_norm(0,env[off+7]); env[off+23] = 0.544529*CINTgto_norm(0,env[off+7]); env[off+24] = 0.1596; // s env[off+25] = 1*CINTgto_norm(0,env[off+24]); env[off+26] = 9.4390; // p env[off+27] = 2.0020; env[off+28] = 0.5456; env[off+29] = 0.038109*CINTgto_norm(1,env[off+26]); env[off+30] = 0.209480*CINTgto_norm(1,env[off+27]); env[off+31] = 0.508557*CINTgto_norm(1,env[off+28]); env[off+32] = 0.1517; // p env[off+33] = 1*CINTgto_norm(1,env[off+32]); env[off+34] = 0.55; // d env[off+35] = 1*CINTgto_norm(2,env[off+34]); for (i = 0, n = 0; i < natm; i++) { bas[ATOM_OF +BAS_SLOTS*n] = i; bas[ANG_OF +BAS_SLOTS*n] = 0; bas[NPRIM_OF +BAS_SLOTS*n] = 8; bas[NCTR_OF +BAS_SLOTS*n] = 2; bas[PTR_EXP +BAS_SLOTS*n] = off+0; bas[PTR_COEFF+BAS_SLOTS*n] = off+8; n++; bas[ATOM_OF +BAS_SLOTS*n] = i; bas[ANG_OF +BAS_SLOTS*n] = 0; bas[NPRIM_OF +BAS_SLOTS*n] = 1; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+24; bas[PTR_COEFF+BAS_SLOTS*n] = off+25; n++; bas[ATOM_OF +BAS_SLOTS*n] = i; bas[ANG_OF +BAS_SLOTS*n] = 1; bas[NPRIM_OF +BAS_SLOTS*n] = 3; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+26; bas[PTR_COEFF+BAS_SLOTS*n] = off+29; n++; bas[ATOM_OF +BAS_SLOTS*n] = i; bas[ANG_OF +BAS_SLOTS*n] = 1; bas[NPRIM_OF +BAS_SLOTS*n] = 1; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+32; bas[PTR_COEFF+BAS_SLOTS*n] = off+33; n++; bas[ATOM_OF +BAS_SLOTS*n] = i; bas[ANG_OF +BAS_SLOTS*n] = 2; bas[NPRIM_OF +BAS_SLOTS*n] = 1; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+34; bas[PTR_COEFF+BAS_SLOTS*n] = off+35; n++; } nbas = n; run_all(atm, natm, bas, nbas, env); // 6478s on one core of 3.1G I5 CPU free(atm); free(bas); free(env); }
void runner::run_single_filter(const std::string& filter) { std::istringstream sstream(filter); std::string testcase_name; std::string benchmark_name; std::getline(sstream, testcase_name, '.'); if (!sstream) throw std::runtime_error("Error malformed gauge_filter" " (example MyTest.*)"); std::getline(sstream, benchmark_name); if (!sstream) { throw std::runtime_error("Error malformed gauge_filter" " (example MyTest.*)"); } // Evaluate all possible filter combinations if (testcase_name == "*" && benchmark_name == "*") { run_all(); } else if (testcase_name == "*") { // The benchmark must be run for each of the testcases for which // it belongs. If the requested benchmark is not found, throw an // error bool benchmark_found = false; for (const auto& testcase : m_impl->m_testcases) { for (const auto& b : testcase.second) { if (benchmark_name == b.first) { uint32_t id = b.second; assert(m_impl->m_benchmarks.find(id) != m_impl->m_benchmarks.end()); auto& make = m_impl->m_benchmarks[id]; auto benchmark = make(); run_benchmark_configurations(benchmark); benchmark_found = true; } } } if (!benchmark_found) { throw std::runtime_error("Error benchmark not found"); } } else if (benchmark_name == "*") { // All the benchmarks from a testcase must be run. If the requested // testcase is not found, throw an error if (m_impl->m_testcases.find(testcase_name) == m_impl->m_testcases.end()) { throw std::runtime_error("Error testcase not found"); } auto& benchmarks = m_impl->m_testcases[testcase_name]; for (auto& b : benchmarks) { uint32_t id = b.second; assert(m_impl->m_benchmarks.find(id) != m_impl->m_benchmarks.end()); auto& make = m_impl->m_benchmarks[id]; auto benchmark = make(); run_benchmark_configurations(benchmark); } } else { // Run the specific testcase_name.benchmark_name pair if (m_impl->m_testcases.find(testcase_name) == m_impl->m_testcases.end()) { throw std::runtime_error("Error testcase not found"); } auto& benchmarks = m_impl->m_testcases[testcase_name]; if (benchmarks.find(benchmark_name) == benchmarks.end()) { throw std::runtime_error("Error benchmark not found"); } uint32_t id = benchmarks.find(benchmark_name)->second; assert(m_impl->m_benchmarks.find(id) != m_impl->m_benchmarks.end()); auto& make = m_impl->m_benchmarks[id]; auto benchmark = make(); run_benchmark_configurations(benchmark); } }
void runner::run_unsafe(int argc, const char* argv[]) { assert(m_impl); po::options_description options("Gauge"); options.add_options() ("help", "produce help message") ("print_tests", "print testcases") ("print_benchmarks", "print benchmarks") ("result_filter", po::value<std::vector<std::string> >()->multitoken(), "Filter which results should be stored " "for example ./benchmark --result_filter=time multiple filters " "can be a comma separated list of filters e.g. " "--result_filter=time throughput") ("gauge_filter", po::value<std::vector<std::string> >()->multitoken(), "Filter which test-cases or benchmarks to run based on their name " "for example ./benchmark --gauge_filter=MyTest.* or " "--gauge_filter=*.MyBenchmark or even --gauge_filter=*.* " "Multiple filters can also be specified e.g. " "--gauge_filter=MyTest.one MyTest.two") ("runs", po::value<uint32_t>(), "Sets the number of runs to complete. Overrides the " "settings specified in the benchmark ex. --runs=50") ("add_column", po::value<std::vector<std::string> >()->multitoken(), "Add a column to the test results, this can be use to " "add custom information to the result files " "./benchmark --add_column cpu=i7 " "\"date=Monday 1st June 2021\"") ("dry_run", "Initializes the benchmark without running it. This is useful to " "check whether the right command-line arguments have been passed " "to the benchmark executable."); options.add(m_impl->m_options_description); po::variables_map vm; po::store(po::parse_command_line(argc, argv, options), vm); po::notify(vm); m_impl->m_options = vm; if (m_impl->m_options.count("help")) { std::cout << options << std::endl; return; } if (m_impl->m_options.count("print_tests")) { for (const auto& testcase : m_impl->m_testcases) { std::cout << testcase.first << " "; } std::cout << std::endl; return; } if (m_impl->m_options.count("print_benchmarks")) { for (const auto& testcase : m_impl->m_testcases) { for (const auto& benchmark : testcase.second) { std::cout << testcase.first << "." << benchmark.first << std::endl; } } return; } if (m_impl->m_options.count("add_column")) { auto v = m_impl->m_options["add_column"].as< std::vector<std::string> >(); for (const auto& s : v) { parse_add_column(s); } } // Deliver possible options to printers and start them for (auto& printer: m_impl->m_printers) { printer->set_options(m_impl->m_options); } // Notify all printers that we are starting for (auto& printer: enabled_printers()) { printer->start(); } // Check whether we should run all tests or whether we // should use a filter if (m_impl->m_options.count("gauge_filter")) { auto f = m_impl->m_options["gauge_filter"] .as<std::vector<std::string>>(); run_all_filters(f); } else { run_all(); } // Notify all printers that we are done for (auto& printer: enabled_printers()) { printer->end(); } }
void out_ () { std_str = run_all(); }
int main() { int natm = 8; int nbas = natm*20; // ATM_SLOTS = 6; BAS_SLOTS = 8; int *atm = malloc(sizeof(int) * natm * ATM_SLOTS); int *bas = malloc(sizeof(int) * nbas * BAS_SLOTS); double *env = malloc(sizeof(double) * 10000); int i, j, ia, n, off; off = PTR_ENV_START; // = 20 atm(CHARGE_OF,0)=6; atm(PTR_COORD,0)=off; env[off+0]= 0.000; env[off+1]= 0.000; env[off+2]= 0.769; off+=3; atm(CHARGE_OF,1)=1; atm(PTR_COORD,1)=off; env[off+0]= 0.000; env[off+1]= 1.014; env[off+2]= 1.174; off+=3; atm(CHARGE_OF,2)=1; atm(PTR_COORD,2)=off; env[off+0]=-0.878; env[off+1]=-0.507; env[off+2]= 1.174; off+=3; atm(CHARGE_OF,3)=1; atm(PTR_COORD,3)=off; env[off+0]= 0.878; env[off+1]=-0.507; env[off+2]= 1.174; off+=3; atm(CHARGE_OF,4)=6; atm(PTR_COORD,4)=off; env[off+0]= 0.000; env[off+1]= 0.000; env[off+2]=-0.769; off+=3; atm(CHARGE_OF,5)=1; atm(PTR_COORD,5)=off; env[off+0]= 0.000; env[off+1]= 1.014; env[off+2]=-1.174; off+=3; atm(CHARGE_OF,6)=1; atm(PTR_COORD,6)=off; env[off+0]=-0.878; env[off+1]=-0.507; env[off+2]=-1.174; off+=3; atm(CHARGE_OF,7)=1; atm(PTR_COORD,7)=off; env[off+0]= 0.878; env[off+1]=-0.507; env[off+2]=-1.174; off+=3; // 6-31G env[off+0 ] = 3047.5249; env[off+6 ] = 0.0018347*CINTgto_norm(0,env[off+0 ]); env[off+1 ] = 457.36951; env[off+7 ] = 0.0140373*CINTgto_norm(0,env[off+1 ]); env[off+2 ] = 103.94869; env[off+8 ] = 0.0688426*CINTgto_norm(0,env[off+2 ]); env[off+3 ] = 29.210155; env[off+9 ] = 0.2321844*CINTgto_norm(0,env[off+3 ]); env[off+4 ] = 9.2866630; env[off+10] = 0.4679413*CINTgto_norm(0,env[off+4 ]); env[off+5 ] = 3.1639270; env[off+11] = 0.3623120*CINTgto_norm(0,env[off+5 ]); env[off+12] = 7.8682724; env[off+15] =-0.1193324*CINTgto_norm(0,env[off+12]); env[off+13] = 1.8812885; env[off+16] =-0.1608542*CINTgto_norm(0,env[off+13]); env[off+14] = 0.5442493; env[off+17] = 1.1434564*CINTgto_norm(0,env[off+14]); env[off+18] = 0.1687144; env[off+19] = 1.0000000*CINTgto_norm(0,env[off+18]); env[off+20] = 7.8682724; env[off+23] = 0.0689991*CINTgto_norm(1,env[off+20]); env[off+21] = 1.8812885; env[off+24] = 0.3164240*CINTgto_norm(1,env[off+21]); env[off+22] = 0.5442493; env[off+25] = 0.7443083*CINTgto_norm(1,env[off+22]); env[off+26] = 0.1687144; env[off+27] = 1.0000000*CINTgto_norm(1,env[off+26]); env[off+28] = 18.731137; env[off+31] = 0.0334946*CINTgto_norm(0,env[off+28]); env[off+29] = 2.8253937; env[off+32] = 0.2347269*CINTgto_norm(0,env[off+29]); env[off+30] = 0.6401217; env[off+33] = 0.8137573*CINTgto_norm(0,env[off+30]); env[off+34] = 0.1612778; env[off+35] = 1.0000000*CINTgto_norm(0,env[off+34]); for (i = 0, ia = 0, n = 0; i < 2; i++) { bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 0; bas[NPRIM_OF +BAS_SLOTS*n] = 6; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+0; bas[PTR_COEFF+BAS_SLOTS*n] = off+6; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 0; bas[NPRIM_OF +BAS_SLOTS*n] = 3; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+12; bas[PTR_COEFF+BAS_SLOTS*n] = off+15; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 0; bas[NPRIM_OF +BAS_SLOTS*n] = 1; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+18; bas[PTR_COEFF+BAS_SLOTS*n] = off+19; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 1; bas[NPRIM_OF +BAS_SLOTS*n] = 3; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+20; bas[PTR_COEFF+BAS_SLOTS*n] = off+23; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 1; bas[NPRIM_OF +BAS_SLOTS*n] = 1; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+26; bas[PTR_COEFF+BAS_SLOTS*n] = off+27; n++; ia++; for (j = 0; j < 3; j++) { bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 0; bas[NPRIM_OF +BAS_SLOTS*n] = 3; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+28; bas[PTR_COEFF+BAS_SLOTS*n] = off+31; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 0; bas[NPRIM_OF +BAS_SLOTS*n] = 1; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+34; bas[PTR_COEFF+BAS_SLOTS*n] = off+35; n++; ia++; } } nbas = n; printf("6-31G basis\n"); run_all(atm, natm, bas, nbas, env); // 6-311G** env[off+ 0] = 4563.240; env[off+17] = 0.0019666*CINTgto_norm(0,env[off+ 0]); env[off+ 1] = 682.0240; env[off+18] = 0.0152306*CINTgto_norm(0,env[off+ 1]); env[off+ 2] = 154.9730; env[off+19] = 0.0761269*CINTgto_norm(0,env[off+ 2]); env[off+ 3] = 44.45530; env[off+20] = 0.2608010*CINTgto_norm(0,env[off+ 3]); env[off+ 4] = 13.02900; env[off+21] = 0.6164620*CINTgto_norm(0,env[off+ 4]); env[off+ 5] = 1.827730; env[off+22] = 0.2210060*CINTgto_norm(0,env[off+ 5]); env[off+ 6] = 20.96420; env[off+23] = 0.1146600*CINTgto_norm(0,env[off+ 6]); env[off+ 7] = 4.803310; env[off+24] = 0.9199990*CINTgto_norm(0,env[off+ 7]); env[off+ 8] = 1.459330; env[off+25] = -0.003030*CINTgto_norm(0,env[off+ 8]); env[off+ 9] = 0.483456; env[off+26] = 1.0000000*CINTgto_norm(0,env[off+ 9]); env[off+10] = 0.145585; env[off+27] = 1.0000000*CINTgto_norm(0,env[off+10]); env[off+11] = 20.96420; env[off+28] = 0.0402487*CINTgto_norm(1,env[off+11]); env[off+12] = 4.803310; env[off+29] = 0.2375940*CINTgto_norm(1,env[off+12]); env[off+13] = 1.459330; env[off+30] = 0.8158540*CINTgto_norm(1,env[off+13]); env[off+14] = 0.483456; env[off+31] = 1.0000000*CINTgto_norm(1,env[off+14]); env[off+15] = 0.145585; env[off+32] = 1.0000000*CINTgto_norm(1,env[off+15]); env[off+16] = 0.626000; env[off+33] = 1.0000000*CINTgto_norm(2,env[off+16]); env[off+34] = 33.86500; env[off+40] = 0.0254938*CINTgto_norm(0,env[off+34]); env[off+35] = 5.094790; env[off+41] = 0.1903730*CINTgto_norm(0,env[off+35]); env[off+36] = 1.158790; env[off+42] = 0.8521610*CINTgto_norm(0,env[off+36]); env[off+37] = 0.325840; env[off+43] = 1.0000000*CINTgto_norm(0,env[off+37]); env[off+38] = 0.102741; env[off+44] = 1.0000000*CINTgto_norm(0,env[off+38]); env[off+39] = 0.750000; env[off+45] = 1.0000000*CINTgto_norm(0,env[off+39]); for (i = 0, ia = 0, n = 0; i < 2; i++) { bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 0; bas[NPRIM_OF +BAS_SLOTS*n] = 6; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+ 0; bas[PTR_COEFF+BAS_SLOTS*n] = off+17; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 0; bas[NPRIM_OF +BAS_SLOTS*n] = 3; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+ 6; bas[PTR_COEFF+BAS_SLOTS*n] = off+23; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 0; bas[NPRIM_OF +BAS_SLOTS*n] = 1; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+ 9; bas[PTR_COEFF+BAS_SLOTS*n] = off+26; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 0; bas[NPRIM_OF +BAS_SLOTS*n] = 1; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+10; bas[PTR_COEFF+BAS_SLOTS*n] = off+27; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 1; bas[NPRIM_OF +BAS_SLOTS*n] = 3; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+11; bas[PTR_COEFF+BAS_SLOTS*n] = off+28; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 1; bas[NPRIM_OF +BAS_SLOTS*n] = 1; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+14; bas[PTR_COEFF+BAS_SLOTS*n] = off+31; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 1; bas[NPRIM_OF +BAS_SLOTS*n] = 1; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+15; bas[PTR_COEFF+BAS_SLOTS*n] = off+32; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 2; bas[NPRIM_OF +BAS_SLOTS*n] = 1; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+16; bas[PTR_COEFF+BAS_SLOTS*n] = off+33; n++; ia++; for (j = 0; j < 3; j++) { bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 0; bas[NPRIM_OF +BAS_SLOTS*n] = 3; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+34; bas[PTR_COEFF+BAS_SLOTS*n] = off+40; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 0; bas[NPRIM_OF +BAS_SLOTS*n] = 1; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+37; bas[PTR_COEFF+BAS_SLOTS*n] = off+43; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 0; bas[NPRIM_OF +BAS_SLOTS*n] = 1; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+38; bas[PTR_COEFF+BAS_SLOTS*n] = off+44; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 1; bas[NPRIM_OF +BAS_SLOTS*n] = 1; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+39; bas[PTR_COEFF+BAS_SLOTS*n] = off+45; n++; ia++; } } nbas = n; printf("6-311G(dp) basis\n"); run_all(atm, natm, bas, nbas, env); // cc-pVDZ, C env[off+ 0] = 6665.0; env[off+ 8]=0.000692*CINTgto_norm(0,env[off+ 0]); env[off+16]=-0.000146*CINTgto_norm(0,env[off+0]); env[off+ 1] = 1000.0; env[off+ 9]=0.005329*CINTgto_norm(0,env[off+ 1]); env[off+17]=-0.001154*CINTgto_norm(0,env[off+1]); env[off+ 2] = 228.00; env[off+10]=0.027077*CINTgto_norm(0,env[off+ 2]); env[off+18]=-0.005725*CINTgto_norm(0,env[off+2]); env[off+ 3] = 64.710; env[off+11]=0.101718*CINTgto_norm(0,env[off+ 3]); env[off+19]=-0.023312*CINTgto_norm(0,env[off+3]); env[off+ 4] = 21.060; env[off+12]=0.274740*CINTgto_norm(0,env[off+ 4]); env[off+20]=-0.063955*CINTgto_norm(0,env[off+4]); env[off+ 5] = 7.4950; env[off+13]=0.448564*CINTgto_norm(0,env[off+ 5]); env[off+21]=-0.149981*CINTgto_norm(0,env[off+5]); env[off+ 6] = 2.7970; env[off+14]=0.285074*CINTgto_norm(0,env[off+ 6]); env[off+22]=-0.127262*CINTgto_norm(0,env[off+6]); env[off+ 7] = 0.5215; env[off+15]=0.015204*CINTgto_norm(0,env[off+ 7]); env[off+23]= 0.544529*CINTgto_norm(0,env[off+7]); env[off+24] = 0.1596; env[off+25]=1.000000*CINTgto_norm(0,env[off+24]); env[off+26] = 9.4390; env[off+29]=0.038109*CINTgto_norm(1,env[off+26]); env[off+27] = 2.0020; env[off+30]=0.209480*CINTgto_norm(1,env[off+27]); env[off+28] = 0.5456; env[off+31]=0.508557*CINTgto_norm(1,env[off+28]); env[off+32] = 0.1517; env[off+33]=1.000000*CINTgto_norm(1,env[off+32]); env[off+34] = 0.55 ; env[off+35]=1.000000*CINTgto_norm(2,env[off+34]); // H env[off+36] = 13.010; env[off+39]=0.019685*CINTgto_norm(0,env[off+36]); env[off+37] = 1.9620; env[off+40]=0.137977*CINTgto_norm(0,env[off+37]); env[off+38] = 0.4446; env[off+41]=0.478148*CINTgto_norm(0,env[off+38]); env[off+42] = 0.1220; env[off+43]=1 *CINTgto_norm(0,env[off+42]); env[off+44] = 0.7270; env[off+45]=1 *CINTgto_norm(0,env[off+44]); for (i = 0, ia = 0, n = 0; i < 2; i++) { bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 0; bas[NPRIM_OF +BAS_SLOTS*n] = 8; bas[NCTR_OF +BAS_SLOTS*n] = 2; bas[PTR_EXP +BAS_SLOTS*n] = off+0; bas[PTR_COEFF+BAS_SLOTS*n] = off+8; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 0; bas[NPRIM_OF +BAS_SLOTS*n] = 1; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+24; bas[PTR_COEFF+BAS_SLOTS*n] = off+25; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 1; bas[NPRIM_OF +BAS_SLOTS*n] = 3; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+26; bas[PTR_COEFF+BAS_SLOTS*n] = off+29; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 1; bas[NPRIM_OF +BAS_SLOTS*n] = 1; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+32; bas[PTR_COEFF+BAS_SLOTS*n] = off+33; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 2; bas[NPRIM_OF +BAS_SLOTS*n] = 1; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+34; bas[PTR_COEFF+BAS_SLOTS*n] = off+35; n++; ia++; for (j = 0; j < 3; j++) { bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 0; bas[NPRIM_OF +BAS_SLOTS*n] = 3; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+36; bas[PTR_COEFF+BAS_SLOTS*n] = off+39; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 0; bas[NPRIM_OF +BAS_SLOTS*n] = 1; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+42; bas[PTR_COEFF+BAS_SLOTS*n] = off+43; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 1; bas[NPRIM_OF +BAS_SLOTS*n] = 1; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+44; bas[PTR_COEFF+BAS_SLOTS*n] = off+45; n++; ia++; } } nbas = n; printf("cc-pVDZ basis\n"); run_all(atm, natm, bas, nbas, env); // cc-pVTZ env[off+ 0] = 8236.0; env[off+18]= 0.000531*CINTgto_norm(0,env[off+ 0]); env[off+26]=-0.000113*CINTgto_norm(0,env[off+ 0]); env[off+ 1] = 1235.0; env[off+19]= 0.004108*CINTgto_norm(0,env[off+ 1]); env[off+27]=-0.000878*CINTgto_norm(0,env[off+ 1]); env[off+ 2] = 280.80; env[off+20]= 0.021087*CINTgto_norm(0,env[off+ 2]); env[off+28]=-0.004540*CINTgto_norm(0,env[off+ 2]); env[off+ 3] = 79.270; env[off+21]= 0.081853*CINTgto_norm(0,env[off+ 3]); env[off+29]=-0.018133*CINTgto_norm(0,env[off+ 3]); env[off+ 4] = 25.590; env[off+22]= 0.234817*CINTgto_norm(0,env[off+ 4]); env[off+30]=-0.055760*CINTgto_norm(0,env[off+ 4]); env[off+ 5] = 8.9970; env[off+23]= 0.434401*CINTgto_norm(0,env[off+ 5]); env[off+31]=-0.126895*CINTgto_norm(0,env[off+ 5]); env[off+ 6] = 3.3190; env[off+24]= 0.346129*CINTgto_norm(0,env[off+ 6]); env[off+32]=-0.170352*CINTgto_norm(0,env[off+ 6]); env[off+ 7] = 0.3643; env[off+25]=-0.008983*CINTgto_norm(0,env[off+ 7]); env[off+33]= 0.598684*CINTgto_norm(0,env[off+ 7]); env[off+ 8] = 0.9059; env[off+34]= 1.000000*CINTgto_norm(0,env[off+ 8]); env[off+ 9] = 0.1285; env[off+35]= 1.000000*CINTgto_norm(0,env[off+ 9]); env[off+10] = 18.710; env[off+36]= 0.014031*CINTgto_norm(1,env[off+10]); env[off+11] = 4.1330; env[off+37]= 0.086866*CINTgto_norm(1,env[off+11]); env[off+12] = 1.2000; env[off+38]= 0.290216*CINTgto_norm(1,env[off+12]); env[off+13] = 0.3827; env[off+39]= 1.000000*CINTgto_norm(1,env[off+13]); env[off+14] = 0.1209; env[off+40]= 1.000000*CINTgto_norm(1,env[off+14]); env[off+15] = 1.0970; env[off+41]= 1.000000*CINTgto_norm(2,env[off+15]); env[off+16] = 0.3180; env[off+42]= 1.000000*CINTgto_norm(2,env[off+16]); env[off+17] = 0.7610; env[off+43]= 1.000000*CINTgto_norm(3,env[off+17]); env[off+44] = 33.870; env[off+52]= 0.006068*CINTgto_norm(0,env[off+44]); env[off+45] = 5.0950; env[off+53]= 0.045308*CINTgto_norm(0,env[off+45]); env[off+46] = 1.1590; env[off+54]= 0.202822*CINTgto_norm(0,env[off+46]); env[off+47] = 0.3258; env[off+55]= 1.000000*CINTgto_norm(0,env[off+47]); env[off+48] = 0.1027; env[off+56]= 1.000000*CINTgto_norm(0,env[off+48]); env[off+49] = 1.4070; env[off+57]= 1.000000*CINTgto_norm(1,env[off+49]); env[off+50] = 0.3880; env[off+58]= 1.000000*CINTgto_norm(1,env[off+50]); env[off+51] = 1.0570; env[off+59]= 1.000000*CINTgto_norm(2,env[off+51]); for (i = 0, ia = 0, n = 0; i < 2; i++) { bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 0; bas[NPRIM_OF +BAS_SLOTS*n] = 8; bas[NCTR_OF +BAS_SLOTS*n] = 2; bas[PTR_EXP +BAS_SLOTS*n] = off+ 0; bas[PTR_COEFF+BAS_SLOTS*n] = off+18; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 0; bas[NPRIM_OF +BAS_SLOTS*n] = 1; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+ 8; bas[PTR_COEFF+BAS_SLOTS*n] = off+34; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 0; bas[NPRIM_OF +BAS_SLOTS*n] = 1; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+ 9; bas[PTR_COEFF+BAS_SLOTS*n] = off+35; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 1; bas[NPRIM_OF +BAS_SLOTS*n] = 3; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+10; bas[PTR_COEFF+BAS_SLOTS*n] = off+38; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 1; bas[NPRIM_OF +BAS_SLOTS*n] = 1; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+13; bas[PTR_COEFF+BAS_SLOTS*n] = off+39; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 1; bas[NPRIM_OF +BAS_SLOTS*n] = 1; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+14; bas[PTR_COEFF+BAS_SLOTS*n] = off+40; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 2; bas[NPRIM_OF +BAS_SLOTS*n] = 1; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+15; bas[PTR_COEFF+BAS_SLOTS*n] = off+41; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 2; bas[NPRIM_OF +BAS_SLOTS*n] = 1; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+16; bas[PTR_COEFF+BAS_SLOTS*n] = off+42; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 3; bas[NPRIM_OF +BAS_SLOTS*n] = 1; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+17; bas[PTR_COEFF+BAS_SLOTS*n] = off+43; n++; ia++; for (j = 0; j < 3; j++) { bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 0; bas[NPRIM_OF +BAS_SLOTS*n] = 3; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+44; bas[PTR_COEFF+BAS_SLOTS*n] = off+52; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 0; bas[NPRIM_OF +BAS_SLOTS*n] = 1; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+47; bas[PTR_COEFF+BAS_SLOTS*n] = off+55; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 0; bas[NPRIM_OF +BAS_SLOTS*n] = 1; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+48; bas[PTR_COEFF+BAS_SLOTS*n] = off+56; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 1; bas[NPRIM_OF +BAS_SLOTS*n] = 1; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+49; bas[PTR_COEFF+BAS_SLOTS*n] = off+57; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 1; bas[NPRIM_OF +BAS_SLOTS*n] = 1; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+50; bas[PTR_COEFF+BAS_SLOTS*n] = off+58; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 2; bas[NPRIM_OF +BAS_SLOTS*n] = 1; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+51; bas[PTR_COEFF+BAS_SLOTS*n] = off+59; n++; ia++; } } nbas = n; printf("cc-pVTZ basis\n"); run_all(atm, natm, bas, nbas, env); env[off+ 0] = 33980.; env[off+24]= 0.000091*CINTgto_norm(0,env[off+ 0]); env[off+33]= -0.000019*CINTgto_norm(0,env[off+0]); env[off+ 1] = 5089.0; env[off+25]= 0.000704*CINTgto_norm(0,env[off+ 1]); env[off+34]= -0.000151*CINTgto_norm(0,env[off+1]); env[off+ 2] = 1157.0; env[off+26]= 0.003693*CINTgto_norm(0,env[off+ 2]); env[off+35]= -0.000785*CINTgto_norm(0,env[off+2]); env[off+ 3] = 326.60; env[off+27]= 0.015360*CINTgto_norm(0,env[off+ 3]); env[off+36]= -0.003324*CINTgto_norm(0,env[off+3]); env[off+ 4] = 106.10; env[off+28]= 0.052929*CINTgto_norm(0,env[off+ 4]); env[off+37]= -0.011512*CINTgto_norm(0,env[off+4]); env[off+ 5] = 38.110; env[off+29]= 0.147043*CINTgto_norm(0,env[off+ 5]); env[off+38]= -0.034160*CINTgto_norm(0,env[off+5]); env[off+ 6] = 14.750; env[off+30]= 0.305631*CINTgto_norm(0,env[off+ 6]); env[off+39]= -0.077173*CINTgto_norm(0,env[off+6]); env[off+ 7] = 6.0350; env[off+31]= 0.399345*CINTgto_norm(0,env[off+ 7]); env[off+40]= -0.141493*CINTgto_norm(0,env[off+7]); env[off+ 8] = 2.5300; env[off+32]= 0.217051*CINTgto_norm(0,env[off+ 8]); env[off+41]= -0.118019*CINTgto_norm(0,env[off+8]); env[off+ 9] = 0.7355; env[off+42]= 1.000000*CINTgto_norm(0,env[off+ 9]); env[off+10] = 0.2905; env[off+43]= 1.000000*CINTgto_norm(0,env[off+10]); env[off+11] = 0.1111; env[off+44]= 1.000000*CINTgto_norm(0,env[off+11]); env[off+12] = 34.510; env[off+45]= 0.005378*CINTgto_norm(1,env[off+12]); env[off+13] = 7.9150; env[off+46]= 0.036132*CINTgto_norm(1,env[off+13]); env[off+14] = 2.3680; env[off+47]= 0.142493*CINTgto_norm(1,env[off+14]); env[off+15] = 0.8132; env[off+48]= 1.000000*CINTgto_norm(1,env[off+15]); env[off+16] = 0.2890; env[off+49]= 1.000000*CINTgto_norm(1,env[off+16]); env[off+17] = 0.1007; env[off+50]= 1.000000*CINTgto_norm(1,env[off+17]); env[off+18] = 1.8480; env[off+51]= 1.000000*CINTgto_norm(2,env[off+18]); env[off+19] = 0.6490; env[off+52]= 1.000000*CINTgto_norm(2,env[off+19]); env[off+20] = 0.2280; env[off+53]= 1.000000*CINTgto_norm(2,env[off+20]); env[off+21] = 1.4190; env[off+54]= 1.000000*CINTgto_norm(3,env[off+21]); env[off+22] = 0.4850; env[off+55]= 1.000000*CINTgto_norm(3,env[off+22]); env[off+23] = 1.0110; env[off+56]= 1.000000*CINTgto_norm(4,env[off+23]); env[off+57] = 82.64; env[off+69] = 0.002006*CINTgto_norm(0,env[off+57]); env[off+58] = 12.41; env[off+70] = 0.015343*CINTgto_norm(0,env[off+58]); env[off+59] = 2.824; env[off+71] = 0.075579*CINTgto_norm(0,env[off+59]); env[off+60] = 0.797; env[off+72] = 1.000000*CINTgto_norm(0,env[off+60]); env[off+61] = 0.258; env[off+73] = 1.000000*CINTgto_norm(0,env[off+61]); env[off+62] = 0.089; env[off+74] = 1.000000*CINTgto_norm(0,env[off+62]); env[off+63] = 2.292; env[off+75] = 1.000000*CINTgto_norm(1,env[off+63]); env[off+64] = 0.838; env[off+76] = 1.000000*CINTgto_norm(1,env[off+64]); env[off+65] = 0.292; env[off+77] = 1.000000*CINTgto_norm(1,env[off+65]); env[off+66] = 2.062; env[off+78] = 1.000000*CINTgto_norm(2,env[off+66]); env[off+67] = 0.662; env[off+79] = 1.000000*CINTgto_norm(2,env[off+67]); env[off+68] = 1.397; env[off+80] = 1.000000*CINTgto_norm(3,env[off+68]); for (i = 0, ia = 0, n = 0; i < 2; i++) { bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 0; bas[NPRIM_OF +BAS_SLOTS*n] = 8; bas[NCTR_OF +BAS_SLOTS*n] = 2; bas[PTR_EXP +BAS_SLOTS*n] = off+ 0; bas[PTR_COEFF+BAS_SLOTS*n] = off+24; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 0; bas[NPRIM_OF +BAS_SLOTS*n] = 1; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+ 9; bas[PTR_COEFF+BAS_SLOTS*n] = off+42; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 0; bas[NPRIM_OF +BAS_SLOTS*n] = 1; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+10; bas[PTR_COEFF+BAS_SLOTS*n] = off+43; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 0; bas[NPRIM_OF +BAS_SLOTS*n] = 1; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+11; bas[PTR_COEFF+BAS_SLOTS*n] = off+44; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 1; bas[NPRIM_OF +BAS_SLOTS*n] = 3; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+12; bas[PTR_COEFF+BAS_SLOTS*n] = off+45; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 1; bas[NPRIM_OF +BAS_SLOTS*n] = 1; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+15; bas[PTR_COEFF+BAS_SLOTS*n] = off+48; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 1; bas[NPRIM_OF +BAS_SLOTS*n] = 1; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+16; bas[PTR_COEFF+BAS_SLOTS*n] = off+49; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 1; bas[NPRIM_OF +BAS_SLOTS*n] = 1; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+17; bas[PTR_COEFF+BAS_SLOTS*n] = off+50; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 2; bas[NPRIM_OF +BAS_SLOTS*n] = 1; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+18; bas[PTR_COEFF+BAS_SLOTS*n] = off+51; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 2; bas[NPRIM_OF +BAS_SLOTS*n] = 1; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+19; bas[PTR_COEFF+BAS_SLOTS*n] = off+52; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 2; bas[NPRIM_OF +BAS_SLOTS*n] = 1; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+20; bas[PTR_COEFF+BAS_SLOTS*n] = off+53; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 3; bas[NPRIM_OF +BAS_SLOTS*n] = 1; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+21; bas[PTR_COEFF+BAS_SLOTS*n] = off+54; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 3; bas[NPRIM_OF +BAS_SLOTS*n] = 1; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+22; bas[PTR_COEFF+BAS_SLOTS*n] = off+55; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 4; bas[NPRIM_OF +BAS_SLOTS*n] = 1; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+23; bas[PTR_COEFF+BAS_SLOTS*n] = off+56; n++; ia++; for (j = 0; j < 3; j++) { bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 0; bas[NPRIM_OF +BAS_SLOTS*n] = 3; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+57; bas[PTR_COEFF+BAS_SLOTS*n] = off+69; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 0; bas[NPRIM_OF +BAS_SLOTS*n] = 1; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+60; bas[PTR_COEFF+BAS_SLOTS*n] = off+72; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 0; bas[NPRIM_OF +BAS_SLOTS*n] = 1; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+61; bas[PTR_COEFF+BAS_SLOTS*n] = off+73; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 0; bas[NPRIM_OF +BAS_SLOTS*n] = 1; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+62; bas[PTR_COEFF+BAS_SLOTS*n] = off+74; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 1; bas[NPRIM_OF +BAS_SLOTS*n] = 1; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+63; bas[PTR_COEFF+BAS_SLOTS*n] = off+75; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 1; bas[NPRIM_OF +BAS_SLOTS*n] = 1; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+64; bas[PTR_COEFF+BAS_SLOTS*n] = off+76; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 1; bas[NPRIM_OF +BAS_SLOTS*n] = 1; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+65; bas[PTR_COEFF+BAS_SLOTS*n] = off+77; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 2; bas[NPRIM_OF +BAS_SLOTS*n] = 1; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+66; bas[PTR_COEFF+BAS_SLOTS*n] = off+78; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 2; bas[NPRIM_OF +BAS_SLOTS*n] = 1; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+67; bas[PTR_COEFF+BAS_SLOTS*n] = off+79; n++; bas[ATOM_OF +BAS_SLOTS*n] = ia; bas[ANG_OF +BAS_SLOTS*n] = 3; bas[NPRIM_OF +BAS_SLOTS*n] = 1; bas[NCTR_OF +BAS_SLOTS*n] = 1; bas[PTR_EXP +BAS_SLOTS*n] = off+68; bas[PTR_COEFF+BAS_SLOTS*n] = off+80; n++; ia++; } } nbas = n; printf("cc-pVQZ basis\n"); run_all(atm, natm, bas, nbas, env); free(atm); free(bas); free(env); }