![]() |
OpendTect
7.0
|
Bisection Extreme Finder. More...
Public Member Functions | |
| BisectionExtremeFinder1D (const FloatMathFunction &func, bool max, int itermax, float tol, const Interval< float > &startinterval, const Interval< float > *limitinterval) | |
| virtual | ~BisectionExtremeFinder1D () |
| float | extremePos () const |
| float | extremeVal () const |
| int | nextStep () override |
| int | nrIter () const |
| void | reStart (const Interval< float > &startinterval, const Interval< float > *limitinterval) |
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 |
Protected Attributes | |
| float | centerfuncval |
| Interval< float > | current |
| const FloatMathFunction & | func |
| bool | isok |
| int | iter |
| const int | itermax |
| Interval< float > * | limits_ |
| const bool | max |
| float | startfuncval |
| float | stopfuncval |
| const float | tol |
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_ |
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 |
Bisection Extreme Finder.
<>
| BisectionExtremeFinder1D::BisectionExtremeFinder1D | ( | const FloatMathFunction & | func, |
| bool | max, | ||
| int | itermax, | ||
| float | tol, | ||
| const Interval< float > & | startinterval, | ||
| const Interval< float > * | limitinterval | ||
| ) |
| func | The function, f(x) where the extreme value shoud be found |
| max | Specifies wether a min or max value should be found |
| itermax | Maximum number of iterations |
| tol | Tolerance on the function variable (x) |
| startinterval | The interval of x that the search will be inited by. Note that the search can go outside of this interval. |
| limitinterval | Set to true if only solutions within the interval is permitted |
|
virtual |
| float BisectionExtremeFinder1D::extremePos | ( | ) | const |
| float BisectionExtremeFinder1D::extremeVal | ( | ) | const |
|
overridevirtual |
Will move the current extremePos one step towards the solution.
| 0 | Finished |
| 1 | More to do |
| -1 | Error (no extreme found or itermax reached The extreme value) |
Implements SequentialTask.
| int BisectionExtremeFinder1D::nrIter | ( | ) | const |
| void BisectionExtremeFinder1D::reStart | ( | const Interval< float > & | startinterval, |
| const Interval< float > * | limitinterval | ||
| ) |
| startinterval | The interval of x that the search will be inited by. Note that the search can go outside of this interval. |
| limitinterval | Set to true if only solutions within the interval is permitted |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
Generated at for the OpendTect seismic interpretation project. Copyright (C): dGB Beheer B.V. 1995-2024