#include <HRFKTimeWindows.h>
Public Slots | |
virtual void | setComponent () |
virtual void | setCurrentWindow () |
Public Member Functions | |
HRFKTimeWindows (QWidget *parent=0) | |
virtual void | setArray (const ArrayStations &array) |
HRFKTimeWindows::HRFKTimeWindows | ( | QWidget * | parent = 0 | ) | [inline] |
: FKTimeWindows(parent) {}
void HRFKTimeWindows::setArray | ( | const ArrayStations & | array | ) | [virtual] |
Reimplemented from FKTimeWindows.
References FKTimeWindows::_process, GeopsyCore::StationList::components(), ArrayCore::ArrayProcess::setTimeRangeList(), and QGpCoreTools::tr().
{ // Check whether there are multi component StationSignals::Components c=array.components(); if(c & StationSignals::VerticalComponent) { component->addItem(tr("Vertical")); } if(c & StationSignals::HorizontalComponent) { component->addItem(tr("Horizontal")); component->addItem(tr("North")); component->addItem(tr("East")); } _process=new HRFKArrayProcess(array); _process->setTimeRangeList(new TimeWindowList); }
void HRFKTimeWindows::setComponent | ( | ) | [virtual, slot] |
Reimplemented from FKTimeWindows.
References FKTimeWindows::_currentWindow, FKTimeWindows::_gridLayer, FKTimeWindows::_process, GeopsyCore::TimeRangeList::at(), ArrayCore::HRFK::crossCorrelationMatrix(), ArrayCore::ArrayProcess::frequency(), ArrayCore::FKArrayProcess::function(), ArrayCore::HRFK::initOperator(), GeopsyCore::TimeRange::lengthSeconds(), ArrayCore::FK::setFrequencyBand(), SciFigs::LiveGridLayer::setFunction(), ArrayCore::FK::setMaximumSlowness(), ArrayCore::FK::setMaximumWavenumber(), ArrayCore::ArrayProcess::timeRangeList(), QGpCoreTools::tr(), and TRACE.
Referenced by setCurrentWindow().
{ TRACE; if(_currentWindow<0) return ; HRFK * fk=static_cast<HRFK *>(_process->function(0)); double damping=static_cast<HRFKArrayProcess *>(_process)->parameters()->damping(); double winLength=_process->timeRangeList()->at(_currentWindow).lengthSeconds(); fk->setMaximumWavenumber(1e99); // No limit for plot fk->setMaximumSlowness(1e99); fk->setFrequencyBand(_process->frequency(), winLength); Complex * covmat; if(component->currentText()==tr("North")) { covmat=fk->crossCorrelationMatrix(1); } else if(component->currentText()==tr("East")) { covmat=fk->crossCorrelationMatrix(2); } else if(component->currentText()==tr("Horizontal")) { covmat=fk->crossCorrelationMatrix(direction->value()); } else { covmat=fk->crossCorrelationMatrix(0); } fk->initOperator(covmat, damping); _gridLayer->setFunction(fk); waveNumGrid->deepUpdate(); }
void HRFKTimeWindows::setCurrentWindow | ( | ) | [virtual, slot] |
Reimplemented from FKTimeWindows.
References setComponent().
{ FKTimeWindows::setCurrentWindow(); setComponent(); }