Classes | Defines | Typedefs | Functions

cfftw.hh File Reference

#include <iostream.h>
#include <complex.h>
#include <string>
#include <malloc.h>
#include <new>
#include <fftw.h>

Go to the source code of this file.

Classes

class  cfftw

Defines

#define _CFFTW_HH_
#define _OVERLOADED_OPERATORS_

Typedefs

typedef complex< double > cplx

Functions

cplx operator+ (cplx a, double b)
cplx operator+ (double b, cplx a)
cplx operator* (cplx a, double b)
cplx operator* (double b, cplx a)
cplx operator/ (cplx a, double b)
double log (int a)
double sqrt (int a)
void * operator new[] (size_t t) throw (std::bad_alloc)
void * operator new (size_t t) throw (std::bad_alloc)
void operator delete[] (void *p) throw ()
void operator delete (void *p) throw ()
cplxNewCplx (int N)
double * NewDouble (int N)
int * NewInt (int N)
void FreeCplx (cplx *ptr)
 Use to free memory allocated with NewCplx.
void FreeDouble (double *ptr)
 Use to free memory allocated with NewDouble.
void FreeInt (int *ptr)
 Use to free memory allocated with NewInt.
cplx max (cplx &a, cplx &bb)

Define Documentation

#define _CFFTW_HH_
#define _OVERLOADED_OPERATORS_

Typedef Documentation

typedef complex<double> cplx

Function Documentation

void FreeCplx ( cplx ptr  )  [inline]
void FreeDouble ( double *  ptr  )  [inline]

Use to free memory allocated with NewDouble.

void FreeInt ( int *  ptr  )  [inline]

Use to free memory allocated with NewInt.

double log ( int  a  )  [inline]

Referenced by RamanAmp::CalculateFrel(), OptAmplifier::ChannelAddDrop(), ChiSquareReceiverPsi(), ChiSquareReceiverPsiCplx(), OptFiberLocalError::ComputeDeltaZMax(), ReduOptFiber::CopyReduOptFiber(), OptSignal::DampBounds(), OptFilter::DemuxLoopTunableOpticalFilter(), MachZehnder::EAM34PulseShape(), OptAmplifier::ForwardStep(), gammln(), Gaussian_pdf(), gaussian_pdf(), gcf(), OptSignal::GenerateSignalStringGaussianOrSech(), OptSignal::GenerateSignalStringGaussianOrSechWithPhaseShift(), OptSignal::GenerateSignalStringQPSK_Gaussian(), OptSignal::GenerateSignalStringRZGaussianPattern(), OptSignal::GenerateSignalStringUsingInputSequence(), RamanAmp::GeneticAlgorithms(), RamanAmp::GeneticAlgorithmsVaryCW(), RamanAmp::GeneticAlgorithmsVictor(), ElecFilter::GetElecGain(), OptAmplifier::GetGainFlatenFilter(), RanNumGen::GetGaussianDeviate(), RamanAmp::GetMatrixW(), OptSpectrumAnalyzer::GetNoiseEquivalentBandwidth(), OptAmplifier::GetPolynomialFilter(), RamanAmp::GetPumpInitGuessFromIntg(), RanNumGen::GetRanCosineBiased(), RanNumGen::GetRanSignBiased(), gser(), OptSignal::InitializeFirstOrderPMDSignal(), log(), OptAmplifier::OptAmplifier(), OptFiber::OptFiber(), OptFiberLocalError::OptFiberLocalError(), RamanAmp::OptimizeBackwardIntegration(), RamanAmp::OptimizeForwardIntegration(), RamanAmp::OptimizeForwardIntegrationLastRound(), RamanAmp::OptimizeForwardPumpShootingIntegration(), RamanAmp::OptimizeForwardShootingIntegration(), RamanAmp::OptimizeForwardSignalShootingIntegration(), OptAmplifier::PumpCurrent2Power(), ReduOptAmplifier::ReduOptAmplifier(), ReduOptFiber::ReduOptFiber(), OptFilter::SantecTunableOpticalFilter(), ReduOptFiber::SetAttenuation(), OptFiber::SetAttenuation(), OptFiberLocalError::SetAttenuationdB(), ReduOptAmplifier::SetGainCompressionSaturatedAmplifier(), OptAmplifier::SetGainCompressionSaturatedAmplifier(), OptFiberLocalError::SetNepperAttenuation(), BitString::SetPseudoRandomString(), RamanAmp::ShootingGeneticAlgorithms(), RamanAmp::ShootingGeneticAlgorithmsVaryCW(), RamanAmp::ShootingGeneticAlgorithmsVictor(), RamanAmp::ShootingIntegration(), RamanAmp::ShootingIntegrationExample(), RamanAmp::ShootingRamanIteration(), OptSpectrumAnalyzer::UpdateOSA(), OptSpectrumAnalyzer::UpdateOSA_OLD(), OptFilter::WriteFreqPowerDemuxLoopFilter(), OptFilter::WriteFreqPowerSantecFilter(), and RamanAmp::WritePumpPowerdB().

