00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013 #include "QMCFunctionsFactory.h"
00014
00015 QMCFunctions *
00016 QMCFunctionsFactory::functionsFactory(QMCInput * input, string & Type)
00017 {
00018 QMCFunctions * Functions = 0;
00019
00020 if( Type == "restricted" || Type == "unrestricted")
00021 {
00022 Functions = new QMCSCFJastrow();
00023 }
00024 else if( Type == "harmonicoscillator" )
00025 {
00026 Functions = new QMCHarmonicOscillator(input);
00027 }
00028 else
00029 {
00030 cerr << "ERROR: Unknown wavefunction type ("
00031 << Type
00032 << ") being assigned in QMCFunctionsFactory!" << endl;
00033 exit(0);
00034 }
00035
00036 return Functions;
00037 }