MTDataComp.h

Go to the documentation of this file.
00001 #ifndef CMTDATACOMP_H
00002 #define CMTDATACOMP_H
00003 
00004 #include <string>
00005 #include "types.h"
00006 
00007 /** \addtogroup mttools MT data analysis, processing and inversion */
00008 /* @{ */
00009 
00010 /*! The class MTDataComp stores the values of the impedance tensor,
00011  * the error estimates along with the apparent resistivity and phase.
00012  * Units are \f$ km/s\f$ for Z, \f$ \Omega m \f$ for \f$ \rho_a \f$ and
00013  * degree for the phase. The corresponding frequencies are not stored
00014  * because normally it is used by CMTData or a derived class.
00015  */
00016  
00017 class MTDataComp
00018 {
00019  private:
00020         //! Whenever an impedance value changes, Update() recalculates apparent resistvity and phase. 
00021     void Update(trealdata frequency); 
00022     void Assign(const int nfreq);
00023     //!  name can be either Zxx, Zxy, Zyx, Zyy, Tx or Ty
00024     std::string name;
00025     //! The vector containing apparent resistivities
00026     trealdata rhoa; 
00027     //! The vector containing the phase
00028     trealdata phi;
00029     //! The corresponding errors in apparent resistivities
00030     trealdata drhoa;
00031     //! The corresponding errors in phase
00032     trealdata dphi;
00033     //! A complex vector containing the impedance values
00034     tcompdata Z;
00035     //! A real vector containing the error estimates
00036     trealdata dZ;
00037  public:
00038     std::string GetName()const{return name;}
00039     trealdata GetRhoa()const{return rhoa;} 
00040     trealdata GetPhi()const{return phi;}
00041     trealdata GetdRhoa()const{return drhoa;}
00042     trealdata GetdPhi()const{return dphi;}
00043     tcompdata GetZ()const{return Z;}
00044     trealdata GetdZ()const{return dZ;}
00045     //! The constructor is empty
00046     MTDataComp(const int nfreq = 0); 
00047     //! The destructor is empty,too
00048     virtual ~MTDataComp();
00049     //! CMTStation needs to access the Update method, so we declare it a friend
00050     friend class MTStation;
00051     friend class C1DMTSynthData;
00052     friend class JParser;
00053     friend class EDIParser;
00054     virtual MTDataComp& operator= (const MTDataComp& source);
00055     virtual void erase(const int index); 
00056 };
00057 /* @} */
00058 #endif

Generated on Mon Sep 15 12:54:34 2008 for GPLIB++ by  doxygen 1.5.5