Changeset 09bc09
- Timestamp:
- Jul 10, 2012, 1:15:50 PM (13 years ago)
- Children:
- 666f70
- Parents:
- f5403d
- git-author:
- Frederik Heber <heber@…> (07/06/12 19:17:15)
- git-committer:
- Frederik Heber <heber@…> (07/10/12 13:15:50)
- File:
-
- 1 edited
-
src/bin/mpqc/mpqc.cc (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
-
src/bin/mpqc/mpqc.cc
rf5403d r09bc09 698 698 } 699 699 700 /** Prepares CCA component if available. 701 * 702 * \param keyval keyvalue container 703 * \param options parsed command line options 704 */ 705 void prepareCCA( 706 Ref<KeyVal> &keyval, 707 GetLongOpt &options 708 ) 709 { 710 #ifdef HAVE_CHEMISTRY_CCA 711 // initialize cca framework 712 KeyValValuestring emptystring(""); 713 bool do_cca = keyval->booleanvalue("do_cca",falsevalue); 714 715 string cca_path(options.retrieve("cca-path")); 716 string cca_load(options.retrieve("cca-load")); 717 if(cca_path.size()==0) 718 cca_path = keyval->stringvalue("cca_path",emptystring); 719 if(cca_load.size()==0) 720 cca_load = keyval->stringvalue("cca_load",emptystring); 721 722 if( !do_cca && (cca_load.size() > 0 || cca_path.size() > 0) ) 723 do_cca = true; 724 725 if(cca_path.size()==0) { 726 #ifdef CCA_PATH 727 cca_path = CCA_PATH; 728 #endif 729 } 730 if(cca_load.size()==0) { 731 cca_load += "MPQC.IntegralEvaluatorFactory"; 732 } 733 734 if( cca_load.size() > 0 && cca_path.size() > 0 && do_cca ) { 735 string cca_args = "--path " + cca_path + " --load " + cca_load; 736 ExEnv::out0() << endl << indent << "Initializing CCA framework with args: " 737 << endl << indent << cca_args << endl; 738 CCAEnv::init( cca_args ); 739 } 740 #endif 741 } 742 700 743 /** Setup debugger. 701 744 * … … 721 764 debugger->debug("Starting debugger because -d given on command line."); 722 765 } 766 } 767 768 /** Get integral factory. 769 * 770 * \param keyval keyvalue container 771 * \param integral integral group on return 772 * \param argc argument count 773 * \param argv argument array 774 */ 775 void getIntegralFactory( 776 Ref<KeyVal> &keyval, 777 Ref<Integral> &integral, 778 int argc, 779 char **argv) 780 { 781 // first try commandline and environment 782 integral = Integral::initial_integral(argc, argv); 783 784 // if we still don't have a integral, try reading the integral 785 // from the input 786 if (integral.null()) { 787 integral << keyval->describedclassvalue("integrals"); 788 } 789 790 if (integral.nonnull()) 791 Integral::set_default_integral(integral); 792 else 793 integral = Integral::get_default_integral(); 794 723 795 } 724 796 … … 822 894 << "Total number of processors = " << grp->n() * thread->nthread() << endl; 823 895 824 #ifdef HAVE_CHEMISTRY_CCA 825 // initialize cca framework 826 KeyValValuestring emptystring(""); 827 bool do_cca = keyval->booleanvalue("do_cca",falsevalue); 828 829 string cca_path(options.retrieve("cca-path")); 830 string cca_load(options.retrieve("cca-load")); 831 if(cca_path.size()==0) 832 cca_path = keyval->stringvalue("cca_path",emptystring); 833 if(cca_load.size()==0) 834 cca_load = keyval->stringvalue("cca_load",emptystring); 835 836 if( !do_cca && (cca_load.size() > 0 || cca_path.size() > 0) ) 837 do_cca = true; 838 839 if(cca_path.size()==0) { 840 #ifdef CCA_PATH 841 cca_path = CCA_PATH; 842 #endif 843 } 844 if(cca_load.size()==0) { 845 cca_load += "MPQC.IntegralEvaluatorFactory"; 846 } 847 848 if( cca_load.size() > 0 && cca_path.size() > 0 && do_cca ) { 849 string cca_args = "--path " + cca_path + " --load " + cca_load; 850 ExEnv::out0() << endl << indent << "Initializing CCA framework with args: " 851 << endl << indent << cca_args << endl; 852 CCAEnv::init( cca_args ); 853 } 854 #endif 896 // prepapre CCA if available 897 prepareCCA(keyval, options); 855 898 856 899 // now set up the debugger … … 864 907 keyval->describedclassvalue("matrixkit").pointer())); 865 908 866 // get the integral factory. first try commandline and environment 867 Ref<Integral> integral = Integral::initial_integral(argc, argv); 868 869 // if we still don't have a integral, try reading the integral 870 // from the input 871 if (integral.null()) { 872 integral << keyval->describedclassvalue("integrals"); 873 } 874 875 if (integral.nonnull()) 876 Integral::set_default_integral(integral); 877 else 878 integral = Integral::get_default_integral(); 879 909 // get the integral factory. 910 Ref<Integral> integral; 911 getIntegralFactory(keyval, integral, argc, argv); 880 912 ExEnv::out0() << endl << indent 881 913 << "Using " << integral->class_name()
Note:
See TracChangeset
for help on using the changeset viewer.
