1 #ifndef SURFACEWAVEMODEL_H_ 
    2 #define SURFACEWAVEMODEL_H_ 
   19       trealdata pvvelocities;
 
   20       trealdata phvelocities;
 
   21       trealdata svvelocities;
 
   22       trealdata shvelocities;
 
   24       trealdata thicknesses;
 
   34       void WriteLayer(std::ostream &stream, 
const unsigned int index,
 
   35           const trealdata &depth) 
const;
 
  117       int SplitLayer(
const int index, 
const double maxthick);
 
  123       virtual void ReadModel(
const std::string &filename) = 0;
 
  125       virtual void WriteModel(
const std::string &filename) 
const = 0;
 
  127       virtual void WriteRunFile(
const std::string &filename, 
const std::vector<
 
  128           double> periods) 
const = 0;
 
  130       void WritePlot(
const std::string &filename) 
const;
 
const trealdata & GetPvVelocities() const 
 
void AddDiscontinuity(const int index)
Insert a layer with 0 thickness to create a discontinuity for the forward code. 
 
double GetMaxDepth(const double depth)
 
const trealdata & GetPhVelocities() const 
 
const trealdata & GetSvVelocities() const 
 
trealdata & SetDensities()
 
void WritePlot(const std::string &filename) const 
Write out an ascii file for plotting with xmgrace or similar programs. 
 
A class to store 1D model for calculation of synthetic surface wave data. 
 
const trealdata & GetQmu() const 
 
virtual ~SurfaceWaveModel()
 
std::string GetName() const 
 
SurfaceWaveModel & operator=(const SurfaceWaveModel &source)
 
trealdata & SetShVelocities()
 
void MergeModel(const SurfaceWaveModel &Background)
Merge this model with another background model, the depth range below this model will be filled with ...
 
const trealdata & GetShVelocities() const 
 
int SplitLayer(const int index, const double maxthick)
Splits a layer into several layers with a maximum thickness of maxthick, but otherwise identical prop...
 
virtual void WriteModel(const std::string &filename) const =0
Write the model to a file. 
 
const trealdata & GetDensities() const 
 
trealdata & SetSvVelocities()
 
const trealdata & GetEta() const 
 
virtual void ReadModel(const std::string &filename)=0
Read a model from a file. 
 
trealdata & SetThicknesses()
 
trealdata & SetPvVelocities()
 
virtual void WriteRunFile(const std::string &filename, const std::vector< double > periods) const =0
Write out a script that when executed performs a forward calculation for this model. 
 
const trealdata & GetThicknesses() const 
 
const trealdata & GetQkappa() const 
 
void CheckConsistency() const 
 
trealdata & SetPhVelocities()