Public Slots | Public Member Functions
HRFKTimeWindows Class Reference

#include <HRFKTimeWindows.h>

Inheritance diagram for HRFKTimeWindows:
FKTimeWindows

List of all members.

Public Slots

virtual void setComponent ()
virtual void setCurrentWindow ()

Public Member Functions

 HRFKTimeWindows (QWidget *parent=0)
virtual void setArray (const ArrayStations &array)

Constructor & Destructor Documentation

HRFKTimeWindows::HRFKTimeWindows ( QWidget *  parent = 0) [inline]
: FKTimeWindows(parent) {}

Member Function Documentation

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().


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines