photodiode¶
- photonforge.abstract.photodiode(*, responsivity=1, gain=1, saturation_voltage=0, saturation_current=0, roll_off=2, dark_current=0, thermal_noise=, pink_noise_frequency=0, current_time_constant=0, filter_frequency=0, filter_quality=0, filter_gain=1, reflection=0, z0=50.0, seed=None)[source]¶
Abstract photodiode.
Based on
photonforge.PhotodiodeTimeStepper.- Parameters:
responsivity (Annotated[float, minimum=0, units='A/W']) – Optical power to current conversion factor.
gain (Annotated[float, units='V/A']) – TIA gain.
saturation_voltage (Annotated[float, minimum=0, units='V']) – If non-zero, output saturation voltage of the TIA.
saturation_current (Annotated[float, minimum=0]) – If non-zero, photocurrent of the space-charge saturation model.
roll_off (Annotated[float, minimum=0]) – Roll-off factor for the space-charge saturation model.
dark_current (Annotated[float, units='A']) – Photodiode’s dark current.
thermal_noise (Annotated[float, minimum=0, units='A²/Hz']) – One-sided power spectral density of the TIA’s input-referred thermal noise current.
pink_noise_frequency (Annotated[float, minimum=0, units='Hz']) – Pink (1/f) noise corner frequency. If set to 0, pink noise is disabled.
current_time_constant (Annotated[float, minimum=0, units='s']) – Time constant for the running photocurrent average. A value of zero sets a default of 100 time steps.
filter_frequency (Annotated[float, minimum=0, units='Hz']) – If positive, sets the -3 dB frequency bandwidth for the first-order low-pass TIA filter. If a second-order filter is used (
filter_quality > 0), this is its natural frequency.filter_quality (Annotated[float, minimum=0]) – If positive, enables a second-order filter for the TIA with this quality factor. Only when
filter_frequency > 0.filter_gain (Annotated[float, exclusiveMinimum=0]) – Gain of the second-order TIA filter. Only used when
filter_frequency > 0andfilter_quality > 0.reflection (complex) – Reflection coefficient for incident fields.
z0 (Annotated[complex, units='Ω']) – Characteristic impedance of the electrical port used to convert the output voltage to field amplitude. If
None, derived from port impedance, calculated by mode-solving, or set to 50 Ω.seed (Annotated[int, minimum=0] | None) – Random number generator seed to ensure reproducibility.
- Return type: