OEIL
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
NonlinearLossModel Class Reference
Inheritance diagram for NonlinearLossModel:
Inheritance graph
[legend]

Public Member Functions

 NonlinearLossModel (double coupled_in_power, double waveguideLength)
 
virtual void echoParameters ()
 
double getLinearLossPerLength () const
 
double getCarrierLifetime () const
 
double getEffectiveModeArea () const
 
double getStartPosition () const
 
double getStopPosition () const
 
double getInitialPower () const
 
double getInitialIntensity () const
 
void setLinearLoss (double linearLoss_dB)
 
void setCarrierLifetime (double lifetime)
 
void setEffectiveModeArea (double Aeff)
 
void setWaveguideLength (double length)
 
void setInitialPower (double initalPower)
 
void resetParameters ()
 
void setParametersFromFile ()
 
virtual void operator() (const intensity_state &I, intensity_state &dIdz, const double z) const
 
double totalLossAcrossWaveguide ()
 
double totalLossAcrossWaveguide (double initalPower)
 
double linearLossAcrossWaveguide ()
 
double nonlinearLossAcrossWaveguide ()
 
double nonlinearLossAcrossWaveguide (double initalPower)
 

Protected Member Functions

void initParameters ()
 
void updateModel ()
 

Protected Attributes

const double kPhotonEnergy1550
 
const double kStartPosition
 
const double kWavelength
 
const double kStepLength
 
double alpha_dB_
 
double carrier_lifetime_
 
double effective_mode_area_
 
double stop_position_
 
double initial_power_
 
double beta_
 
double sigma_
 
double photon_energy_
 
double alpha_
 
double gamma_
 
double initial_intensity_
 
double totalLoss_
 

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