Main Page | Class Hierarchy | Class List | File List | Class Members | File Members | Related Pages

hadalton.h

00001 //  hadalton.h
00002 //
00003 //  Classes 
00004 //  to provide interface to DALTON from HARLEM.
00005 //
00006 //  definitions
00007 //
00008 //  Igor Kurnikov , University of Pittsburgh 
00009 //
00010 //  Created:    July 8 1998
00011 //
00012 #ifndef HADALTON_H
00013 #define HADALTON_H
00014 
00015 
00016 class HaQCMod;
00017 
00018 #include "hastring.h"
00019 #include "hacompmod.h"
00020 #include "hagaussian.h" // for enum RunMode
00021 
00022 #if 0 // comment DaltonDXFile for now, don't know how to calculate 
00023       // record length necessary for using opendx,readx,writedx functions
00024 
00025 class DaltonDXFile
00026 //  Class to define Hydrogen Bond object 
00027 {
00028 public:
00029 
00030         int  open(const char* fname, const char* mode);         
00031         int  read();          
00032         int  write();
00033         int  close();
00034 
00035 protected:
00036 
00037         integer lugdi;
00038         integer lrgdi;
00039         integer nbgdi;
00040 
00041 };
00042 
00043 #endif
00044 
00045 class HaDalton :  public HaCompMod
00047 {
00048 public:
00049 
00050         HaDalton(HaMolSet* new_phost_mset);
00051         virtual ~HaDalton();
00052 
00053         void Set_std_fnames();
00054         void Set_std_job_flags();
00055 
00056         bool Set_inp_file_prefix(const char* new_prefix) { return false; }
00057         bool Set_mol_file_name(const char* mf_name);
00058         bool Save_mol_file();
00059 
00060         bool Set_param_file_name(const char* pf_name);
00061         bool Save_param_file();
00062 
00063         bool run(const RunMode rmode);
00064         
00065         void Set_rotangle_calc();
00066         void Set_london_magdip_calc();
00067 
00068         bool test_1();
00069 
00070 protected:
00071     
00072         HaString mol_file_name;
00073         HaString param_file_name;
00074         HaQCMod* phost_qcmod;
00075 
00076 // Flags for a job types:
00077         bool ABALNR_skip;
00078         
00079 // Fill different sections of input files:
00080 
00081         void Fill_section_general(ofstream& pfile);
00082         void Fill_section_wave_fun(ofstream& pfile);
00083         void Fill_subsection_HF_param(ofstream& pfile);
00084         void Fill_section_properties(ofstream& pfile);
00085         void Fill_subsection_ABALNR(ofstream& pfile);
00086 
00087 };
00088 
00089 
00090 
00091 #endif /* !HADALTON_H */

Generated on Tue Feb 17 02:03:04 2004 for harlem by doxygen 1.3.6