OpendTect
7.0
|
Finds the nearest local extreme position in ND's. Implementation of Powell's Quadratically Convergent Method. More...
Public Member Functions | |
ExtremeFinderND (const FloatMathFunctionND &func, bool max, int itermax) | |
virtual | ~ExtremeFinderND () |
const float * | extremePos () const |
template<class IDXABL > | |
void | extremePos (IDXABL &sp) const |
Sets the sp variable to the extreme position. More... | |
float | extremeVal () const |
int | nextStep () override |
int | nrIter () const |
template<class IDXABL > | |
void | setStartPos (const IDXABL &sp) |
Public Member Functions inherited from SequentialTask | |
SequentialTask (const char *nm=nullptr) | |
virtual | ~SequentialTask () |
virtual int | doStep () |
bool | execute () override |
Public Member Functions inherited from ReportingTask | |
virtual | ~ReportingTask () |
void | getProgress (const ReportingTask &) |
Public Member Functions inherited from Task | |
virtual | ~Task () |
virtual void | controlWork (Control) |
virtual void | enableWorkControl (bool=true) |
Must be called before execute() More... | |
virtual uiRetVal | errorWithDetails () const |
virtual Control | getState () const |
virtual std::int64_t | nrDone () const |
virtual std::int64_t | totalNr () const |
virtual uiString | uiMessage () const |
will be message() again in 7.x More... | |
virtual uiString | uiNrDoneText () const |
will be nrDoneText() in 7.x More... | |
bool | workControlEnabled () const |
Public Member Functions inherited from NamedCallBacker | |
NamedCallBacker (const char *nm=0) | |
NamedCallBacker (const NamedCallBacker &) | |
virtual Notifier< NamedCallBacker > & | objectToBeDeleted () const |
bool | operator== (const NamedCallBacker &oth) const |
bool | operator== (const NamedObject &oth) const |
Public Member Functions inherited from CallBacker | |
CallBacker () | |
CallBacker (const CallBacker &) | |
virtual | ~CallBacker () |
bool | attachCB (const NotifierAccess &, const CallBack &, bool onlyifnew=false) const |
bool | attachCB (const NotifierAccess *notif, const CallBack &cb, bool onlyifnew=false) const |
void | detachAllNotifiers () const |
Call from the destructor of your inherited object. More... | |
void | detachCB (const NotifierAccess &, const CallBack &) const |
void | detachCB (const NotifierAccess *notif, const CallBack &cb) const |
virtual bool | isCapsule () const |
bool | isNotifierAttached (const NotifierAccess *) const |
Only for debugging purposes, don't use. More... | |
void | stopReceivingNotifications () const |
virtual CallBacker * | trueCaller () |
Public Member Functions inherited from NamedObject | |
NamedObject (const char *nm=nullptr) | |
NamedObject (const NamedObject &oth) | |
virtual | ~NamedObject () |
virtual BufferString | getName () const |
bool | getNameFromPar (const IOPar &) |
const name_type & | name () const override |
NamedObject & | operator= (const NamedObject &) |
bool | operator== (const NamedObject &oth) const |
virtual void | setName (const char *nm) |
Public Member Functions inherited from ObjectWithName | |
virtual | ~ObjectWithName () |
bool | hasName (const char *nm) const |
bool | hasName (const name_type &nm) const |
void | putNameInPar (IOPar &) const |
Private Member Functions | |
float | linExtreme (float *) |
Private Attributes | |
float | fret_ |
float | ftol_ |
const FloatMathFunctionND & | func_ |
int | iter_ |
const int | itermax_ |
const bool | max_ |
int | n_ |
float * | p_ |
float * | pt_ |
ObjectSet< float > | xi_ |
Additional Inherited Members | |
Public Types inherited from Task | |
enum | Control { Run , Pause , Stop } |
Public Types inherited from ObjectWithName | |
typedef OD::String | name_type |
Static Public Member Functions inherited from SequentialTask | |
static int | ErrorOccurred () |
static int | Finished () |
static int | MoreToDo () |
static int | WarningAvailable () |
Static Public Member Functions inherited from Task | |
static uiString | stdNrDoneText () |
static uiString | uiStdNrDoneText () |
Static Public Member Functions inherited from CallBacker | |
static void | createReceiverForCurrentThread () |
static void | removeReceiverForCurrentThread () |
Public Attributes inherited from ReportingTask | |
Notifier< ReportingTask > | progressUpdated |
Protected Member Functions inherited from ReportingTask | |
ReportingTask (const char *nm=nullptr) | |
void | incrementProgress () |
ProgressMeter * | progressMeter () const |
void | reportProgressFinished () |
void | reportProgressStarted () |
void | resetProgress () |
void | setProgressMeter (ProgressMeter *) override |
Must be called before execute() More... | |
void | updateProgressMeter (bool forced=false, std::int64_t *totalnr=0) |
void | updateReportedName () |
Protected Member Functions inherited from Task | |
Task (const char *nm=nullptr) | |
virtual bool | shouldContinue () |
Protected Member Functions inherited from NamedCallBacker | |
void | sendDelNotif () const |
Protected Attributes inherited from Task | |
Control | control_ |
Threads::ConditionVar * | workcontrolcondvar_ |
Protected Attributes inherited from NamedCallBacker | |
Threads::Atomic< bool > | delalreadytriggered_ |
Notifier< NamedCallBacker > | delnotif_ |
Protected Attributes inherited from NamedObject | |
BufferString | name_ |
Finds the nearest local extreme position in ND's. Implementation of Powell's Quadratically Convergent Method.
<>
ExtremeFinderND::ExtremeFinderND | ( | const FloatMathFunctionND & | func, |
bool | max, | ||
int | itermax | ||
) |
func | The function to be searched |
max | Specifies wether a min or max should be searched for |
itermax | The maximum number of iterations |
|
virtual |
|
inline |
|
inline |
Sets the sp variable to the extreme position.
|
inline |
|
private |
|
overridevirtual |
MoreToDo() | Not finished. Call me again. |
Finished() | Nothing more to do. |
ErrorOccurred() | Something went wrong. |
Implements SequentialTask.
int ExtremeFinderND::nrIter | ( | ) | const |
|
inline |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
Generated at for the OpendTect seismic interpretation project. Copyright (C): dGB Beheer B.V. 1995-2024