Public Member Functions | Private Attributes

MachZehnder Class Reference

#include <MachZehnder.hh>

List of all members.

Public Member Functions

 MachZehnder (string InFileName, OptSignal *oOptSignal2)
void GeneratePerfectRectBinaryElecData (int ChannelArrayIndex)
void GenerateSmoothedRectBinaryElecDataArctanh (int ChannelArrayIndex)
void GenerateSmoothedRectBinaryElecDataSuperGauss (int ChannelArrayIndex)
void GenerateSinusoidalElecSignal (int ChannelArrayIndex)
double SuperGauss (double Time)
void FilterBinaryElecData (void)
void MZModulator (void)
void PhaseModulator (void)
double EAM34PulseShape (double TimeRelPulseCenter)
double EAMPoly (double time)
void WriteFileTimePower (string outFile)
void WriteFileFreqPower (string outFile)
typeMachZehnder GetTypeMachZehnder (void)

Private Attributes

typeMachZehnder TypeMachZehnder
BitStringoBitString
OptSignaloOptSignal
ElecFilteroElecFilter
cfftwfft
fftPowerMatrices sfftPM
fftMatrices sfftM
typeSimulation TypeSimulation
int NumChannels
double CenterFreq
double BitLength
double BitRateChann
int StringLength
double OptPowerChann
int qtPoints
double TimeWindow
double DeltaTime
double FreqWindow
double DeltaFreq
double V_pi
double V_pi1
double V_pi2
double Phi_10
double Phi_20
double DeltaPhaseModulator
double OptModulationDepth
double SlopeFactor
double ShiftAmt
bool ChirpFreeFlag
int SuperGaussExponent
int RandomPolarizationFlag
bool DoEOMFlag
bool EAMWithHump

Constructor & Destructor Documentation

MachZehnder::MachZehnder ( string  InFileName,
OptSignal oOptSignal2 
)

Member Function Documentation

double MachZehnder::EAM34PulseShape ( double  TimeRelPulseCenter  ) 
double MachZehnder::EAMPoly ( double  time  ) 

Referenced by EAM34PulseShape().

void MachZehnder::FilterBinaryElecData ( void   ) 
void MachZehnder::GeneratePerfectRectBinaryElecData ( int  ChannelArrayIndex  ) 
void MachZehnder::GenerateSinusoidalElecSignal ( int  ChannelArrayIndex  ) 
void MachZehnder::GenerateSmoothedRectBinaryElecDataArctanh ( int  ChannelArrayIndex  ) 

Referenced by MZModulator(), and PhaseModulator().

void MachZehnder::GenerateSmoothedRectBinaryElecDataSuperGauss ( int  ChannelArrayIndex  ) 

Referenced by MZModulator(), and PhaseModulator().

typeMachZehnder MachZehnder::GetTypeMachZehnder ( void   )  [inline]
void MachZehnder::MZModulator ( void   ) 
void MachZehnder::PhaseModulator ( void   ) 
double MachZehnder::SuperGauss ( double  Time  ) 
void MachZehnder::WriteFileFreqPower ( string  outFile  ) 
void MachZehnder::WriteFileTimePower ( string  outFile  ) 

Member Data Documentation

double MachZehnder::BitLength [private]
double MachZehnder::BitRateChann [private]

Referenced by MachZehnder().

double MachZehnder::CenterFreq [private]
double MachZehnder::DeltaFreq [private]

Referenced by MachZehnder(), and WriteFileFreqPower().

Referenced by MachZehnder().

double MachZehnder::DeltaTime [private]
bool MachZehnder::DoEOMFlag [private]

Referenced by MachZehnder().

bool MachZehnder::EAMWithHump [private]

Referenced by EAM34PulseShape(), and MachZehnder().

cfftw* MachZehnder::fft [private]
double MachZehnder::FreqWindow [private]

Referenced by MachZehnder(), and WriteFileFreqPower().

int MachZehnder::NumChannels [private]

Referenced by MachZehnder().

double MachZehnder::OptPowerChann [private]
double MachZehnder::Phi_10 [private]
double MachZehnder::Phi_20 [private]

Referenced by MachZehnder(), and MZModulator().

int MachZehnder::qtPoints [private]
double MachZehnder::ShiftAmt [private]

Referenced by MachZehnder().

double MachZehnder::SlopeFactor [private]

Referenced by MachZehnder().

Referenced by MachZehnder(), and SuperGauss().

double MachZehnder::TimeWindow [private]

Referenced by MachZehnder(), and SuperGauss().

double MachZehnder::V_pi [private]

Referenced by MachZehnder(), and PhaseModulator().

double MachZehnder::V_pi1 [private]

Referenced by MachZehnder(), and MZModulator().

double MachZehnder::V_pi2 [private]

Referenced by MachZehnder(), and MZModulator().


The documentation for this class was generated from the following files: