#include <C1DMTObjective.h>

Public Types | |
| typedef boost::function < double(const MTTensor *const) | datafunc_t ) |
| A function that returns a real valued quantity calculated from an MT impedance tensor. | |
| typedef std::vector< datafunc_t > | datafuncvector_t |
| A vector of MT data functions. This is used to store the types of data to fit. | |
Public Member Functions | |
| void | SetFitParameters (const datafuncvector_t TheDataV, const datafuncvector_t TheErrorV, const std::vector< double > TheErrLevel) |
| function to set the parameters that determine the type of fit | |
| void | AppendFitParameters (const datafunc_t TheDataFunc, const datafunc_t TheErrorFunc, const double TheErrLevel) |
| virtual void | SafeParallel (const ttranscribed &member) |
| Calc misfit for a model given by member. | |
| virtual double | PostParallel (const ttranscribed &member) |
| All calculation has been done in SafeParallel we only return the stored result. | |
| const datafuncvector_t & | GetErrorFunctions () const |
| return a vector with pointers to the functions used to calculate the errors | |
| virtual void | WriteModel (const std::string &filename)=0 |
| write the current model to a file | |
| virtual void | WritePlot (const std::string &filename)=0 |
| write the current model for plotting to a file | |
| virtual void | WriteData (const std::string &filename)=0 |
| Write current data to a file. | |
| C1DMTObjective (const MTStation &LocalMTData) | |
| We need data to fit for any objective function, so we want it as constructor parameter, but no implicit conversion. | |
| C1DMTObjective (const C1DMTObjective &Old) | |
| virtual | ~C1DMTObjective () |
| C1DMTObjective & | operator= (const C1DMTObjective &source) |
Protected Member Functions | |
| virtual MTStation & | GetMTSynth ()=0 |
Definition at line 10 of file C1DMTObjective.h.
| typedef boost::function<double (const MTTensor* const) C1DMTObjective::datafunc_t) |
A function that returns a real valued quantity calculated from an MT impedance tensor.
Definition at line 15 of file C1DMTObjective.h.
| typedef std::vector<datafunc_t> C1DMTObjective::datafuncvector_t |
A vector of MT data functions. This is used to store the types of data to fit.
Definition at line 17 of file C1DMTObjective.h.
| C1DMTObjective::C1DMTObjective | ( | const MTStation & | LocalMTData | ) |
We need data to fit for any objective function, so we want it as constructor parameter, but no implicit conversion.
Definition at line 17 of file C1DMTObjective.cpp.
References MTTensor::GetdPhixy(), and MTTensor::GetPhixy().
| C1DMTObjective::C1DMTObjective | ( | const C1DMTObjective & | Old | ) |
Definition at line 33 of file C1DMTObjective.cpp.
| C1DMTObjective::~C1DMTObjective | ( | ) | [virtual] |
Definition at line 29 of file C1DMTObjective.cpp.
| void C1DMTObjective::AppendFitParameters | ( | const datafunc_t | TheDataFunc, | |
| const datafunc_t | TheErrorFunc, | |||
| const double | TheErrLevel | |||
| ) |
Add a new type of MT data to the vector of quantities to fit. The first call overrides the default xy phase that is set by the constructor.
| TheDataFunc | The data to fit. A reference to function that takes a MTTensor* const and returns a double. e.g. &MTTensor::GetPhixy to fit xy phase | |
| TheErrorFunc | The error associated with the data. Also a reference to function that takes a MTTensor* const and returns a double. e.g. &MTTensor::GetdPhixy | |
| TheErrLevel | The relative error floor for this type of data |
Definition at line 90 of file C1DMTObjective.cpp.
Referenced by main(), and SetupMTFitParameters().
| const datafuncvector_t& C1DMTObjective::GetErrorFunctions | ( | ) | const [inline] |
return a vector with pointers to the functions used to calculate the errors
Definition at line 43 of file C1DMTObjective.h.
Referenced by main().
| virtual MTStation& C1DMTObjective::GetMTSynth | ( | ) | [protected, pure virtual] |
Referenced by SafeParallel().
| C1DMTObjective & C1DMTObjective::operator= | ( | const C1DMTObjective & | source | ) |
Definition at line 40 of file C1DMTObjective.cpp.
References DataFunctions, ErrorFunctions, ErrorLevels, FitparametersSet, MTData, and MTData.
| double C1DMTObjective::PostParallel | ( | const ttranscribed & | member | ) | [virtual] |
All calculation has been done in SafeParallel we only return the stored result.
Implements GeneralObjective.
Definition at line 175 of file C1DMTObjective.cpp.
References GeneralObjective::GetRMS().
| void C1DMTObjective::SafeParallel | ( | const ttranscribed & | member | ) | [virtual] |
Calc misfit for a model given by member.
Calculate synthetics from the model given by member and compare with Data given the fitparameters
Reimplemented from GeneralObjective.
Definition at line 114 of file C1DMTObjective.cpp.
References GeneralObjective::CalcMisfit(), GeneralObjective::GetFitExponent(), MTStation::GetMTData(), GetMTSynth(), MTData, MTStation::SetFrequencies(), GeneralObjective::SetMisfit(), GeneralObjective::SetRMS(), and GeneralObjective::SetSynthData().
| void C1DMTObjective::SetFitParameters | ( | const datafuncvector_t | TheDataV, | |
| const datafuncvector_t | TheErrorV, | |||
| const std::vector< double > | TheErrLevel | |||
| ) |
function to set the parameters that determine the type of fit
Instead of seperate access functions, we force the user to set all of them if he doesn't want defaults
This functions takes three parameters
| TheDataV | A vector containing pointers to functions that return the data to fit as a double when given a *MTTensor | |
| TheErrorV | A similar vector of pointers to functions that return the corresponding error | |
| TheErrLevel | The relative errorlevel that corresponds to the data function |
Definition at line 64 of file C1DMTObjective.cpp.
| virtual void C1DMTObjective::WriteData | ( | const std::string & | filename | ) | [pure virtual] |
Write current data to a file.
Reimplemented from PlottableObjective.
Implemented in Aniso1DMTObjective, and Iso1DMTObjective.
Referenced by main().
| virtual void C1DMTObjective::WriteModel | ( | const std::string & | filename | ) | [pure virtual] |
write the current model to a file
Reimplemented from PlottableObjective.
Implemented in Aniso1DMTObjective, and Iso1DMTObjective.
Referenced by main().
| virtual void C1DMTObjective::WritePlot | ( | const std::string & | filename | ) | [pure virtual] |
write the current model for plotting to a file
Reimplemented from PlottableObjective.
Implemented in Aniso1DMTObjective, and Iso1DMTObjective.
Referenced by main().
1.5.8