1 #ifndef SURFACEWAVEOBJECTIVE_H_
2 #define SURFACEWAVEOBJECTIVE_H_
ublas::vector< double > ttranscribed
void WritePlot(const std::string &filename) const
Write out an ascii file for plotting with xmgrace or similar programs.
This only adds a few plotting functions to GeneralObjective to define a common interface.
This class calculates the misfit between observed surface wave dispersion data and the data calculate...
virtual double PostParallel(const ttranscribed &member)
Some operations cannot be done in parallel, these are done after, returns the misfit value...
void SetPoisson(const double p)
Set Poisson's ratio Vp/Vs.
A class to read, write and store fundamental mode surface wave dispersion data.
const SurfaceWaveModel & GetModel()
Read only access to the current seismic model.
virtual ~SurfaceWaveObjective()
virtual void WritePlot(const std::string &filename)
Write the current model to ascii file for plotting.
SurfaceWaveObjective & operator=(const SurfaceWaveObjective &source)
virtual void WriteModel(const std::string &filename) const =0
Write the model to a file.
virtual void WriteData(const std::string &filename)
Write the synthetic data to a sac file with name filename.
virtual void SafeParallel(const ttranscribed &member)
The core performance calculation, has to be safe to be done in parallel.
The basic object for any objective function, mainly an interface class and some storage.
SurfaceWaveObjective(const SurfaceWaveObjective &Old)
Calculate synthetic fundamental mode Rayleigh phase velocity data from an isotropic 1D model...
virtual void WriteModel(const std::string &filename)
Write the current model to ascii file for calculations.
virtual void PreParallel(const ttranscribed &member)
Some operations cannot be done in parallel, these are done before.
virtual void WriteAscii(const std::string &filename) const
Write the data in simple ascii format.
virtual GeneralObjective * clone() const
We need clone and create for building an array of derived objects, see FAQ lite 20.8, the return type depends on the derived class.
void SetErrorLevel(const double level)
Set the relative error for each measurement.