GPLIB++
Public Member Functions | List of all members
gplib::SWAnisoRoughness Class Reference

Calculate the roughness for anisotropic SW models. More...

#include <SWAnisoRoughness.h>

Inheritance diagram for gplib::SWAnisoRoughness:
Inheritance graph
[legend]

Public Member Functions

void SetVelDiffWeight (const double w)
 Regularize the velocity change across the layers. This is zero by default. More...
 
void SetAnisovelWeight (const double w)
 Regularize the anisotropy of the velocities. This is 1 by default. More...
 
void SetStrikeDiffWeight (const double w)
 Regularize the difference in anisotropy strike across layers. This is zero by default. More...
 
void SetDeltaStrikeDiffWeight (const double w)
 Regularize the difference between the seismic and electric strike. This is zero by default. More...
 
virtual SWAnisoRoughnessclone () 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. More...
 
virtual void SafeParallel (const ttranscribed &member)
 The core performance calculation, has to be safe to be done in parallel. More...
 
virtual double PostParallel (const ttranscribed &member)
 Some operations cannot be done in parallel, these are done after, returns the misfit value. More...
 
 SWAnisoRoughness (const SWAnisoRoughness &Old)
 
SWAnisoRoughnessoperator= (const SWAnisoRoughness &source)
 
 SWAnisoRoughness ()
 
virtual ~SWAnisoRoughness ()
 
- Public Member Functions inherited from gplib::GeneralObjective
void SetFitExponent (const int x)
 Set the Fit exponent. More...
 
int GetFitExponent ()
 Get the Fit exponent. More...
 
double GetRMS ()
 Get the current RMS. More...
 
const std::string & GetParallelID ()
 Derived classes need to read the ParallelId for their forward calculations. More...
 
void SetParallelID (const std::string &s)
 We need to set the parallel ID outside the Objective function object. More...
 
const tmisfitGetMisfit ()
 Return the misfit vector. More...
 
const tdataGetSynthData ()
 Return the current synthetic data. More...
 
virtual void PreParallel (const ttranscribed &member)
 Some operations cannot be done in parallel, these are done before. More...
 
double CalcPerformance (const ttranscribed &member)
 For serial execution CalcPerformance calls the three Parallel functions for more convenient use. More...
 
 GeneralObjective ()
 
 GeneralObjective (const GeneralObjective &Old)
 
GeneralObjectiveoperator= (const GeneralObjective &source)
 
virtual ~GeneralObjective ()
 

Additional Inherited Members

- Protected Member Functions inherited from gplib::GeneralObjective
double CalcMisfit (const double measured, const double predicted, const double measerror, const double errorlevel, const int index)
 
void SetRMS (const double x)
 
tmisfitSetMisfit ()
 Only derived classes can write access the Misfit. More...
 
void SetMisfit (const tmisfit &LocalMisfit)
 
tdataSetSynthData ()
 Only derived classes can write access the Synthetic data. More...
 
void SetSynthData (const tdata &LocalSynthData)
 

Detailed Description

Calculate the roughness for anisotropic SW models.

Definition at line 8 of file SWAnisoRoughness.h.

Constructor & Destructor Documentation

gplib::SWAnisoRoughness::SWAnisoRoughness ( const SWAnisoRoughness Old)

Definition at line 40 of file SWAnisoRoughness.cpp.

gplib::SWAnisoRoughness::SWAnisoRoughness ( )

Definition at line 5 of file SWAnisoRoughness.cpp.

Referenced by clone().

gplib::SWAnisoRoughness::~SWAnisoRoughness ( )
virtual

Definition at line 11 of file SWAnisoRoughness.cpp.

Member Function Documentation

virtual SWAnisoRoughness* gplib::SWAnisoRoughness::clone ( ) const
inlinevirtual

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.

Implements gplib::GeneralObjective.

Definition at line 24 of file SWAnisoRoughness.h.

References SWAnisoRoughness().

SWAnisoRoughness & gplib::SWAnisoRoughness::operator= ( const SWAnisoRoughness source)

Definition at line 47 of file SWAnisoRoughness.cpp.

References gplib::GeneralObjective::operator=().

double gplib::SWAnisoRoughness::PostParallel ( const ttranscribed member)
virtual

Some operations cannot be done in parallel, these are done after, returns the misfit value.

Implements gplib::GeneralObjective.

Definition at line 35 of file SWAnisoRoughness.cpp.

References gplib::GeneralObjective::GetRMS().

void gplib::SWAnisoRoughness::SafeParallel ( const ttranscribed member)
virtual

The core performance calculation, has to be safe to be done in parallel.

Reimplemented from gplib::GeneralObjective.

Definition at line 15 of file SWAnisoRoughness.cpp.

References gplib::GeneralObjective::GetFitExponent(), and gplib::GeneralObjective::SetRMS().

void gplib::SWAnisoRoughness::SetAnisovelWeight ( const double  w)
inline

Regularize the anisotropy of the velocities. This is 1 by default.

Definition at line 19 of file SWAnisoRoughness.h.

void gplib::SWAnisoRoughness::SetDeltaStrikeDiffWeight ( const double  w)
inline

Regularize the difference between the seismic and electric strike. This is zero by default.

Definition at line 23 of file SWAnisoRoughness.h.

void gplib::SWAnisoRoughness::SetStrikeDiffWeight ( const double  w)
inline

Regularize the difference in anisotropy strike across layers. This is zero by default.

Definition at line 21 of file SWAnisoRoughness.h.

void gplib::SWAnisoRoughness::SetVelDiffWeight ( const double  w)
inline

Regularize the velocity change across the layers. This is zero by default.

Definition at line 17 of file SWAnisoRoughness.h.


The documentation for this class was generated from the following files: