Calculate Love and Rayleigh dispersion curves and their misfits. More...
#include <CompatModalDispersion.h>
Public Member Functions | |
CompatModalDispersion () | |
QGPCOMPATIBILITY_EXPORT CompatDispersionData * | oldStyle () |
Protected Member Functions | |
virtual const QString & | xml_tagName () const |
Static Protected Attributes | |
static QGPCOMPATIBILITY_EXPORT const QString | xmlModalDispersionTag = "ModalDispersion" |
Calculate Love and Rayleigh dispersion curves and their misfits.
The main function used to calculate the dispersion curve is calculate().
Misfits can be computed by misfit() or closestModeMisfit().
References QGpCompatibility::CompatModalRefinedCurves::mode(), QGpCompatibility::CompatModalRefinedCurves::nModes(), QGpCompatibility::CompatModalFrequency::nOmegas(), QGpCompatibility::CompatModalFrequency::omega(), QGpCompatibility::CompatMultiModalFrequency::setFrequency(), QGpCompatibility::CompatMultiModalData::setMean(), QGpCompatibility::CompatMultiModalData::setStddev(), QGpCompatibility::CompatMultiModalCurves::setValue(), QGpCompatibility::CompatMultiModalData::setWeight(), and TRACE.
{ TRACE; int nm=nModes(); int nf=nOmegas(); CompatDispersionData * disp=new CompatDispersionData(nm,nf); for(int i=0;i<nf;i++) { disp->setFrequency(i,omega(i)/(2*M_PI)); } for(int im=0;im<nm;im++) { CompatVDataPointVector point=mode(im); for(int i=0;i<nf;i++) { disp->setMean(i,im,point[i].mean()); disp->setStddev(i,im,point[i].stddev()); disp->setWeight(i,im,point[i].weight()); disp->setValue(i,im,point[i].value()); } } return disp; }
virtual const QString& QGpCompatibility::CompatModalDispersion::xml_tagName | ( | ) | const [inline, protected, virtual] |
Reimplemented from QGpCompatibility::CompatModalRefinedCurves.
References xmlModalDispersionTag.
{return xmlModalDispersionTag;}
const QString QGpCompatibility::CompatModalDispersion::xmlModalDispersionTag = "ModalDispersion" [static, protected] |
Referenced by xml_tagName().