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

haintermol.h

Go to the documentation of this file.
00001 
00009 #ifndef HAINTERMOL_H
00010 #define HAINTERMOL_H
00011 
00012 class HaMolecule;
00013 class CWinThread;
00014 
00015 #include "hastl.h"
00016 #include "command.h"
00017 #include "haatgroup.h"
00018 #include "hacompmod.h"
00019 #include "hasurface.h"
00020 
00021 class HaField3D;
00022 
00023 const int NO_ELECTR=0;                 
00024 const int CONTINUUM_ELECTR = 1;        
00025 const int COULOMB_ELECTR = 2;          
00026 const int CHARGES_IN_FIELD_ELECTR = 3; 
00027 
00029 class HaInterMolMod : public HaCompMod
00030 {
00031 public:
00032         HaInterMolMod(HaMolSet* new_phost_mset);
00033         virtual ~HaInterMolMod();
00034 
00035         void SetStdParams(); 
00036 
00037         bool Initialize();            
00038         
00039         double CalculateMMEnergy();  
00040 
00041         double CalcElStaticInter(); 
00042                                   
00043     double CalcContElectrEne(vector<AtomList*> inter_groups); 
00044 
00045     bool CalcEffInterEne(); 
00046 
00047         int RunMCDock();          
00048         int PauseMCDock();        
00049         int ResumeMCDock();       
00050         int StopMCDock();         
00051 
00052         int RunMCDocThread(); 
00053 
00054 
00055         CWinThread* mc_dock_thread;
00056 
00057         int module_to_init_flag; 
00058         int build_nb_contact_list; 
00059 
00060         int BuildNonBondListInterMol(); 
00061 
00062         double cur_intermol_ene;  
00063         double electr_inter_ene;  
00064         double vdw_inter_ene;     
00065         double add_eff_ene;       
00066         double MC_temp;           
00067         double ang_ratio;         
00068         double tr_ratio;          
00069         int delay_time;           
00070         int stop_calc_flag;       
00071         int skip_pt_init;         
00072         int skip_pt_between;      
00073         
00074         int play_back_flag;       
00075     
00076         int dont_calc_ene_flag;   
00077         int save_image_seq_gif;   
00078         int save_image_seq_pict;  
00079         int trace_atoms_flag;     
00080 
00081         int output_rejected_points; 
00082 
00083         HaString MC_traj_file_name; 
00084 
00085         int electr_model;  
00086 
00087 
00088     int InitMolecularFields(); 
00089         double CalcChargesInFieldEne(); 
00090 
00091         int compute_pk;    
00092 
00093         void SetElectrModel(int new_elecr_model_idx); 
00094 
00095         int calc_et_rate; 
00096 
00097         int num_mc_steps; 
00098 
00099         vector<HaMolecule*> interact_mol; 
00100 
00101         HaField3D el_pot_field;   
00102         HaField3D vdw_pot_field;  
00103 
00104     AtomList traced_atoms;     
00105 protected:
00106 
00107 };
00108 
00109 #endif // end if !defined(HAINTERMOL_H) 

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