cplx max ( cplx a,
cplx bb 
) [inline]
cplx* NewCplx ( int  N  )  [inline]
double* NewDouble ( int  N  )  [inline]

Allocates memory for a double array of length N. Should be used instead of new

This function allocates memory for a double array of length N, checks whether memory has been correctly allocated, initializes memory to zero, and returns a double* ptr to the memory.

The memory is allocated with memalign. The memory address will be a multiple of 16, as is required when using FFTW-GEL.

Referenced by ElecSignalStat::ElecSignalStat(), GaussianReceiver::GaussianReceiver(), and ReceiverSemiAnalytical::ReceiverSemiAnalytical().

int* NewInt ( int  N  )  [inline]

Allocates memory for a int array of length N. Should be used instead of new

This function allocates memory for a int array of length N, checks whether memory has been correctly allocated, initializes memory to zero, and returns a int* ptr to the memory.

The memory is allocated with memalign. The memory address will be a multiple of 16, as is required when using FFTW-GEL.

Referenced by ElecSignalStat::ElecSignalStat(), and GaussianReceiver::GaussianReceiver().

void operator delete ( void *  p  )  throw () [inline]
void operator delete[] ( void *  p  )  throw () [inline]
void * operator new ( size_t  t  )  throw (std::bad_alloc) [inline]
void * operator new[] ( size_t  t  )  throw (std::bad_alloc) [inline]
cplx operator* ( double  b,
cplx  a 
) [inline]
cplx operator* ( cplx  a,
double  b 
) [inline]
cplx operator+ ( double  b,
cplx  a 
) [inline]
cplx operator+ ( cplx  a,
double  b 
) [inline]
cplx operator/ ( cplx  a,
double  b 
) [inline]
double sqrt ( int  a  )  [inline]

