BioInt  1.02.00
BioInt: An integrative biological object-oriented application framework and interpreter
BioHkl.h
Go to the documentation of this file.
00001 /****************************************************************************
00002 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
00003 The BioBhasha : The Biologist's Programming Language 
00004 Version 1.0 (19th December 2001)
00005 Prasad, B.V.L.S.
00006 Contact: burrashiva@yahoo.com
00007 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
00008 *****************************************************************************/
00009 #ifndef BIOHKL_H
00010 #define BIOHKL_H
00011 
00012 using namespace std;
00013 
00014 #include <vector>
00015 #include <string>
00016 #include <iostream>
00017 
00018 
00019 class BioHkl
00020 {
00021 
00022 double a_, b_, c_, alpha_, beta_, gamma_;
00023 string spgroup;
00024 
00025 static double const lambda_  = 1.5418;
00026 
00027         vector<int>hin;
00028         vector<int>kin;
00029         vector<int>lin;
00030 
00031         vector<double>Iobs;
00032         vector<double>Fobs;
00033         vector<double>Isigma;
00034         vector<double>Fsigma;
00035 
00036 public:
00037 
00038         BioHkl(string filename);        
00039 
00040 
00041         double get_a_star() ;
00042         double get_b_star() ;
00043         double get_c_star() ;
00044 
00045         double get_alpha_star() ;
00046         double get_beta_star() ;
00047         double get_gamma_star() ;
00048 
00049         double getVolume();
00050 
00051         double get_a()  const { return a_; };
00052         double get_b()  const { return b_; };
00053         double get_c()  const { return c_; };
00054 
00055         double get_alpha() const { return alpha_;}
00056         double get_beta() const { return beta_;}
00057         double get_gamma() const { return gamma_;}
00058 
00059         string getSpaceGroup()  const { return spgroup; };
00060 
00061         double getLambda() const { return lambda_; }
00062 
00063         void   showBraggAngle(ostream & os = cout);
00064         double getBraggAngle(int , int , int);
00065 
00066         void showHklFobs(ostream & = cout);
00067         void showSystematicAbsences(ostream & = cout);
00068 
00069         long getNumberOfReflections() const { return hin.size(); }
00070 
00071         bool isOdd(int );
00072         vector <int> get_h();
00073         vector <int> get_k();
00074         vector <int> get_l();
00075         vector <double> getIObs();
00076         vector <double> getFObs();
00077         vector <double> getISigma();
00078         vector <double> getFSigma();
00079 
00080 };
00081 
00082 #endif
00083 
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Defines