00001 #ifndef SDISP96MODEL_H_ 00002 #define SDISP96MODEL_H_ 00003 00004 #include "SurfaceWaveModel.h" 00005 00006 namespace gplib 00007 { 00008 /** \addtogroup seistools Seismic data analysis and modeling */ 00009 /* @{ */ 00010 00011 //! This class can write files specific for the synthetic surface wave codes that are part of the computer programs in seismology 00012 class Sdisp96Model: public SurfaceWaveModel 00013 { 00014 private: 00015 bool isSpherical; 00016 public: 00017 //! Do we want a spherical model or a flat earth model 00018 void SetSpherical(const bool s) 00019 { 00020 isSpherical = s; 00021 } 00022 //! Read the model from a file 00023 virtual void ReadModel(const std::string &filename); 00024 //! Write them model to a file so that the forward codes can use it 00025 virtual void WriteModel(const std::string &filename) const; 00026 //! Write out a script file that when run creates synthetic data with the name filename+'.asc' 00027 virtual void WriteRunFile(const std::string &filename, const std::vector< 00028 double> periods) const; 00029 Sdisp96Model& operator=(const Sdisp96Model& source); 00030 Sdisp96Model(const Sdisp96Model &Old); 00031 Sdisp96Model(const SurfaceWaveModel &Old) : 00032 SurfaceWaveModel(Old) 00033 { 00034 } 00035 ; 00036 Sdisp96Model(); 00037 virtual ~Sdisp96Model(); 00038 }; 00039 /* @} */ 00040 } 00041 #endif /*SDISP96MODEL_H_*/
1.5.8