Referenced by OptSignal::AddCWSignal(), RamanAmp::AddNoise(), Photodetector::AddShotNoise(), Photodetector::AddShotNoiseOLD(), OptAmplifier::AdjustGainFixedTotalOutputPowerVector(), ReduOptFiber::AllocateMemory_SetLengthSteps(), OptFiber::AllocateMemory_SetLengthSteps(), OptAmplifier::AmplifyAlternateOptSignalWithoutNoiseWithPrevioslyComputedGain(), OptAmplifier::AmplifyHomogeneous(), OptAmplifier::AmplifyOptSignalScalar(), OptAmplifier::AmplifyOptSignalVector(), OptAmplifier::AmplifyOptSignalVectorWithGainProfile(), OptFiberLocalError::ApplyFullRamanOperator(), SaturableAbsorber::ApplyHeunsMethodLocalError(), OptAmplifier::ApplyPolynomial(), OptSignal::ChangeAveragePowerChannCurrentSignal(), ElecSignalStat::ComputeAveragePDFs(), GaussianReceiver::ComputeAveragePDFs(), OptSignal::ComputeAverageSigmaMarks(), ChiSquareReceiver::ComputeGaussianPDFsAndBER(), ElecFilter::ComputeMatchAndFilter(), ChiSquareReceiver::ComputeMomentsInEachBit(), OptAmplifier::ComputeNoiseAmplitudeFactor(), OptAmplifier::ComputeNoiseAmplitudeFactorGainProfile(), SaturableAbsorber::ComputeRelativeError(), OptSignal::ComputeRMSPulseWidth(), OptSignal::ComputeRMSSpectralWidth(), OptFiberLocalError::ComputeThirdOrderSolutionAndRelativeError(), OptFiberLocalError::ComputeThirdOrderSolutionAndRelativeErrorOLD(), OptSignal::ConstructOptSignal(), ReduOptFiber::CopyReduOptFiber(), OptSignal::DampBounds(), MachZehnder::EAM34PulseShape(), OptSignal::EOM_MachZehnderModulatorElecNRZ(), OptSignal::EOM_MachZehnderModulatorOptNRZOLD(), OptSignal::EOM_PhaseModulator(), erfccExtendedRange(), ChiSquareReceiver::EvaluateGaussianApproximation(), OptFilter::FabryPerotFilter(), OptFiberLocalError::FiberAmplifierAddMonteCarloNoise(), OptFiberLocalError::FiberAmplifierComputeNoiseAmplitudeFactor(), Gaussian_pdf(), gaussian_pdf(), OptSignal::GenerateSignalStringGaussianOrSech(), OptSignal::GenerateSignalStringGaussianOrSechWithPhaseShift(), OptSignal::GenerateSignalStringNRZ_RCOS_MachZehnderModulator(), OptSignal::GenerateSignalStringQPSK_CW(), OptSignal::GenerateSignalStringQPSK_DPMZ_PM_NRZ(), OptSignal::GenerateSignalStringQPSK_Gaussian(), OptSignal::GenerateSignalStringQPSK_SEQ_PM_NRZ(), OptSignal::GenerateSignalStringRaisedCosines(), OptSignal::GenerateSignalStringRaisedCosinesWithPhaseShift(), OptSignal::GenerateSignalStringRZGaussianPattern(), OptSignal::GenerateSignalStringUsingInputSequence(), RamanAmp::GeneticAlgorithmsVaryCW(), RamanAmp::GeneticAlgorithmsVictor(), Histogram2D::Get_pdfConfidence(), ElecSignalStat::GetBER_GaussianStatisticsFromDecisionThreshold(), ElecSignalStat::GetBit0_PowerStdDev(), ElecSignalStat::GetBit1_PowerStdDev(), ReduOptSignal::GetBitErrorRate(), ElecSignalStat::GetBitErrorRate(), ReduOptSignal::GetCoPolarizedNoiseInsideBandwidth(), ReduOptSignal::GetDegreeOfPolarization(), GetDegreeOfPolarization(), OptSignal::GetDegreeOfPolarization(), OptSignal::GetDegreeOfPolarizationAndTotalStokesFreqDomain(), ReduOptFiber::GetDGD(), OptFiber::GetDGD(), OptFiberLocalError::GetDGD(), OptFiber::GetDGD_Manakov(), GetDistance2Points(), ReduOptFiber::GetExpectedDGD(), OptFiberLocalError::GetExpectedDGD(), OptFiber::GetExpectedDGD(), ReduOptFiber::GetExpectedSndOrderDGD(), OptFiberLocalError::GetExpectedSndOrderDGD(), OptFiber::GetExpectedSndOrderDGD(), OptFiber::GetExpectedThirdOrderDGD(), OptFiberLocalError::GetFreqDerivativeOfBirefringence(), RanNumGen::GetGaussianDeviate(), ElecSignalStat::GetIsolatedBit0_PowerStdDev(), ElecSignalStat::GetIsolatedBit1_PowerStdDev(), Histogram2D::GetLevelCurvesMultipleHeuristicBalanceImportVarianceWeighted(), ReduOptFiber::GetMeanDGD_SqrtLength(), OptFiberLocalError::GetMeanDGD_SqrtLength(), OptFiber::GetMeanDGD_SqrtLength(), ElecSignalStat::GetNormKcoeff0_GaussianStatistics(), ElecSignalStat::GetNormKcoeff1_GaussianStatistics(), OptFiber::GetNumOutPD_Vector(), ReduOptSignal::GetOrthogPolarizedNoiseInsideBandwidth(), ReduOptSignal::GetOutageProbGaussian(), ElecSignalStat::GetPowerStdDevBit(), ReduOptSignal::GetQ_Factor(), ElecSignalStat::GetQ_FactorFromESNR_GaussianStatistics(), ElecSignalStat::GetQ_FactorGaussianStatisticsFirstPattern(), ElecSignalStat::GetQ_FactorGaussianStatisticsFromBER(), ElecSignalStat::GetQ_FactorGaussianStatisticsWorstPattern(), GetRadiusCircle(), ChiSquareReceiver::GetReducedNoiseFreeSigAndDiagonalizeCovMatrix(), ReduOptSignal::GetScalarProdSignalNoise(), ReduOptFiber::GetSndOrderDGD(), OptFiber::GetSndOrderDGD(), Histogram::GetStdDev(), ElecSignalStat::GetStdDevASE_ASE(), ElecSignalStat::GetStdDevSignal_ASE_TimeIndex(), ElecSignalStat::GetStdDevWorstBit0_GaussianStatistics(), ElecSignalStat::GetStdDevWorstBit1_GaussianStatistics(), ElecSignalStat::GetTargetIndexTimeBestMinEyeOpening(), ElecSignalStat::GetTargetIndexTimeBestQ_Factor(), OptFiber::GetThirdOrderDGD(), GetVectorLength(), OptSignal::InitializeFirstOrderPMDSignal(), LumpedLoss::InitLumpedLoss(), Histogram2D::MergeMultipleConditionalHeuristicBalance(), Histogram::MergeMultipleConditionalHeuristicBalance(), MGeneralRotation(), ElecSignalStat::MinimizeSqQ_FactorVersusBER(), Histogram2D::MultipleHeuristicBalanceImport(), Histogram::MultipleHeuristicBalanceImport(), Histogram::MultipleImport(), Histogram::MultipleSelectiveImport(), MachZehnder::MZModulator(), Histogram::Obtain_pdf(), OptFiber::OptFiber(), OptFiberLocalError::OptFiberLocalError(), MachZehnder::PhaseModulator(), RamanAmp::PrepareNextStep(), ElecSignalStat::PreparePatternStatsForOutput(), ReduOptSignal::ProcessReduOptSignalParameters(), OptFiberLocalError::PropagateLocalError(), RamanAmp::PropagateNoise(), RamanAmp::PropagateSignalandNoise(), OptAmplifier::PropagateSignalandNoise(), NoiseCovariance::Propagator(), ChiSquareReceiver::ReceiveSignalCWNoLossNoDisp(), GaussianReceiver::ReceiveSignalDGD_NoisePartiallyPolarized(), GaussianReceiver::ReceiveSignalNoPMD_NoisePartiallyPolarized(), ReceiverSemiAnalytical::ReceiveSignalSemiAnalytical(), GaussianReceiver::ReceiveSignalUnpolarizedNoise(), ReduOptFiber::ReduOptFiber(), RamanAmp::RelaxRamanIteration(), ReduOptFiber::RMS2meanDGD(), OptFiber::rms2meanDGD(), LumpedLoss::SetLossdB(), ReduOptFiber::SetMeanDGD_SqrtLength(), OptFiber::SetMeanDGD_SqrtLength(), OptFiberLocalError::SetMeanDGDPerSqrtLength(), OptFiberLocalError::SetPMD(), ReduOptFiber::SetPMD_Fiber(), OptFiber::SetPMD_Fiber(), ReduPolarizer::SetPolarization(), Polarizer::SetPolarization(), RamanAmp::ShootingIntegration(), RamanAmp::ShootingIntegrationExample(), RamanAmp::ShootingRamanIteration(), BeamSplitter::SplitOptSignal(), sqrt(), StatisticsOfArray::StatisticsOfArray(), Stokes2Jones(), Stokes2JonesKeepPower(), PolarizTransformer::TransformPolarization(), ElecSignalStat::UpdateEqualizedPerformanceStatistics(), OptSpectrumAnalyzer::UpdateOSA(), ElecSignalStat::UpdatePerformanceStatistics(), VectorAngle(), OptSignal::WriteAveragePulseWidth(), Histogram::WriteFileGaussian_cdf(), Histogram::WriteFileGaussian_cdfc(), Histogram::WriteFileGaussian_pdf(), Histogram::WriteFileMaxwell_pdf(), ReduOptSignal::WriteFileOptSignal(), OptFilter::WriteFreqPowerFabryPerotFilter(), and OptFiberLocalError::WriteStepSizes().