GPLIB++
MTRoughness.h
Go to the documentation of this file.
1 #ifndef MTROUGHNESS_H_
2 #define MTROUGHNESS_H_
3 #include "GeneralObjective.h"
4 namespace gplib
5  {
6 //! Calculate the roughness for the MT part of a joint MT-seismic model as used by 1dinvga
8 {
9 public:
10  virtual MTRoughness *clone() const {return new MTRoughness(*this);}
11  virtual void SafeParallel(const ttranscribed &member);
12  virtual double PostParallel(const ttranscribed &member);
13  MTRoughness(const MTRoughness &Old);
14  MTRoughness& operator=(const MTRoughness& source);
15  MTRoughness();
16  virtual ~MTRoughness();
17 };
18  }
19 #endif /*MTROUGHNESS_H_*/
virtual MTRoughness * 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.
Definition: MTRoughness.h:10
Calculate the roughness for the MT part of a joint MT-seismic model as used by 1dinvga.
Definition: MTRoughness.h:7
ublas::vector< double > ttranscribed
Definition: gentypes.h:21
virtual double PostParallel(const ttranscribed &member)
Some operations cannot be done in parallel, these are done after, returns the misfit value...
Definition: MTRoughness.cpp:26
virtual void SafeParallel(const ttranscribed &member)
The core performance calculation, has to be safe to be done in parallel.
Definition: MTRoughness.cpp:13
The basic object for any objective function, mainly an interface class and some storage.
MTRoughness & operator=(const MTRoughness &source)
Definition: MTRoughness.cpp:36
virtual ~MTRoughness()
Definition: MTRoughness.cpp:9