1 #ifndef LASERPOWERBACKTRACER_H 2 #define LASERPOWERBACKTRACER_H 4 #include "NonlinearLossModel.h" 5 #include <boost/numeric/odeint.hpp> 14 double final_intensity_;
22 double getFinalPower()
const {
return final_power_; }
31 void echoParameters()
const;
32 double totalLossAcrossWaveguide();
33 double nonlinearLossAcrossWaveguide();
35 virtual void operator()(
const intensity_state& I, intensity_state& dIdz,
const double z)
const override;
Definition: NonlinearLossModel.h:52
void updateModel()
This function intends to recalculate the model-related parameters from the user-input parameters...
Definition: LaserPowerBacktracer.cpp:91
virtual void operator()(const intensity_state &I, intensity_state &dIdz, const double z) const override
This is a callback function for integating the optical power intensity over the wavelength, z.
Definition: LaserPowerBacktracer.cpp:104
void setFinalPower(double finalPower)
This function sets the required coupled-out power in Watt.
Definition: LaserPowerBacktracer.cpp:82
LaserPowerBacktracer(double powerInWattBeforeReceiver, double waveguideLength)
Construct a new LaserPowerBacktracer object by specifying the coupled-out power (in Watt) by the end ...
Definition: LaserPowerBacktracer.cpp:21
LaserPowerBacktracer does exactly the reverse of the NonlinearLossModel which it inherits from...
Definition: LaserPowerBacktracer.h:11